Comment on page
Разветвление сценария в зависимости от условий | Слот Transition Rule и под-слот Condition
Слот Transition Rule позволяет разветвлять Сц енарий в зависимости от условий, указанных в под-слотах Condition. Вместе с под-слотами Condition представляет собой комплексный слот.

Name ー название слота, которое будет отображено в Дереве Сценария. Максимальная длина значения поля — 40 символов.
При сохранении Слота проверяется значение в поле:
- 1.если поле пустое, выводится ошибка Please enter a slot name
- 2.если в поле более 40 символов, выводится ошибка Name must contain no more than 40 characters

- 1.Nameー название подслота, которое будет отображено в Дереве сценария. Максимальная длина значения поля — 40 символов. Если название не введено при создании подслота, Платформа автоматически копирует первые 40 символов текста из поля Condition в поле Name. Если же поле Name очищено при редактировании подслота, то на подслоте в Дереве сценария будут отображаться первые 34 символа из поля Condition.
- 1.При сохранении Слота проверяется значение в поле:
- 1.если в поле более 40 символов, выводится ошибка Name must contain no more than 40 characters
- 2.Conditionー логическое выражение, которое будет проверено в процессе Общения, и если результат проверки будет ИСТИНА, Агент перейдет в ветку, идущую после этого подслота Condition. Выражение задается, используя синтаксис Синтаксис.
- 1.При сохранении Слота проверяется значение в поле:
- 1.если поле пустое, выводится ошибка Please enter a condition
Результатом вычисления условия будет значение логического типа:
True
или False
. Если результатом вычисления условия является значение какого-то другого типа (строка, число, список, и т.п.), то оно будет приведено к логическому типу.Примеры:
- 1.Условие проверяет существование Контекстной переменной в контексте чата и возвращает
True
, если Контекстная переменная существует. - 2.Условие вернёт True, если Контекстная переменная
user_name
определена в Контексте Чата, является строкой, и имеет значение“Василий”
. - 3.Условие всегда является истинным, т.к. значение
42
приводится кTrue
.
При создании слота Transition Rule автоматически создаются два обязательных подслота Condition.

- Первый из них всегда имеет значение “
main
”, которое можно изменить на нужное нам условие, используя Синтаксис - Второй, имеющий значение “
true
”, изменить нельзя. Этот подслот всегда будет оставаться самым нижним в данном комплексном слоте — все новые подслоты Condition будут автоматически размещены выше него.
- Используя кнопку “+” можно создать новый подслот Condition.
- Новые подслоты Condition будут располагаться над автоматически созданного подслота Condition со значением “
true
” в порядке их создания.
- Чтобы удалить Подслот Condition, необходимо кликнуть по нему правой кнопкой мыши и нажать кнопку Remove Branch, затем нажать OK во всплывшем диалоговом окне.
- Возможно удалить любой Condition, кроме Подслота со значением
true
, если после удаления у Слота Transition Rule останется не менее двух Condition. - Удаление Подслота Condition со значением
true
или единственного, помимо него, Подслота Condition невозможно. При попытке это сделать п оявится следующая ошибка по центру внизу:
- При прохождении сценария через слот Transition Rule, происходит проверка истинности выражений, указанных в подслотах Condition от верхнего подслота к нижнему
- Агент немедленно перейдет в ветку первого подслота Condition, результат выражения которого будет ИСТИНА, выражения в нижерасположенных подслотах Condition не будут проверены. Например, если переменная
A
равна30
, Агент перейдет в ветку подслота Condition с условием{{ @a }} > 10
так как это условие первым будет удовлетворено при проверке.
