Условия

Эта инструкция поможет Вам...

Что такое условия

  • Условие
    Это логическое выражение, которое должно выполниться, чтобы диалог перешел на следующий этап сценария
С помощью условий вы можете управлять движением диалога от узла к узлу, циклами на узле и переходами в фоновые сценарии. Обработка условий состоит из трех этапов:
  • 1
    Область действия
    Условие должно находиться в области действия, чтобы оказывать какое-либо влияние на диалог. Область действия определяется тем, применяется ли условие к текущему или фоновому сценарию
  • 2
    Оценка приоритета
    Каждое условие в области действия оценивается по приоритету. Условие с наивысшим приоритетом проверяется в первую очередь
  • 3
    Проверка условия
    Если условие находится в области действия и проходит по приоритету, оно проверяется. Если условие выполняется, осуществляется переход. В противном случае происходит проверка других условий, следующих по приоритету

Область действия

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

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

Приоритеты

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

Пользовательские условия

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

Условия с источниками данных

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

Какие условия можно составить с источниками данных:
  • Контакт назвал число/ФИО/дату/элемент справочника
  • Названное число/ФИО/дата содержит какое-то определенное значение
  • Названное число/ФИО/дата сопадает со значением переменной

  • Названное число/дата больше/меньше значения/переменной
  • И др.

Условия с переменными

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

Какие условия можно составить с переменными:
  • Сравнить с другим значением, введенным вручную (равно/не равно/больше/меньше и т.д.)
  • Сравнить со значением другой переменной
  • Проверить, заполнилось ли значение переменной какими-то данными (пустая/не пустая)

Спецсимволы

Для источников данных и переменных с типами “Дата и время” и “ФИО” в полях значений можно использовать специальные символы:
  • * — любое значение, условие сработает при любом значении элемента выражения
  • $ — обязательное значение, если это значение элемента выражения не заполнено, то условие не сработает

Спецсимвол $ работает только с операторами “содержит/не содержит”. Например, вы хотите, чтобы диалог перешел на следующую ветку, только если контакт обязательно назвал имя. Для этого вы можете создать такое условие:
  • Названное ФИО ≈ *.$.*
где значение атрибута “Имя” помечено как обязательное, а значения “Фамилии” и “Отчества” нам неважны.

Группировка условий

Для перехода на новый этап диалога одного условия часто бывает недостаточно. Чтобы комбинировать разные условия в одном соединении, группируйте их с логическими операторами:
  • ИЛИ — хотя бы одно из условий группы должно выполняться
  • И — все условия группы должны выполняться
Для разных условий группы с оператором ИЛИ можно указывать разные приоритеты.

Настройка пользовательских условий

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

Условия в Robovoice находятся в форме шаблонов со списком слов и фраз (ключевых слов), которые Вы ожидаете/предполагаете услышать от контакта. Помимо прямого перечисления слов и словосочетаний, в шаблоне допустимо использовать некоторые специальные символы для расширения множества допустимых ответов собеседника. С технической точки зрения такие шаблоны представляют собой разновидность регулярных выражений человека. Например, «Да, согласие» и «Нет, отрицание».
  • Условия сценария
    Это уже готовые условия перехода с шаблонами списка ключевых слов. В положительный и отрицательный ответ на уровне системы добавлены самые распространенные варианты ответов, обозначающие согласие или, соответственно, отрицание, это целый список заранее подобранных нами фраз, которые обычно говорят люди, «Любая фраза» означает, что роботу неважно, что сказал контакт, важно распознать и зафиксировать этот ответ. Подробнее в разделе Создание сценария

Синтаксис условий

Сравнение со значениями

Источники данных и переменные с типами “ФИО” и “Дата и время” можно сравнивать с введенными вручную значениями по атрибутам. Поведение сравнения для источников данных и для переменных будет одинаковым.

Можно ввести значения одного или нескольких атрибутов для сравнения. Если значения даны не для всех атрибутов, то в полях атрибутов без значений нужно проставлять замещающие спецсимволы (* или $).

Для атрибутов > < ≥ ≤ при сравнении переменной со значением выражения будут обрабатываться верно, только если количество атрибутов со значениями и со спецсимволами будет одинаковым. Если количество атрибутов с числовыми значениями в переменной и в значении будет отличаться, то условие срабатывать не будет.

Сравнение с переменными

В условиях можно сравнивать источники данных и переменные с переменными того же типа данных.

Доступные операторы сравнения по типам данных:

  • Строка
  • =

  • пусто
  • не пусто
  • Число
  • =

  • <

  • пусто
  • не пусто
  • Справочник
  • =

  • заполнено

  • не пусто

Желаем удачи!
Команда Robovoice.
Остались вопросы?
Посмотрите Наши видео-инструкции или отправьте Ваш вопрос менеджеру Robovoice

Общие частые вопросы