Messaging applications
menu
Приложение позволяет сгенерировать меню навигации, где выбор будет сохранен в переменную
{
"menu": {
"text": "Выберите пункт меню",
"set": "${onClick.Menu}",
"variable": "${response}",
"buttons": [
[
{
"text": "💰 Кредиты",
"type": "reply"
},
{
"text": "⚙️ Главное меню",
"type": "reply"
}
],
[
{
"text": "💰 Депозиты",
"type": "reply"
},
{
"text": "🧙♂️ Помощь оператора",
"type": "reply"
}
]
]
}
}
broadcastChatMessage
Предоставляет возможность отправить сообщение через Chat Gateway.
Пример стуруктуры схемы для BroadcastMessage:
{
"broadcastChatMessage": {
"peer": [
"${destination}"
],
"profile": {
"id": "13"
},
"text": "${SMS}",
"file": {
"id": 1,
"url": "<picture url>",
},
"type": "text"
}
}
В структуру file мы можем передавать только одно из полей, или id или url. Если будут передаваться сразу 2-е поля должна возвращаться ошибка.
Важно! Поле type есть опциональное и оно определяется на основе того какие параметры мы передадим:
Если передается только поле text без поля file, тогда поле type автоматически задается как "text".
Если передается поле text и поле file тогда поле type автоматически задается как "file".
Если мы вручную передаем в поле type тип "text" и при этом передаем поле file тогда должна вернуться ошибка.
Если мы вручную передаем в поле type тип "file" и при этом не передаем поле file тогда должна вернуться ошибка.
recvMessage
Сохранить в переменную текстовое сообщение, полученное от пользователя в рамках активного диалога
{
"recvMessage": {
"set": "response",
"timeout": 60
}
}
sendMessage
отправка кнопки с текстом и картинкой из раздела Медиафайлы:
{
"sendMessage": {
"type": "file",
"text": "TEXT BLA BLA TEXT ",
"file": {
"id": "377",
"server": "https://dev.webitel.com"
},
"buttons": [
[
{
"text": "cancel",
"type": "reply",
"code": "cancel"
},
{
"text": "ok",
"type": "reply",
"code": "ok"
}
]
]
},
"break": false,
"tag": "87-menu-custom-tag"
}
отправка кнопки с текстом и картинкой по url:
{
"sendMessage": {
"type": "file",
"text": "TEXT BLA BLA TEXT ",
"file": {
"name": "code.png",
"url": "${barcode_link}&text=${start_message}&alttext=${start_message}&w=425"
},
"buttons": [
[
{
"text": "cancel",
"type": "reply",
"code": "cancel"
},
{
"text": "ok",
"type": "reply",
"code": "ok"
}
]
]
},
"break": false,
"tag": "87-menu-custom-tag"
}
chatAi
Работа с моделлю машинного обучения
{
"chatAi": {
"categories": "all",
"connection": "10.10.10.222:8081",
"definedCategories": "definedCategories",
"historyLength": 5,
"model": "default",
"notes": "Categories can be 'all' to use all categories, they can also be empty then KnowledgeBase will not be used. Variables can be any key-value pair, they will be added to prompt. ",
"response": "response",
"timeout": 50,
"variables": {
"ContractNumber": "№12345",
"DueDate": "2024-05-13",
"StartDate": "2024-01-13",
"TotalDebt": "14.000 грн",
"user_age": "15 years"
}
}
}
sendText
Приложение позволяет отправить текстовое сообщение в рамках активного диалога
{
"sendText": "Приветствую, ${Name}!"
}
sendFile
Приложение позволяет отправить ссылку на файл в рамках активного диалога
{
"sendFile": {
"url": "${file_link}"
}
}
sendEmail
Отправка Email сообщения
{
"sendEmail": {
"cc": [
"office@mail.com"
],
"attachment": {
"files": [
{"id": 69317}
] //файл НЕ из Медиафайлов
},
"from": "\"Bot Name\" <bot@mail.com>",
"message": "<H3>Turn on SMS</h3>\n<b>Creditcard</b>: ${Creditcard[0]} <i>***</i> ${Creditcard[1]}",
"smtp": {
"auth": {
"password": "pass",
"user": "bot@mail.com"
},
"port": "587",
"server": "smtp.mail.com",
"tls": true
},
"subject": "[webitel](${caller_id_name}) Email notification",
"to": [
"${customer_email}"
]
}
}
sendTTS
Возможность вызвать TTS в чате – формируется файл с привязкой к диалогу и отправляется в чат. Таким образом, можно для пользователя генерировать голосовые сообщения.
{
"sendTTS": {
"profileId": "28", // идентификатор TTS профайла
"server": "https://dn.webitel.com", // доменное имя
"textType": "ssml", // тип тексту ssml або text
"message": "dsadsa", // текст сообщения
"language": "en-US", // язык
"voice": "Male", // голос
"region": "brazilsouth", // регион
"fileName": "voice_message" // имя файла под которым наш пользователь хочет отправить даний файл
}
}
STT
Возможность переводить речь в текст
{
"STT": {
"profileId": "28", // id профайла
"fileId": "${response.file.id}", // id файла (в данному случае file.id берется с отправленного в чат файла)
"language": "en-US", // язык распознавания
"setVar": "transcription" // название переменной в которою передается транскрипция файла
}
}
getEmail
{
"getEmail": {
"email": {
"id": "420",
"message_id": "or message_id"
},
"set": {
"vbody": "body",
"vcc": "cc",
"vfrom": "from",
"vhtml": "html",
"vin_reply_to": "in_reply_to",
"vreply_to": "reply_to",
"vsender": "sender",
"vsubject": "subject",
"vto": "to",
"files": "attachments"
}
}
}
classifier
Классификатор типов ответов клиента
{
"classifier": {
"cluster": {
"my": [
"good value"
]
},
"input": "my good value",
"set": "my_var",
"phraseSearch": "true",
"matchType": "part"
},
"break": false,
"tag": "39-classifier-custom-tag"
}
chat history
Позволяет отправить истории диалога на электронную почту
{
"chatHistory": {
"conversationId": "${id}",
"variable": "my_var",
"format": "html",
"timeout": "3000",
"limit": "150"
}
}
sendAction
Позволяет отправлять посторонним провайдерам чатов сообщения о действиях нашего бота (схемы)
{
"sendAction": {
"action": "typing"
}
}
Messaging applications
- 1 menu
- 2 broadcastChatMessage
- 3 recvMessage
- 4 sendMessage
- 5 chatAi
- 6 sendText
- 7 sendFile
- 8 sendEmail
- 9 sendTTS
- 10 STT
- 11 getEmail
- 12 classifier
- 13 chat history
- 14 sendAction