...
В некоторых случаях может потребоваться добавить напоминание, если клиент не отвечает на сообщение бота в течение определенного времени. Для этого потребуется использовать BPL-функции для работы с таймером.
Фрагмент сценария
Параметры блоков и стрелок
...
- Перед блоком вопроса необходимо установить блок арифметических операций с типом Произвольный тип. В дальнейшем нам потребуется внести в него BPL-выражение для запуска таймера, но для этого сначала необходимо собрать фрагмент сценария с напоминанием.
...
- Затем нужно установить пустой блок, у которого нет входящих веток, так как переход к нему будет осуществлен с помощью таймера, после чего необходимо скопировать id данного блока для последующего использования в BPL-операции при помощи кнопки копирования ID:
...
- Далее необходимо установить блок информации, содержащий напоминание, и провести к нему стрелку из пустого блока. Выходящую стрелку из блока информации необходимо подсоеднить к блоку вопроса.
...
- После этого необходимо вернуться к блоку арифметики из шага №1, и в поле BPL-выражение ввести следующее выражение:
Блок кода language php theme DJango $ti = timer.start(120, "id")
где:
$ti - название таймера, по которому к нему можно обратиться для его остановки;
120 - время в секундах, которое таймер будет отсчитывать, может быть указано пользовательское значение;
id - идентификатор пустого блока, скопированный в шаге №2.
После чего обязательно нажать кнопку Преобразовать BPL в AST.
...
- Затем необходимо установить блок арифметики после блока вопроса, соединяя их стрелкой с параметрами, соответствующими заданному вопросу, далее в блоке арифметики выбрать
...
- тип Произвольный тип, и внести в поле BPL-выражение следующее выражение:
где:Блок кода language php theme DJango timer.stop($ti)
$ti - название ранее запущенного таймера.
После чего обязательно нажать кнопку Преобразовать BPL в AST. - Далее вы можете продолжить сборку сценария с необходимыми вам блоками.
Таким образом вы можете добавить в свой сценарий напоминание, в случае если клиент не отвечает на вопрос.
Пример работы фрагмента
В данном случае напоминание приходит через 2 минуты, так как установлено время действия таймера 120 секунд.
...