Поделиться через


Основные понятия чата

Службы коммуникации Azure Чат поможет вам добавить текстовое взаимодействие в режиме реального времени в кроссплатформенные приложения. На этой странице перечислены основные понятия и возможности,с вязанные с чатами. Общие сведения о пакетах SDK для чат-служб коммуникации см. в обзоре списков пакетов SDK, языков, платформ и подробной поддержки функций.

API чата предоставляют службу автоматического масштабирования для постоянно хранимого текста и обмена данными. К другим ключевым функциям относятся:

  • Настраиваемое удостоверение и адресация — Службы коммуникации Azure предоставляет универсальные удостоверения для решения конечных точек связи. Клиенты используют эти удостоверения для проверки подлинности в службе Azure и взаимодействия друг с другом в chat threads элементе управления.
  • Шифрование — пакеты SDK чата шифруют трафик и предотвращают изменение сети.
  • Собрания Microsoft Teams . Пакеты SDK чата могут присоединяться к собраниям Teams и взаимодействовать с сообщениями чата Teams.
  • Уведомления в режиме реального времени . Пакеты SDK чата используют эффективное постоянное подключение (WebSockets) для получения уведомлений в режиме реального времени, таких как при вводе удаленного пользователя. Когда приложения работают в фоновом режиме, встроенные функциональные возможности доступны для запуска всплывающих уведомлений ("toasts") для информирования конечных пользователей о новых потоках и сообщениях.
  • Расширяемость бота— легко добавить ботов Azure в службу чата с интеграцией Azure Bot.

Общие сведения о чатах

Беседы в чате организованы в потоки чатов. Потоки чатов характеризуются следующим образом:

  • Удостоверение потока чата — это его ChatThreadIdудостоверение.
  • Потоки чата имеют от нуля до 250 пользователей в качестве участников, которые могут отправлять сообщения в него.
  • Пользователь может быть частью неограниченного количества потоков чата.
  • Только участники потока могут отправлять или получать сообщения, добавлять участников или удалять участников.
  • Пользователи добавляются в качестве участника в любые создаваемые потоки чата.

Доступ пользователей

Службы коммуникации Azure поддерживает три уровня управления доступом пользователей с помощью маркеров чата. Дополнительные сведения см. в разделе "Идентификация и маркеры ". У участников нет доступа на запись к сообщениям, отправленным другими участниками, что означает, что только отправитель сообщения может обновлять или удалять отправленные сообщения. Если другой участник пытается сделать это, они получают ошибку.

Данные чата

Службы коммуникации Azure сохраняет потоки чата в соответствии с политикой хранения данных, которая действует при создании потока. Политику хранения можно обновить при необходимости в течение заданного периода хранения. После удаления потока чата (по политике или запросу на удаление API) его невозможно получить.

Внимание

Функции, описанные в этой статье, в настоящее время находятся в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения об уровне обслуживания. Ее не следует использовать для производственных рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.

Вы можете выбрать между неопределенным хранением потоков, автоматическим удалением от 30 до 90 дней с помощью политики хранения в API создания потока чата или немедленного удаления с помощью API Удалить сообщение чата или удалить поток чата.

Любой поток, созданный до новой политики хранения, не затрагивается, если только вы не измените политику для этого потока. Если вы отправляете запрос на поддержку для удаленного потока чата более 30 дней после удаления этой политики хранения, он больше не может быть получен и нет сведений об этом потоке. При необходимости откройте запрос в службу поддержки как можно быстрее в течение 30 дней после создания потока, чтобы помочь вам.

Участники потока чата могут просматривать журнал сообщений определенного потока с помощью ListMessages. ListMessages API не может возвращать журнал потока, если поток удаляется. Пользователи, удаленные из потока чата, могут просматривать предыдущий журнал сообщений, но не могут отправлять или получать новые сообщения. Случайно удаленные сообщения не восстанавливаются системой. Дополнительные сведения о данных, хранящихся в службе чата Службы коммуникации Azure, см. на странице расположения данных и конфиденциальности.

Для клиентов, использующих виртуальные встречи, см. сведения о конфиденциальности пользователей Teams о взаимодействии пользователей для хранения сообщений чата в собраниях Teams.

Лимиты служб

  • Максимальное число участников, разрешенное в потоке разговора, — 250.
  • Максимально допустимый размер сообщения составляет примерно 28 КБ.
  • В потоках более чем с 20 участниками уведомления о прочтении и индикатор ввода обычно не поддерживаются.
  • Для сценариев взаимодействия Teams это число пользователей Службы коммуникации Azure, а не пользователей Teams, которое должно быть ниже 20 для поддержки функции индикатора ввода.
  • При создании потока чата можно задать политику хранения в диапазоне от 30 до 90 дней.
  • В сценариях взаимодействия Teams событие индикатора ввода может содержать пустое отображаемое имя при отправке от пользователя Teams.
  • Для сценариев взаимодействия Teams чеки чтения не поддерживаются для пользователей Teams.

Архитектура чата

Существует две основные части архитектуры чата: 1) доверенное приложение и 2) клиентское приложение.

Схема архитектуры чата в Службах коммуникации.

  • Доверенная служба. Для правильного управления сеансом чата требуется служба, которая помогает подключаться к Службам коммуникации с использованием строки подключения к ресурсу. Эта служба отвечает за создание потоков чатов, а также добавление и удаление участников и выдачу пользователям маркеров доступа. Дополнительные сведения см . в кратком руководстве по созданию маркеров доступа и управлению ими.
  • Клиентское приложение: клиентское приложение подключается к доверенной службе и получает маркеры доступа, которые пользователи должны подключаться непосредственно к службам коммуникации. После создания потока чата и добавления участников можно использовать клиентское приложение для подключения к потоку чата и отправки сообщений. Участники могут использовать уведомления в режиме реального времени в клиентском приложении для подписки на обновления сообщений и потоков от других участников.

