Skip to main content

Асинхронная библиотека для создания ботов в MaxAPI

Project description

AsyncMaxBot SDK

PyPI version Python 3.8+ License: MIT Docs

AsyncMaxBot SDK — это современная асинхронная Python библиотека для создания ботов в Max Messenger API. Библиотека предоставляет удобный и мощный API для разработки ботов с поддержкой всех современных возможностей.


✨ Ключевые возможности

  • Полная асинхронность: Построена на asyncio и aiohttp для максимальной производительности.
  • Мощные фильтры (F): Создавайте сложные правила для обработки сообщений с помощью Magic-фильтров.
  • Router-система: Организуйте код в виде модулей для лучшей читаемости и поддержки.
  • Middleware: Добавляйте собственную логику в процесс обработки обновлений.
  • Интерактивные клавиатуры: Легко создавайте inline-кнопки и обрабатывайте callback-запросы.
  • Строгая типизация: Все объекты API валидируются с помощью Pydantic для надежности вашего кода.
  • Обработка событий: Реагируйте на системные события, такие как добавление пользователя в чат.

🚀 Быстрый старт

Вот пример простого эхо-бота, который также приветствует пользователя по команде /start.

1. Установите библиотеку:

pip install asyncmaxbot

2. Напишите код вашего бота:

# bot.py
import asyncio
from maxbot import Bot, Dispatcher, Context, F

# Рекомендуется хранить токен в переменной окружения
TOKEN = "YOUR_TOKEN_HERE"

async def main():
    # Используем 'async with' для корректного управления сессией
    async with Bot(token=TOKEN) as bot:
        dp = Dispatcher(bot)

        # 1. Обработчик команды /start
        @dp.message_handler(F.command == "start")
        async def handle_start(ctx: Context):
            await ctx.reply(f"👋 Привет, {ctx.user.name}!")

        # 2. Обработчик для всех остальных текстовых сообщений
        @dp.message_handler(F.text)
        async def handle_echo(ctx: Context):
            await ctx.reply(f"Вы написали: {ctx.text}")

        # Запускаем получение обновлений
        print("Бот запущен...")
        await bot.polling(dispatcher=dp)

if __name__ == "__main__":
    try:
        asyncio.run(main())
    except KeyboardInterrupt:
        print("Бот остановлен.")

3. Запустите бота:

python bot.py

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

Полное руководство по всем компонентам, классам и методам SDK доступно на нашем сайте документации:

➡️ Перейти к документации

На сайте вы найдете:

  • Подробное Руководство по API.
  • Коллекцию рабочих примеров, от простых до продвинутых.
  • Лучшие практики по структуре проекта.

🔗 Официальные ресурсы Max Messenger


🤝 Вклад в проект (Contributing)

Мы всегда рады помощи в развитии библиотеки! Если вы хотите внести свой вклад, пожалуйста, следуйте этим шагам.

Для разработчиков

  1. Форкните репозиторий.
  2. Создайте новую ветку для вашей функциональности (git checkout -b feature/AmazingFeature).
  3. Внесите свои изменения и закоммитьте их (git commit -m 'Add some AmazingFeature').
  4. Отправьте изменения в свой форк (git push origin feature/AmazingFeature).
  5. Создайте Pull Request.

Для AI-ассистентов

Для автоматизации рутинных задач и соблюдения стандартов кодирования, пожалуйста, ознакомьтесь с руководством в файле AI_GUIDE.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asyncmaxbot-1.4.2.tar.gz (58.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

asyncmaxbot-1.4.2-py3-none-any.whl (29.3 kB view details)

Uploaded Python 3

File details

Details for the file asyncmaxbot-1.4.2.tar.gz.

File metadata

  • Download URL: asyncmaxbot-1.4.2.tar.gz
  • Upload date:
  • Size: 58.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for asyncmaxbot-1.4.2.tar.gz
Algorithm Hash digest
SHA256 2798302492ca16337be032aacafbf10093a5eb8ff0d7d9d0aeaa3635b7d982a7
MD5 fb68943283362de23a7a1524fb991102
BLAKE2b-256 e42cde4716942b75ebbf0d45a7875fb82a125c63c73b4dc531a076b85ba60514

See more details on using hashes here.

File details

Details for the file asyncmaxbot-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: asyncmaxbot-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 29.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for asyncmaxbot-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dd745cace9e3e522a4e8eafadcafb5402bfbcdcc11e2ce13926a5133e295342f
MD5 148a0cef3510b14725f823b991d82bd0
BLAKE2b-256 bac9d0758a6a29fb16c769bbf036b46d4903729afdeb51b4a8dc3d07819c4fcc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page