VoIP, کد نویسی استریسک, مقالات

پخش پیام صوتی هنگام اشغال بودن داخلی در Issabel

📞 بهبود Call Waiting در سیستم تلفنی Issabel

🧩 یکی از مشکلات حالت Call Waiting در Issabel این است که تماس‌گیرنده دوم متوجه نمی‌شود که تماسش پشت خط رفته است. در این آموزش، یک روش حرفه‌ای برای اصلاح این مشکل معرفی می‌شود تا با پخش پیام صوتی، وضعیت تماس به تماس‌گیرنده اطلاع داده شود.

🛠 مراحل پیاده‌سازی:

  1. فعال‌سازی Call Waiting: اطمینان حاصل کنید که قابلیت Call Waiting برای داخلی‌ها فعال است.
  2. 📂 ویرایش ماکرو:
    • فایل /etc/asterisk/extensions_additional.conf را باز کرده و ماکرو [macro-dial-one] را پیدا کنید.
    • کل این بخش را کپی و در فایل /etc/asterisk/extensions_override_issabelpbx.conf جای‌گذاری کنید.
  3. 🔍 جستجو و حذف خط Dial:
    exten => s,n(godial),Dial(${DSTRING},${ARG1},${D_OPTIONS})
  4. 💡 جایگزینی با کد جدید برای پخش پیام هنگام اشغال:
    ;--== improve Call Waiting ==--;
    exten => s,n(godial),GotoIf($["${EXTENSION_STATE(${DEXTEN})}" = "INUSE"]?nextinuse:nextnotuse)
    exten => s,n(nextinuse),Playback(custom/ext-inused-pr)
    exten => s,n,Set(D_OPTIONS=${D_OPTIONS}m)
    exten => s,n(nextnotuse),Dial(${DSTRING},${ARG1},${D_OPTIONS})
    ;--== end of improve Call Waiting ==--;
  5. 🎧 آپلود فایل صوتی: فایل پیام صوتی دلخواه مانند ext-inused-pr.wav را از مسیر System Recordings → Upload Recording در Issabel بارگذاری کنید.
  6. 🔄 اعمال تغییرات در Asterisk:
    asterisk -rx "reload"

📢 نتیجه‌گیری:

با این تغییرات ساده اما تأثیرگذار، تماس‌گیرنده دوم هنگام اشغال بودن داخلی، پیام صوتی دلخواه شما را می‌شنود. این ویژگی تجربه تماس‌ها را ارتقاء داده و ارتباط حرفه‌ای‌تری برای کاربران فراهم می‌کند. 🔊💼

منبع اصلی این کد در گیت هاب

دیدگاهتان را بنویسید