Сервис обсуждений
Назначение
Chat Service позволяет пользователям обмениваться сообщениями непосредственно в контексте объектов платформы. Это способствует согласованности действий, снижает фрагментацию коммуникаций и обеспечивает сохранение истории обсуждений там, где она имеет значение — рядом с объектами контента, с которыми работают пользователи.
Ключевые возможности
Chat Service предоставляет возможности встроенной коммуникации внутри Power Platform:
- Ведение дискуссий по задачам, документам, объектам или другим сущностям системы.
- Возможность упоминания участников и подписки на обновления.
- Структурированное отображение обсуждений по контексту объектов.
- Хранение истории переписки и поддержка отметок о прочтении.
- Уведомления о новых сообщениях через Notification Service.
- Возможность работы в реальном времени через WebSocket.
Описание функциональности
1. Управление чатами
Сервис предоставляет возможность управлять чатами вокруг какого-либо контекста платформы. В рамках управления чатами реализованы следующие виды функциональности:
- Создание чатов вокруг контекста
- Редактирование свойств чатов
- Редактирование состава пользователей чатов
- Подписка и отписка на дискуссии
- Удаление чатов
2. Обмен сообщениями в чатах
Сервис реализует функциональность обмена мгновенными сообщениями между участниками чата.
3. Уведомление пользователей
Сервис реализует функциональность уведомления пользователей о событиях, связанных с дискуссиями.
4. Реализация управления чатами
Управление чатами реализовано за счет предоставления синхронного программного интерфейса по протоколу HTTP. Данный интерфейс предоставляет конечные точки для создания чатов, редактирования свойств чатов, удаления чатов, изменения состава пользователей чатов, подписки и отписки на дискуссию. Вся описанная функциональность доступна через пользовательский интерфейс платформы.
5. Реализация обмена сообщениями
Обмен сообщениями в чатах реализован за счет предоставления синхронного программного интерфейса по протоколу HTTP, содержащего конечную точку для оправки сообщения в чат.
При отправке запроса на данную конечную точку сообщение сохраняется в базу данных сервиса. Затем происходит отправка сообщения пользователям по каналу вебсокетов. Отправка происходит с помощью сервиса вебсокетов, входящего в платформу.
6. Реализация уведомления пользователей
Уведомление пользователей о события, связанных с дискуссиями, реализовано за счет сервиса уведомлений, входящего в платформу. Реализовано уведомление о следующих событиях:
- Получено новое сообщение в чате.
- Получено новое личное сообщение
- Создан новый чат
- Удален чат
- Добавление пользователя в чат
- Удаление пользователя из чата