Skip to main content

Готовые сценарии для бота

10 практичных ситуаций — для каждой написана пошаговая настройка.


1. 🛡 Бот-модератор группы​

Зачем: автоматически удалять спам, банить нарушителей, проверять новых участников капчей.

Настройка​

  1. Создайте бота через @botmaker (имя «Модератор», username mygroup_mod_bot).
  2. Откройте настройки бота: Профиль → Мои боты → Модератор.
  3. В «Поведение» → «Приватность в группах» → «Все сообщения» (бот должен видеть всё, чтобы фильтровать).
  4. В «Дефолтные права админа» → «Группы» включите:
    • ✅ Удалять сообщения
    • ✅ Банить и мутить участников
    • ✅ Управлять чатом
  5. Подключите готового бота-модератора через токен: например, shieldy (антиспам капча) — см. Bot Testing Guide.
  6. Добавьте бота в свою группу как админа (право установится автоматически в один тап благодаря дефолтным).

Что получится​

  • Новый участник зашёл → бот шлёт капчу
  • Не прошёл за минуту → кикает
  • Кто-то написал спам-слово → удаляется автоматически
  • Команды /ban, /mute @user 60 для админов

2. 🤖 AI-помощник (ChatGPT)​

Зачем: отвечает на вопросы пользователей, переводит, генерирует тексты, советует.

Настройка​

  1. Создайте бота @my_ai_bot.
  2. В «Команды» добавьте:
    • start — Начать чат
    • reset — Сбросить контекст
    • imagine — Сгенерировать картинку
  3. Опционально: «Стартовая картинка» — превью с описанием возможностей.
  4. Поднимите готового бота — например, karfly/chatgpt_telegram_bot:
    git clone https://github.com/karfly/chatgpt_telegram_bot
    # подменить токен на ваш и API_BASE на https://api.telefon.chat
    docker compose up -d
  5. Откройте чат с вашим ботом → пишите ему вопросы.

Что получится​

  • Бот отвечает streaming-ответами (как в ChatGPT)
  • Память диалога между сообщениями
  • Команда /reset чистит контекст
  • Генерация изображений по запросу

3. 📢 Бот для канала с автопостингом​

Зачем: публиковать новости из RSS-ленты или внешнего источника каждый час/день.

Настройка​

  1. Создайте бота @news_poster_bot.
  2. Добавьте в свой канал как админа с правом «Публиковать посты» (см. Добавить в канал).
  3. Сохраните токен бота.
  4. Поднимите простой постинг-скрипт (cron job):
    while true; do
    curl -X POST https://api.telefon.chat/bot$TOKEN/sendMessage \
    -d "chat_id=@my_channel&text=$(cat next_post.txt)"
    sleep 3600
    done
  5. Или используйте готовое решение — например TgRSSBot для RSS-фидов.

Что получится​

  • Каждый час новый пост из источника
  • Можно публиковать в несколько каналов
  • Reactions/Comments работают как у обычного поста

4. 📊 Бот для опросов и викторин​

Зачем: проводить голосования в группе, викторины с подсчётом счёта, ежедневные челленджи.

Настройка​

  1. Создайте @quiz_bot.
  2. В «Команды»:
    • quiz — Запустить викторину
    • poll — Создать опрос
    • results — Текущий счёт
  3. Добавьте в группу как обычного участника (не нужно админа).
  4. Подключите готового quiz-бота:
    # python-telegram-bot polls.py example
    # подмените URL на api.telefon.chat
  5. В группе пишите /quiz — бот шлёт серию вопросов, участники голосуют.

Что получится​

  • 5–10 вопросов с правильным ответом
  • Тайм-лимит на каждый
  • Финальный leaderboard в конце

5. 🛍 Магазин в чате (Mini App)​

Зачем: продавать товары через бота — каталог, корзина, оформление прямо в Telefon.

Настройка​

  1. Создайте бота @my_shop_bot.
  2. Разверните вашу веб-страницу магазина на любом HTTPS-хостинге (Vercel, Netlify, своё).
  3. В настройках бота → секция «Mini App»:
    • Web App URL: https://my-shop.example.com
    • Текст кнопки меню: «Открыть магазин»
  4. Стартовая картинка 640×360 — превью каталога.
  5. Команды:
    • start — Открыть магазин
    • orders — Мои заказы
    • support — Поддержка

Что получится​

  • В шапке чата с ботом — кнопка «Открыть магазин»
  • Тап → открывается ваш сайт внутри Telefon
  • JS на сайте получает данные пользователя через window.Telefon.WebApp
  • Оформление заказа без выхода из приложения

