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.
Don't forget to ⭐ the repository on
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.1.0.tar.gz
(12.8 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.1.0-py3-none-any.whl
(13.0 kB
view details)
File details
Details for the file tgbee-1.1.0.tar.gz.
File metadata
- Download URL: tgbee-1.1.0.tar.gz
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3c3b4c917dacb900e6a41430ec0e517a855ac3b9224f37a50f9f76bd2c5338a
|
|
| MD5 |
2598b2b5cea970f2c37eae7b3d74e27e
|
|
| BLAKE2b-256 |
af7faa4d6a91db55357f85da6f08530c8721dbfed9467ef6f267ef9b416c3047
|
File details
Details for the file TgBee-1.1.0-py3-none-any.whl.
File metadata
- Download URL: TgBee-1.1.0-py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d9d519d08dadca40a527ad078b7ee45a3b32b0930ea387452c557aaed65b7ebe
|
|
| MD5 |
8cfa8ae8132b8747703aba0e29e8c049
|
|
| BLAKE2b-256 |
acc7caf7c75f1fd25345e36cf8bc015e284b82ba5151c2dd18a64b121770941d
|