Перейти к содержимому

Триггер

image_1

Описание

Блок создает обработчик события (триггер) в Telegram-боте. Триггер срабатывает при выполнении условия и выполняет заданный шаг сценария: отправляет ответ, показывает кнопки и при необходимости вызывает пользовательскую функцию.


Описание параметров

Блок имеет ряд параметров:

  1. Триггер — условие события, на которое должен реагировать бот.

    Тип данных: dict (Словарь) | None (Ничто)

    Пример: Ничто

    Комментарий: Если указать Ничто, обработчик реагирует на входящие сообщения без дополнительного фильтра.

  2. Ответ пользователю — текст ответа при срабатывании триггера.

    Тип данных: str (Строка)

    Пример: Выберите действие

  3. Название шага — имя шага состояния бота, к которому будет выполнен переход.

    Тип данных: str (Строка)

    Пример: step_1

  4. Добавить кнопки — список кнопок, отображаемых пользователю.

    Тип данных: list (Список) | None (Ничто)

    Пример: ["Кнопка 1", "Кнопка 2"]

  5. Сохранять контекст диалога — сохранять пользовательские данные между шагами.

    Тип данных: checkbox (Чекбокс)

    Пример:

  6. Сохранить вложения? (Указать папку) — путь к папке для сохранения вложений из сообщений.

    Тип данных: str (Строка) | None (Ничто)

    Пример: C:\\Puzzle_RPA\\project\\resource\\telegram_files

  7. Получить контекст диалога — вернуть накопленный контекст пользователя в текущем шаге.

    Тип данных: checkbox (Чекбокс)

    Пример:

  8. Очистить контекст диалога — очистить накопленный контекст после обработки события.

    Тип данных: checkbox (Чекбокс)

    Пример:

  9. Выполнить при нажатии — функция, вызываемая при срабатывании триггера.

    Тип данных: callable (Функция) | None (Ничто)

    Пример: my_handler

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

    Тип данных: checkbox (Чекбокс)

    Пример:


Пример использования

В данном примере создается бот, который предоставляет информацию:

  1. Указываются параметры бота, токен бота, администратор бота, хранилищем состояний выбрана оперативная память;

  2. Создается команда start, при вызове команды отображается запрос на проверку номера телефона с возможностью поделиться контактом;

  3. Добавлены обработчики событий. Первый обработчик (триггер) срабатывает при отправке пользователем номера телефона. При этом вызывается функция phoneCheck, сверяющая номер пользователя со списком.

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

    Если номер в списке не найден - выводится сообщение о запрете доступа к боту.

  4. Второй обработчик (триггер) срабатывает в случае, если пользователь отправляет иную информацию, нежели номер телефона. При этом производится возврат на нулевой шаг (команду start).

image_2 image_4

Результат

Пример работы Telegram-бота с настроенным триггером:

image_5