Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 8 Следующий »


Contents

1. Script

            Creating a new script
            Script Editor Window
            Работа с блоками
            Работа с переменными

2. Elements

            Стрелка (Ветка)
            Стартовый блок
            Блок «Вопрос»
            Блок «Пауза»
            Блок «Информация»
            Блок «Условие»
            Блок «Случайный выбор»
            Блок «Эмоции»
            Блок «Результат»
            Блок «Запрос к серверу»
            Блок «Арифметика»           
            Блок «Порядковый выбор»
            Блок «Телепорт»
            Блок «Пустой»
            Блок «AI»



1. Script


Creating a New Script


To create a new script, on the side menu click Bots Bots and then click the New Script button.


In the Script creation dialog box, enter a name for a new script and click the Create New Script button.

To edit the script, find its name on the list and click the button.




Script Editor Window


A script is created on the basis of questions and answers. You create questions and define possible answers for them. When a bot has a conversation with a client, it moves from the start to the end of the script changing directions with regard to as how clients answer these questions .


Control elements:

NameElementDescription
Action blocks

You use them to create a script

Arrow

You use it to define directions in a script
Hand

You use it to move around in the script editor window
Cursor

You use it to work with an object or select it
Map

Opens the navigation window that you can use to quickly move between the script blocks
Scale

Changes the scale in the script editor window

Cancel

Cancels your last action
Redo

Repeats undone action
Save

Saves script
Delete

Deletes script
Manage media

Manages all recorded and downloaded media files
Last block

Brings you to the last added block
Clear

Returns to the original state
Chat

Allows you to check the script with a chatbot
Microfon

Allows you to check the script with a voice bot


Hotkeys:

КлавишиРезультат

Ctrl

Changes active tool to Hand

Ctrl + S

Saves script
Ctrl + ZCancels last action
EscRemoves selection
DelDeletes selected element



Working With Script Blocks


Each block or arrow has properties. You can configure them using the panel on the right side of the script editor window. To display properties of a block or arrow, click it.

To quickly create blocks in the script editor, use the following buttons that are appear under a block after you select it: Question, Information and Random selection. To create a new block, drag any of this buttons.


Working With Variables


You can create variables in two ways:

  • Declare a variable in block properties
  • Declare a variable in arrow properties

You can declare variables only in the following blocks:

  • Question block
  • Information block
  • Results block

In all these blocks variables are declaired in the same way.

To declare a variable in a block, do the following:

  1. Select a block in the scipt.
  2. Click Add element.
  3. In the left field, enter variable name.
  4. In the right field, enter variable value.


You can declare variables only in arrows that come from the following blocks:

  • Question block
  • Pause block

To declare a variable in an arrow, do the following:

  1. Select an arrow.
  2. Select the Save answer checkbox.
  3. Enter the name of the variable that will store the answer.

Unlike declaring a variable in a block, declaring a variable in an arrow makes it possible to store a client's response rather than a specified value.

After you declare a variable in a block or arrow, you can use it in the script. For this, enter the variable name in curly brackets



When you declare a variable, you should enter its name without curly brackets.

If you save different values ​​into the same variable, only the last value will be used in the script.


2. Elements


Arrow





Description:

Shows the direction in the script and defines the conditions for moving from one block to another. In the Question, Condition, Request to the server and Emotions blocks, the arrow has properties that are different from those it has in other blocks.

Description

GUI element

1. Arrow text

You can use it as a description. This text can explain you what response you want to get from a client or it can help you to navigate the script.



Starting block


Description:

The starting block marks the beginning of the script. This block has properties that affect the whole script. Using this block, you can quickly find the starting point even in scripts with a lot of blocks.

ОписаниеИзображение

1. Название скрипта – позволяет быстрее найти блок в редакторе сценариев. Служит для поиска сценария в кабинете администратора.

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

3. Включить прерывания – включает режим перебивания бота в диалогах.

4. Система распознавания – выбирает систему распознавания речи клиента в диалоге. Во всех случаях рекомендуется использовать систему распознавания по умолчанию. Изменять систему распознавания рекомендуется только при запросе от службы технической поддержки.

5. Язык – язык речи, которая распознается системой. На текущий момент распознавание речи в диалогах возможно для следующих языков:

  • Русский
  • Украинский
  • Английский
  • Испанский
  • Немецкий
  • Вьетнамский
  • Узбекский
  • Казахский
  • Чешский
  • Венгерский
  • Индонезийский

6. Тип аудио – вид голосовых сообщений робота. Возможные варианты:

  • Синтез синтез речи по указанной фразе
  • Аудиозаписи – воспроизведение предварительно подготовленного аудиофайла

7. Выберите тип голоса – тип голоса робота в диалогах с клиентом.

8. Выберите эмоцию – эмоциональный тон голосовых сообщений робота. Воможные варианты:

  • Нейтральный
  • Доброжелательный
  • Раздраженный

9. Выберите скорость (темп) в диапазоне от 01. до 3.0 – темп речи в голосовых сообщениях робота

10. Количество переспросов – количество раз, когда робот переспрашивает клиента, если не получает или не может распознать ответ на свой вопрос. Для стабильной работы этой функции нужно добавить фразу или несколько фраз переспроса.

11. Фразы с просьбой повторить ответ – фраза, которую робот использует, чтобы попросить клиента повторить ответ, если робот не получает или не может распознать ответ на свой вопрос. 

12. Фразы с просьбой сказать следующую часть большого числа – робот будет воспроизводить в диалоге с клиентом указанную фразу в случае, если произнесенное клиентом число содержит меньше символов, чем ожидалось.

13. Переводить на специалиста, если робот не знает что делать – в случае, если робот не знает, что делать, будет выполнена переадресация на оператора.

14. Допустимое количество циклов – максимальное количество раз, когда робот попросит клиента повторить ответ на заданный вопрос. 

15. Отключить приведение слов к первой форме при выборе ответа – отключает приведение слов в начальную форму, что усложняет распознавание речи клиента. Если параметр не используется, то система по умолчанию приводит все слова в ответах клиента в начальную форму.  Существительные приводятся к форме единственного числа и именительного падежа (например, менеджер). Глаголы приводятся в неопределенную форму (например, позвонить).

