niazpardaz-sms 1.0.3

Official Rust SDK for Niazpardaz SMS API | کتابخانه رسمی Rust برای API پیامکی نیازپرداز
Documentation
use niazpardaz_sms::NiazpardazClient;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = NiazpardazClient::new("YOUR_API_KEY");

    // ─── ارسال پیامک تکی ────────────────────────────
    let result = client
        .send("10001234", "09123456789", "سلام از نیازپرداز!")
        .await?;
    if result.is_successful() {
        println!("ارسال موفق! BatchSmsId: {}", result.batch_sms_id);
    } else {
        println!("خطا: {}", result.result_code.description());
    }

    // ─── ارسال گروهی ────────────────────────────────
    let bulk = client
        .send_bulk("10001234", &["09121111111", "09122222222"], "پیام گروهی")
        .await?;
    println!("ارسال گروهی: {}", bulk.batch_sms_id);

    // ─── ارسال نظیر به نظیر ─────────────────────────
    let l2l = client
        .send_sms_like_to_like(
            "10001234",
            &["09121111111", "09122222222"],
            &["پیام اول", "پیام دوم"],
        )
        .await?;
    println!("نظیر به نظیر: {}", l2l.sms_id);

    // ─── ارسال OTP صوتی ─────────────────────────────
    let otp = client
        .send_voice_otp("10001234", "09123456789", "5678")
        .await?;
    println!("OTP صوتی: {}", otp.batch_sms_id);

    // ─── اعتبار باقیمانده ────────────────────────────
    let credit = client.get_credit().await?;
    println!("اعتبار: {} ریال", credit.credit);

    // ─── شماره‌های فرستنده ────────────────────────────
    let senders = client.get_sender_numbers().await?;
    println!("شماره‌ها: {:?}", senders.senders);

    // ─── بررسی لیست سیاه ────────────────────────────
    let blacklist = client.number_is_in_telecom_blacklist("09123456789").await?;
    println!("در لیست سیاه: {}", blacklist.is_black);

    // ─── بررسی محتوا ────────────────────────────────
    let content = client.check_sms_content("سلام تست").await?;
    println!("محتوا معتبر: {}", content.is_valid);

    Ok(())
}