پرش به محتویات

API رسمی منتشرشده

توسعه‌دهنده aioshad

محتوای زیر از متن رسمی منتشرشدهٔ بسته در PyPI استخراج شده است.

🧠 Client

کلاس اصلی کتابخانه:

from aioshad import Client

app = Client(phone_number, ...)

✏️ ویرایش پیام

message = await app.edit_message(
    object_guid="g0...",
    message_id="123456",
    text="متن جدید",
)

🖼️ ارسال تصویر

await app.send_photo(
    "g0...",
    "./photo.jpg",
    caption="یک تصویر",
)

پشتیبانی از ورودی str، bytes و Path وجود دارد.

Reply با عکس:

await app.send_photo(
    "g0...",
    "./photo.jpg",
    caption="پاسخ تصویری",
    reply_to_message_id="123456",
)

📄 ارسال فایل

await app.send_file(
    "g0...",
    "./document.pdf",
    caption="فایل شما",
)

همچنین می‌توان نام فایل و MIME را مشخص کرد:

await app.send_file(
    "g0...",
    b"hello world",
    file_name="hello.txt",
    mime="txt",
    caption="سلام",
)

⏰ TimeName

یکی از قابلیت‌های اصلی aioshad، تغییر دوره‌ای نام همان اکانت برای نمایش ساعت/تاریخ است.

from aioshad import Client, TimeName

app = Client(
    "0937xxxxxxxx",
    session_directory="./sessions",
)

async def main():
    await app.connect()

    await app.presence.start_time_name(
        TimeName(
            format="⏰ {time}",
            timezone="Asia/Tehran",
            interval=60,
        )
    )

    await app.run_until_disconnected()

asyncio.run(main())

🤖 Auto Reply

سیستم پاسخ خودکار روی همان حساب:

app.autoreply.add(
    "سلام",
    "سلام! پیام شما دریافت شد.",
)

app.autoreply.set_default(
    "پیامت دریافت شد.",
)

await app.autoreply.enable()

غیرفعال‌سازی:

await app.autoreply.disable()

🎯 Message Handler

دریافت پیام‌ها با Decorator:

from aioshad import Client, filters

app = Client("0937xxxxxxxx")

@app.on_message(filters.command("ping"))
async def ping(message):
    await message.reply("pong")

asyncio.run(app.start())

Handler می‌تواند sync یا async باشد:

@app.on_message(filters.text)
async def handler(message):
    print(message.text)

یا:

@app.on_message(filters.text)
def handler(message):
    print(message.text)

Dispatcher نتیجهٔ Awaitable را در صورت وجود await می‌کند.


🧩 تمام Filterهای موجود

ماژول اصلی:

from aioshad import filters