16. Отключить фонетический корректор на звонках – отключает фонетический корректор. Эта функция корректирует мелкие ошибки в произношении слов (например: Пирвет → Привет).

17. Выберите блок по умолчанию –  блок в сценарии, в который система направляет робота, если он не получает или не может распознать ответ клиента на свой вопрос.

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

19. Выберите блок помощи – блок Информация, в который система переведет робота, если в ответе клиента присутствует одна из следующих фраз: «Помощь», «Что ты умеешь».

20. Фоновые шумы – фоновый шум позволяет создать желаемую атмосферу во время диалога с клиентом (например, звуки офиса, улицы, аэропорта).

21. Шаблоны ключевых слов – позволяет задать ключевые слова на уровне сценария.

22. Переменные – позволяет задавать переменные и типы их значений (используется только в сценариях для обзвонов).

23. Игнорировать вышестоящие ключевые слова – эта функция позволяет игнорировать установленные ключевые слова на вышестоящих уровнях (выше уровня сценария), делая актуальными лишь ключевые слова, заданные на уровне сценария и его блоков.

Ключевые слова платформы – отображает список всех ключевых слов, которые заданы на уровне платформы.

Ключевые слова компании – отображает список всех ключевых слов, которые заданы на уровне компании.

24. Новое ключевое слово – позволяет указать новые ключевые слова на уровне сценария для работы функции перебивания.



Блок «Вопрос»


Описание:

Данный блок предназначен для опроса клиента.


Условия выхода:

  • По истечении времени сеанса распознавания
  • По факту получения ответа от клиента


ОписаниеСкриншот

1. ID – уникальный идентификатор блока.

2. Тип блока – отображает тип выбранного блока. Позволяет заменить тип блока на любой другой.

3. Маркер блока – произвольный пользовательский текст, может использоваться в отчетах как маркер посещения (необязателен для заполнения).

4. Вопрос – текст, который будет произнесен роботом, после того, как будет произведен переход в этот блок.

5. Задержка перед отправкой сообщения – период времени, по истечению которого будет произведена отправка сообщения после перехода в этот блок*.

6. Отправить немедленно – позволяет отправить сообщения до полного формирования очереди.

7. Присвоить переменные – дает возможность создать переменные и задать им значения.

8. Прикрепить файлы – позволяет добавить файлы в сценарий

9. Длительность сеанса распознаванияпериод времени, в течение которого система выполняет распознавание речи абонента во время вызова. 


Для выбора доступны следующие уровни длительности сеанса распознавания:

  • Односложный ответ – длительность сеанса распознавания речи составляет 7 секунд;
  • Очень короткая – длительность сеанса распознавания речи составляет 5 секунд;
  • Короткая – длительность сеанса распознавания речи составляет 5 секунд;
  • Нормальная – длительность сеанса распознавания речи составляет 7 секунд;
  • Нормальная (5 сек) – длительность сеанса распознавания речи составляет 5 секунд;
  • Нормальная (180 сек) – длительность сеанса распознавания речи составляет 180 секунд;
  • Длинная – длительность сеанса распознавания речи составляет 10 секунд;
  • Очень длинная – длительность сеанса распознавания речи составляет 15 секунд;
  • Очень длинная (180 сек) – время распознавания речи составляет 180 секунд.

Уровни длительности сеанса распознавания речи абонента определяются различными параметрами. Посмотреть значения всех параметров можно в разделе Длительность сеанса распознавания

10. Система распознавания речи – выбор сервиса для распознавания речи

  • Система 1 – сервис распознавания Google
  • Система 2 – сервис распознавания Yandex

11. Количество переспросов – количество раз, когда робот переспрашивает клиента, если не получает или не может распознать ответ на свой вопрос. Для стабильной работы этой функции нужно добавить фразу или фразы переспроса. 

12. Определение эмоций – при выставленной галке, система будет распознавать эмоциональную окраску пользователя и записывать её в переменную {детектор.эмоции}

13. Отключить переспрос – при выставленной галке , система не будет дожидаться ответа от клиента, а переведет его на оператора

14. Отключить возврат на предыдущий блок – при выставленной галке, система не будет пытаться найти ответ на поставленный вопрос через другие блоки типа «Вопрос», которые находятся на той же ветке

15. Использовать ответ пользователя – возможность использовать ответ пользователя, сохраненный в системной переменной

16. Действия – позволяет выбрать одно из вложенных действий***. 

17. Фразы с просьбой повторить ответ  текст, который будет озвучен роботом в случае, если не удастся получить ожидаемый ответ клиента**.

18. Файлы с просьбой повторить ответ – возможность импорта фраз с аудиозаписями озвучек из файла.

19. Отключить рандом фраз повтора – при выcтавленной галке фразы повтора определяются в порядке их добавления, а не случайным образом.

20. Добавить запись (Гибридный синтез) – позволяет загрузить с компьютера аудиозапись для озвучки данного блока с помощью гибридного синтеза речи.

21. Выберите тип действия – используется для фиксации и вывода в отчёт момент завершения диалога, в столбец «Результат разговора».

22. Добавить запись – позволяет загрузить с компьютера аудиозапись для озвучки данного блока живым голосом.

23. Записать аудио – Позволяет создать и скачать аудиозапись для озвучки данного блока живым голосом.

24. Игнорировать вышестоящие ключевые слова – эта функция позволяет игнорировать установленные ключевые слова на вышестоящих уровнях, делая актуальными лишь слова, указанные в этом блоке и ниже.

25. Новое ключевое слово – позволяет указать новые ключевые слова для работы функции перебивания.


* Задержка в блоках начинает срабатывать лишь после получения первого ответа от пользователя
** Если вариантов больше чем одно, то фразы будут произноситься в случайном порядке
*** Среди действий есть функция "Поделиться номером". Данный функционал позволяет вывести клиенту кнопку с предварительно заданным текстом, по нажатию на которую клиент может передать в бота свой контактный номер телефона (указанный в профиле). В данный момент данный функционал доступен только для ботов в Telegram, для корректной работы также необходимо чтобы текст на кнопке действия совпадал с текстом на кнопке в исходящей из блока стрелке и должен быть задан тип выходных данных "по умолчанию".

Типы:

ТипОписаниеСкриншот
Пользовательское событие

Интеграционный функционал для создания пользовательских событий (не поддерживается).

