Для поиска поставьте запрос в кавычки!

Описание элементов конструктора Чат-ботов

Изменено Mon, 12 Feb 2024 на 10:34 AM

Общее для всех элементов

✅Примечание:
Иконка оранжевого цвета в виде восклицательного знака в круге оповещает, что данная услуга платная.

Узлы

Узлы бывают двух типов:
  • Узел входа
  • Узел выхода

Каждый элемент имеет по крайней мере один узел

На рисунке зелёным помечены узлы входа, красным — узлы выхода

Узел входа

Может быть только один. Есть на каждом элементе (исключением является только элемент Начало). В узел входа может приходить сколько угодно дуг.

Узел выхода

Может быть несколько. Есть на каждом элементе (исключениями являются элементы Переход и Переход между сценариями). Из каждого узла выхода может выходить только одна дуга.
 

⚠️ Внимание!

При отсутствии дуги выходящей из узла выхода сценарий переходит на элемент Начало.

Id/название элемента

Имя отображается в верхней строке элемента. Для изменения необходимо нажать на иконку карандаша. По умолчанию имя отсутствует

Справка

Нажатие на иконку перенаправляет на страничку элемента в базе знаний

Использование переменных

Для использования переменной (глобальной или локальной) в любом* элементе необходимо использовать следующий формат написания.
${{названиеПерем0енной}}
Например:
У вас есть переменная name, в которой записано имя пользователя (Иван). Чтобы с ним поздороваться вам нужно написать:
Привет, ${{name}}!
Тогда отправленный текст приобретёт вид:
Привет, Иван!
*исключением являются элементы Переменная, Ответ, Запрос. Будет отмечено дополнительно.

Переменные по умолчанию

По умолчанию у каждого пользователя есть следующий набор переменных

Все коннекторы

chat_user_id
Идентификатор пользователя внутри платформы MCN Telecom

VK

vk_is_subscribed:
Подписан ли собеседник на сообщество
vk_first_name:
Имя собеседника
vk_last_name:
Фамилия собеседника
vk_id:
Id профиля собеседника
vk_nickname:
Короткое id профиля собеседника
vk_bdate:
Дата рождения собеседника
vk_city:
Город собеседника
vk_country:
Страна собеседника
vk_gender:
Пол собеседника

Telegram

