asanak/laravel-web-call-client

A modern Laravel Web Call client for call and reporting via REST API

1.0.0 2025-06-30 14:12 UTC

This package is not auto-updated.

Last update: 2025-06-30 20:54:30 UTC


README

یک پکیج مدرن Laravel برای مدیریت تماس ها از طریق یک سرویس RESTful.

📌 ویژگی‌ها

  • آپلود فایل صوتی به لیست فایل ها
  • ایجاد تماس از طریق فایل صوتی (تک یا چند مقصده)
  • ایجاد تماس برای کد های احراز هویت (OTP)
  • دریافت گزارش وضعیت تماس ها
  • دریافت اعتبار باقی مانده

📄 منابع و مستندات

🔧 نصب پکیج

ابتدا از طریق Composer نصب کنید:

composer require asanak/laravel-web-call-client

سپس فایل پیکربندی را publish نمایید:

php artisan vendor:publish --tag=asanak-config

و فایل .env پروژه را با مقادیر زیر تکمیل کنید:

ASANAK_WEB_CALL_USERNAME=your-username
ASANAK_WEB_CALL_PASSWORD=your-password
ASANAK_WEB_CALL_BASE_URL=https://callapi.asanak.com
ASANAK_WEB_CALL_LOG=true

پکیج به صورت اتوماتیک provider و facade را به اپلیکیشن اضافه می‌کند، نیاز به تعریف دستی نیست.

✅ استفاده در پروژه لاراول

1. افزودن فایل صوتی جدید

use Asanak\WebCall\Facade\AsanakWebCallFacade as AsanakWebCall;

try {
    $data = AsanakWebCall::uploadNewVoice('/path/file/voice.mp3');
    dd($data);
} catch (\Throwable $e) {
    echo $e->getMessage();
}

2. تماس از طریق فایل صوتی

use Asanak\WebCall\Facade\AsanakWebCallFacade as AsanakWebCall;

try {
    $data = AsanakWebCall::callByVoice('VOICE_FILE_ID', '09120000000');
    dd($data);
} catch (\Throwable $e) {
    echo $e->getMessage();
}

3. تماس OTP

use Asanak\WebCall\Facade\AsanakWebCallFacade as AsanakWebCall;

try {
    $data = AsanakWebCall::callByOtp(1234, '09120000000');
    dd($data);
} catch (\Throwable $e) {
    echo $e->getMessage();
}

4. مشاهده وضعیت تماس ها

use Asanak\WebCall\Facade\AsanakWebCallFacade as AsanakWebCall;

try {
    $data = AsanakWebCall::callStatus(['CALL_ID_1', 'CALL_ID_2']);
} catch (\Throwable $e) {
    echo $e->getMessage();
}

5. دریافت اعتبار

use Asanak\WebCall\Facade\AsanakWebCallFacade as AsanakWebCall;

try {
    $data = AsanakWebCall::getCredit();
    dd($data['credit']);
} catch (\Throwable $e) {
    echo $e->getMessage();
}

🧰 لاگ‌گذاری و مانیتورینگ

در صورتی که مقدار ASANAK_WEB_CALL_LOG در .env برابر true باشد، لاگ درخواست‌ها و پاسخ‌ها در log لاراول ثبت می‌گردد.

📄 منابع و مستندات

🙋‍♂️ پشتیبانی

📞 تماس: ۰۲١۶۴۰۶۳۱۸۰ 📨 ایمیل: info@asanak.ir