Игровые механики с помощью API запросов 🎯
В этой статье внедрим интересную игровую механику в ваш бот с помощью API запросов Puzzlebot.
1. Добавим токен API
Запросы к API Puzzlebot имеют базовый вид:
https://api.puzzlebot.top/?token=ТОКЕН_API&method=НАЗВАНИЕ_МЕТОДА
Создадим интеграцию в настройках бота:
Настройки - Интеграции - Входящие запросы - Сгенерировать API токен
2. Добавим метод API
Метод API - это действие, которое должен совершить бот. Мы будем использовать метод sendDice для отправки анимированных эмодзи со случайными значениями.
В телеграме есть несколько эмодзи такого вида, все они прописаны в документации приложения и имеют значения 1-6, 1-5, 1-64.
Для API PB используется написание метода как: tg.sendDice
3. Добавим параметры запроса
Параметры запроса - обязательные и дополнительные данные, которые помогают уточнить, какое действие произойдет.
Мы будем использовать параметры chat_id - для идентификации пользователя
Параметр chat_id равен переменной {{USER_ID_TEXT}} в Puzzlebot.
А также параметр emoji, его значение будет равно выбранному эмодзи 🎲 🎯 ⚽️ 🎳 🏀 🎰
4. Создаем интегрированную переменную в Puzzlebot
- Укажем название переменной
- Тип значения: Интегрированный
- Тип интеграции: HTTP-запрос
- Формат значения: число
- Значение по умолчанию: 0
- Ссылка json: https://api.puzzlebot.top
- Ответ: выбираем из списка result.dice.value - это случайное значение эмодзи
- Тип запроса: GET
- Значения параметров для удобства можно записывать в специальные ячейки
✅ Здесь уже можно закончить - если вы добавите в любую команду переменную emoji, то при вызове команды бот отправит эмодзи вместе с его значением (цифрой).
Но для создания игры мы пропишем условие, которое будет проверять значение эмодзи и переводить на нужную ветку сценария.
5. Создаем сценарий для игры
Для начала пропишем команды, на которые будем отправлять пользователя при определенных значениях эмодзи.
В зависимости от выбранного эмодзи значение будет варьироваться: 1-6, 1-5, 1-64. Создаем количество команд в соответствии с этим значением, для кубика их будет 6.
Добавляем таймер в 2 секунды для задержки отправки значения эмодзи и создания интриги.
6. Пропишем условие
Правило:
Выбираем тип проверки: Значение переменной
Ищем нашу переменную emoji и указываем значение 1
Действие:
Выбираем тип действия: Отправить команду или условие
Выбираем нужную команду, у меня это 1_emoji
Аналогичным образом прописываем условия для остальных значений эмодзи
Добавляем начальную команду с кнопкой, которая поведет к условию и вызовет наш запрос:
7. Тестируем
Здесь про разработку креативных чат-ботов 🎲