aiogram-compatible SDK for Messenger001 Bot API — migrate your Telegram bot in one import change
Project description
messenger001-aiogram
aiogram-совместимый SDK для Messenger001 Bot API. Перенеси свой Telegram-бот на aiogram в Messenger001 заменой одного импорта.
⚠️ Alpha. API стабилизируется. Используй для пилотов и экспериментов.
Установка
pip install messenger001-aiogram # позже, после публикации на PyPI
# Сейчас:
pip install git+https://github.com/maratmost/messenger001-aiogram.git
Миграция существующего TG-бота
- from aiogram import Bot, Dispatcher, F
- from aiogram.filters import Command, CommandStart
- from aiogram.types import Message, CallbackQuery
- from aiogram.utils.keyboard import InlineKeyboardBuilder
+ from messenger001_aiogram import Bot, Dispatcher, F, InlineKeyboardBuilder
+ from messenger001_aiogram.filters import Command, CommandStart
+ from messenger001_aiogram.types import Message, CallbackQuery
Handlers, фильтры, inline-клавиатуры, FSM — остаются без изменений.
Пример
import asyncio, os
from messenger001_aiogram import Bot, Dispatcher, F, InlineKeyboardBuilder, Message, start_webhook
from messenger001_aiogram.filters import CommandStart
dp = Dispatcher()
@dp.message(CommandStart())
async def start(msg: Message):
kb = InlineKeyboardBuilder()
kb.button(text="Ping", callback_data="ping")
await msg.answer("Привет!", reply_markup=kb.as_markup())
async def main():
async with Bot(token=os.environ["M001_TOKEN"]) as bot:
await start_webhook(dp, bot, port=8080)
asyncio.run(main())
См. examples/echo_bot.py для полного примера.
Меню команд
Зарегистрируй команды бота — в чате с ботом появится кнопка меню слева от поля ввода, /команды в тексте станут кликабельными, а ввод / покажет автокомплит.
from messenger001_aiogram import BotCommand
async with Bot(token=TOKEN) as bot:
await bot.set_my_commands([
BotCommand(command="start", description="Начать работу"),
BotCommand(command="help", description="Помощь"),
])
Что поддерживается (v0.1)
| aiogram | messenger001-aiogram |
|---|---|
Bot(token) |
✅ |
bot.send_message / send_photo / send_document / send_video / send_audio |
✅ |
bot.edit_message_text / edit_message_reply_markup |
✅ |
bot.answer_callback_query / send_chat_action / get_me |
✅ |
bot.set_my_commands / get_my_commands / delete_my_commands |
✅ |
Dispatcher, Router, include_router |
✅ |
@dp.message(...), @dp.callback_query(...) |
✅ |
Command, CommandStart(deep_link=True) |
✅ |
F.data == "...", F.text.startswith(...) |
✅ (подмножество) |
InlineKeyboardBuilder, InlineKeyboardMarkup |
✅ |
State, StatesGroup, FSMContext, MemoryStorage |
✅ |
| Webhook receiver (aiohttp) + HMAC-verify | ✅ |
bot.start_polling(...) |
❌ (M001 — webhook-only) |
| Reply-клавиатура | ❌ (нет на платформе) |
| Forwarding, polls, stickers | ❌ (нет на платформе) |
Подключение
-
Создай бота. Открой в Messenger001 чат с @botfather →
/newbot→ получи токен. Сохрани его в env-переменнуюM001_TOKEN. -
Напиши код бота. Используй пример выше или скопируй examples/echo_bot.py.
-
Запусти бота на сервере с публичным HTTPS (VPS, Railway, Render, Fly.io). Скрипт должен слушать
POST /webhookна публично доступном URL. Для production используй systemd / supervisor / docker, чтобы процесс автоматически рестартился.python your_bot.py -
Зарегистрируй webhook у @botfather. В том же чате:
/mybots→ выбери бота → «Webhook URL» → укажиhttps://your-host/webhook. -
Готово. Пиши боту в Messenger001 — он отвечает.
Документация
См. также:
- docs/getting-started.md — пошаговый «hello world» от установки до первого ответа.
- docs/migration-from-aiogram.md — гид по переезду существующего TG-бота.
- docs/api-reference.md — таблица соответствия aiogram API ↔ messenger001-aiogram API.
- docs/webhook-spec.md — техническое описание webhook protocol и Bot API endpoints.
Лицензия
MIT © Marat Khusainov
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file messenger001_aiogram-0.1.0a5.tar.gz.
File metadata
- Download URL: messenger001_aiogram-0.1.0a5.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21bc1433ffecabc7800ea1dab30797f12903920795d742bef6f2d9b94e1474cf
|
|
| MD5 |
6fa22a96468a70c9d0f481aa92d63671
|
|
| BLAKE2b-256 |
f734f36ec1229ffd373b116c65a45917c50253b65edf4d225a733e475cb24f81
|
File details
Details for the file messenger001_aiogram-0.1.0a5-py3-none-any.whl.
File metadata
- Download URL: messenger001_aiogram-0.1.0a5-py3-none-any.whl
- Upload date:
- Size: 22.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54a2499b6b33ed851dc70c45445fe8e6850c14523b342689247477429fd5b3be
|
|
| MD5 |
578e7e5d4908cfb6d26795f577025f67
|
|
| BLAKE2b-256 |
2a76053f6d627b0b5558a5a0801e35ddb2d177e7d9908403a9d5af4cf7610b71
|