Передача диалогов и сообщений на внешний WebHook

Последние изменения: 14.03.2025

По необходимости Sherlock Platform может отправлять уведомления о сообщения и диалогах на внешний WebHook. Включается данная логика в справочнике Интеграции (Настройки => Интеграции => CustomWebhook)

8278da7480ceee3bbdaa6da1ede8782b.png

Для включения надо установить признак активности. Sherlock Platform позволяет передавать сообщения (1) (в момент их получения) и закрытые диалоги (2) (в момент закрытия)

1) Для получения сообщений надо указать URL вашего webhook на вкладке [отправка сообщений]:

bb410b22e634620d8f580543720a59df.png

Далее Sherlock Platform будет направлять все события в соответствии с настройками на указанный webhook в следующем формате json: 

  • eventType - строка с типом уведомления 

    • ClientIdentification (5, идентификация клиента), ClientEdit (6, изменение клиента) - в дополнение к стандартным реквизитам уведомления включаются данные клиента

    • IncomingMessages (1, Входящие сообщения), OutgoingMessages (2, Исходящие сообщения), MessageEdit (7, изменение сообщения), MessageDelete (8, удаление сообщения), StatusMessages (9, статусные сообщения) - в дополнение к стандартным реквизитам уведомления включаются данные сообщения в формате, описанном по ссылке

    • ChangeRequestResponsible (3, Смена оператора), ChangeRequestStatus (4, смена статуса диалога) - в дополнение к стандартным реквизитам уведомления включаются данные диалога

  • externalClientId - идентификатор клиента во внешней системе, если указана настройка "Код внешней системы для событий" и есть внешний идентификатор клиента для данной системы 

  • externalRequestId - идентификатор диалога во внешней системе, если указана настройка "Код внешней системы для событий" и есть внешний идентификатор диалога для данной системы

  • externalId - идентификатор во внешней системе диалога или клиента, если указана настройка "Код внешней системы для событий". Возвращает первое не пустое значение. Рекомендуется использовать явно externalClientId или externalRequestId

2) Для получения закрытых диалогов надо указать URL вашего webhook на вкладке [отправка закрытых диалогов]. На webhook будет приходить json формата

{
"request": {объект в формате по ссылке},
"messages": [коллекция в формате по ссылке],
"botContexts": [{"code":"...", "value":"..."}, ...]
}

Помогла ли вам статья?