В этой статье представлено описание основной информации, которую edna Chat Center передает чат-боту с помощью веб-хуков. Более подробную информацию об этих и других веб-хуках с детальными примерами и возможными ответами вы можете найти здесь.
Событие загрузки чата
При инициализации чата edna отправляет чат-боту веб-хук INIT_CHAT
, сообщая о том, что чат был инициализирован.
В веб-хуке передается следующая информация о клиенте:
action
— всегдаINIT_CHAT
threadsClientId
— внутренний ID клиента в ednachannelInfo.channelType
— канал, в котором был инициализирован чатchannelInfo.authorized
— авторизован ли клиент (true
/false
)platform
– только для каналов с типом Mobile (iOS/Android)sender
– информация об отправителе, всегдаThreadsAPI
clientData
— тут передаются дополнительные поля с информацией о клиенте
Отправка сообщения клиентом
Когда клиент пишет в тред, смаршрутизированный на чат-бота, edna отправляет вебхук MESSAGE
cо следующей информацией:
action
— всегдаMESSAGE
text
— текст сообщения клиентаclientId
— ID клиента во внешней системе (для авторизованных клиентов)threadsClientId
— внутренний ID клиента в ednasessionId
— ID треда в ednaquestionId
— ID сообщения в БД ednaquestionIndex
— номер сообщения в тредеchannelInfo.channelType
— канал, в котором был инициализирован чатchannelInfo.authorized
— авторизован ли клиент (true
/false
)platform
– только для каналов с типом Mobile (iOS/Android)clientData
— тут передаются дополнительные поля с информацией о клиентеsegmentationInfo
— объект, содержащий дополнительную информацию для маршрутизации треда (кастомный параметр сегментации) после ботаkey
— имя параметра сегментацииvalue
— значение параметра сегментации
receivedAt
— время, когда было получено сообщениеattachments
— массив с объектами вложенийattachments.url
— ссылка на вложениеattachments.name
— имя файла вложенияattachments.type
— тип файла вложенияattachments.size
— размер вложения
sender
— информация об отправителе, всегдаThreadsAPI
settings.blockInput
– параметр, отвечающий за блокировку поля ввода сообщения (true
/false
) при использовании быстрых ответовsettings.masked
– параметр, отвечающий за маскирование цифр в сообщении клиента (true
/false
)