Библиотека для разработки чат-ботов с помощью API мессенджера MAX
Project description
Документация • Примеры • MAX Чат • TG Чат
📦 Установка из PyPi
Стабильная версия
pip install maxapi
🐱👤 Установка из GitHub
Свежая версия, возможны баги. Рекомендуется только для ознакомления с новыми коммитами.
pip install git+https://github.com/love-apples/maxapi.git
🚀 Быстрый старт
Если вы тестируете бота в чате - не забудьте дать ему права администратора!
Запуск Polling
Если у бота установлены подписки на Webhook - события не будут приходить при методе start_polling. При таком случае удалите подписки на Webhook через MasterBot или через await bot.delete_webhook() перед start_polling.
import asyncio
import logging
from maxapi import Bot, Dispatcher
from maxapi.types import BotStarted, Command, MessageCreated
logging.basicConfig(level=logging.INFO)
bot = Bot('тут_ваш_токен')
dp = Dispatcher()
# Ответ бота при нажатии на кнопку "Начать"
@dp.bot_started()
async def bot_started(event: BotStarted):
await event.bot.send_message(
chat_id=event.chat_id,
text='Привет! Отправь мне /start'
)
# Ответ бота на команду /start
@dp.message_created(Command('start'))
async def hello(event: MessageCreated):
await event.message.answer(f"Пример чат-бота для MAX 💙")
async def main():
await dp.start_polling(bot)
if __name__ == '__main__':
asyncio.run(main())
Запуск Webhook
Перед запуском бота через Webhook, вам нужно установить дополнительные зависимости (fastapi, uvicorn). Можно это сделать через команду:
pip install maxapi[webhook]
Указан пример простого запуска, для более низкого уровня можете рассмотреть этот пример.
import asyncio
import logging
from maxapi import Bot, Dispatcher
from maxapi.types import BotStarted, Command, MessageCreated
logging.basicConfig(level=logging.INFO)
bot = Bot('тут_ваш_токен')
dp = Dispatcher()
# Команда /start боту
@dp.message_created(Command('start'))
async def hello(event: MessageCreated):
await event.message.answer(f"Привет из вебхука!")
async def main():
await dp.handle_webhook(
bot=bot,
host='localhost',
port=8080,
log_level='critical' # Можно убрать для подробного логгирования
)
if __name__ == '__main__':
asyncio.run(main())
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 maxapi-0.9.4.tar.gz.
File metadata
- Download URL: maxapi-0.9.4.tar.gz
- Upload date:
- Size: 57.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
199724f46d09be9b5529065a9accac59edd2b562229dfb308ea90195e8be2179
|
|
| MD5 |
fd1a76410cb9fa9a04b1883381924268
|
|
| BLAKE2b-256 |
e83d45c8ad521b6b02db553e770cc986f7f9ca2a95ea36b7bd2e188e1924d5de
|
File details
Details for the file maxapi-0.9.4-py3-none-any.whl.
File metadata
- Download URL: maxapi-0.9.4-py3-none-any.whl
- Upload date:
- Size: 118.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dabc9f00601255cef16a81c0928ac4240c1c63c6cd6de4610605a4b41e720e75
|
|
| MD5 |
724ece95104675413e50fb0ff18e0008
|
|
| BLAKE2b-256 |
7fc530913f6bc6c0d389a7a5d19dbe3e1ea93ac0a59d8688ac828aa65091374b
|