Получение сообщений
Last updated
Was this helpful?
Last updated
Was this helpful?
Для подключения персонального канала, вы должны указать вебхук, на который Савви будет отправлять сообщения. Он будет делать это в следующем виде:
Ваш вебхук должен возвращать статус код в диапазоне 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
type
строка (text
, image
, audio
, document
)
Тип сообщения.
От этого параметра зависит набор полей
message_sender
строка (ai
или employee
)
Отправитель сообщения.
Присутствует во всех типах, определяет кто прислал сообщение (бот или сотрудник через личный кабинет Савви)
text
строка
Текст сообщения.
Присутствует только, если тип сообщения - text
file
объект MessageFile
Приложенный файл.
Присутствует только, если тип сообщения - image
, audio
или document
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
Для документов: любые, включая вышеперечисленные
Например: