Получение сообщений
Для тестирования работы вебхука можно использовать этот сервис
Для подключения персонального канала, вы должны указать вебхук, на который Савви будет отправлять сообщения. Он будет делать это в следующем виде:
Запрос
Ваш вебхук должен возвращать статус код в диапазоне 200-299 и отвечать в течение 20 секунд. В противном случае запрос считается ошибочным, а сообщения — недоставленными (такие сообщения Савви не видит).
Ваш вебхук будет получать запросы с разных IP-адресов. Для проверки и авторизации используйте настройку «Секрет вебхука».
Мы сделаем POST запрос на ваш вебхук, передав туда тело следующего вида:
Если при подключении персонального канала, вы указали секрет вебхука, то мы передадим его в заголовке Authorization
в следующем виде:
Объект в запросе
event_type
строка (new_messages
или test_request
)
Тип события. На данный момент реализовано только событие для новых сообщений и тестовый запрос, но в будущем можем добавить и другие.
В зависимости от этого параметра набор полей может измениться
test_request
- событие который мы пришлем на ваш вебхук при нажатии на кнопку проверки в ЛК Савви
Рекомендуем проверять данный параметр и игнорировать запрос, если event_type <> "new_messages"
new_messages
массив объектов Message
Новые сообщения. Присутствует только если тип события - new_messages
chat_id
строка
Айди чата. Айди чата, который вы указывали при отправке запроса на наш АПИ. Нужен, чтобы вы могли в своей системе идентефицировать, в какой чат добавить ответ.
Присутствует только если тип события - new_messages
Объект Message
Message
type
строка (text
, image
, audio
, document
)
Тип сообщения. От этого параметра зависит набор полей.
message_sender
строка (ai
или employee
)
Отправитель сообщения. Присутствует во всех типах, определяет кто прислал сообщение (бот или сотрудник через личный кабинет Савви)
text
строка
Текст сообщения. Присутствует только, если тип сообщения - text
file
объект MessageFile
Приложенный файл. Присутствует только, если тип сообщения - image
, audio
или document
Объект MessageFile
MessageFile
url
строка
Прямая ссылка для загрузки файла.
Файл будет расположен на нашем сервере.
name
строка
Имя файла.
size_bytes
целое число ∈ [0, +∞)
Размер файла в байтах.
mime_type
строка ^[a-zA-Z0-9]+/[a-zA-Z0-9-.+]+$
Mime-тип файла.
Савви может отправить файлы следующих типов:
Для изображений:
image/png
,image/jpeg
,image/gif
Для аудио:
audio/ogg
,audio/mpeg
,audio/wav
,audio/x-wav
,audio/webm
,audio/mp4
,audio/m4a
,audio/x-m4a
Для документов: любые, включая вышеперечисленные
Last updated
Was this helpful?