Websocket сервер сообщений

600 руб.за час • безналичный расчёт
24 сентября 2017, 10:56 • 0 откликов • 79 просмотров
Требуется доработать и поддерживать сервер мгновенных сообщений, построенный на стэке технологий:

  • erlang 19
  • rebar 2.6.4
  • cowboy
  • Websocket API
  • MongoDB

Приложение выполняет следующие функции:

- сообщения C2C и CCC
- сообщения C2B и B2C
- хранение сообщений в базе
- отслеживание, хранение и изменение состояний подключенных клиентов (websocket)
- внутренние статусы клиентов чата (online, offline, dnd, away)
- получение статусов SIP-клиентов (Rest API with Asterisk server)
- поддержка вложенных файлов (принимает файлы и загружает на CDN)
- поддержка стикеров (не реализовано)
- авторизация клиентов, контактная книга и все что связано с пользователями осуществляется путем взаимодействия с внешним сервисом (Rest API), который является ядром системы (сообщения в данном случае выступают в роли микросервиса, дополняющего функционал основной системы и тесно интегрированы с веб-приложением)

Необходимо:
1) разобраться с текущим проектом и имеющейся документаций (все API-методы описаны и задокументированы)
2) совместно с Frontend-разработчиком привести существующие методы к единому стандарту (web-клиент в процессе реализации)
3) устранить баги и недоработки по существующему функционалу (например, отсутствующие или неверные триггеры на те или иные события/запросы и т.д.)
4) реализовать функционал B2C (по аналогии с C2B, методы прописаны)
5) доделать функционал вложенных файлов (не реализован механизм приема файла на сервер, только создание контейнера и отправка его на CDN)
6) реализовать функционал стикеров
7) наладить деплой микросервиса на docker-окружение (сборка через Travis CI)
*8) на базе платформы создать чат-бота

*Для реализации чат-ботов детали обговариваем индивидуально, поскольку этот функционал не обязателен для полноценного запуска готового решения, но потребуется в будущем

Обязательные требования:
- NDA (проект коммерческий)
- готовый план работ по ТЗ (график с прописанным количеством часов на реализацию того или иного пункта задания)
- ответственность и исполнительность

Просьба, обращаться с итоговой часовой ставкой. Стоимость проекта указана за нормо-час.