1. ماندانا باقری
  2. عمومی - ایزابل، الستیکس، فری پی بی اکس ...
  3. پنج شنبه, 22 مرداد 1388
[color=navy]یک Dialplan ساده [/color]
در این بخش می خواهیم اولین Dialplan خود را بسازیم .با یک مثال بسیار ساده شروع می کنیم.

می خواهیم در استریسک پاسخ به تماس، پخش فایل صوتی و قطع تماس را ایجاد کنیم. فرض می کنیم یک کانال
(Zap یا SIP یا IAX2 ) ساخته و پیکربندی شده و تمام تماسها از طریق آن Channel وارد dialplan و واردcontext
[color=black][incoming] [/color]می شوند.
قبل از شروع، لازم است extension ، s توضیح داده شود. وقتی تماسی بدون مقصد مشخصی وارد extension می شود. برای مثال زنگ زدن خط FXO ، آن تماس به extension ، S فرستاده می شود.(S، مخفف Start ، است)
S ، جایی است که تماس شروع می شود برای زمانیکه extension خاصی با تماس ارسال نشده باشد .
ما برای تماس وارد شده، سه action قرار می دهیم(پاسخ به تماس، پخش یک پیام، و قطع تماس).
پس برای extension ، S سه اولویت قرار می دهیم.
برای اینکه تمام تماس های ورودی با این context شروع شوند، این سه اولویت را زیر [incoming] قرار می دهیم،.
[left][color=black][incoming][/color][/left]
[left][color=black]()exten => s,1,application[/color][/left]
[left][color=black]()exten => s,2,application[/color][/left]
[left][color=black]()exten => s,3,application[/color][/left]

کاری که باید انجام بدهیم، قرار دادن application های مورد نیاز است.
[color=navy]Application های ()Answer(),Playback, و Hangup()
[/color]
Answe() ، application برای پاسخ به channel ی است که زنگ می زند.این مرحله ابتدایی برای کانالی است که تماس ورودی را دریافت می کند. بعضی از application ها نیاز به answer کردن نیاز ندارند ولی بهتر است کانال قبل از انجام action های دیگر answer شود.