1. Сообщение на кнопкетекст, который отображается на кнопке клиента.

2. Название события – заголовок пользовательского события.

3. Данные – описание пользовательского события.

Принудительный переход к блоку

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

1. Принудительный переход к блоку – выбранный блок для перехода.

Прикрепить шаблон WhatsApp

Позволяет прикрепить шаблон для WhatsApp.

1. ID шаблона – уникальный идентификатор полученный от тех. поддержки.

2. Название шаблона – название шаблона, полученное от тех. поддержки.

3. Сообщение на кнопке – текст, который отображается на кнопке клиента.

4. Ссылка на картинку – URL картинки.

5. Добавить переменную – возможность добавить переменную.

6. Тип кнопок – значение типов кнопок.

Кнопки WhatsApp

Позволяет добавлять кнопки в WhatsApp.

1. Тип кнопок – значения типов кнопок.

2. Header – текст, который отображается в верхней части сообщения.

3. Footer – текст, который отображается в нижней части сообщения.

Поделиться номером

Позволяет получить номер от клиента через кнопку.

1. Сообщение на кнопке – текст, который отображается на кнопке клиента.


Свойства:

ОписаниеСкриншот

1. Текст стрелки – название стрелки в сценарии. По названию можно быстро найти нужную стрелку и понять ее назначение.

2. Сохранить ответ – позволяет сохранить ответ клиента в какую-либо переменную, чтобы в дальнейшем использовать его в блоках сценария. Если для этого параметра установлен флажок, то в поле Название переменной нужно ввести название используемой переменной.

3. Сохранить всю фразу – параметр определяет способ сохранения ответа. Если параметр используется, то система сохранит ответ клиента полностью. Если параметр не используется, то система сохранит только ключевое слово, по которому осуществляется переход в ветку.

4. Сохранить ответ в системную переменную – позволяет сохранить ответ пользователя, чтобы в дальнейшем использовать его в одном из блоков (или нескольких блоках) Вопрос. Это особенно удобно при переходе диалога из одного сценария в другой, чтобы не задавать пользователю вопрос, ответ на который был получен ранее.

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

6. Варианты ответа* – с помощью этого параметра можно отображать клиенту возможные варианты ответа в виде кнопок. Если клиент нажмёт на такую кнопку, то диалог пойдет в направлении, которое указано с помощью стрелки, которая связана с выбранной кнопкой. В некоторых случаях клиенту удобнее использовать кнопки чем писать ответ.

7. Порядковый номер кнопки* – если существует несколько ответов на вопрос, то кнопок будет несколько. Этот параметр позволяет определить порядок отображения кнопок (первая, вторая, третья и т. д.). Отсчёт ведётся от 0. Если вы не укажите порядок отображения кнопок, то система разместит их в произвольном порядке.

* Данный пункт используется только для чатов

Для корректного отображения текста кнопки в Facebook, рекомендуется в поле Вариант ответа размещать текст не более 20-ти символов


Типы:

ТипОписаниеСкриншот
Ветка по умолчанию

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


1. Максимальный вес ветки – указывается для определения точности ответа в рамках NLU. 

2. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

3. Порядковый номер кнопки определяет порядок отображения кнопки (см. описание в свойствах стрелки).

Ключевые слова

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


1. Ключевые слова – слова или выражения, которые система ожидает от пользователя для перехода по ветке

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

Так же, можно использовать абстрактное слово NEAR в выражении, которое будет значиться любым словом, например: "я NEAR не пойду", где NEAR - может быть любым словом: никуда, никогда, сейчас, завтра и т.д. 

В системе предусмотрена система весов, когда явный ответ "да" от человека, не всегда может означать признание, например: фраза Да, я вас отчетливо слышу, я не пойду на обед. В данном ответе мы видим слово "да" и предлог "не", который по смыслу является приоритетней и в общей концепции ответа является отрицанием: фраза я не пойду на обед. Таким образом, при расстановке ключевых слов и выражений, будет более явно добавить вес к отрицательным словам: +++не и +нет. Каждый знак плюс имеет единицу веса. Где единицей является слово или выражение. Соответственно, в примере к слову нет + одно слово, а к предлогу не + 3 слова. При количественном перевесе система принятия решения выберет этот маршрут.

В обратной ситуации мы можем наоборот, понижать вес, используя знак минус:  -да


2. Словари  возможность использования заранее подготовленного набора ключевых слов*

3. Вариант ответа  наименование кнопки ответа (см. описание в свойствах стрелки).

4. Порядковый номер кнопки Определяет порядок отображения кнопки (см. описание в свойствах стрелки).

Важно

Рекомендуется использовать не более 100 ключевых слов в ветке, для большего количества ключевых фраз мы рекомендуем использовать ветку "интеллектуальное принятие решений" в связке с НЛУ

* Словари задаются в стартовом блоке в пункте 21

Дата/Время/Дата и время

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


1. Значение должно быть – условие проверки значения

Например, для согласования даты доставки товара, можно сделать проверку на то, что дата должна быть больше текущей, чтобы избежать ситуации, когда доставка будет оформлена на прошедший день.

Если необходимо пользовательское значение даты для сравнения, то дата задается в формате:

YYYY-MM-DD (без времени)

YYYY-MM-DD HH:MM:SS (дата и время)

2. Значение – ответ, который система ожидает от клиента

Система знает и умеет работать с датами и относительными датами. Пример ответов пользователя, которые система сможет распознать:

  • 23 января
  • Завтра
  • Послезавтра
  • Вчера
  • Позавчера
  • Через n дней
  • n дней назад
  • 23 января 1996 года

Если в дате явно не указан год, берется текущий

Форматы записи ответа в переменную:

  • Дата: Y-m-d
  • Дата и время: Y-m-d H:i:s

Так же данный тип пытается найти время. Возможные варианты:

  • в 14:00
  • Через n минут
  • через n часов

Если клиент явно не указывает время, берется текущее

Формат записи в переменную: H:i

3. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

4. Порядковый номер кнопки – определяет порядок отображения кнопки (см. описание в свойствах стрелки).

Число

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


1. Значение должно быть – Условие проверки значения

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

Сравнение происходит по правилам:

{РАСПОЗНАННОЕ} {ОПЕРАТОР} {СРАВНИВАЕМОЕ}

