Messaging applications

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 тогда должна вернуться ошибка.

{    "broadcastChatMessage": {        "peer": [            "${destination}"         ],         "profile": {             "id": "13"         },         "text": "${SMS}",         "type": "text", "buttons": [ { "button": [ { "caption": "Google", "text": "Google", "type": "url", "url": "https://google.com", "code": "google" } ] } ],    } }

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" } }