StaticGramBot API

Игры

Бот может отправлять HTML5-игры, открывающиеся прямо в StaticGram, и вести таблицу рекордов.

Создание игры

  1. В чате с @BotFather отправьте /newgame, выберите бота, задайте название, описание и короткое имя (game_short_name).
  2. Список игр: /listgames, удаление: /deletegame.

Отправка и запуск

Shell
curl "https://api.staticgram.top/bot$TOKEN/sendGame" -d chat_id=123456789 -d game_short_name=mygame

Под сообщением появится кнопка «Play <название>». При нажатии бот получает CallbackQuery с полем game_short_name и должен ответить answerCallbackQuery с url вашей игры:

Python
@dp.callback_query(F.game_short_name == "mygame")
async def open_game(query: CallbackQuery):
    await query.answer(url="https://games.example.com/mygame/?uid=%d" % query.from_user.id)

Рекорды

setGameScore записывает результат игрока, getGameHighScores возвращает топ-3 и соседей игрока (±2 позиции). Таблица общая для чата.

Ограничения: игры отправляются в личные чаты и супергруппы; загрузка собственной картинки или анимации игры пока не поддерживается; business_connection_id отклоняется; сообщение с игрой не редактируется автоматически при новом рекорде (disable_edit_message игнорируется).

Описания методов и типов взяты из официальной документации Telegram Bot API (Bot API 10.3). Адрес API: https://api.staticgram.top