Где  

  • {РАСПОЗНАННОЕ} - число, которое распознано в речи клиента в момент диалога
  • {ОПЕРАТОР}  - оператор сравнения (меньше, больше, равно и т.д.)
  • {СРАВНИВАЕМОЕ} - Значение, заданное в свойствах (см. пункт №2)*


2. Значение – ответ, который система ожидает от клиента

3. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

4. Порядковый номер кнопки – определяет порядок отображения кнопки (см. описание в свойствах стрелки).

5. Интеллектуальное определение  с помощью этого параметра робот распознает числа в ответах клиентов, как во время обзвонов, когда клиент произносит число голосом, так и при переписке, когда клиент вместо числа пишет слово (например, вместо «18» пишет «восемнадцать»). Если для этого параметра установлен флажок, то робот распознает число во всех указанных случаях.


* Может содержать в себе переменные заключенные в фигурные скобки, которые могут быть переданы при постановке задания.

Большое число

Переход по ветке будет произведен, если количество озвученных символов в номере, совпадет с указанным количеством символов в свойстве стрелки.


1. Значение должно быть – условие проверки значения

2. Маска для большого числа  Маска ожидаемого ввода 

Например, для паспорта мы можем задать маску вида #### ######, где каждый символ # - это цифра

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

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

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

5. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

6. Порядковый номер кнопки – определяет порядок отображения кнопки (см. описание в свойствах стрелки).

7. Интеллектуальное определениес помощью этого параметра робот распознает числа в ответах клиентов, как во время обзвонов, когда клиент произносит число голосом, так и при переписке, когда клиент вместо числа пишет слово (например, вместо «18» пишет «восемнадцать»). Если для этого параметра установлен флажок, то робот распознает число во всех указанных случаях.

Интеллектуальное принятие решений

Переход по ветке будет произведен, если указанное в свойствах намерение совпадет с озвученным намерением клиента*


1. Агент – выбор агента

2. Приоритет ветки – возможность выставить более высокий приоритет, чем для ветки с ключевым словом.

3. Добавить намерение – намерения, которые система ожидает от пользователя.

4. Сущности – создание переменных, в которые могут быть записаны данные, которые были выяснены системой во время диалога

5. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

6. Порядковый номер кнопки – Определяет порядок отображения кнопки (см. описание в свойствах стрелки).


* Для работы с данным типом, нужно иметь подключение к Twin.ai и необходим обученный агент.  Подробнее об этом вы можете прочитать здесь

Номер телефона

Переход по ветке будет произведен, если количество озвученных символов будет соответствовать ожидаемому количеству цифр в номере телефона*.

1. Значение должно быть – условие проверки значения

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

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

3. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

4. Порядковый номер кнопки – определяет порядок отображения кнопки (см. описание в свойствах стрелки).


* Параметр Номер телефона позволяет отслеживать как мобильные, так и городские номера. На текущий момент данная функция работает только с номерами российских операторов связи.
Номер телефона должен содержать не более 11 цифр. В противном случае робот не сможет его распознать.
При вводе мобильного номера код страны указывать необязательно.
При вводе городского номера нужно указывать код страны и код города (например, 7 и 812).

Ошибка определения номера телефона

Переход по ветке будет произведен, если озвученный клиентом номер телефона будет недействующим.

1. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

2. Порядковый номер кнопки – определяет порядок отображения кнопки (см. описание в свойствах стрелки).

Сигнал DTMF

Эту функцию удобно использовать в голосовых меню. Система позволяет отслеживать нажатие клиентом кнопок в диапазоне от 0 до 9, а также кнопок с символами * и #. В зависимости о того, на какую кнопку нажмет клиент, система перейдет по соответствующей стрелке (например, робот говорит клиенту: «Для создания нового заказа нажмите кнопку 1. Для перехода к работе с текущим заказом нажмите кнопку 2. Для завершения разговора нажмите кнопку 3»).

1. Сигнал – символ, необходимый для перехода по ветке.

2. Вариант ответа – наименование кнопки ответа (см. описание в свойствах стрелки).

3. Порядковый номер кнопки – определяет порядок отображения кнопки (см. описание в свойствах стрелки).



Блок «Пауза»


Описание:

Данный блок переводит систему в режим ожидания ответа.

Условия выхода:

  • По истечении заданного времени
  • По факту получения ответа от клиента


ОписаниеСкриншот

1. ID – уникальный идентификатор блока.

2. Тип блока – отображает тип выбранного блока. Позволяет заменить тип блока на любой другой.

3. Маркер блока – произвольный пользовательский текст, может использоваться в отчетах как маркер посещения (необязателен для заполнения)

4. Текст – текст, который будет произнесен роботом, после того, как будет произведен переход в этот блок.

5. Отправить немедленно – позволяет отправить сообщения до полного формирования очереди.

6. Задержка перед отправкой сообщения  период времени, по истечению которого будет произведена отправка сообщения после перехода в этот блок*.

7. Максимальное время ожидания до повтора  Время, через которое будет произнесен текст из секции «Текст повтора» (см. пункт № 6)

8. Максимальное время ожидания ответа собеседника – Время, по истечении которого, звонок будет переведен на оператора

9. Текст повтора – варианты повтора, которые будут озвучены системой по истечении времени ожидания**

10. Добавить запись (Гибридный синтез) – позволяет загрузить с компьютера аудиозапись для озвучки данного блока с помощью гибридного синтеза речи.

11. Выберите тип действия – возможность зафиксировать результат для отчета

12. Добавить запись – позволяет загрузить с компьютера аудиозапись для озвучки данного блока живым голосом.

13. Записать аудио – позволяет создать и скачать аудиозапись для озвучки данного блока живым голосом.

14. Игнорировать вышестоящие ключевые слова – эта функция позволяет игнорировать установленные ключевые слова на вышестоящих уровнях, делая актуальными лишь слова, указанные в этом блоке и ниже.

15. Новое ключевое слово – позволяет указать новые ключевые слова для работы функции перебивания.

* Задержка в блоках начинает срабатывать лишь после получения первого ответа от пользователя
** Если вариантов больше чем одно, то фразы будут произноситься в случайном порядке



Блок «Информация»


Описание:

Данный блок используется для произнесения сообщения клиенту.