Создание интеллектуальных возможностей чата с использованием искусственного интеллекта

Службы ИИ Azure можно использовать с помощью службы чата для создания таких вариантов использования:

  • помочь службе поддержки приоритизировать обращения, определяя негативную тональность во входящем сообщении клиента;
  • Создайте сводку в конце беседы для отправки клиенту по электронной почте с помощью следующих шагов или дальнейших действий на более позднюю дату.
  • Добавьте power Virtual Agent (PVA) в канал чата Службы коммуникации Azure с помощью Azure Bot и бота ретрансляции.
  • Настройте бота для запуска на одном или нескольких социальных каналах вместе с каналом чата.

Схема, показывающая Службы коммуникации Azure, может быть связана со службами ИИ Azure.

Типы сообщений

В рамках журнала сообщений чат предоставляет общий доступ к созданным пользователем сообщениям и системным сообщениям.

Системные сообщения создаются при создании

  • Поток чата обновляется
  • Участник был добавлен или удален
  • Раздел потока чата обновлен.

При вызове List Messages или Get Messages в потоке чата результат содержит оба типа сообщений в хронологическом порядке. Для созданных пользователем сообщений тип сообщения можно задать SendMessageOptions при отправке сообщения в поток чата. Если значение не указано, служба коммуникации по умолчанию использует тип text . Это значение важно правильно указать, если отправляется код HTML. При html указании службы коммуникации очищают содержимое, чтобы обеспечить безопасное отображение содержимого на клиентских устройствах.

  • text — сообщение в формате обычного текста, составленное и отправленное пользователем в поток чата.
  • html — форматированное сообщение с синтаксисом HTML, составленное и отправленное пользователем в поток чата.

Типы системных сообщений

  • participantAdded: системное сообщение, указывающее, что один или несколько участников находятся в потоке чата.
  • participantRemoved: системное сообщение, указывающее, что участник был удален из потока чата.
  • topicUpdated: системное сообщение, указывающее, что раздел потока обновляется.

Уведомления в реальном времени

Пакет SDK для чата JavaScript поддерживает уведомления в режиме реального времени. Эта возможность позволяет клиентам в реальном времени получать от Служб коммуникации обновления потока чата и входящие сообщения, не опрашивая API.

Клиентское приложение может подписываться на следующие события:

  • chatMessageReceived — отправка сообщения участником в поток чата.
  • chatMessageEdited — изменение сообщения в потоке чата.
  • chatMessageDeleted — удаление сообщения в потоке чата.
  • typingIndicatorReceived — отправка состояния набора текста другим участником в поток чата.
  • readReceiptReceived — отправка подтверждения о прочтении сообщения другим участником.
  • chatThreadCreated — когда пользователь служб коммуникации создает поток чата.
  • chatThreadDeleted — при удалении потока чата пользователем служб коммуникации.
  • chatThreadPropertiesUpdated — обновление свойств потока чата (сейчас для потока поддерживается только обновление темы).
  • participantsAdded — добавление пользователя а качестве участника потока чата.
  • participantsRemoved — удаление существующего участника из потока чата.
  • realTimeNotificationConnected — при подключении уведомления в режиме реального времени.
  • realTimeNotificationDisconnected —при отключении уведомления в режиме реального времени.

Примечание.

Уведомления в режиме реального времени не используются с серверными приложениями.

События сервера

Эта функция позволяет серверным приложениям прослушивать такие события, как отправка сообщения и при присоединении участника к чату или выходе из нее. Серверные приложения могут реагировать на эти события, добавлять и удалять участников в чат, архивировать чаты, выполнять анализ и многие другие сценарии оркестрации. Сведения о том, какие типы событий чата могут использоваться разработчиками, см. в разделе "События сервера".

Push-уведомления

Пакеты SDK для чатов Android и iOS поддерживают push-уведомления. Чтобы отправить push-уведомления для сообщений, пропущенных участниками во время их отсутствия, подключите ресурс Центра уведомлений с ресурсом Служб коммуникации для отправки push-уведомлений. Это уведомляет участников приложения о входящих чатах и сообщениях, когда мобильное приложение не запущено на переднем плане.

IoS и Android SDK поддерживают следующее событие:

  • chatMessageReceived — когда участник отправляет новое сообщение в поток чата.

Пакет SDK для Android поддерживает дополнительные события:

  • chatMessageEdited — когда участник редактирует сообщение в потоке чата.
  • chatMessageDeleted — когда участник удаляет сообщение в потоке чата.
  • chatThreadCreated — когда пользователь служб коммуникации создает поток чата.
  • chatThreadDeleted — при удалении потока чата пользователем служб коммуникации.
  • chatThreadPropertiesUpdated — при обновлении свойств потока чата; В настоящее время поддерживается только обновление раздела для потока.
  • participantsAdded — при добавлении участника в поток чата.
  • participantsRemoved — при удалении существующего участника из потока чата.

Дополнительные сведения см. в разделе "Push-уведомления".

Примечание.

В настоящее время отправка push-уведомлений чата с центром уведомлений общедоступна в Android версии 1.1.0 и в IOS версии 1.3.0.

Следующие шаги