Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.


Russian

Якорь
Top
Top

CSS Stylesheet
.top-button { background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/baseline_keyboard_arrow_up_white_18dp.png) !important; background-position: center; background-color: #47a7f5 !important; background-repeat: no-repeat; box-shadow: -1px 1.5px 3px #999; color: #47a7f5 !important; border-radius:50px !important; position: fixed; bottom: 45px; left: 93.5%; width: 50px; height: 50px !important; font-size: 12px !important; padding: 14.5px !important; z-index: 2; } .top-button:hover{ background-color: #65b9ff !important; color: #65b9ff !important; } .page-header{ background-color: #232838; background-repeat: no-repeat; background-position: center; width: auto; height: 100px; background-image: url(https://confluence.twin24.ai/download/attachments/23986188/logo_twin-02.png); background-size: 10em; color: #fff; font-size: 20px; padding: 20px; } .page-footer{ background-color: #232838; background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/decorated-pattern-dark.png); width: auto; height: 10px; color: #fff; text-align: end; font: small-caption; padding-inline-end: 30px; padding-top: 200px; padding-bottom: 30px; } .page-headline{ background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/Solid256dot8_2changed.png); background-repeat: no-repeat; background-position-x: -227px; background-position-y: center; padding: 20px; background-color: #007bff; width: auto; height: 10px; color: #fff; text-align: center; font: caption; font-weight: 600; } .tabs-menu{ padding-left: 85% !important; }
Message Box
iconnone
titleСодержание:
typegeneric

Оглавление

Зачем нужны стрелки

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

В примере ниже показано, как блоки сценария соединяются между собой при помощи стрелок.

Image Modified

Какие типы стрелок существуют

В сценариях на платформе Twin используются следующие типы стрелок:

  • Соединительные стрелки
  • Стрелки условий
  • Стрелки принятия решений
Информация

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

Соединительные стрелки связывают блоки сценария между собой, указывая, в каком направлении развивается диалог. В примере ниже одна соединительная стрелка (стрелка 1) ведет из стартового блока к блоку Информация, а другая соединительная стрелка (стрелка 2) ведет из блока Информация к блоку Вопрос. Эти соединительные стрелки наглядно показывают направление диалога.

Подсказка

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

Image Modified

Условные стрелки связывают блоки условие условие с другими блоками сценария. Такие стрелки не указывают направление развития диалога, а задают поведение робота в диалоге в зависимости от выполнения тех или иных условий. В примере ниже стрелки 5 и 6 является условными.

Image Modified

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

На рисунке ниже стрелки 3 и 4 являются стрелками принятия решений.

Image Modified

Подсказка

Блок Вопрос может быть связан с другими блоками с помощью множества стрелок принятия решений. Каждая из этих стрелок задает определенные параметры. Если ответ пользователя соответствует параметрам, которые определены в одной из стрелок, то диалог будет развиваться в направлении, указанном именно этой стрелкой.

Как создавать стрелки

Стрелки в сценариях создаются автоматически и вручную.

Как создать стрелку вручную

Выберите инструмент Стрелка на панели инструментов и нарисуйте стрелку между блоками сценария, перемещая курсор от одного блока сценария к другому. Для этого выберите нужный блок, нажмите левую кнопку мыши и, удерживая ее нажатой, протяните стрелку к другому блоку.


Image Modified

Как создать стрелку автоматически

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

Параметры стрелок принятия решений

Image Modified

Стрелки принятия решений имеют следующие параметры:

НаименованиеОписание
Текст стрелки Название стрелки в сценарии. По названию можно быстро найти нужную стрелку и понять ее назначение.
Сохранить ответ Позволяет сохранить ответ клиента в какую-либо переменную, чтобы в дальнейшем использовать его в блоках сценария. Если для этого параметра установлен флажок, то в поле Название переменной нужно ввести название используемой переменной.
Сохранить всю фразуПараметр определяет способ сохранения ответа. Если параметр используется, то система сохранит ответ клиента полностью. Если параметр не используется, то система сохранит только ключевое слово, по которому осуществляется переход в ветку.
Сохранить ответ в системную переменнуюПозволяет сохранить ответ пользователя, чтобы в дальнейшем использовать его в одном из блоков (или нескольких блоках) Вопрос. Это особенно удобно при переходе диалога из одного сценария в другой, чтобы не задавать пользователю вопрос, ответ на который был получен ранее.
Тип выходных данныхЭтот параметр должен быть заполнен для каждой стрелки принятия решения. Он определяет тип условия, при выполнении которого система понимает, что диалог должен развиваться в направлении, которое указано с помощью этой стрелки.
Варианты ответаС помощью этого параметра можно отображать клиенту возможные варианты ответа в виде кнопок. Если клиент нажмёт на такую кнопку, то диалог пойдет в направлении, которое указано с помощью стрелки, которая связана с выбранной кнопкой. В некоторых случаях клиенту удобнее использовать кнопки чем писать ответ.
Порядковый номер кнопкиЕсли существует несколько ответов на вопрос, то кнопок будет несколько. Этот параметр позволяет определить порядок отображения кнопок (первая, вторая, третья и т. д.). Отсчёт ведётся от 0. Если вы не укажите порядок отображения кнопок, то система разместит их в произвольном порядке.

