...
Code Block | ||
---|---|---|
| ||
если("{error} == 1").то(
сообщениеПользователю.сШаблоном("Система не работает")
) +
...
|
Блок операций может состоять из нескольких шагов. В этом случае различные шаги в блоке должны быть соединены знаком “+”, но последний шаг в блоке не должен содержать “+“
Code Block | ||
---|---|---|
| ||
если("{when} == завтра").то(
задатьПользователюВопрос("Ок! Введи пожалуйста нужное время").сохранитьРезультат("time") +
вызвать.внешнийСервис("{url}", "GET").сПараметрами(("time","{time}")).сохранитьРезультатКакСтроку("result"))
) +
...
|
Дополнительные модификаторы шага условных операций включают в себя дополнительные условия для выполнения операций и указание на сочетание условий.
...
Code Block | ||
---|---|---|
| ||
если("{error} == 0").и("{connection_mistakes} == 0").то(
сообщениеПользователю.сШаблоном("Система работает")
)+
|
.или(*условие) -
Модификатор для указания дополнительного условия, объединененного с основным условием логической операцией ИЛИ. Итоговый набор шагов будет выполнен при выполнении одного из условий - основного или дополнительного.
Code Block | ||
---|---|---|
| ||
если("{error} == 1").или("{connection_mistakes} == 1").то(
сообщениеПользователю.сШаблоном("Система не отвечает")
)+
|
...
установитьМетку(*название)
...
Code Block | ||
---|---|---|
| ||
установитьМетку("раз") +
...
перейтиНаМетку("раз")+
|
...
перейтиНаМетку(*метка)
Шаг перехода на установленную в коде сценария метку.
Code Block | ||
---|---|---|
| ||
если("{error} == 0").и("{connection_mistakes} == 0").то(
// переход на метку без указания лимита переходов, используется значение по-умолчанию 30
перейтиНаМетку("раз")
) +
...
|
Если указанной метки не существует - шаг перехода будет проигнорирован. Для ограничения бесконечного зацикливания сценария в шаге установлен лимит на количество переходов равный 30. Для установки другого ограничения количества переходов служит модификатор шага.
...
Code Block | ||
---|---|---|
| ||
комментарий("Сменил тематику чата на {newTheme}") +
...
|
...
выполнитьJs(*скрипт)
Шаг выполнения скрипта на JavaScript. Шаг позволяет реализовать произвольную логику вычислений или разбор сложных объектов. В качестве аргумета аргумента шаг принимает текст JS скрипта.
Info |
---|
Javascript VM соответствует ECMAScript 5.1ECMASript 2016+ Используйте обычный синтаксис callback function поскольку не поддерживается синтаксис lambda функций ES6 |
...
Code Block | ||
---|---|---|
| ||
запросВБазыЗнаний("Как купить слона", "botKnows")+
если("{botKnows} == true").то(
сообщениеПользователю.сШаблоном("Ответ есть")
)+
|
Info |
---|
Если группа в диалоге не определена на момент выполнения шага (например, в интеграции на событие “поступление диалога в систему”), то запрос будет отправлен в базы знаний основной группы. |
назначитьТематику(*идентификатор)
...