Условия выхода:

  • После озвученного сообщения системой
  • Пропуск блока


ОписаниеСкриншот

1. ID – уникальный идентификатор блока.

2. Тип блока – отображает тип выбранного блока. Позволяет заменить тип блока на любой другой.

3. Маркер блока – произвольный пользовательский текст, может использоваться в отчетах как маркер посещения (необязателен для заполнения)

4. Информационное сообщение – текст, который будет произнесен роботом, после того, как будет произведен переход в этот блок.

5. Задержка перед отправкой сообщения – период времени, по истечению которого будет произведена отправка сообщения после перехода в этот блок*.

6. Прикрепить файлы – позволяет добавить файлы в сценарий

7. Пропустить блок, если произнесен блок – система пропустит текущий блок, если она озвучит информационный блок, который будет выбран в данном пункте**

8. Отправить немедленно – позволяет отправить сообщения до полного формирования очереди.

Например в сценарии идет цепочка из 3 блоков информации, блока запроса к серверу и еще 2 блоков информации. И сообщения уйдут лишь после обработки блока запроса к серверу.
Если поставить галочку «Отправить немедленно» на 3 блоке в этой цепочке (т.е. перед запросом), то уйдут 3 сообщения, потом сделается запрос и уйдут оставшиеся 3. 

9. Действия  позволяет выбрать одно из вложенных действий.

10. Добавить элемент – дает возможность создать переменные и задать им значения.

11. Добавить запись (Гибридный синтез) позволяет загрузить с компьютера аудиозапись для озвучки данного блока с помощью гибридного синтеза речи.

12. Выберите тип действия – возможность зафиксировать результат для отчета

13. Добавить запись – позволяет загрузить с компьютера аудиозапись для озвучки данного блока живым голосом.

14. Записать аудио – позволяет создать и скачать аудиозапись для озвучки данного блока живым голосом.


Задержка в блоках начинает срабатывать лишь после получения первого ответа от пользователя
** Выбрать возможно только блок типа «Информация»



Блок «Условие»


Описание:

Данный блок позволяет определить направление сценария на основании состояния диалога.

ОписаниеСкриншот

1. ID – уникальный идентификатор блока.

2. Тип блока – отображает тип выбранного блока. Позволяет заменить тип блока на любой другой.

3. Маркер блока – произвольный пользовательский текст, может использоваться в отчетах как маркер посещения (необязателен для заполнения)

Свойства:

ОписаниеСкриншот

1. Текст стрелки – вспомогательный текст, который позволяет создателю сценария ориентироваться в связях.

2. Тип – способ принятия решения.

Типы:

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

Условие И / ИЛИ

Переход по ветке будет произведен, если заданное условие будет выполнено.

1. Загрузить файл – возможность импорта условий и переменных из файла.

2. Условия  – набор условий, по которым принимается решение.


  • Условие "И" требует, чтобы все указанные условия выполнялись.
  • Условие "ИЛИ" требует, чтобы выполнялось хотя бы одно указанное условие

Логические операторы:
"=" - равно
"!=" - не равно
"<" - меньше
"<=" - меньше или равно
">" - больше
">=" - больше или равно
"*" - содержит
"**" - совпадает

3. Присвоить переменные при выборе ветки - служит для установки значений переменным.

В левое поле записывается название переменной без фигурных скобок

В правое поле записывается значение, которое мы хотим присвоить переменной*


* Допускается использование переменных, которые будут заменены на их значение в момент присваивания

Примеры использования условий "*" и "**"

Разберем на примере сравнения переменной {answer} (записываемой как ответ пользователя) с заданным значением

Если задано условие {answer} * как дела

то при получении фраз:

"привет как дела" - условие будет выполнено, т.к. фраза содержит искомый фрагмент "как дела"

"как ваши дела" - условие не будет выполнено, т.к. фраза содержит только часть искомого фрагмента "как дела"

"как дела у Алексея Петровича?" - условие будет выполнено, т.к. фраза содержит искомый фрагмент "как дела"

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

Если задано условие Если задано условие {answer} ** привет как дела

то при получении фраз:

"привет как дела" - условие будет выполнено, т.к. фраза совпадает с фразой условия "привет как дела"

"привет, как ваши дела" - условие не будет выполнено, т.к. фраза не совпадает с фразой условия "привет как дела"

"как дела у Алексея Петровича?" - условие не будет выполнено, т.к. фраза не совпадает с фразой условия "привет как дела"

"привет как дела, Василий" - условие не будет выполнено, т.к. фраза не совпадает с фразой условия "привет как дела"

Операция "*"

В секции "Условия", для правого поля возможно использовать операцию "*"

Данная операция используется для определения текста по маске, где * это любое количество букв или цифр.

Например:

если условие будет иметь вид имя = *на, то под условие будут попадать имена Анна, Карина, Марина и т.д.

или условие ответ ** * как дела, то под условие будут попадать любые фразы где перед "как дела" содержится иной текст или не содержится ничего ("Василий, как дела", "Здравствуйте, Игорь Петрович, как дела", "как дела")

Вес решения

Если есть две ветки которые удовлетворяют переходу, то будет выбрана та ветка, у которой количество совпавших условий больше. В случае равенства совпавших условий, приоритет будет отдан ветке с типом "Условие И", т.к. оно более строгое

Для корректной работы блока необходимо чтобы не было двух и более веток с идентичными условиями

Следует избегать ситуаций соответствия в ветках более чем 2м условиям одновременно



Блок «Случайный выбор»


Описание:

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


ОписаниеСкриншот

1. ID – уникальный идентификатор блока.

2. Тип блока – отображает тип выбранного блока. Позволяет заменить тип блока на любой другой.

3. Маркер блока – произвольный пользовательский текст, может использоваться в отчетах как маркер посещения (необязателен для заполнения).

4. Описание фиксации – произвольный пользовательский текст, который может использоваться для описания работы блока. Также благодаря этому тексту можно удобно найти нужный блок с помощью сочетаний клавиш ctrl+F.



Блок «Эмоции»


Описание:

Данный блок позволяет определить направление сценария на основании эмоции клиента. 


ОписаниеСкриншот

1. ID – уникальный идентификатор блока.

2. Тип блока – отображает тип выбранного блока. Позволяет заменить тип блока на любой другой.