telegram_id:
Id собеседника
telegram_username:
Никнейм собеседника
telegram_first_name:
Имя собеседника
telegram_last_name:
Фамилия собеседника
telegram_start:
Данные при переходе по ссылке [https://t.me/<Имя_бота>?start=**<ДАННЫЕ>**](https://t.me/<Имя_бота>?start=<ДАННЫЕ>)

Viber

viber_first_name:
Имя собеседника
viber_last_name:
Фамилия собеседника

Декорация текста

⚠️ Внимание!

  Функция работает только для telegram и viber

 

На некоторых элементах можно включить опцию декорации текста.
При активации данной опции становится доступно изменение начертания текста. Текст с измененным начертанием необходимо писать внутри специальных символов.
Доступны следующие начертания:

  • Курсив (_)

  • Жирный (*)

  • Код (’’’) сохраняются все символы (в.т.ч отступы)

  • Ссылка ([текст](URL)) (не работает в viber)


     

Пример

Вставка изображений

 

⚠️ Внимание!

Изображения должны соответствовать требованиям описанным в Изображения.


Элементы

Начало

С этого элемента бот начинает обработку сценария. Элемент обязательно должен быть соединен с другими, иначе кроме как приветствия собеседник ничего не увидит. Элемент нельзя удалить.

 

Параметры

Текст — приветственный текст, который видит пользователь при первом взаимодействии с ботом.

Сообщение

Бот отправляет сообщение, в мессенджер.

Специальные сообщения

⚠️ Внимание!

Следующие функции работают только в Telegram

 

Контакт — отправка собеседнику сообщения с контактом
Иван Иванов ![contact](71234567890)


Запрос геолокации — отправка собеседнику запроса на доступ к его геолокации
*Текст сообщения*[*Текст на кнопке*](geo)

 

⚠️ Внимание!
Для появления данных о локации собеседника в конструкторе, необходимо, чтобы после сообщения находился элемент Ответ. Геолокация приходит в виде координат, например адрес офиса компании отобразится в виде 37.643583
55.677904

[https://www.google.com/maps/place/MCN+Telecom](https://www.google.com/maps/place/MCN+Telecom)
Запрос контакта — отправка собеседнику запроса на доступ к его номеру телефона
*Текст сообщения*[*Текст на кнопке*](contact)

 

⚠️ Внимание!
Для появления номера телефона собеседника в конструкторе, необходимо, чтобы после сообщения находился элемент Ответ. Номер телефона сохранится в виде 71234567890

Закрепить сообщение

⚠️ Внимание!

Функция доступна только в telegram

  

Бот отправит сообщение и закрепит его в диалоге

Переменная

Записывает значение в переменную
Аналог оператора присвоения

Параметры

Глобальная переменная — переключает режим работы элемента с взаимодействия с локальными переменными, на взаимодействие с глобальными. Про локальные и глобальные переменные см. ‣
Название — название переменной, при отсутствии переменной с указанным именем создаст её.
Значение — данные для записи в переменную.
Доп. опции:
Запись текущего времени — записывает в переменную текущее время
Запись текущей даты — записывает в переменную текущую дату
Случайное число — записывает в переменную случайное число длины, указанной в поле Длина кода


*в данном блоке окружать имя переменной символами ${{ }} не требуется.

Условие

Проверяет выполнение условия указанного в элементе. В случае, если условие выполнилось, выполнение сценария продолжается по ветке Истина, иначе — Ложь

Параметры

Значение 1 — первый параметр условия
Операция — операнд, по правилам которого происходит проверка условие
  • < - меньше (Истина если Значение 1 меньше Значения 2). Строки сравниваются в алфавитном порядке
  • = — равенство (истина если Значение 1 равно Значению 2)
  • Включение — (истина если Значение 1 содержит в себе Значение 2)


Такое выражение будет истинным.

? Значения переменных также можно сравнивать с пустым полем, проверяя таким образом находится ли в них что-то или нет.

Сравниваем значение переменной name с пустотой. Пусто ли name?
Таким образом сценарий пойдет по ветви Истина если name пусто (в неё ничего не записано), иначе (в переменной name содержится некоторое значение) по ветви Ложь

Задержка

Приостанавливает выполнение сценария для одного собеседника

Параметры

Относительное время
Указывается время, по истечении которого пользователь будет направлен дальше по сценариюId или название — при отсутствии дуги, выходящей из элемента, блок направит пользователя к элементу с указанным id
Абсолютное время

Переход

Элемент без узла выхода, после выполнения переносит сценарий на указанный элемент.

Такой переход эквивалентен схеме:

Параметры

 

Id или название — id или название элемента на который будет осуществлен переход.

Для того, чтобы указать элемент на, который будет перенаправлять блок необходимо, чтобы первый имел его. См Id/название элемента.

Операция

Выполняет арифметическую операцию, записывая результат в переменную

Параметры


Название — название переменной в которую будет записан результат
Значение 1, Значение 2 — данные (операнды) с которыми проводится арифметическая операция
Операция —функция выполняемая над операндами (в правом верхнем углу)
  • + — сложение
  • — вычитание
  • * — умножение
  • / — деление
  • Сложение даты — сложение для переменных в которых хранится дата

*в данном параметре окружать имя переменной символами ${{ }} не требуется

Оператор

Элемент передаёт управление диалогом оператору, до тех пор, пока собеседник не напишет одно их ключевых слов.
Функция работает с продуктом Контакт-центр ИИ.

Параметры


Фраза регулярное выражение, на которое будет проверяться каждое сообщение пользователя. При нахождении совпадение управление передаётся обратно боту.
Пример фразы:
.выйти.|.Выйти.|.Конец.|.конец.|.Пока.|.пока. — такое выражение прекратит диалог с оператором при появлении любого из перечисленных слов в сообщении
пользователя.
 

⚠️ Внимание!

Обратите внимание, что проверяются именно сообщения пользователя, а не оператора. Таким образом оператор не может прекратить диалог с пользователем до тех пор, пока пользователь сам этого не сделает.

Расписание

Элемент проверяет соответствие текущего времени расписанию. В случае если расписание соответствует текущему времени — сценарий продолжает своё выполнение по ветви Подходит, иначе Не подходит.
Аналогично блоку 
Условие

Параметры

 

1. День недели — день недели, к которому применяется расписание2. Время начала работы — в данный день недели начиная с выбранного времени блок начнёт работу (сценарий будет идти по ветке Истина)
3. Время окончания работы — в данный день недели после заданного времени блок работать не будет (сценарий будет идти по ветке Ложь)
4. Круглосуточно — в этот день Блок работает (сценарий будет идти по ветке Истина) весь день (c 0:00 до 23:59)
5. Никогда — в этот день блок работать не будет (сценарий будет идти по ветке Ложь) (значение по умолчанию). При этом значение параметров 2 и 3 принимают значение 0:00.

Включение

Он же оператор множественного выбора, который последовательно проверяет наличие значения любого из значений в элементе в переменной. При совпадении данных значений выполнение сценария продолжается по соответствующей дуге.
Аналог конструкции switch/case, но вместо операции == используется includes

Параметры

  

Текст сообщения (Переменная) — текст, который будет проверяться на выполнение условий. Если текст пользователя содержит слово из первой и одновременно из второй строки, будет выбрана первая строка как приоритетная.

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

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

Меню

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

Параметры



  

1. Авто-переход — работает так же, как и Переход. Пользователь переходит на элемент, который был Вами назван произвольным именем, после выбранной опции
1a. Id или название — id или название элемента на который будет осуществлен переход
1b. Задержка
2. Текст сообщения — текст, который пользователь увидит при попадании на элемент “Меню”, и под которым будут опции.
3. Повторный текст меню — текст, который пользователь увидит, если ответит на меню не с помощью отправки сообщения, а нажатием кнопки.
4. Название переменной для записи ответа пользователя — переменную, в которую запишется последний ответ пользователя на меню. Даже если он нажал на кнопку, в таком случае запишется значение кнопки
5. Переход при ответе не по кнопке, см. Переход.
6. Опции — варианты ответа, предлагаемые пользователю новые можно добавить, нажав на светло-синюю надпись “Добавить ответ”. Опциям можно задать названия и соединить их с другими элементами сценария, на которые пользователь перейдет при выборе
той или иной опции.
7. Изображение — можно добавить картинку, которая будет выводиться вместе с текстом и выбором опций

Ответ

Элемент отправляет собеседнику сообщение с вопросом и записывает его ответ в переменную.

Параметры

 

Переменная — название переменной, куда будет записан ответ
Текст запроса — текст сообщение, которое будет отправлено пользователю, ответ на него и будет записан в переменную
*в данном блоке окружать имя переменной символами ${{ }} не требуется

Запрос

Элемент позволяет выполнить GET или POST HTTP запрос по выбранному адресу и сохранить ответ в переменную.

Параметры

 

URL — адрес, по которому будет производиться запрос
Метод (в верхнем правом углу) — POST/GET метод запроса к сайту.
Переменные
Название — имя переменной, в которую будет записано значение
Путь n —путь к данным, которые надо записать в переменную.

? Пример
{ "menu": { "id": "file", "value": "File", "popup": { "menuitem": [ { "value": **"New"**, "onclick": "CreateNewDoc()" }, { "value": "Open", "onclick": "OpenDoc()" }, { "value": "Close", "onclick": "CloseDoc()" } ] } }}
Чтобы получить выделенное выше значение, необходимо указать:
Путь 1: menu
Путь 2: popup
Путь 3: menuitem
Путь 4: 0
Путь 5: value

Изображения

Отправляет собеседнику сообщение с изображением.

Требования:

Форматы jpg, jpeg, png
Размер <10Mb, кроме Viber (<1Mb) Для рассылок <5Mb

Аудио

Отправляет собеседнику сообщение с аудио файлом

Требования:

Размер <20Mb

Видео

Отправляет собеседнику сообщение с видео

Требования:

Размер <20Mb

Файл

Отправляет собеседнику сообщение с файлом

Требования:

Форматы, любые кроме:
Исполняемых файлов для VK
[Запрещённых форматов](https://developers.viber.com/docs/api/rest-bot-api/#forbiddenFileFormats) для Viber
Размер <20Mb< /div>

Статья помогла?

Отлично!

Спасибо за ваш отзыв

Извините, что не удалось помочь!

Спасибо за ваш отзыв

Расскажите, как мы можем улучшить эту статью!

Выберите хотя бы одну причину

Комментарий отправлен

Мы ценим вашу помощь и постараемся исправить статью