نکته این که application ها حتماً با حرف بزرگ شروع می شوند.
Application Playback ، برای پخش فایل صوتی است که از قبل ضبط شده، در طی پخش پیام، تماس گیرنده، هیچ داده ای نمی تواند وارد کند.
(استریسک فایل های صوتی ضبط شده خودش را در دایرکتوری زیر قرار می دهد)
[left][color=black]var/lib/asterisk/sounds/[/color][/left]
برای استفاده از Playback ، فایل مورد نظر را بدون پسوند فایل مشخص می کنید.مثلاً (نام فایل) Playback
آن، فایل را که با پسوند gsm در دایرکتوری مشخص شده قرار دارد، پخش می کند.
شما می توانید مسیرکامل فایل مورد نظر خودتان را برای پخش بدهید.
[left][color=black](Playback/home/bagheri/sounds/(filename[/color][/left]
مثال بالا فایلی که در آن مسیر و با پسوند .gsm قرار دارد، پخش می کند.
شما می توانید از یک مسیر نسبی، از دایرکتوری استریسک استفاده کنید.
[left][color=black](Playback(custom/(filename[/color][/left]
مثال بالا فایلی که در مسیر /var/lib/asterisk/sounds/custom/filename.gsm قرار دارد را پخش می کند.
اگر فایلی با این نام، با پسوندهای مختلف وجود داشته باشد، استریسک به طور اتوماتیک بهترین فایل را از لحاظ کیفیت پخش می کند.
Application Hangup() ، کانال فعال را Hangup می کند، شما باید از این application در انتهای context ، جاییکه می خواهید تماس جاری را قطع کنید، استفاده کنید.
اولین مثال را با پخش پیام خوشامدگویی آغاز می کنیم.در اولویت اول extension ، به تماس پاسخ داده می شود، در دومی فایل صوتی به نام hello-world.gsm پخش می شود و در سومی تماس قطع می شود:
[left][color=black][incoming][/color][/left]
[left][color=black]()exten => s,1,Answer[/color][/left]
[left][color=black](exten => s,n,Playback(hello-world[/color][/left]
[left][color=black]()exten => s,n,Hangup[/color][/left]

فایلی به نام extensions.conf در مسیر /etc/asterisk بسازید و چهار خط بالا را در آن قرار دهید، در صورتیکه کار نکرد، از کنسول استریسک پیغام خطا استریسک را بررسی کنید و مطمئن شوید کانال شما به context ، [incoming] ، ارجاء داده شده.
این مثال بسیار ساده، مفهوم context , extension , priorities را بیان می کند . اگر مثال بالا را پیاده سازی کردید، دانش مقدماتی اینکه چگونه dialplan ها ساخته می شوند را فرا گرفته اید.

لطفاً نظرات و انتقادات خودتان را مطرح کنید، ممنون. :)
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
اگر در اولویت اول Answer نگذاریم چه اتفاقی می افته؟ آیا این application ضروری است؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
قرار دادن Answer به application هايي كه مي خواهيد استفاده كنيد، بستگي دارد.بعضي از application ها نيازي به answer شدن ندارند، ولي توصيه شده extension ، درابتدا Answer كند.
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
با تشكر از زحمات خانم باقري،
يك امتياز مثبت براي شما ;)
اميد است ساير دوستان نيز با همكاري خود در جهت رشد اين انجمن، بكوشند.
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
با سلام.
extension , s ای که تعریف کردیم شامل چه تماس هایی می شود؟ کی باید کجا رو بگیره که این extension فعال بشه؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام
extension ، S جزو extension هاي خاص است و زماني استفاده مي شود كه هيچ شماره تماسي مشخص نشده باشد.
وقتي تماس شروع بشود مورد استفاده قرار مي گيرد.
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام
ميشه گفت يك exception handler هستش؟
ضمنا" اگر بخوايم به صورت دستي داخلي ها رو تعريف بكنيم، اين لازم كه extension،S رو در فايل extension_custom.conf تعريف بكنيم يا نه؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
شما وقتي داخلي تعريف مي كنيد، نيازي به s ،extension نداريد.
اصلاً نيازي نيست از آن استفاده كنيد. :)
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
با تشکر از زحمات دوستان، من این سطرها را برای تست به extentions.conf اضافه می کنم ولی هیچ اتفاقی نمیفته:
exten => 1818,1,Answer()
exten => 1818,n,Playback(digits/5)
exten => 1818,n,Playback(minutes)
exten => 1818,n,Hangup()
درضمن من IVR دارم که با الستیکس ساختمش و بخوبی کار میکنه، تنها میخوام که یه داخلی بسازم و روش تست هام رو انجام بدم!
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
مشکل حل شد! با دستور amportal restart
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
زمانيكه dialplan را تغيير مي دهيد حتماً بايد در ككنسول استريسك reload را بزنيد تا dial plan reload شود.يا مي توانيد سرويس استريسك را restart كنيد تا تغييرات اعمال شود.
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام خانم مهندس باقری
بعد از آنکه DialPlan آماده شد بایستی یک فایل با نام extensions.conf ایجاد کنیم و dialplan را در آن کپی کنیم. اما فایل با نام extensions.conf در این مسیر وجو دارد، چه طور یک فایل با همین نام در این پوشه بسازیم.
با تشکر
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام

شما دستورات خود را در مسیر زیر کپی کنید.

etc/asterisk /extention_custom.conf
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
خانم باقری مقالغاتتون دگه ادامه دار نیستن؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
خیر چون خانم باقری خیلی وقت هست که تو این سایت پست نمیدن
مدیر ویپ ایران
مدرس رسمی ویپ در ایران
کانال تلگرام ویپ ایران
نظر
هنوز هیچ نظری ارسال نشده است!
  • صفحه :
  • 1


هنوز به این موضوع پاسخی داده نشده است

دسته بندی ها

سیستم های تلفنی کدباز
  1. 107 پست
  2. 0 زیرمجموعه
سیسکو Cisco
  1. 61 پست
  2. 0 زیرمجموعه
سیستم تلفنی FreePBX
  1. 48 پست
  2. 0 زیرمجموعه
شبکه و زیرساخت
  1. 65 پست
  2. 0 زیرمجموعه
تازه واردین دنیای ویپ
  1. 927 پست
  2. 0 زیرمجموعه