3. Маркер блока – произвольный пользовательский текст, может использоваться в отчетах как маркер посещения (необязателен для заполнения).

Свойства:

ОписаниеСкриншот

1. Текст стрелки – вспомогательный текст, который позволяет создателю сценария ориентироваться в связях.

2. Тип эмоций – выбор эмоции, которую система будет ожидать для переход по ветке.

Типы:

ТипОписание
ПозитивнаяПереход по стрелке будет происходить в случае, если переменная {детектор.эмоции} имеет значение positive
НегативнаяПереход по стрелке будет происходить в случае, если переменная {детектор.эмоции} имеет значение negative
НейтральнаяПереход по стрелке будет происходить в случае, если переменная {детектор.эмоции} имеет значение neutral



Result block


Description:

This block is intended for saving the result of the conversation, as well as for forced transfer to the operator, sending a message and/or notification.


DescriptionImage

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - custom text that can be used in reports as a marker (optional).

4. Fixation description (not pronounced by the robot) – custom text that can be used to describe the operation of the block. Using this text you can quickly find the necessary block running the search with CTRL+F keyboard shortcuts.

5. Assign variables – allows you to change the value of any variable or create a new variable.

6. Select action type  – selects an action for the bot to perform.

Types:

TypeDescriptionImage
No action

The robot does not do anything, and proceeds to the next block (provided there is one).

Sending email

The robot sends an email.

1. Recipient email - email address of the recipient.

2. Email header - contains the subject of the message.

3. Send transcription - attaches a transcript of a conversation between the robot and the client in the message body.

4. Message text – contains text of the message.


Sending notification

The robot sends a notification to the client.

1. Select a notification template - a template that will be used by the system to send a notification.

2. Shorten links - short forms of links are used in the message text.

3. Recipient's phone number - the phone number of the recipient of the notification.

Тестирование сообщений

If you plan to send the result of the conversation to yourself, then it is better to send it via email because it is free.

Commit the result

Saves conversation to a report.

1. Date - a field where you can enter a date for uploading conversation to a report.*

2. Rate - a field in where you can enter a rate for uploading conversation to the report. *

3. NPS - arbitrary information. As a result, it will be displayed in the NPS column of the report .

4. Confirmation - a field where yypu can enter data for upload to the report.*

Optional field

Sending DTMF signals

Functionality that is used to bypass the IVR menu.

1. Signals - characters from 0 to 9, * and #, used to send a signal to the robot to go to the desired branch of the IVR menu.


Riderect to operator

The robot can transfer a client to an operator or switch to a different script.

1. Redirect action (Outgoing calls) - robot ends the call.

2. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call.

3. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

4. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).


1. Redirect action (Outgoing calls) - the call will be transferred to the operator.

2. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call.

3. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

4. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).

1. Redirect action (Outgoing calls) - uses the forwarding settings from the call task.

2. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call.

3. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

4. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).

1. Redirect action (Outgoing calls) - the dialing plan that the system will use to forward the call.*

2. Redirect action (Incoming calls) – select a dialing plan from the dropdown list.

3. Enter phone number – phone number to which you want to forward calls.

4. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call.

5. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

6. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).

* The dialing plan is created in the "Telephony" section



1. Redirect action (Outgoing calls) - uses the call forwarding settings from the translation plan.*

2. Redirect action (Outgoing calls) - drop-down list with call forwarding directions.

3. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call (similar to ougoing calls).

4. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

5. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).

* The dialing plan is created in the "Telephony" section

1. Redirect action (Outgoing calls) - transfers calls to the specified number.

2. Number - phone number to which calls are transferred.

3. Accompanying headers – header text used in transfers.

4. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call (similar to ougoing calls).

5. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

5. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).

1. Redirect action (Outgoing calls) - switches to the selected script.

2. Redirect action (Outgoing calls) - selects the script.

3. Redirect action (Incoming calls) – a set of actions that the system uses to forward an incomming call (similar to ougoing calls).

4. Text accompaniment - this text will be displayed to a client and operator when the system transfers the dialogue with this client to the operator.

5. Operator group - allows you to transfer dialogs with your clients to different departments of your company or different specialists (for example, to the sales department, accounting, technical support).

Call back

1. Date and time for call back - creates a new call task for a specific time.

This field uses a variable of the Date type, which is declared in the start block.

Идентификация клиента

The robot will send the client ID to the selected client.

1. Recipient's phone number – the phone number of the client.

2. Recipient's email - the client's email address.

3. Client ID - a value that allows you to identify the client. This can be a phone number, email or ID.

Arbitrary result

It is used to save your own variables.

1. Add element - allows you to create variables and assign values ​​to them.



Cancel recall

Cancels recall.



Web-request block


Description:

This block allows the robot to interact with an external or internal CRM system during a dialogue with the user and exchange information about the client via the API. The robot can interact with the CRM system to search for and obtain information about the client (place of residence, residential address, profession) and save new information about the client (for example, pets, hobbies, interests, etc. .) that it receives during the dialogue. This block also allows the robot to use network services that are available through the API (for example, a calculator, unit converter, weather forecast, program guide, etc.).

Example:

There is an incoming call from a client. The robot identifies the phone number and answers the call. Using the Web-request block, the robot accesses the corporate CRM system, which stores client data, complete information on the entire range of products, as well as information on all orders. Using the client's phone number, the robot receives information about the client and realizes that the client has an active order. The robot addresses the client by name and before the client starts to speak, the robot asks whether the client wants to know the status of their order. After an affirmative answer, the robot provides information about the current status of the order.

For more nformation on how the Web-request block works, it is recommended to read about the syntax of the JSON format.


DescriptionImage

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - a custom text that can be used in reports as a marker (optional).

4. Message asking you to wait - a text asking you to wait, that will be voiced by the robot. This text can be used to fill in a pause during which the system makes a request to the API of a third-party service or CRM system.

5. Send immediately - allows you to send messages before the queue is formed completely .

6. Delay before sending a message - the period of time after which the message will be sent after the bot switches to this block*.

7. Add record (BrandVoice) - allows you to upload an audio file from your computer and use it in hybrid speech synthesis.

8. How often to say still wait (in sec) - the period of time after which the robot will repeat the message (see step 4) until it receives a response from the server.

