Доработать чат на node.js
Решили для сайте сделать real-time chat, который в реальном времени будет оповещать о новых и доставлять новые сообщения.
Над проектом работал другой человек, но так как у него долгое время очень много работы, я принял решение отдать проект на доработку на фриланс.
Вот собственно сам чат проекта.
Сам проект написан на php7, mysql 5.7, nginx.
Ссылка на историю всего проекта, что и как было сделано для ознакомления.
В конце есть тз того что прошлый человек начал делать и не доделал.
Что именно нужно сделать:
Сейчас обработчик ошибок, очень странный, надо его обсудить.
В интерфейс работы с ws добавить три функции done, success и fail
Формат ответа приняли следующий
{
type: string - название события
data: mixed - объект ответа
error: mixed - объект ошибки
}
Если соединение рвется надо реконнект делать и вообще когда может произойти обрыв.
Сейчас не доставится отредактированное сообщение всем.
То есть человек А удаляет диалог с человеком Б, но диалог не удаляется а скрывается и когда уже человек Б тоже удаляет диалог, то он уже точно удаляется из таблицы. Также массовое удаление диалогов.
Реализовать механизм добавления пользователей в черный список (см. Формат таблицы). Нельзя добавить самого себя в чс, добавление несуществующего юзера, добавление уже существующего в черном списке юзера.
Проверки. Причем некоторые проверки надо добавить еще и в создание диалога. Блокировка на уровне бана аккаунта.
Добавить проверку заблокирован ли отправитель сообщения или получатель, если заблокирован, то выводим ошибку кто заблокирован.
Проверка не заблокировано ли у отправителя возможность отправлять сообщения. Если блок, то ошибку показать.
Проверка на 1000 символов, если более 1000 символов, обрезаем.
Не занес ли получатель в черный список отправителя сообщения, и наоборот не занес ли в чс отправитель получателя. Описать формат таблицы ниже
Нельзя отправить пустое сообщение.
Сейчас допустим если у меня открыта вкладка одна с диалогов, я отправлю сообщение, то ответ придет на одну вкладку, то есть сообщение которое я отправил не появится во второй вкладке. - реализация на клиенте
Поиск диалогов, то есть будет форма я ввожу туда ник или id получателя, и он мне выдает список диалогов.
Есть системные сообщения. В кроне реализовать функционал попыток отправить рест запрос на сервер, по истечению количества попыток - отправить сообщение в базу данных (таблица messages).
Реализовать рест доступ к функции отправки сообщений + защитить JWT
Из выше перечисленного не выполнено 4,8,9 пункты. Но опять же все нужно проверить и починить если что-то не работает из выше перечисленного. Также возможно я что-то захочу доработать.
Все что вам не понятно, я объясню покажу, расскажу.
Проект небольшой, я не готов платить сверх большие суммы, но я готов заплатить адекватную цену за ваш труд.
Оцените за сколько готовы сделать, я со своей стороны скажу готов ли я ее заплатить.
Безопасная сделка.
Работу требуется сделать в кротчайшие сроки.
-
204 1 0 Приветствую. По поводу 4 есть предложение как реализовать. По поводу 8 тоже понятно, осталось только уточнить момент верстки. По 9 есть вопросы, но думаю, что они отпадут, если объясните что за запрос, откуда и на какой сервер.
Ко всему прочему — есть опыт с socket.io (увидел в документе, не увидел в проекте на гите), express и sequelize (увидел в зависимостях проекта) и с чатами как такими.
Current freelance projects in the category Databases & SQL
Create a dashboard in https://airtable.com/ for the performance of advertising creatives from Facebook ads.Full specification https://docs.google.com/document/d/1_n_oYRNZWYxalUA---DM5AD1b5ZSrtePw5J4G42svGw/edit?usp=sharing Databases & SQL, Data Parsing ∙ 10 hours 27 minutes back ∙ 10 proposals |
Vibe coding through Claude Code
350 USD
Develop a closed web platform for corporate events with personal invitations via unique links and QR codes. After scanning the QR code, the user is directed to a personal invitation page with a welcome message, a greeting by name, a photo and a message from the CEO, a countdown… AI Art, Databases & SQL ∙ 13 hours 36 minutes back ∙ 34 proposals |
A developer is required for parsing the catalog and automating data import.Detailed technical specifications in the attached document Please indicate the estimated cost and timeline in your response Do you have experience working with parsing large catalogs What possible difficulties or limitations do you see in this task Databases & SQL, Data Parsing ∙ 17 hours 27 minutes back ∙ 32 proposals |
Need a Power BI specialist to build management reporting based on BAS Accounting CORPAbout the CompanyWe are a distributor of international sports brands in Ukraine. Accounting is maintained in BAS Accounting CORP.We are looking for a specialist who can help build a management reporting system for the company's management based on Power BI.Important: we are… Databases & SQL, Accounting Services ∙ 4 days 17 hours back ∙ 6 proposals |
Technical task: Integration of Telegram chatbot with BAS1. General Description It is necessary to implement the integration of the chatbot with the BAS system for the transfer and recording of data about products (orders). 2. Input Data (sent by the chatbot): Group ID Product name (with product code) Product price 3. Logic of… Enterprise Resource Planning (ERP), Databases & SQL ∙ 4 days 20 hours back ∙ 19 proposals |