An asynchronous Python Telegram Bot API wrapper
Project description
TgBee
TgBee is an asynchronous Python wrapper for the Telegram Bot API. It provides a simple and intuitive interface for creating Telegram bots using modern Python features.
Features
- Asynchronous API calls using
aiohttp - Easy-to-use decorator-based handler system
- Support for inline keyboards and callback queries
- Plugin system for modular bot development
- FastAPI integration for webhook support
Installation
You can install TgBee using pip:
pip3 install -U TgBee
Example
import asyncio
from TgBee import Client, filters
from pytelebot.bot import SkipHandler
bot = Client(token="YOUR_BOT_TOKEN")
@bot.on_message(filters.command("start"))
async def start_command(client, message):
reply_markup = {
"inline_keyboard": [
[
{"text": "Button 1", "callback_data": "button1"},
{"text": "Button 2", "callback_data": "button2"}
]
]
}
mention = message.from_user.mention
sent_message = await client.send_message(
chat_id=message.chat.id,
text=f"Welcome {mention} to the bot! Here's a message with some buttons:",
parse_mode="HTML",
reply_markup=reply_markup
)
@bot.on_callback_query()
async def handle_callback(client, callback_query):
callback_query_id = callback_query.id
data = callback_query.data
if data == "button1":
await client.answer_callback_query(callback_query_id=callback_query_id, text="You pressed Button 1!", show_alert=True)
elif data == "button2":
await client.answer_callback_query(callback_query_id=callback_query_id, text="You pressed Button 2!", show_alert=True)
else:
await client.answer_callback_query(callback_query_id=callback_query_id, text="Unknown button pressed", show_alert=True)
async def main():
await bot.run()
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
tgbee-1.0.2.tar.gz
(12.6 kB
view details)
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
TgBee-1.0.2-py3-none-any.whl
(12.9 kB
view details)
File details
Details for the file tgbee-1.0.2.tar.gz.
File metadata
- Download URL: tgbee-1.0.2.tar.gz
- Upload date:
- Size: 12.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76fd00b0d61a8ba93ac7bf260ae7d9b6667a73911e4b0db06f1971bfac42cdba
|
|
| MD5 |
320d4c83fa682f8512fabf836d14c827
|
|
| BLAKE2b-256 |
fa6d112efa41a30a19d951333ba87c37d2c0a3667c8cdb68550951a9124ed523
|
File details
Details for the file TgBee-1.0.2-py3-none-any.whl.
File metadata
- Download URL: TgBee-1.0.2-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
24ac1512c3dcb1bba8b83a3ab42388220831b50d73a76288e28b54b4f8e1d7ec
|
|
| MD5 |
a90a0cd7c63c93575aac3f696a7427ff
|
|
| BLAKE2b-256 |
f460ff3b997d4112553f6acc7abc4dd59e4ddce985a5d3c22c8452b01796ab30
|