Обрабатывает приветственное сообщение бота, то есть сообщение, которое бот отправляет в качестве первого (проактивного) приветствия клиенту.
В запросе должен быть указан параметр
clientId
или threadsClientId
. clientId
можно использовать только для авторизованных клиентов, threadsClientId
можно использовать для любых клиентов. Если указаны оба параметра, приоритет у clientId
. Параметры запроса
Поле | Тип | Описание |
text | string (обязательно) | Ответ бота на сообщение клиента |
clientId | string (необязательно) | Внешний ID клиента. Этот параметр устарел, вместо него используйте threadsClientId . |
threadsClientId | long (необязательно) | Внутренний ID клиента |
receivedAt | string (необязательно) | Время получения сообщения, дата в формате UTC: yyyy-MM-dd’T’HH:mm:ss.SSS’Z’ |
quickReplies | array (необязательно) | Поля: • type – Тип быстрого ответа. Возможные значения: TEXT для текстовых сообщений. • text – Текст, строка до 4000 символов. • shown_text – Текстовое содержимое, необязательный параметр, строка до 2000 символов. Используется только в комбинации с параметром text . Если параметр указан, этот текст отправляется как клиентское сообщение после нажатия на кнопку быстрого ответа.• callback_data – Текстовое содержимое, необязательный параметр, строка до 255 символов. Название события, которое будет передаваться, когда вызван JS SDK API для последующей обработки заказчиком на стороне сайта. • imageUrl – URL иконки кнопки, строка до 4000 символов. • url – Ссылка на прикрепленный файл, строка до 4000 символов. Длина и количество быстрых ответов настраивается в БД: message.max-quick-replies , message.max-quick-reply-length |
settings | object (необязательно) | Дополнительные настройки сообщения |
settings.blockInput | boolean (необязательно) | Параметр, который указывает, заблокировано ли поле ввода сообщения (true – заблокировано, false – не заблокировано). Работает только для быстрых ответов. |
quickRepliesHeaderFooter | object (необязательно) | Дополнительные заголовок и подпись (только для Whatsapp) |
quickRepliesHeaderFooter.header | array (необязательно) | Поля: • text – Текст заголовка, максимальная длина 61 символ.• imageUrl – URL изображения • documentUrl – URL файла.• documentName – Название файла • videoUrl – URL видеофайла В заголовке header можно передать параметры: текст заголовка, изображение, документ, видео. Отправить одновременно в заголовке и текст, и изображение, и документ, и видео нельзя. |
quickRepliesHeaderFooter.footer | array (необязательно) | Поля: • text – Текст подписи, максимальная длина 61 символ |
messageListPicker | object (необязательно) | Интерактивный список (только для Whatsapp) |
messageListPicker.header | object (необязательно) | Поля: • text (string) – Текст заголовка, максимальная длина 60 символов |
messageListPicker.footer | object (необязательно) | Поля: • text – Текст подписи, максимальная длина 60 символов |
messageListPicker.title | string | Наименование кнопки для интерактивного списка, максимальная длина 20 символов |
messageListPicker.sections | array (максимум 10 элементов во всех items) | Поля: • title (string) – Заголовок интерактивного списка, максимальная длина 24 символа • items (array) – массив элементов интерактивного списка |
messageListPicker.section.items | array | Поля: • title (string) – Название элемента, максимальная длина 24 символа• subTitle (string) – Необязательное. Подзаголовок элемента, максимальная длина 72 символа • identifier (string) – сквозной для всего сообщения ID элемента, вернется в ответном сообщении пользователя |
Пример curl
$ curl 'http://localhost:8080/api/v1/chatbot/greet' -i -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <token>' \ -d '{ "clientId" : "1", "threadsClientId" : 1, "text" : "greeting" }'
Пример HTTP-запроса
POST /api/v1/chatbot/greet HTTP/1.1 Content-Type: application/json Authorization: Bearer <token> Content-Length: 70 Host: localhost:8080 { "clientId" : "1", "threadsClientId" : 1, "text" : "greeting" }
Пример успешного HTTP-ответа
HTTP/1.1 200 OK
Пример сообщения с быстрым ответом
Пример curl
$ curl 'http://localhost:8080/api/v1/chatbot/stub/greet' -i -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <token>' \ -d '{ "action" : "INIT_CHAT", "clientId" : "1", "threadsClientId" : 1, "sessionId" : "1", "questionId" : 43, "receivedAt" : "2023-06-09T16:41:34.239Z", "quickReplies" : [ { "type" : "TEXT", "text" : "quick reply 1", "imageUrl" : null, "url" : null, "shown_text" : null, "callback_data" : null, "payload" : null , { "type" : "TEXT", "text" : "quick reply 2", "imageUrl" : null, "url" : null, "shown_text" : null, "callback_data" : null, "payload" : null ], "settings" : { "blockInput" : true, "masked" : false } }'
Пример HTTP-запроса
POST /api/v1/chatbot/stub/greet HTTP/1.1 Content-Type: application/json Authorization: Bearer <token> Content-Length: 597 Host: localhost:8080 { "action" : "INIT_CHAT", "clientId" : "1", "threadsClientId" : 1, "sessionId" : "1", "questionId" : 43, "receivedAt" : "2023-06-09T16:41:34.239Z", "quickReplies" : [ { "type" : "TEXT", "text" : "quick reply 1", "imageUrl" : null, "url" : null, "shown_text" : null, "callback_data" : null, "payload" : null , { "type" : "TEXT", "text" : "quick reply 2", "imageUrl" : null, "url" : null, "shown_text" : null, "callback_data" : null, "payload" : null ], "settings" : { "blockInput" : true, "masked" : false } }
Пример успешного HTTP-ответа
HTTP/1.1 200 OK