9. Message asking you to wait a little longer - a phrase asking you to wait, which will be voiced by the robot until it receives a response from a third-party service or CRM system.

10. Callback URL - the URL of the page that the robot will open after the request is complete. This parameter is optional. You can use it for notification that the request is complete (for example, to display a page with a standard phrase or an image).

11. Authorization type – type of user authorization for access to data on the server. Possible values ​​for this parameter are described below.

12. Select request type   type of request to the server. Possible values ​​for this parameter are described below.

13. URL - the address of the page that the robot works with. It contains query parameters and variables.


In the address bar, you can specify a variable that the bot will use to transfer information to the service that it accesses.

14. Cookie - when sending requests to certain methods, you may need to pass a cookie. The required value is contained in the response, that you get after you send a request to the method for the first time.

15. Add element - when sending requests to certain methods, you may also need to pass headers. The required header values are contained in the response, that you get after you send a request to these methods for the first time.

16. Forced asynchronous mode - the ability of the bot to continue the dialogue with a client while it sends a request to the server.

* Delay in blocks starts to work only after the bot receives the first response from the client


Типы запросов:

ТипDescriptionСкриншот
GET

Используется для получения данных от сервера.

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

1. URL - адрес страницы, с которой будет работать робот.

2. Cookie - значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент - значение заголовка (если требуется для работы с методом стороннего сервиса).

4. Принудительный асинхронный режим - возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

POST

Применяется для отправки данных на сервер.

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

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

4. Принудительный асинхронный режим – возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

5. Выберите тип содержимого – тип передаваемого содержимого. Возможные значения:

  • JSON - данные передаются в формате JSON
  • Form - данные передаются в текстовой форме

6. Добавить элемент  позволяет установить порядок указания ключа и значения.

Например: если нужно отправлять данные в теле запроса, то ключ first_name нужно записать в левое поле, а его значение Владимир следует записать в правое поле.

{
"first_name" : "Владимир"
}

7. Название переменной с вложением – позволяет отправить в запросе вложенный файл.

Delete

Применяется для удаления данных на сервере. В запросе требуется указать ID изменяемого ресурса. 

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

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

4. Принудительный асинхронный режим – возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

Put

Применяется для отправки данных на сервер. В запросе требуется указать ID изменяемого ресурса. 

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

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

4. Принудительный асинхронный режим – возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

5. Выберите тип содержимого – тип передаваемого содержимого. Возможные значения:

  • JSON - данные передаются в формате JSON
  • Form - данные передаются в текстовой форме

6. Добавить элемент – позволяет установить порядок указания ключа и значения.

Например: если нужно отправлять данные в теле запроса, то ключ first_name нужно записать в левое поле, а его значение Владимир следует записать в правое поле.

{
"first_name" : "Владимир"
}

7. Название переменной с вложением – позволяет отправить в запросе вложенный файл.


Типы авторизации:

ТипDescriptionСкриншот
Отсутствует

Данный тип используется, если для работы со страницей не требуется проходить авторизацию (например, если сервис находится в защищенном контуре).

1. Выберите тип запроса – один из типов запроса описанных выше.

2. URL – адрес страницы, с которой будет работать робот.

3. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

4. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

5. Принудительный асинхронный режим – возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

Логин/Пароль

Данный тип используется, если для работы со страницей требуется выполнить авторизацию по логину и паролю.

1. Имя пользователя – логин клиента.

2. Пароль – пароль клиента.

3. Выберите тип запроса – один из типов запроса описанных выше.

4. URL – адрес страницы, с которой будет работать робот.

5. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

6. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

7. Принудительный асинхронный режим – возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

Заголовок

Данный тип используется, если для работы со страницей требуется использовать авторизационный токен.

В этом случае требуется:

1. Тип авторизации – схема авторизации, которую робот будет использовать для работы со страницей.

2. Значение ключа – имя ключа.

3. Выберите тип запроса – один из типов запроса описанных выше.

4. URL – адрес страницы, с которой будет работать робот.

Пример: Если в заголовке токен передается в ключе Authorization в следующем виде:

Authorization: Bearer t490da279fd42889f56

то в поле Тип авторизации нужно указать Bearer, а в поле Значение Ключа, нужно указать t490da279fd42889f56

5. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

6. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

7. Принудительный асинхронный режим – возможность бота продолжать диалог во время того, как он отсылает запрос к серверу.

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

Свойства:

DescriptionСкриншот

1. Текст стрелки – вспомогательный текст, который позволяет создателю сценария ориентироваться в связях.

2. Тип – тип принятия решения. Переход к следующему блоку скрипта осуществляется при достижении определенного результата запроса (успешен или не успешен) или по умолчанию.

Типы:

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

РезультатУспешно

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

Результат ответа от сервера будет сохранен в переменную result.

1. Успешность запроса – определяет успешность запроса.

2. Загрузить файл – возможность импорта условий и переменных из файла.

3. Код ответа – код, который система будет ожидать после выполнения запроса.*

4. Условия – набор условий, по которым принимается решение.

5. Добавить элемент – создание переменной, в которую будет записано значение из ответа от сервера.

Например, мы получили ответ вида:

