Operator API
При помощи Operator API вы можете подключить любой операторский канал к проекту чат-бота, который был создан в Aimylogic. При интеграции с Aimylogic в приложение оператора направляются данные, полученные чат-ботом в диалоге с клиентом.
Методы API позволяют:
- отправить сообщение или ссылку на файл оператору;
- выбрать группу операторов для обработки обращений;
- передать оператору дополнительную информацию о клиенте;
- подписаться на уведомления, посредством которых Operator API информирует о сообщениях для клиента, о доставке сообщений клиента, о закрытии сообщения оператором и других событиях.
Методы API
При интеграции с Aimylogic по Operator API вы должны создать веб-сервер, который поддерживает запросы:
- POST
{apiUrl}/setWebhook
- POST
{apiUrl}/sendText
- POST
{apiUrl}/sendFile
- POST
{apiUrl}/closeChat
- POST
{apiUrl}/selectDestination
- GET
{apiUrl}/getDestinations
{apiUrl}
— полный URL-адрес веб-сервера, на который будут отправляться запросы. Иными словами, это URL используемой вами операторской платформы.POST /setWebhook
Метод устанавливает URL, на который будут направляться события для обработки Aimylogic. Например, отправка сообщения оператором или закрытие чата.
Запрос
POST {apiUrl}/setWebhook
Тело запроса
{
"url": "http://{host_name}/chatadapter/chatapi/webhook/operatorapi/{apiKey}",
}
Параметры запроса
Параметр | Тип | Описание |
---|---|---|
apiUrl | string | URL веб-сервера, на который будут направляться запросы Operator API. |
url | string | Вебхук, который приходит в результате установки setWebhook . В дальнейшем на него необходимо направлять события в Aimylogic. |
ApiKey | string | Идентификатор канала. |
POST /sendText
Клиент отправил сообщение в чат с оператором.
Запрос
POST {apiUrl}/sendText
Тело запроса
{
"userId": "<userId>",
"text": "текст"
}
Параметры запроса
Па раметр | Тип | Обязательный | Описание |
---|---|---|---|
userId | string | Да | Идентификатор клиента. |
text | string | Да | Текстовое сообщение, отправленное клиентом. |
POST /sendFile
Клиент отправил файл в чат с оператором.
Запрос
POST {apiUrl}/sendFile
Тело запроса
{
"userId": "<userId>",
"url": "http://someUrl",
"fileName": "example",
"size": 1
}
Параметры запроса
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
userId | string | Да | Идентификатор клиента. |
url | string | Да | Ссылка для скачивания файла. |
fileName | string | Нет | Имя файла для скачивания. |
size | integer | Нет | Размер файла в байтах. |
POST /closeChat
Клиент закрыл чат с оператором.
Запрос
POST {apiUrl}/closeChat
Тело запроса
{
"userId": "<userId>",
"text": "Пользователь закрыл диалог"
}
Параметры запроса
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
userId | string | Да | Идентификатор клиента. |
text | string | Да | Текстовое сообщение, отправленное при закрытии чата. |