Типы выходных данных

Image Modified


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

Указывает системе, что ответ клиента будет содержать дату. Дата указывается в формате 2024-01-31 т.е Y-m-d. 
Например, робот спрашивает у клиента дату его рождения или дату записи на прием. При выборе этого типа данных нужно указать условие, при выполнении которого робот пойдёт по выбранной стрелке. Например, дата рождения должна быть раньше текущей даты, а дата записи не должна относится к прошлому. Если же вы хотите, чтобы робот прошел по стрелке, если клиент назовет любую дату, то можно выбрать вариант Без разницы.

Image Modified

Дата и времяИспользование этого типа данных аналогично использованию типа данных Дата, только система ожидает получить в ответе клиента дату и время. Условия будут те же самые. Например, робот спрашивает у клиента дату и время записи на приём ко врачу, и если ответ клиента содержит дату и время, то система перейдет по стрелке.
Число Аналогично использованию типа данных Дата, только система реагирует на любые цифры. Например, робот спрашивает клиента: «Подскажите, сколько вам полных лет?» В зависимости от ответа клиента робот может перейти по одной или другой стрелке. Например, в одной стрелке в качестве условия для принятия решения вы можете указать, что число должно быть меньше 18, а в другой – больше 18. Соответственно, если возраст клиента окажется меньше 18 лет, то робот перейдет по одной стрелке и сообщит клиенту: «Извините за беспокойство. Всего доброго». В противном случае робот может предложить клиенту приобрести сигареты.
Большое числоАналогично использованию типа данных Число, только система будет ожидать числа длиной более 3-х символов. Например, серия и номер паспорта.
Ошибка определения большого числаПереход по ветке будет произведен, если в процессе ввода большого числа от клиента было получено что-то не содержащее чисел.
Номер телефона

Система будет ожидать от клиента номер телефона, состоящий из 11 цифр. Например, робот спрашивает у клиента: «Подскажите, по какому номеру телефона вы звонили?». В зависимости от того, какой номер телефона клиент назовет (номер отдела закупок или отдела технической поддержки), система пойдет по направлению, которое указано с помощью соответствующей стрелки. Система может ожидать как любой (произвольный) номер телефона (например, что клиент в принципе реагирует и готов продолжать), так и определенный номер. Для этого в поле Значение должно быть нужно выбрать вариант Без разницы или Равно. При выборе варианта Равно в следующем поле нужно указать требуемый номер телефона.

Примечание

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

Предупреждение

Номер телефона должен содержать не более 11 цифр. В противном случае робот не сможет его распознать.

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

При вводе городского номера нужно указывать код страны и код города (например, 7 и 812).

Image Modified

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

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

Ветка по умолчанию

Система пойдет по направлению, которое указано с помощью данной стрелки, если ответы клиента не попадают под условия других стрелок в данном блоке. Настроек у стрелки этого типа нет. Из каждого блока может выходить только одна стрелка (ветка) по умолчанию.

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

Здесь вы связываете вашего NLU-агента и конкретное намерение. Если ответ клиента совпадает с намерением, которое указано в этой стрелке, то система пойдет по направлению, указанному стрелкой.

Image Modified

Информация

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

Сигнал DTMF

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

Файл

Благодаря этой функции система может определить, что клиент отправил файл и реагировать на это. Также позволяет получить ссылку на отправленный файл.

Предупреждение

Максимальный объем входного файла – 40 мб.

Определение ошибок при помощи ветки по умолчанию

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

Для реализации данного функционала можно установить в параметрах ветки Тип выходных данных - Ветка по умолчанию
В таком случае, если бот не определит нужное намерение, либо ключевое слово в вопросе или, например, не удастся получить положительный ответ при запросе к серверу (в стрелке из блока Запрос к серверу вернётся не код 200, а другой), бот пойдёт по ветке по умолчанию

Пример стрелки по умолчанию для вывода информации об ошибке при общении с ботом:

Image Modified

