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
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.7.tar.gz
(12.4 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.7-py3-none-any.whl
(12.8 kB
view details)
File details
Details for the file tgbee-1.0.7.tar.gz.
File metadata
- Download URL: tgbee-1.0.7.tar.gz
- Upload date:
- Size: 12.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e6b368553e61804fb3cc0d451bfc812fdb1221802faeace9e986c78f9d2d044
|
|
| MD5 |
e1a4ebc35f63b852a0b3244ddc6d9213
|
|
| BLAKE2b-256 |
a897ab7dee5aca36f4f7410327f170c2a1bdc3a2fcfbb393616b2724b84cc5ee
|
File details
Details for the file TgBee-1.0.7-py3-none-any.whl.
File metadata
- Download URL: TgBee-1.0.7-py3-none-any.whl
- Upload date:
- Size: 12.8 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 |
5945355a5aa5ede9e8cdb0605d492d6f45fb4488864a93f05c0c057109d909bb
|
|
| MD5 |
4cecdd250d21004ba8905b39e14a5ba7
|
|
| BLAKE2b-256 |
9b962faf8a9eba5299fe1da27ce5401309287ab99dd9be9611f7695519ecbac7
|