Разработка компонента обмена сообщениями в образовательном сервисе
Цена договорная
•
наличный расчёт, безналичный расчёт, электронные деньги
Лучше читать описание из документа в аттаче или из ссылки: https://docs.google.com/document/d/1urku87ln_eL5Hr..., а то разметка при копировании плывет.
Итак:
Мы разрабатываем рекомендательную систему для персонализированного изучения английского языка.
Нам нужно допроектировать, реализовать и интегрировать компонент обмена мгновенными сообщениями в сервис.
Данный компонент предназначен для предоставления возможности обмена сообщениями между пользователями системы (студенты и эксперты). Также данный компонент отвечает за уведомление участников бесед об обновлениях (необходимо добавить поддержку push нотификаций).
Сценарии использования компонента:
Студент (Student) может через API (REST) управлять (CRUD) беседами (Conversation) и писать сообщения (Message) в беседы, в которых является участником (Participant).
Эксперт (Expert) может через админку Django (веб интерфейс) управлять и участвовать в беседах.
Компонент может уведомлять участников (Participant) беседы о новых сообщениях черех push-уведомления и e-mail уведомления.
Компонент должен предоставлять сторонним компонентам системы интерфейсы для управления беседами: методы для инициирования бесед и уведомления инициировавших компонентов об ответах (возможность навесить обработчик на новые сообщения от студента в беседе).
Грубая диаграмма классов ключевых объектов:
Ключевые задачи по компоненту:
обеспечить взаимодействие системы обмена сообщениями с экспертами через веб интерфейс админки. Сюда входят:
изменение шаблона редактирования деталей студента в админке, чтобы с этой страницы эксперт имел возможность
задокументировать публичные методы компонента, с помощью которых сторонние компоненты серверного приложения
Требования:
Личностные требования: организованность, пунктуальность, инициативность, умение писать читаемый и понятно документированный код
Итак:
Мы разрабатываем рекомендательную систему для персонализированного изучения английского языка.
Нам нужно допроектировать, реализовать и интегрировать компонент обмена мгновенными сообщениями в сервис.
Данный компонент предназначен для предоставления возможности обмена сообщениями между пользователями системы (студенты и эксперты). Также данный компонент отвечает за уведомление участников бесед об обновлениях (необходимо добавить поддержку push нотификаций).
Сценарии использования компонента:
Студент (Student) может через API (REST) управлять (CRUD) беседами (Conversation) и писать сообщения (Message) в беседы, в которых является участником (Participant).
Эксперт (Expert) может через админку Django (веб интерфейс) управлять и участвовать в беседах.
Компонент может уведомлять участников (Participant) беседы о новых сообщениях черех push-уведомления и e-mail уведомления.
Компонент должен предоставлять сторонним компонентам системы интерфейсы для управления беседами: методы для инициирования бесед и уведомления инициировавших компонентов об ответах (возможность навесить обработчик на новые сообщения от студента в беседе).
Грубая диаграмма классов ключевых объектов:
Ключевые задачи по компоненту:
- разработать интерфейс взаимодействия студента на клиентском приложении и компонента обмена сообщениями
- сюда включается спецификация API для разработчиков клиентского приложения. Спецификация должна описать:
- как клиентское приложение может получить представление активных/завершенных или всех бесед студента.
- как клиентское приложение может отправить сообщение в существующую беседу
- как клиенсткое приложение может начать новую беседу
- как клиентское приложение может завершить беседу
- реализация вышеописанного API
- реализация push-уведомлений
- реализация чата (view в админке динамически представляющий беседу и позволяющий эксперту участвовать в ней со студентами)
- отправка сообщений без перезагрузки страницы
- возможность завершения беседы
- управление участниками беседы
- получение новых сообщений в чат без необходимости перезагрузки страницы (желательно)
- возможность быстрого переключения между недавними чатами запущенными экспертом
- просмотреть текущие (и завершенные) беседы студента (беседы в которых он является участником)
- перейти в чат существующей беседы
- инициировать новую беседу со студентом
- смогут инициировать новую беседу со студентом, написав сообщение
- смогут писать сообщения в существующие беседы
- будут уведомлены о получении ответа (путем вызова обработчика ответа)
Требования:
- Ubuntu/Linux, virtualenv, git, nginx
- python, Django, Tastypie REST API, South, Django-admin (нужна кастомизация админки, Generic Relations, ManyToMany Relations), gevent
- большим плюсолм будет опыт разработки систем обмена сообщениями для мобильных устройств
Личностные требования: организованность, пунктуальность, инициативность, умение писать читаемый и понятно документированный код
- Файлы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.