آشنایی با برنامه‌نویسی دیال پلن در استریسک: ۱۰ برنامه پرکاربر در Dialplan استریسک

دیال پلن

آشنایی با برنامه‌نویسی Dialplan در استریسک: ۱۰ برنامه پرکاربر در دیال پلن استریسک

مقدمه

سیستم تلفنی استریسک (Asterisk) یکی از قدرتمندترین و محبوب‌ترین نرم‌افزارهای متن‌باز در حوزه‌ی VoIP و مرکز تماس است. این سیستم به دلیل انعطاف‌پذیری بالا، امکانات گسترده و قابلیت شخصی‌سازی دقیق، به‌طور گسترده در شرکت‌ها، سازمان‌ها و حتی کسب‌وکارهای کوچک مورد استفاده قرار می‌گیرد. قلب اصلی استریسک، چیزی نیست جز دیال پلن (Dialplan)؛ همان جایی که منطق تماس‌ها تعریف می‌شود.

دیال پلن به زبان ساده همان برنامه‌نویسی داخلی استریسک است که مشخص می‌کند وقتی یک تماس وارد سیستم می‌شود چه اتفاقی رخ دهد. این منطق می‌تواند بسیار ساده یا بسیار پیچیده باشد؛ از پاسخ‌گویی خودکار گرفته تا صف تماس، انتقال تماس، منوهای چندسطحی IVR و حتی ارتباط با پایگاه داده‌ها.

در این مقاله به صورت جامع با مفهوم دیال پلن آشنا می‌شویم و سپس ۱۰ برنامه‌ی پرکاربرد که معمولا در Dialplan استریسک پیاده‌سازی می‌شوند را بررسی خواهیم کرد.


دیال پلن چیست؟

Dialplan در استریسک یک فایل پیکربندی متنی است که به طور معمول در مسیر /etc/asterisk/extensions.conf قرار دارد. در این فایل، دستورات به صورت مرحله به مرحله نوشته می‌شوند تا تعیین کنند تماس‌ها چه مسیری را طی کنند.

هر Dialplan از سه بخش اصلی تشکیل شده است:

  1. Context (کانتکست): مجموعه‌ای از قوانین که یک نام مشخص دارد و تماس‌ها بر اساس این نام به آن وارد می‌شوند.

  2. Extension (اکستنشن): شماره یا الگوی شماره‌ای که مشخص می‌کند وقتی کاربر عدد خاصی را شماره‌گیری کند چه اتفاقی بیفتد.

  3. Priority (اولویت): ترتیب اجرای دستورات در هر اکستنشن.

با ترکیب این سه بخش می‌توان یک سیستم پیچیده‌ی تلفنی را طراحی کرد که تمام نیازهای یک مرکز تماس مدرن را پاسخ دهد.


اهمیت دیال پلن در استریسک

بدون Dialplan، استریسک عملاً هیچ کاری انجام نمی‌دهد. تصور کنید که یک مرکز تماس دارید:

  • اگر می‌خواهید تماس‌ها به منوی صوتی هدایت شوند، باید آن را در دیال پلن تعریف کنید.

  • اگر لازم است تماس به صف انتظار منتقل شود، باید کدنویسی آن در دیال پلن انجام شود.

  • حتی ساده‌ترین قابلیت مثل پاسخ‌گویی خودکار یا پخش پیام صوتی هم تنها از طریق دیال پلن امکان‌پذیر است.

بنابراین یادگیری اصول Dialplan یکی از مهارت‌های کلیدی برای مدیران شبکه و ادمین‌های VoIP است.


۱۰ برنامه پرکاربر در دیال پلن استریسک

۱. پاسخ‌گویی خودکار (Auto Answer)

یکی از ساده‌ترین ولی پرکاربردترین برنامه‌ها در دیال پلن، پاسخ‌گویی خودکار است. در این برنامه، تماس ورودی بدون نیاز به دخالت انسانی پاسخ داده می‌شود و معمولاً یک پیام خوش‌آمدگویی برای تماس‌گیرنده پخش می‌شود.
این قابلیت در مراکز تماس و شرکت‌هایی که می‌خواهند تجربه‌ی کاربری مناسبی ایجاد کنند بسیار رایج است.


۲. منوی صوتی چندسطحی (IVR)

سیستم IVR یا همان منوی صوتی تعاملی، یکی از مهم‌ترین امکاناتی است که از طریق دیال پلن پیاده‌سازی می‌شود. در این بخش می‌توان مسیر تماس را بر اساس انتخاب‌های کاربر (مثلاً فشار دادن عدد ۱ برای فروش یا عدد ۲ برای پشتیبانی) تعیین کرد.
دیال پلن امکان ایجاد منوهای چندسطحی را هم فراهم می‌کند که برای سازمان‌های بزرگ ضروری است.


۳. انتقال تماس (Call Transfer)

