Modern and powerful asynchronous telegram bot framework.
Release news available here: @RocketgramNews
All dependencies are optional, but you should install aiohttp
to use the framework.
orjson
or ujson
is highly recommended to speedup json parsing.
Also, you can use uvloop
as alternative to standard event loop.
- Python >= 3.7
- aiohttp >= 3.8.1
- ujson >= 5.2.0
- orjson >= 3.6.8
- uvloop >= 0.12.1
pip install rocketgram[aiohttp]
pip install uvloop rocketgram[aiohttp,orjson]
There is a trivial example below. Here is useful bot template.
from rocketgram import Bot, Dispatcher, UpdatesExecutor
from rocketgram import context, commonfilters
from rocketgram import SendMessage
token = f'YOUR_BOT_TOKEN'
router = Dispatcher()
bot = Bot(token, router=router)
@router.handler
@commonfilters.command('/start')
async def start_command():
await SendMessage(context.user.id, f'Hello there!').send()
@router.handler
@commonfilters.command('/help')
async def start_command():
await SendMessage(context.user.id, f'Some userful help!').send()
UpdatesExecutor.run(bot)
Code tested automatically using Github Actions
.
You can see build status here.
To test code manually install and run pytest
:
pip install pytest
python -m pytest