Messenger
Technical assignment for the messenger, it is necessary to take a ready-made messenger solution (for example, Element/Matrix) and make minimal changes, adding the functionality of online message translation.
1. Introduction
Project goal:
Adapt an already existing open-source messenger (for example, Element based on Matrix) for corporate use (up to 100 users) while maintaining basic functionality. The main change is the integration of the online message translation feature.
Justification:
We use a ready-made messenger solution that already implements end-to-end encryption and multi-platform support (Windows, macOS, iOS, Android). The task is to make minimal changes, adding the ability to translate messages through an external API (for example, Google Translate or Microsoft Translator).
2. Main tasks
1. Analysis of the existing solution:
• Study the source code of the chosen messenger (Element/Matrix).
• Determine where the translation function can be integrated.
2. Integration of online translation:
• Add a "Translate" button to the interface next to each message.
• When the button is pressed, send the text (after local decryption) to the external translation API.
• Display the received translation next to the original message.
3. Verification of end-to-end encryption functionality:
• Ensure that the basic implementation of encryption works correctly.
• If necessary, make minimal changes to improve reliability without altering the basic logic.
4. Multi-platform support:
• Check the correct operation of the ready-made client on Windows, macOS, iOS, and Android platforms.
• Ensure that the translation integration works correctly on all supported platforms.
3. Functional requirements
• End-to-end encryption:
• Maintain the existing encryption mechanism (Olm/Megolm) without changes.
• Verify that all message exchanges remain secure.
• Online translation:
• Implement a "Translate" button in the chat interface.
• When the button is pressed, send the message text to the external translation API.
• Display the received translation next to the original text without breaking encryption.
• Multi-platform support:
• Use the ready-made Element client adapted for Windows, macOS, iOS, and Android.
• Check for consistent display and operation of the translation feature across all platforms.
• Registration and basic functionality:
• Keep the standard registration and all basic features implemented in the original solution.
Restrictions on the registration of random users:
To limit the registration of random users, the following approaches can be used:
• Invitation or code registration:
Allow registration only for those who have received a special registration code or invitation from the administrator.
• Email domain restriction:
Set up registration to accept only emails from a specific corporate domain.
• Manual approval:
Require administrator approval for registration before the account becomes active.
4. Implementation plan
1. Stage 1. Analysis:
• Study the chosen open-source solution.
• Identify integration points for adding the translation feature.
2. Stage 2. Integration of online translation:
• Develop the UI element (the "Translate" button).
• Integrate the call to the external translation API via a secure connection.
• Test the display of the translation next to the original message.
3. Stage 3. Testing and debugging:
• Functional testing on all platforms (Windows, macOS, iOS, Android).
• Verify the operation of end-to-end encryption after the changes.
• Fix any identified bugs and refine the interface.
4. Stage 4. Documentation:
• Prepare brief documentation on the changes made.
• Instructions for deploying and supporting the project.
5. Candidate requirements
• Experience with open-source solutions, especially with Matrix/Element.
• Knowledge of end-to-end encryption principles and API integration (for example, Google Translate).
• Experience in developing or adapting multi-platform applications.
• Ability to quickly understand existing code and make minimal changes.
6. Timelines and conditions
• Deadline: 4–6 weeks after the approval of the technical assignment.
• Budget: A minimal budget is possible, as the main part of the functionality is already implemented.
(Details are discussed with the candidate).
• Communication:
• Regular progress reports (weekly).
• Provision of intermediate versions for testing.
-
43 days2000 USD
243 11 1 43 days2000 USDHello!
I am interested in your project. Thank you for the detailed description.
I recommend using the most accurate translator - deepl. I use it in my projects. The PRO API subscription costs 5 euros per month + 20 euros for 1,000,000 characters.
It has proven to be much better than Google Translate.
As for integration - I am ready to discuss it in private messages.
I look forward to collaborating.
-
30 days450 USD
981 6 3 30 days450 USDGood day!
The task looks interesting and achievable, and I can help implement it. Here’s how I plan to carry out the assigned tasks:
Work plan:
Analysis of the existing solution:
I will thoroughly study the Element/Matrix code, understand the main interaction mechanisms and the integration point for adding the online translation feature.
… Integration of online translation:
I will add a "Translate" button in the interface, next to each message.
When this button is pressed, I will send the message text to the translation API (for example, Google Translate or Microsoft Translator).
The obtained translation will be displayed next to the original message, without disrupting the encryption mechanism.
Verification of end-to-end encryption functionality:
I will check that the main encryption (Olm/Megolm) works correctly after adding the translation feature.
Cross-platform compatibility:
I will verify the correct operation of the client on all platforms: Windows, macOS, iOS, Android.
I will ensure a consistent interface for translation on each of the platforms.
Ensuring registration limitation:
I will make the necessary changes to limit the registration of random users through invitation or email domain.
Testing and debugging:
I will test the translation functionality on all supported platforms.
I will make necessary corrections in the interface and ensure the proper operation of encryption.
Collaboration steps:
After receiving the technical specifications, I will begin studying and analyzing the code.
Regular reports on the progress of the work.
Verification of intermediate versions on test platforms.
I would be happy to discuss the terms of cooperation in more detail. I look forward to your response!
-
30 days500 USD
262 2 0 30 days500 USDYou might be interested in the implementation of a web messenger with a big discount. With end-to-end encryption and built-in multi-translators in browsers?
-
20 days350 USD
46 20 days350 USDHello! I am ready to adapt the open-source messenger Element/Matrix to your requirements. I have experience working with Matrix, and I understand API integrations and end-to-end encryption.
I will implement online translation integration with an external API, ensure the proper functioning of encryption, and test it on all platforms. I will also set up registration with restrictions and prepare documentation for the changes made.
I am ready to discuss the details and get started!
Current freelance projects in the category Python
Creation of a Human AI Assistant for Telegram groups### 1.1. Key Concept of the System The system must perform two main functions: #### 1. Client Communication Analysis The AI assistant must automatically analyze all communication in Telegram groups and understand the context of the conversation. In particular, the system… AI & Machine Learning, Python ∙ 21 hours 3 minutes back ∙ 35 proposals |
Black Ukraine (RP-project on base MTA)
1162 USD
|
Telegram automation of message distribution in chatsNeed to send messages to Telegram chats. To avoid bans. There are several hundred chats. To configure the frequency and variability of texts. Python, Bot Development ∙ 21 hours 56 minutes back ∙ 28 proposals |
Development of software with AIIt is necessary to develop software for automatic detection, capturing, and tracking of an object using a video camera and a rotating mechanism.Output data: Video camera with optics. Rotating device on two axes (azimuth/elevation angle). Servomotors controlled via Modbus… AI & Machine Learning, Python ∙ 2 days 5 hours back ∙ 17 proposals |
Automation of processes through API and PythonBelow I described the current process and the result I would like to achieve. I also attach files of the real process to better understand how it looks in reality Current process Currently, the entire process is performed manually: uploading/downloading files, transferring… AI & Machine Learning, Python ∙ 2 days 10 hours back ∙ 44 proposals |