گاهی نیاز است تماس از یک کاربر به کاربر دیگر منتقل شود. این قابلیت از طریق برنامه‌نویسی در دیال پلن قابل انجام است. در این حالت می‌توان تعریف کرد که تماس به صورت دستی (با زدن یک کلید خاص) یا به صورت خودکار (مثلاً در صورت در دسترس نبودن کاربر اول) منتقل شود.


۴. صف تماس (Call Queue)

یکی دیگر از قابلیت‌های پرکاربرد در دیال پلن، ایجاد صف تماس است. در این سناریو تماس‌گیرندگان در یک صف قرار می‌گیرند تا زمانی که اپراتور آزاد شود. همچنین می‌توان برای تماس‌گیرندگان موسیقی انتظار پخش کرد و حتی موقعیت آنها در صف را اعلام نمود.


۵. ضبط مکالمه (Call Recording)

ضبط مکالمه یکی از ویژگی‌های حیاتی در مراکز تماس است. این قابلیت در دیال پلن به سادگی قابل پیاده‌سازی است. معمولاً فایل‌های صوتی در مسیر مشخص ذخیره می‌شوند و می‌توانند برای آموزش، نظارت یا مسائل قانونی مورد استفاده قرار گیرند.


۶. شماره‌گیری زمان‌بندی‌شده (Time-Based Routing)

گاهی لازم است تماس‌ها بر اساس زمان مدیریت شوند. به عنوان مثال، در ساعات اداری تماس‌ها به اپراتورها وصل شوند و در ساعات غیراداری پیام بسته بودن شرکت پخش شود. این قابلیت با شرط‌های زمانی در دیال پلن قابل پیاده‌سازی است.


۷. اتصال به پایگاه داده (Database Integration)

یکی از پیشرفته‌ترین قابلیت‌ها، اتصال دیال پلن به پایگاه داده است. این امکان به شما اجازه می‌دهد تصمیم‌گیری‌ها را بر اساس داده‌های موجود انجام دهید. مثلاً اگر شماره تماس‌گیرنده در لیست مشتریان VIP باشد، مستقیماً به بخش مدیریت وصل شود.


۸. صندوق صوتی (Voicemail)

اگر کاربر در دسترس نباشد، تماس می‌تواند به صندوق صوتی منتقل شود تا تماس‌گیرنده پیام خود را ضبط کند. این قابلیت بخش جدایی‌ناپذیر از هر سیستم تلفنی مدرن است و با چند خط ساده در دیال پلن قابل تعریف است.


۹. تماس خروجی خودکار (Auto Dialer)

دیال پلن فقط برای تماس‌های ورودی نیست. با برنامه‌نویسی مناسب می‌توان تماس‌های خروجی خودکار هم برقرار کرد. این قابلیت در کمپین‌های تبلیغاتی یا اطلاع‌رسانی‌های گسترده بسیار پرکاربرد است.


۱۰. یکپارچه‌سازی با وب‌سرویس‌ها (API Integration)

در نهایت، یکی از پیشرفته‌ترین کاربردهای دیال پلن، اتصال آن به سرویس‌های خارجی از طریق API است. برای مثال می‌توان هنگام دریافت تماس، اطلاعات مشتری را از CRM دریافت و روی صفحه اپراتور نمایش داد. این ویژگی تجربه‌ی کاربری بسیار بهتری ایجاد می‌کند.


نکات کلیدی در طراحی دیال پلن

  • سادگی: همیشه سعی کنید Dialplan را ساده و قابل‌فهم طراحی کنید تا نگهداری آن دشوار نشود.

  • مستندسازی: هر تغییر یا بخش جدید را مستند کنید تا در آینده قابل پیگیری باشد.

  • امنیت: دسترسی به بخش‌های حساس Dialplan باید محدود باشد تا امکان سوءاستفاده کاهش یابد.

  • آزمایش: پیش از اعمال تغییرات در محیط واقعی، Dialplan را در محیط تست بررسی کنید.


جمع‌بندی

Dialplan در استریسک قلب تپنده‌ی یک سیستم تلفنی است و تمام قابلیت‌های پیشرفته از همین بخش نشأت می‌گیرد. از پاسخ‌گویی خودکار و IVR گرفته تا اتصال به پایگاه داده و وب‌سرویس‌ها، همگی تنها با چند خط کدنویسی در دیال پلن قابل پیاده‌سازی هستند.

آشنایی با این مفاهیم نه‌تنها برای مدیران شبکه و برنامه‌نویسان VoIP ضروری است، بلکه برای کسب‌وکارها هم مزایای زیادی به همراه دارد. با تسلط بر دیال پلن، می‌توانید مرکز تماسی کاملاً شخصی‌سازی‌شده طراحی کنید که دقیقاً مطابق نیازهای سازمان شما عمل کند.

تصویر سعید شهشهانی

سعید شهشهانی

متخصص مدیریت شبکه‌های سازمانی و اتاق‌ سرورها، برنامه‌نویس، طراح وب‌سایت و کارشناس سئو