Python client for the Ashur bot API
Project description
AshurBot Python Client Library
A Python client for the Ashur bot API. This library allows you to interact with your Ashur bot using Python.
Installation
pip install requests flask
Copy the ashurbot directory into your project or install as a package (if published).
Usage
from ashurbot.client import AshurBotClient
client = AshurBotClient(
bot_token="YOUR_BOT_TOKEN",
bot_secret="YOUR_BOT_SECRET"
# api_base_url is optional and defaults to https://ashurbots.vercel.app
)
# Send a message
client.send_message(target="user_or_group_id", message="Hello!")
# Read messages
messages = client.read_messages(target="user_or_group_id")
# Webhook example
# You must set your bot's webhook URL to your server's public address + /webhook
def handle_event(event):
print("Received webhook event:", event)
# Do stuff with the event dict
client.on_webhook(handle_event) # Starts a Flask server on http://0.0.0.0:8080/webhook
Supported Methods
send_message(target, message)read_messages(target, limit=20)edit_message(target, message_id, new_text)delete_message(target, message_id)reply_to(target, message, reply_to_id)get_bot_info()update_bot_profile(name=None, pic=None, bio=None, webhook_url=None)list_chats()get_chat_info(chat_id, is_group=False)list_group_members(group_id)add_group_member(group_id, user_id)remove_group_member(group_id, user_id)pin_message(target, message_id, is_group=False)unpin_message(target, message_id, is_group=False)set_chat_title(group_id, name)set_group_photo(group_id, pic)leave_chat(target, is_group=False)get_message_by_id(target, message_id, is_group=False)forward_message(from_target, message_id, to_target, from_is_group=False, to_is_group=False)get_bot_stats()on_webhook(handler, host="0.0.0.0", port=8080, path="/webhook")— Start a Flask server to receive webhook events
Requirements
- Python 3.7+
requestslibraryflasklibrary (for webhook server)
License
AGPL-3.0
Publishing to PyPI
- Update your metadata in
pyproject.toml(name, version, description, authors, license, etc.). - Build the package:
cd ashurbot python3 -m pip install --upgrade build python3 -m build
This will create adist/directory with.tar.gzand.whlfiles. - Register an account on PyPI if you haven't already.
- Install Twine:
python3 -m pip install --upgrade twine
- Upload your package:
python3 -m twine upload dist/*
Enter your PyPI username and password when prompted. - Install your package:
pip install ashur
See the PyPI packaging guide for more details.
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
ashur-0.1.0.tar.gz
(4.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
ashur-0.1.0-py3-none-any.whl
(4.6 kB
view details)
File details
Details for the file ashur-0.1.0.tar.gz.
File metadata
- Download URL: ashur-0.1.0.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bbda2c86ba81ca66737b362f70e8e22479242ef761b115683fb226c88e31caee
|
|
| MD5 |
a73030e1bc903535552992d565405075
|
|
| BLAKE2b-256 |
1e8b992e025453f15844bb93522f5d991cef134008d172f5d01478b7d702fd32
|
File details
Details for the file ashur-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ashur-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc661046d645f1a4bd9c9e06bdfc7302ce61718a452fd5f6488fc9d61bd6dec4
|
|
| MD5 |
9a5de109b4df60e00781120a88ca8e67
|
|
| BLAKE2b-256 |
d2db5f8ad63cba424602698adcee958479befa82dc1b70a115a14bbc56675159
|