Skip to main content

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 ashur

Usage

from ashur.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+
  • requests library
  • flask library (for webhook server)

License

AGPL-3.0

Project details


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.2.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ashur-0.1.2-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file ashur-0.1.2.tar.gz.

File metadata

  • Download URL: ashur-0.1.2.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for ashur-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b57637b6bf2d8b86702d3cc41fe02b3ab0829deae0a1d9e9deedc3af5146b3e5
MD5 b81f2b2685523e73f0cf6031cc4bb2df
BLAKE2b-256 e4fe557666b31493658920adedae71da6367002476d7dd4c9c53c6590f183178

See more details on using hashes here.

File details

Details for the file ashur-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: ashur-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for ashur-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9b6dc49634d4b0b48b882f75796d5b3f37871e19c235053eaca841a8bac4c35f
MD5 503060a7cb19b2f947bb3c65408e94f4
BLAKE2b-256 a3ea8fbbae3619c8592a3cd09e354bd6fec68386f121dd31231ae87e8208ef56

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page