A python wrapper for bale api
Project description
Bale Bot API Python Library
A Python wrapper for the Bale Bot API that makes it easy to build Bale bots.
Features
- Full Bale Bot API support
- Object-oriented design
- Easy-to-use interface
- Support for:
- Messages
- Photos
- Documents
- Audio
- Video
- Voice messages
- Location
- Contact sharing
- Inline keyboards
- Menu keyboards
- Callback queries
- Chat administration
- Payment system
- Database integration
Installation
pip install pyrobale
Quick Start
from bale import Client, MenuKeyboardMarkup, MenuKeyboardButton
# Initialize bot with token
bot = Client("YOUR_BOT_TOKEN")
# Handle incoming messages
@bot.on_message
def handle_message(message):
if message.text == "/start":
# Create keyboard
keyboard = MenuKeyboardMarkup()
keyboard.add(MenuKeyboardButton("Hello!"))
# Send welcome message
message.reply_message("Welcome!", reply_markup=keyboard)
# Start the bot
bot.run()
Key Components
Client
The main class for interacting with Bale API. Handles all API requests and provides event decorators.
Message
Represents a message in Bale with methods for replying, editing, and deleting messages.
User
Represents a Bale user with their properties and methods.
Chat
Represents a chat conversation with methods for sending messages and managing chat settings.
Keyboards
MenuKeyboardMarkup: For creating text keyboardsInlineKeyboardMarkup: For creating inline keyboards
Database
Built-in SQLite database support for storing persistent data.
Event Handlers
Message handler
@bot.on_message
def handle_message(message):
pass
Callback query handler
@bot.on_callback_query
def handle_callback(callback):
pass
Periodic task handler
@bot.on_tick(60) # Runs every 60 seconds
def handle_tick():
pass
Ready event handler
@bot.on_ready
def handle_ready():
pass
Member join handler
@bot.on_member_chat_join
def handle_join(message, chat, user):
pass
Member leave handler
@bot.on_member_chat_leave
def handle_leave(message, chat, user):
pass
Database Usage
Access database
with bot.database as db:
db.write_key("user_123", {"points": 100})
data = db.read_key("user_123")
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 pyrobale-0.2.9.4.1.tar.gz.
File metadata
- Download URL: pyrobale-0.2.9.4.1.tar.gz
- Upload date:
- Size: 74.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d59be01a0dff72c10755230db616a80e93ae3ec2e5f3bb4a88692165f3ff28d
|
|
| MD5 |
5f344a54ecc5f8f6f830335d35840b3a
|
|
| BLAKE2b-256 |
ee2b0aa2dd0732d370b8a0ec48ed01f77107f013c91709d2db819500e21d9b66
|
File details
Details for the file pyrobale-0.2.9.4.1-py3-none-any.whl.
File metadata
- Download URL: pyrobale-0.2.9.4.1-py3-none-any.whl
- Upload date:
- Size: 40.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97334a9bc8a3884bed3b3086cf2fa04013d1350eacb70ccd85dd8e328ba74962
|
|
| MD5 |
110986f62a6ee22730ce71e0b3661876
|
|
| BLAKE2b-256 |
b1edddbbe47a2b10550dbefe238d627cfda915b7390e59294a022c68a42bdba3
|