آخرین ویرایش مهر ۲۰, ۱۴۰۴ حامد کوه فلاح
Asterisk یک سیستم تلفنی متنباز است که به کاربران امکان مدیریت تماسها را میدهد. در این مقاله، سه روش مختلف برای تعامل با Asterisk بررسی میشود: AGI (Asterisk Gateway Interface)، ARI (Asterisk REST Interface) و AMI (Asterisk Manager Interface). در هر بخش، علاوه بر توضیحات، مثالهای عملی و سناریوهای کاربردی آورده شده است.
AGI (Asterisk Gateway Interface)
AGI یک رابط برای اجرای اسکریپتهای خارجی در Asterisk است. این اسکریپتها میتوانند به زبانهای مختلفی مانند Python، PHP، Perl و غیره نوشته شوند.
کاربردها و مثالهای عملی
- سیستم پاسخگویی خودکار (IVR):
- اسکریپتی که شماره ورودی کاربر را میگیرد و بر اساس آن تماس را هدایت میکند.
- مثال: کاربری شماره ۱ را وارد میکند، AGI بررسی کرده و تماس را به بخش پشتیبانی منتقل میکند.
- یکپارچهسازی با پایگاه داده:
- اسکریپتی که اطلاعات مشتری را از دیتابیس گرفته و هنگام تماس نمایش میدهد.
- مثال: مشتری تماس میگیرد، AGI شماره را بررسی کرده و نام او را میخواند.
- احراز هویت کاربران از طریق تماس:
- اسکریپتی که کد احراز هویت را از کاربر دریافت و در پایگاه داده تأیید میکند.
- مثال: مشتری برای ورود به حساب کاربری، کد ارسالشده را وارد میکند و AGI آن را تأیید میکند.
- سیستم سفارش تلفنی:
- مثال: مشتری تماس میگیرد، محصولات را از طریق IVR انتخاب میکند، و AGI سفارش را در پایگاه داده ثبت میکند.
- کاربرد: سفارش غذا، خرید بلیط، رزرو نوبت پزشکی.
ARI (Asterisk REST Interface)
ARI یک API مبتنی بر REST است که امکان کنترل تماسها و منابع Asterisk را بهصورت برنامهنویسی فراهم میکند.
کاربردها و مثالهای عملی
- ساخت سیستم تماس خودکار (Auto Dialer):
- مثال: یک اپلیکیشن تماس خروجی را آغاز کرده و پیام ضبطشدهای را پخش میکند.
- کاربرد: تماس خودکار با مشتریان برای یادآوری جلسات.
- ساخت مرکز تماس پویا:
- مثال: یک برنامهای که بهصورت خودکار تماسهای ورودی را مدیریت و بین اپراتورها تقسیم میکند.
- کاربرد: توزیع هوشمند تماسها بین کارشناسان فروش.
- ضبط و پردازش تماسها بهصورت بلادرنگ:
- مثال: برنامهای که تماس را ضبط کرده و به یک سرویس پردازش گفتار ارسال میکند.
- کاربرد: تحلیل مکالمات برای بررسی کیفیت خدمات مشتریان.
- ساخت دستیار صوتی هوشمند:
- مثال: اپلیکیشنی که گفتار مشتری را به متن تبدیل کرده و پاسخ مناسب را ارسال میکند.
- کاربرد: پشتیبانی هوشمند با پاسخگویی خودکار به سوالات متداول.
AMI (Asterisk Manager Interface)
AMI یک رابط مبتنی بر TCP برای ارسال و دریافت دستورات مدیریتی در Asterisk است.
کاربردها و مثالهای عملی
- نظارت بر تماسها در لحظه (Live Call Monitoring):
- مثال: اپلیکیشنی که وضعیت تمامی تماسهای در حال انجام را نمایش میدهد.
- کاربرد: مدیر مرکز تماس میتواند تمامی اپراتورها را در لحظه مشاهده کند.
- ایجاد داشبورد مدیریتی برای تماسها:
- مثال: وبسایتی که اطلاعات زنده از تماسهای جاری، صفها و اپراتورها را نمایش میدهد.
- کاربرد: مدیران میتوانند عملکرد مرکز تماس را در لحظه مشاهده کنند.
- مدیریت صفهای تماس:
- مثال: اسکریپتی که صفهای تماس را مدیریت کرده و تماسها را بین اپراتورها توزیع میکند.
- کاربرد: بهینهسازی زمان انتظار مشتریان در صف تماس.
- ایجاد سیستم هشدار و اطلاعرسانی آنی:
- مثال: برنامهای که در صورت شناسایی یک مشکل در سیستم، به مدیر هشدار ارسال میکند.
- کاربرد: اعلام خرابی سیستم، ارسال هشدارهای امنیتی، و اطلاعرسانی فوری به اپراتورها.
جمعبندی
هر یک از این سه روش کاربرد خاصی دارد:
- AGI برای اجرای اسکریپتهای خارجی و یکپارچهسازی Asterisk با پایگاه داده و سرویسهای دیگر مناسب است.
- ARI امکان کنترل کامل تماسها را از طریق API فراهم میکند و برای ایجاد اپلیکیشنهای تعاملی مناسب است.
- AMI ابزار قدرتمندی برای نظارت و مدیریت تماسها در سطح سیستم است.
انتخاب بهترین روش بستگی به نیاز پروژه دارد. اگر به اجرای اسکریپتهای خارجی نیاز دارید، AGI بهترین گزینه است. اگر قصد کنترل تماسها بهصورت برنامهنویسی دارید، ARI مناسب است. در نهایت، اگر نیاز به نظارت و مدیریت تماسها دارید، AMI راهحل بهتری است.
یادگیری حرفهای Asterisk
تمامی این مباحث و نحوه برنامهنویسی آنها را میتوانید در دوره استریسک پیشرفته ویپ ایران بهصورت حرفهای بیاموزید. این دورههای پیشرفته در ایران فقط در ویپ ایران آموزش داده میشود.