aiogram-ru-pin icon indicating copy to clipboard operation
aiogram-ru-pin copied to clipboard

Закрепленное сообщение в aiogram [ru]

Добро пожаловать в чат по фреймворку для Telegram Bot API - aiogram.

Если вы новенький, то обратитесь к разделу FAQ-чат, чтобы понять как эффективно вести общение в чате.

Ошибки и предложения по тексту принимаются в репозитории aiogram/aiogram-ru-pin


Содержание

Официальные ссылки

FAQ:

- чат

- по фреймворку

- по Bot API и Telegram

- прочее

Обучающие материалы

Шаблоны ботов

Open-source боты на aiogram

Библиотеки

Прочие ресурсы


Официальные ссылки

Репозиторий

Примеры

Документация

Канал с обновлениями библиотеки

Чат сервера Minecraft

Канал с локальными мемами

Донат:

Open Collective

Patreon

[наверх]


FAQ

чат

Для чего этот чат?

Для обсуждения фреймворка aiogram и обмена знаниями по Telegram Bot API.

Чат НЕ ДЛЯ:

  • помощи по языку программирования Python. Даже если на нем написан aiogram.
  • помощи по любой другой библиотеке или фреймворку. Даже если вы их используете для написания бота. Даже если бот написан на aiogram. Даже если aiogram написан на Python

Как получить помощь в чате?

  • Научитесь разговаривать в интернете
  • Научитесь искать ошибки сами и правильно задавать вопросы
  • Научитесь читать ошибки

Можно ли опубликовать заказ в чате?

Публикуйте заказы в канал Telegram Jobs.

Можно ли опубликовать рекламу?

Перед публикацией обсудите это с @JRootJunior

[наверх]


по фреймворку

Как помочь проекту aiogram?

Для тех, кто умеет писать код, хочет законтрибутить, но не знает, с чего начать:

1. Ищете баг или фичу в списке по ссылке.

2. Реализовываете/чините.

3. Проверяете, что всё работает и ничего не сломалось.

4. Отправляете Pull Request.

По вопросам, связанным с кодом, можно пинговать в чате @JRootJunior

Для тех, кто не умеет в код, есть кнопка задонатить или подписаться.

Как использовать мидлвари?

- Использование Middlwares в aiogram

Какие есть фильтры?

- Встроенные фильтры

Как работает регистрация хендлеров?

- Принцип регистрации хендлеров

Как можно отловить альбом?

Пример:

- aiogram_album_handler (GitHub)

Как получить данные из мидлвари в фильтрах?

from aiogram.dispatcher.handler import ctx_data
...
data = ctx_data.get()

Как ограничить флуд от пользователя?

Пример:

- throttling_example 2.x (GitHub) - throttling_example 3.x (GitHub)

Как запустить функцию по таймеру?

Клик

Как отловить присоединение пользователя в чат?

Вот как это сделано в aiogram_bot

Чем отличается 2.x от 3.x?

https://t.me/aiogram_ru/625472

Как сделать мультибота (бота менеджера)?

В 3.x:

https://t.me/aiogram_ru/793653

В 2.x из коробки никак, смотрите примеры:

[наверх]


по Bot API и Telegram

Зачем нужен локальный сервер Bot API?

Сейчас ВСЕ боты ломятся на HTTP-эндпоинт api.telegram.org, который расположен в Амстердаме. Поэтому соединение может быть медленным.

Если поставить свой Bot API сервер, то бот будет быстро отправлять данные на него, а тот будет пинать ближайший дата-центр (в своём регионе) по шустрому протоколу MTProto. Потенциально это ускорит обработку запросов.

Те, кто и так сидит в Европе, могут не заметить разницу в скорости, либо прирост будет незначительным, чтобы заморачиваться. А вот лимиты файлов — да, кайф.

Где хранить картинки?

По возможности храните не картинки, а file_id. Однако если вам нужна прямая ссылка, вы можете воспользоваться Telegra.ph (подробнее).

Как работают пригласительные ссылки?

- Про пригласительные ссылки в Telegram

Обходят ли лимиты ответы на вебхук (answer to the webhook)?

Нет

https://t.me/aiogram_ru/769342

Другие ли лимиты на RPS при локальном Bot API?

Нет, смотрите ответ на вопрос выше

Лимиты при работе бота одновременно с рассылкой

https://t.me/aiogram_ru/655602

Что ещё прочитать про лимиты?

https://t.me/aiogram_ru/813667
https://t.me/aiogram_ru/814567
https://t.me/aiogram_ru/472575

Что выдаст getChatMember, если пользователя никогда не было в чате?

Ошибку User not found

[наверх]


Прочее

Какой использовать хостинг для бота?

https://t.me/aiogram_ru/755328

Избежание локов SQLite в асинхронном коде

https://t.me/aiogram_ru/785043

Как собирать статистику в боте?


Обучающие материалы

Пишем Telegram-ботов с aiogram 3.x (β) - книга по ботам на aiogram 3.x от @Groosha

Пишем Telegram-ботов с aiogram 2.x - книга по ботам на aiogram 2.x от @Groosha

Разработка Телеграм ботов на Python - Telegram канал от @Latand

Курс по разработке ботов на aiogram - подробный обучающий курс по ботам от Работы с Telegram Bot API до настройки БД в ботах и деплоя на сервер.

[наверх]


Шаблоны ботов

tgbot_template от @Tishka17

telegram-bot-template от @rodion-gudz

aiogram_template от @bomzheg

aiogram_template от @F0rzend

aiogram-bot-template от @f0rden

aiogram_template_by_Azizbek от @laymi0

[наверх]


Open-source боты на aiogram

aiogram_bot - @aiogram_bot

KarmaBot - @pythonscriptsbot

bot-api-search - @atapibot

telegram-casino-bot - @DifichentoBot

telegram-bombsweeper-bot - @bombsweeperbot

telegram-2048-bot - @another_2048_bot

aiogram-and-sqlalchemy-demo - A simple demo of using aiogram + async sqlalchemy 1.4+ от @Groosha

aiogram-aws-serverless-example

aiogram-yandex.cloud-serverless-example

link-kicker - @link_kicker_bot

simplecaptcha-bot - @simplecaptcha_bot

остальные

[наверх]


Библиотеки

aiogram_dialog - GUI framework on top of aiogram от @Tishka17, обсуждение в Telegram

aiogram-scenario - FSM от @Abstract_X

tgintegration - интеграционное тестирование ботов

aiogram_broadcaster

nats-with-fsm - FSM хранилище на базе брокера очередей NATS JetStream(FSM storage based on NATS JetStream queue broker)

aiograph - работа с Telegraph API

tg-codegen - генерация типов и методов из документации Bot API

Inline-calendar - Inline calendar for Telegram

NekoGram - A wrapper over aiogram that simplifies bot creation, обсуждение в Telegram

fluentogram - A proper way to use an i18n mechanism with Aiogram 3.

[наверх]


Прочие ресурсы

awesome-aiogram

awesome-telegram

TelegramBotsList

Telegram-Bot-FAQ (ru)

[наверх]