{
    "success": true,
    "data": {
        "booking_days": {
            "6": [
                2,
                3,
                4,
                5,
                6,
                7,
                8,
                9,
                10,
                11,
                12,
                13,
                14,
                15,
                16,
                17,
                18,
                19,
                20,
                21,
                22,
                23,
                24,
                25,
                26,
                27,
                28,
                29,
                30
            ],
            "7": [
                1,
                2,
                3,
                4
            ]
        },
        "booking_dates": [
            "2022-06-02",
            "2022-06-03",
            "2022-06-04",
            "2022-06-05",
            "2022-06-06",
            "2022-06-07",
            "2022-06-08",
            "2022-06-09",
            "2022-06-10",
            "2022-06-11",
            "2022-06-12",
            "2022-06-13",
            "2022-06-14",
            "2022-06-15",
            "2022-06-16",
            "2022-06-17",
            "2022-06-18",
            "2022-06-19",
            "2022-06-20",
            "2022-06-21",
            "2022-06-22",
            "2022-06-23",
            "2022-06-24",
            "2022-06-25",
            "2022-06-26",
            "2022-06-27",
            "2022-06-28",
            "2022-06-29",
            "2022-06-30",
            "2022-07-01",
            "2022-07-02",
            "2022-07-03",
            "2022-07-04"
        ],
        "working_days": {
            "6": [
                2,
                3,
                4,
                5,
                6,
                7,
                8,
                9,
                10,
                11,
                12,
                13,
                14,
                15,
                16,
                17,
                18,
                19,
                20,
                21,
                22,
                23,
                24,
                25,
                26,
                27,
                28,
                29,
                30
            ],
            "7": [
                1,
                2,
                3
            ]
        },
        "working_dates": [
            "2022-06-02",
            "2022-06-03",
            "2022-06-04",
            "2022-06-05",
            "2022-06-06",
            "2022-06-07",
            "2022-06-08",
            "2022-06-09",
            "2022-06-10",
            "2022-06-11",
            "2022-06-12",
            "2022-06-13",
            "2022-06-14",
            "2022-06-15",
            "2022-06-16",
            "2022-06-17",
            "2022-06-18",
            "2022-06-19",
            "2022-06-20",
            "2022-06-21",
            "2022-06-22",
            "2022-06-23",
            "2022-06-24",
            "2022-06-25",
            "2022-06-26",
            "2022-06-27",
            "2022-06-28",
            "2022-06-29",
            "2022-06-30",
            "2022-07-01",
            "2022-07-02",
            "2022-07-03"
        ]
    },
    "meta": []
} 

Чтобы сохранить второй элемент массива 6 (значение 3) из ключа booking_days, в правое поле нужно записать следующее значение: result.data.booking_days.6.1.

Где:

  • result – тело ответа
  • data – имя объекта в теле ответа
  • booking_days – имя ключа
  • 6 – имя массива
  • 1 – позиция элемента в массиве (начиная с 0)

Чтобы сохранить третий элемент массива 7 (значение 3) из ключа booking_days, в правое поле нужно записать следующее значение: result.data.booking_days.7.2.

Где:

  • result – тело ответа
  • data – имя объекта в теле ответа
  • booking_days – имя ключа
  • 7 – имя массива
  • 2 – позиция элемента в массиве (начиная с 0)

Чтобы сохранить второй элемент из ключа booking_dates (значение 2022-06-03), в правое поле нужно записать следующее значение: result.data.booking_dates.1.

Где:

  • result – тело ответа
  • data – имя объекта в теле ответа
  • booking_dates – имя ключа
  • 1 – позиция элемента в массиве (начиная с 0)
* Подробнее о кодах состояния можно прочесть здесь

Не успешноПереход по ветке будет произведен, если ответ от сервера получить не удалось.



Arithmetic block

Description:

This block is used to perform arithmetic operations with numbers and variables.

Types:

DescriptionСкриншот

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - a custom text that can be used in reports as a marker (optional).

4. Type – defines the type of arithmetic operation block.

5. Add operation – buttons for adding arithmetic operations to the working area where you create an arithmetic expression*

6. Add variable  – adds a variable to the working area

7. Save result to variable – saves calculation results to the spevified variable (required field).

1. Offset from date – allows you to define an offset from the specified date. The offset is specified in seconds. You can add and subtract dates.

2. Save the result to a variable – allows you to save the date with the specified offset into a variable in the following format "YYYY-MM-DD HH:MM:SS".



1. AST expression (only for experienced users) - allows you to enter an ATS expression.

2. BPL expression - allows you to enter a BPL expression that you can convert to an AST expression.

В конце каждой строчки данного блока необходимо ставить символ ";".

At the end of each line of this block, you must enter the ";" symbol .

3. Convert BPL to AST – converts BPL expression to AST expression.

BPL expressions work only with widgets, instant messengers and incoming calls.


*In addition to simple arithmetic expressions, you can use enable rounding the calculation results. For this, you need to specify the expression in the follwoing form: math.round({var},2), where {var} is a variable, number or arithmetic expression and 2 is the rounding accuracy (number of simbols after ф comma).

Examples:

math.round(1/3,2) defines the following: 1 will be divided by 3 and the result will be written with accuracy of 2 symbols after a comma - 0.33.

math.round(1.6666666,0) defines the following: 1.6666666 will be rounded to an integer - 2.

Important!

One block supports one arithmetic expression per line. If sequential calculations are required, then you need to use multiple blocks.

A block must always have one incoming and one outgoing arrow.

Ordinal choice block

Description:

This block is used to sequentially navigate branches that come from this block within one session.

Example: on the first visit to the ordinal choice block, a bot is transferred to branch with number "1". On the next visit to this block, the bot is transferred to branch with number 2, and etc.


DescriptionImage

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - a custom text that can be used in reports as a marker (optional).


DescriptionImage

1. Arrow text is a custom user-defined block of text that can be used to describe the purpose of the arrow. You can quickly find this text in the script using the CTRL+ F keyboard shortcuts.

2. Output data type – type of data stored in a variable. This parameters is necessary only for voice calls.

2. Sequence number - the number of block visits on the basis of which the bot selects a branch.

Testing messages

Arrows must be numbered beginning with "1". If there is no arrow with the number of the current block visit then the bot will be transferred to the operator.


Portal block

Description:

The Portal block is used for the same purpose as an arrow. It connects blocks in a script.



DescriptionСкриншот

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - a custom text that can be used in reports as a marker (optional).

4. Teleport note - custom user-defined text that can be used to describe the purpose of the block. You can quickly find this text in the script using the CTRL+ F keyboard shortcuts.

5. Send to block - block to which the bot will be sent.


Empty block

Description:

The empty block is used to create more structured block designs. You can also draw more than one arrow from this block to other blocks in the script .


DescriptionImage

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - a custom text that can be used in reports as a marker (optional).

AI block

Description:

The AI block is used for integrations with third-party neural networks.


DescriptionImage

1. ID - a unique block identifier.

2. Block type - displays the type of the selected block. You can change the type of any block in the script.

3. Block marker - a custom text that can be used in reports as a marker (optional).

4. Model - neural network model.

5. Type - type of neural network.

6. Add record - allows you to upload an audio file from your computer so that a bot can play it in a conversation with a client.

7. Record audio - allows you to record an audio file so that a bot can play it in a conversation with a client.






.

  • Нет меток