• KB Home
  • API
  • API edna Chat Center для Bot Connect
  • Вебхук Hints

Вебхук Hints

Этот вебхук предназначен для тренировки бота на основании диалогов между агентами и клиентами. После этого бот сможет отправлять подсказки агентам. В таких подсказках содержатся вероятные варианты ответов клиентам, которые могут быть крайне полезными и эффективными в работе агентов.

Бот отправляет сообщения, если тред принадлежит пользователю с ролью Operator (то есть агенту).

Вам необходимо включить настройку, которая позволит тренировать бота.

Скрипт

INSERT INTO settings (ID, key, value) VALUES (nextval('settings_id_seq'), 'bot.connect.training.chat.enabled', 'true');

Вам также необходимо добавить вебхук для соответствующего бота в АРМ администратора.

Параметр

Тип

Описание

action

boolean (обязательно)

  • TRAINING

text

string (обязательно)

Сообщение клиента или агента, которое вы хотите направить боту на обучение

clientId

string (необязательно)

Внешний ID клиента (только для авторизованных клиентов). Этот параметр устарел, вместо него используйте threadsClientId.

threadsClientId

Long (необязательно)

Внутренний ID клиента (подходит как для авторизованных, так и для неавторизованных клиентов)

sessionId

string (необязательно)

Внутренний ID треда

receivedAt

string (обязательно)

Время получения сообщения, дата в формате UTC: yyyy-MM-dd’T’HH:mm:ss.SSS’Z’

attachments

array of object (необязательно)

Поля
  • url – URL файла, строка до 4000 символов

  • name – Имя файла, строка до 1000 символов

  • type – MIME-тип файла, строка до 256 символов

  • size – Размер файла в байтах, целое число

messageIndex

int(обязательно)

Индекс сообщения в рамках треда

messageOwner

string (обязательно)

Автор сообщения (CLIENT/OPERATOR)

channelInfo

object (обязательно)

Информация о канале, в котором получено сообщение

id

string

Channel ID

channelType

string

Тип канала (WEB, MOBILE, EMAIL, VIBER, TELEGRAM, VIBERPA, FACEBOOK, VKONTAKTE, YANDEX, WHATSAPP, APPLE_BUSINESS_CHAT)

authorized

boolean

true – авторизован, false – не авторизован

HTTP запрос

POST <url for webhook training> HTTP/1.1
Content-Type: application/json
{
   "operator":{
      "id":3,
      "name":"Maria",
      "role":"OPERATOR",
      "maxThreads":6,
      "freeSlots":0,
      "photoUrl":null
   },
   "messageIndex":7,
   "messageOwner":"CLIENT",
   "action":"TRAINING",
   "clientId":"1111",
   "threadsClientId":218,
   "sessionId":"249",
   "receivedAt":"2021-03-25T03:12:28.825Z",
   "text":"asdf",
   "channelInfo":{
      "id":1,
      "channelType":"WEB",
      "authorized":true
   },
   "attachments":[
   ],
   "clientData":{
      "locale":"ru"
   },
   "sender":"ThreadsAPI"
}

Пример успешного HTTP запроса

Для синхронных ответов ожидается текст сообщения и статус 200 (OK); для асинхронных ответов ожидается статус 202 (Accepted).

{
   "sessionId":"1",
   "messageIndex":"1",
   "hints":[
      {
         "text":"hint 1",
         "score":0.4
      },
      {
         "text":"hint 2",
         "score":0.6
      }
   ]
}

Параметры ответа

Параметр

Тип

Описание

sessionId

string (необязательно)

Внутренний ID треда

messageIndex

integer (обязательно)

Индекс сообщения в рамках треда

messageOwner

string (обязательно)

Автор сообщения (CLIENT/OPERATOR)

hints

array of object (необязательно)

Подсказки бота для агентов
  • text – Текст подсказки

  • score – Номер подсказки