2 minutes reading time (380 words)

اجرای یک Dialplan

وقتی بر روی Elastix می خواهید Dialplan نویسی کنید باید یکسری نکات را بدانیم، ما در این بخش یاد خواهیم گرفت که کجا وچگونه Dialplan نویسی کنیم.

همانطور که در بخش های قبلی عرض کردم برنامه Freepbx اجازه اعمال تغییر در فایل extension.conf را نمی دهد، اما برای نوشتن Dialplan یک فایل دیگری برای دیگران در نظر گرفته به نام extension_custom.conf که از این به بعد تمامی Dialplan های خود را داخل این فایل می نویسیم.

این نکته هم لازم است که بدانید خود Freepbx هم برای نوشتن Dialplan از فایل extension.conf استفاده نمی کند و به جای آن کد های خود را در extension_additional.conf می نویسید، مثلا وقتی بر روی محیط گرافیکی  یک IVR  می سازید کد های ایجاد شده توسط Freepbx  در این فایل قرار می گیرند.

مثال زیر را ببینید، داخلی 123 با 4 خط و همچنین Context ی به نام test1

همانطور که می بینید یک Context به نامtest1 ساختیم و Dialplan خود را در داخلش قرار دادیم، حالا نوبت reload کردن Asterisk است.

Asterisk –rx "reload"

الان Extension 123 من آماده است اما فکر می کنید اگر من از روی یک داخلی که بر روی محیط گرافیکی ساختم و روی مثلا IPPhone خودم رجیستر کردم می توانم این 123 را شماره گیری کنم؟ خوب نه ! همانطور که قبلا گفتم وقتی از طریق منوی گرافیکی Elastix یا همان Freepbx یک داخلی می سازید برنامه Freepbx در پشت ماجرا Context مر بوط به آن Extension را عبارت from-internal قرار می دهد و با توجه به اینکه در تعریف و ویژگی های Context داشتیم که آنها نسبت به یکدیگر ایزوله هستند پس Extension  با Context ساخته شده from-internal نمی تواند به این Extensionی که الان ماساختیم دسترسی داشته باشد، مگر آنکه این امکان را به Context آن بدهیم، برای این منظور می توان از دستور include برای دسترسی به یک Context از Context دیگر استفاده نمود.

Freepbx برای اینکه ما براحتی بتوانیم Context هایی را که می سازیم در from-internal ، Include کنیم در فایل extension_custom.conf یک Context با نام from-internal-custom برای این منظور قرار داده است، پس مثال قبلی ما با اضافه کردن یک خط کامل تر می شود.

Dialplan 2

استریسک را دوباره reload می کنیم

Asterisk –rx "reload"

حالا اگر از روی داخلی رجیستر شده خود 123 را شماره گیری کنید این Extension اجرا خواهد شد.

WebRTC چیست؟
Extension چیست؟
 

نظرات 1

مهمان - hos در روز پنج شنبه, 28 دی 1396 09:46

سلام
چطور تماس های ورودی رو به قبل از اینکه به ivr وصل بشه بفرستم به یه فایل agi ؟

سلام چطور تماس های ورودی رو به قبل از اینکه به ivr وصل بشه بفرستم به یه فایل agi ؟
Default Avatar
Already Registered? Login Here
مهمان
چهارشنبه, 28 آذر 1397

تصویر امنیتی

/blog?task=captcha.generate&no_html=1&tmpl=component&id=206429

محبوب ترین مقالات

10 قابلیتی که در مورد استریسک نمی دانید.استریسک (Asterisk) یک موتور تلفنی بسیار قدرتمند و بی رقیب اس...
وارد قلب استریسک می شویم، یکی از جذاب ترین قسمت های استریسک جایی که جریان تماس ساخته می شود، هر تماس...
Dialplan خط به خط اجرا می شود و در هر خط یک کاری انجام می پذیرد، به هر یک یا چند خط از Dialplan که د...
همانطور که می دانید لاگ فایل استریسک در مسیر /var/log/asterisk و به نام full قرار دارد، به ظور پیش ف...
فایل extension.conf به بخش هایی به نام context تقسیم بندی می شود و در دل این contextها است که کدهای ...
وقتی بر روی Elastix می خواهید Dialplan نویسی کنید باید یکسری نکات را بدانیم، ما در این بخش یاد خواهی...
استریسک سیستم پیچیده و بزرگی است، هر زیر قسمت از این سیستم بزرگ با برخی فایل ها سرو کار دارد، این فا...