زمان لازم جهت مطالعه این مقاله: 2 دقیقه (457 words)

Extension چیست؟

چگونه یک Extension بنویسیم، در ابتدا با ساختار نوشتن آن آشنا می شویم.

exten => extension_name, priority, application

خوب در ابتدای خط exten => را می بینیم که همیشه به همین شکل تکرار می شود ! خوب پس یعنی خیلی نکته مهمی در خصوص این بخش نداریم البته در قسمت های بعمی میبینیم می توانید همین را هم یکم خلاصه تر کنیم،  اما می رسیم به 3 بخش اصلی یک Extension

  •         Extension_name:

نام یک Extension و همان چیزی که برای دسترسی به این Extension آن را صدا باید بزنیم، اگر بخواهم یکم ساده تر بگم این همان شماره داخلی (Extension) ما است، ولی خوب در واقع نام Extension فقط عدد نیست و می تواند شامل کاراکتر های دیگر نیز باشد.

نکته: Extension ما هر چند خط که دارد در تمای آنها نام آن باید یکسان تکرار شده باشد.

نکته: برای نام یک Extension می توانید از DialPattern ها نیز استفاده کنیم، مطمئنا با آنها آشنایی دارید اما اگر برای اولین بار است همچین چیزی را می شنوید توصیه می کنم حتما به سراغ کتاب Elastix Easy بروید و DialPattern ها را خوب یاد بگیرید. همچنین فراموش نکنید وقتی جای نام از DialPattern استفاده می کنید باید اول آن یک زیر خط (_) قرار دهید، اما اگر می خواهید بدانید چرا، باید بگم چون نام داخلی می تواند کاراکتر هم داشته باشد پس برای اینکه مشخص کنیم این نام داخلی است یا DialPattern با قرار دادن _ اول آن این تمایز را قایل می شویم.

$1v     مثال:

[test-pattern]

exten => _2xx,1,Answer()

exten => _2xx,n,NoOP(line2)

exten => _2xx,n,NoOp(line3)

exten => _2xx,n,Hangup()

در این مثال Extension  ما دیگر یک نام مشخص ندارد بلکه به وسیله DialPattern یک گروهی از نام ها را شامل می شود، _2xx شامل تمامی اعداد بین 200 الی 299  می شود و هر کس عددی ار بین آنها را شماره گیری کند این Extension اجرا خواهد شد.

  •         Priority:

اولویت تکرار خطوط، ترتیب تکرار خطوط، همانطور که از تعریف مشخص است برای وقتی است که Extension ما چند خطی است و این پارامتر به Asterisk کمک می کند تا بفهمد بعد از هر خط چه خطی باید اجرا شود، نکته مهم اینجاست که priority حتما از عدد 1 شروع می شود و خط 2 به بعد می توانند اعداد دیگری را بگیرند، در مثال ها بهتر با کاربرد آن آشنا خواهید شد.

نکته: اگر Extension ما یک خطی است، باز هم priority باید نوشته شود و مقدار 1 را خواهد داشت.

  •          Application:

مهمترین و جذاب ترین بخش یک خط از Extension، در این بخش باید نام یک Application از Asterisk اینجا نوشته شود و همچنین می توانیم پارامتر هایی را به آن App پاس بدهیم، در بخش بعدی با مهمترین و پرکاربرد ترین Application های Asterisk آشنا خواهید شد.

Extension چیست؟
مثال 1 Extension

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

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