Для определения ошибок в больших либо сложных сценариях, удобнее получать подробные ошибки о том, на каком этапе сценария и на каком конкретном блоке произошёл сбой, а так же, какова причина ошибки
Сделать это можно при помощи фиксации id нужного блока в переменную в блоке Результат перед выводом информации об ошибке, а затем, в следующем блоке Информация, вывести информацию об ошибке вместе с этой переменной:

Image Modified

Подсказка

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

Поэтому рекомендуется использовать ветки по умолчанию из каждого блока, в котором потенциально может возникнуть какая-либо ошибка

Интеллектуальное определение чисел

Для типов выходных данных Число и Большое число в редакторе сценариев существует параметр Интеллектуальное определение.

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

Image Modified

Image Modified

Информация

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

Image Modified


Button Hyperlink
custom-icontop-button
idtop-button
title.
typestandard
classtop-button
url#Top


English

Якорь
Top
Top

CSS Stylesheet
.top-button { background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/baseline_keyboard_arrow_up_white_18dp.png) !important; background-position: center; background-color: #47a7f5 !important; background-repeat: no-repeat; box-shadow: -1px 1.5px 3px #999; color: #47a7f5 !important; border-radius:50px !important; position: fixed; bottom: 45px; left: 93.5%; width: 50px; height: 50px !important; font-size: 12px !important; padding: 14.5px !important; z-index: 2; } .top-button:hover{ background-color: #65b9ff !important; color: #65b9ff !important; } .page-header{ background-color: #232838; background-repeat: no-repeat; background-position: center; width: auto; height: 100px; background-image: url(https://confluence.twin24.ai/download/attachments/23986188/logo_twin-02.png); background-size: 10em; color: #fff; font-size: 20px; padding: 20px; } .page-footer{ background-color: #232838; background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/decorated-pattern-dark.png); width: auto; height: 10px; color: #fff; text-align: end; font: small-caption; padding-inline-end: 30px; padding-top: 200px; padding-bottom: 30px; } .page-headline{ background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/Solid256dot8_2changed.png); background-repeat: no-repeat; background-position-x: -227px; background-position-y: center; padding: 20px; background-color: #007bff; width: auto; height: 10px; color: #fff; text-align: center; font: caption; font-weight: 600; } .tabs-menu{ padding-left: 85% !important; }
Message Box
iconnone
titleOn this page:
typegeneric

Оглавление

What are arrows used for

Arrows are elements that connect blocks in a script. Using arrows, a bot moves from one script block to another. If a certain block is not connected to one of other blocks in a script, then this block is not used in dialogs.

The picture below shows how blocks are connected to each other with arrows in a script.

Image Modified

Types of arrows

In scripts, the following types of arrows are used:

  • Connection arrows
  • Condition arrows
  • Decision arrows
Информация

Types of arrows used in scripts are defined automatically by the system. This depends on the blocks they connect. The user cannot change these types by themself.

If an arrow is used to connect aQuestion block to another block, then this is a decision arrow.

If an arrow is used to connect a block that does not require a response from a client (for example, the Information block), then this arrow is called a connection arrow.

Connection arrows only connect script blocks to each other, indicating in which direction the dialogue develops. In the example below, connection arrow 1 leads from the Start block to the Information block, and connection arrow 2 leads from the Information block to the Question block. These connection arrows indicate the direction of the dialogue.

Image Modified

Подсказка

Only one connection arrow is used to link one block to another in a script.

 


Condition arrows are used to link Condition blocks to other blocks in a script. Such arrows do not indicate the direction of the dialogue, but define actions of the bot in the dialogue with regard to certain conditions. In the example below, arrows 5 and 6 are condition arrows.

Image Modified



Decision arrows link Question blocks to other script blocks that define actions of the bot that happen after client responses. Depending on a response, the bot can perform one or another action. The bot can go in the direction indicated by the arrow if the client response meets the conditions specified by this arrow.

Below, arrows 3 and 4 are decision arrows.

Image Modified

Подсказка

A Question block can be linked to other blocks using multiple decision arrows. Each of these arrows has certain parameters. If the client' s reply matches the parameters defined in one of these arrows, then the dialog will develop in the direction indicated by this arrow.

How do you create arrows

Arrows in scripts are created automatically and manually.

CREATING ARROWS MANUALLY

Activate the Arrow tool on the toolbar and draw an arrow between script blocks by moving the mouse pointer from one script block to another. To do this, choose the necessary block, press the left mouse button and, holding it down, drag the arrow to another block.


Image Modified



CRESTING ARROWS AUTOMATICALLY

When you add new blocks to the script by pulling them from existing blocks arrows are created automatically.

