Для реализации внешнего интерфейса к каналам Sherlock Platform через API необходимо реализовать обработку входящих и отправку исходящих сообщений. Такая задача возникает, например, если необходимо:
Подключить Apple Business Chat (или другой канал) к какой-либо собственной системе
Реализовать собственный интерфейс web чата, в том числе в мобильном приложении
Использовать Sherlock Platform в качестве бот платформы с внешним чат центром (сообщения принимает Sherlock Platform)
Подключить внешнего бота к Sherlock Platform (сообщения принимает Sherlock Platform)
Для реализации логики необходимо выполнить следующие шаги:
Подключиться к каналу, настроенному в Sherlock Platform. Для подключения необходимо авторизоваться и получить идентификатор канала в справочнике Каналы
Подписаться на уведомления по входящим сообщениям или настроить webhook. Смотрите материалы в статьях Подписка на уведомления о событиях и Передача диалогов и сообщений на внешний WebHook соответственно.
Реализовать получение сообщений, обновление/отражение списков диалогов и сообщений. В уведомлении приходят идентификаторы обновленных диалогов и клиентов. Для обработки надо:
Получить данные диалога по requestId
Получить сообщения диалога по requestId
Сохранить или отразить диалог и новые сообщения
Загрузить и отразить файлы, связанные с сообщением
Интегрировать отправку сообщений. Смотрите статью Отправка сообщений через API.
Дополнительно Sherlock Platform позволяет реализовать автоматических ботов, использующих все возможности платформы (в том числе Apple Business Chat). В случае, если часть логики будет реализована на стороне Sherlock Platform (например, боты будут работать в Sherlock Platform, а операторы отвечать во внешней системе), рекомендуется разграничить логику на основе статуса диалога.