См. подробно про Mini App.


6. 🔔 Бот для уведомлений из GitHub/Jira​

Зачем: получать сообщения о коммитах, PR, задачах прямо в личку или групповой чат команды.

Настройка​

  1. Создайте бота @team_notifications_bot.
  2. Добавьте в групповой чат команды.
  3. Сохраните токен.
  4. На своём сервере поднимите простой Flask-приёмник webhooks:
    from flask import Flask, request
    import requests
    app = Flask(__name__)
    TOKEN = "ваш_токен"
    CHAT = "@team_chat"

    @app.post("/gh-webhook")
    def gh():
    p = request.json
    if request.headers.get("X-GitHub-Event") == "push":
    text = f"🚀 {p['repository']['full_name']}: {len(p['commits'])} new commits"
    requests.post(f"https://api.telefon.chat/bot{TOKEN}/sendMessage",
    json={"chat_id": CHAT, "text": text})
    return "ok"
  5. В GitHub → Settings → Webhooks → URL вашего сервера.

Что получится​

  • При push в репу — пост в чат команды
  • При создании PR/issue — отдельные уведомления
  • Реакции/комментарии работают

7. 🌤 Бот погоды​

Зачем: отвечает на запрос «погода в Москве» данными прогноза, может слать ежедневный прогноз.

Настройка​

  1. Создайте @weather_bot.
  2. Получите ключ OpenWeatherMap (бесплатный): openweathermap.org/api.
  3. Запустите простой скрипт:
    import os, aiogram, aiohttp
    from aiogram import F
    bot = Bot("ваш_токен", session=...)
    dp = Dispatcher()

    @dp.message(F.text)
    async def weather(m):
    async with aiohttp.ClientSession() as s:
    r = await s.get(f"https://api.openweathermap.org/data/2.5/weather?q={m.text}&appid={KEY}&units=metric")
    data = await r.json()
    await m.answer(f"{m.text}: {data['main']['temp']}°C, {data['weather'][0]['description']}")
  4. В «Команды» добавьте: weather <город> — Прогноз.

Что получится​

  • Юзер пишет название города → ответ с температурой
  • Можно расширить: ежедневный прогноз в Reply Keyboard

8. 📋 Бот-список дел (TODO)​

Зачем: персональный таск-менеджер для каждого пользователя в чате.

Настройка​

  1. Создайте @my_todo_bot.
  2. Команды:
    • add — Добавить задачу
    • list — Показать список
    • done — Отметить выполненной
  3. Включите Reply Keyboard — кнопки внизу: «📝 Добавить», «📋 Список», «🗑 Очистить».
  4. Скрипт хранит задачи в SQLite per-юзер:
    # На каждое сообщение — добавить в DB по user_id
    # /list — вывести записи юзера

Что получится​

  • Каждый юзер имеет свой список
  • Постоянная клавиатура снизу с быстрым доступом
  • Напоминалки опционально

9. 🎮 Игра «Мафия»​

Зачем: ролевая игра в группе друзей.

Настройка​

  1. Создайте @mafia_game_bot.
  2. Добавьте в групповой чат как админа (нужны права на отключение чата для ночи).
  3. Поднимите готового бота: jh0ker/mwerewolf (~5 минут):
    git clone https://github.com/jh0ker/mwerewolf
    # подмените URL на api.telefon.chat, токен — ваш
    python bot.py
  4. В группе: /start → бот раздаёт роли в ЛС → следует ходам.

Что получится​

  • Группа 5+ человек играет в «Мафию»
  • Бот ведёт партию: ночь/день, голосование
  • Результат партии в чате

10. 💬 Inline-бот (поиск в любом чате)​

Зачем: искать GIF/картинки/факты прямо в строке ввода — @my_bot запрос.

Настройка​

  1. Создайте @my_inline_bot.
  2. В «Поведение» включите toggle «Inline-режим».
  3. Поднимите простого inline-бота на aiogram (см. пример).
  4. В любом чате (даже не своём) пишите @my_inline_bot test — появится popup с результатами от вашего бота.

Что получится​

  • Поиск по вашей базе из любого чата Telefon
  • Тап на результат → отправляется в чат
  • Полезно для GIF-ботов, поисковиков, конвертеров

Что выбрать первым​

Если вы новичок — начните с простого AI-помощника (#2) или бота с командами (#8). Они дают быстрый «вау-эффект» и не требуют админ-прав в группах.

Если делаете для команды/комьюнити — #1 модератор или #6 GitHub-уведомления.

Если бизнес — #3 канал-постинг или #5 магазин в Mini App.