Parameters of decision arrows

Decision arrows have the following parameters:

Image Modified

Click image to enlarge

  • Arrow text - the name of the arrow in the script. You can quickly find an arrow in a script by its name.
  • Save response - allows you to save a client's response to a variable in order to use it later in script blocks. If this option is selected, then in the Variable name field, enter the name of the variable you want to use.
  • Save the whole phrase - this parameter determines how the client's response is saved. If the parameter is used, then the system will save the client's response in its exact form. If the parameter is not used, then the system will save only a keyword from the client's response.
  • Save answer to system variable - allows you to save the client's answer in order to use it later in one or multiple Question blocks. This is especially useful when the dialog moves from one script to another. The bot will not ask user a question that  the user answered earlier.
  • Output type - this is a required parameter for each decision arrow. It defines the type of condition that the system uses to steer the dialog in the direction indicated by this arrow.
  • Response options - with this parameter, you can display possible response options to the client in the form of buttons. If the client clicks on such a button, the dialog will go in the direction indicated by the arrow associated with the selected button. In some cases, it is more convenient for the client to use buttons than to write a response.
  • Sequence number of the button - in case there are several answers to the question, then there will be several buttons. This option allows you to define the order in which these buttons are displayed (first, second, third, etc.). The countdown starts from 0. If you do not specify the order in which buttons are displayed, they will be arranged in random order.


Output types

  • Keywords - allows you to specify exact words and phrases. In case a client's response contains a specified word or phrase then the dialogue is developed in the direction indicated by the corresponding arrow.
  • Date - tells the system that the client's response will contain a date. For example, the bot asks the client the date when they were born or the date of an appointment. When you choose this data type, you need to specify the condition under which the robot will follow the selected arrow. For example, the birth date must be earlier than the current date, and a date of appointment must not be in the past. If you want the bot to follow the arrow in case a client's response contains any date, then you can select the No difference value.


Image Modified

  • Date and time - this data type is similar to Date data type with an exception thatthe system expects to receive both date and time in the client's response. The set of conditions is the same. For example, the bot asks the client for the date and time of their appointment. If the client's response contains the date and time, the system will follow the arrow.
  • Number - similar to Date data type with an exception thatthe system expects to receive any number. For example, the bot asks the client how old are they. Depending on the client's response, the bot can follow one or the other arrow. For example, in one arrow, as a condition for making a decision, you can specify that the number must be less than 18, and in the other you specify that the number must be more than 18. If the client is under 18, the bot will follow one arrow and tell the client: " Sorry to bother you. All the best". Otherwise, the bot may offer the client to purchase cigarettes.
  • Large number - similar to Number data type with an exception thatthe system expects to receive a number longer than 3 characters. For example, the passport details.
  • Phone number - the system will expect to receive a phone number (11 digits) in the client's reply. For example, the bot asks the client: “Tell me, what phone number did you call?”. Depending on the phone number the client called (purchasing department or technical support department), the system will go in the direction indicated by the corresponding arrow. The system can expect to receive any (arbitrary) or specific phone number. For this, in the Value field, you should select eithe No difference or Equal to. If you select Equal to, you should enter the necessary phone number in the next field.
Примечание

The Phone number option allows you to track both mobile and landline numbers. At the moment, this function works only with the phone numbers registerd in Russian telecom operators.

Предупреждение

The phone number must contain 11 digits. Otherwise, the robot will not recognize it.

For a mobile number you must specify the country code (for example, 7 or 8).

For a city number, you must specify the country and city codes (for example, 7 and 812).

Image Modified



  • Phone number detection error - the system checks that the phone number contained in the client's response is valid. If the phone number is invalid (i.e. the number does not exist), then the system will follow in the direction specified by one arrow (for example, the bot can ask the client to repeat the phone number).
  • Default branch - the system will go in the direction indicated by this arrow if the client's response does not meet conditions specified in other arrows. This arrow type has no parameters. Only one default branch can go from a block.

  • Intelligent Decision Making - you associate your NLU agent with a specific intent. If the client's response matches the intent indicated by this arrow, then the system will go in the direction indicated by the arrow.

Image Modified

Информация

In the Smart Decision arrow, you can specify multiple intents that should lead to the same clients' response.


  • DTMF signal - this function is very useful in voice menus. The system allows you to track what button the client presses. Depending on the button the client presses, the system will follow a certain arrow (i.e., the bot tells the client: “To create a new order, press button 1. To proceed with the current order, press button 2. To end this conversation, press button 3” ).

Button Hyperlink
custom-icontop-button
idtop-button
title.
typestandard
classtop-button
url#Top