تماس های ورودی به مرکز تماس بعد از ساعت کاری یا در روز های تعطیل به صورت خودکار به سوی صندوق صوتی یا اپراتور های شیفت بعدی مسیر دهی می شود !!! قابلیتی رایج و پرکاربرد در مراکز تماس و پیاده سازی آن با تابع GotoIfTime در Asterisk
GotoIfTime(times,daysofweek,daysofmonth,months?[[context,]extension,]priority)
با استفاده از تابع GotoIfTime در استریسک قادر خواهید بود زمانبندی اجرای دستور العمل ها را به مرکز تماس خود اضافه کنید . این تابع در صورتی که زمان درخواست دستورالعمل در محدوده زمانبندی تعیین شده آن باشد به Context خاص پرش می کند .
times
پارامتر times برای مشخص کردن ساعت در فرمت 24 ساعته است به عنوان مثال 7:30 - 17
daysofweek
پارامتر daysofweek برای مشخص کردن روزهای هفته در زمانبدی استفاده می شود و از mon شروع شده و به sun ختم می شود . (mon, tue, wed, thu, fri, sat, sun) به عنوان مثال mon-fri
daysofmonth
روز های یک ماه از 1 تا 31 قابل تعریف است . به عنوان مثال : 1-15
months
ماه های سال که از jan تا dec مقدار دهی می شود .
(jan, feb, mar, apr, mai, jun, jul, aug, sep, oct, nov, dec) به عنوان مثال apr-oct
توجه : برای مشخص کردن مقادیر از ابتدا تا انتها می توانید از کاراکتر ستاره ( * ) استفاده کنید .
مثال : تماس های ورودی از خطوط شهری را در زمان اداری به context ای به نام opencontext و در غیر اینصورت به داخلی شماره 101 مسیر دهی می کنیم .
[from-pstn]
exten => s,1,GotoIfTime(08:00-17:00,mon-thu,1-31,jan-dec?opencontext,s,1(
exten => s,n,GotoIfTime(08:00-17:00,sat-sun,*,*?opencontext,s,1(
exten => s,n,Dial(SIP/101)

[opencontext]
exten => s,1,Answer()
extens => s,n,Dial(SIP/102)
با استفاده از روش Lable گذاری مشابه تابع Gotoif نیز می توانیم با جزئیات کمتری مثال بالا را به روش زیر پیاده سازی کنیم .
[from-pstn]
exten => s,1,GotoIfTime(08:00-17:00,mon-thu,1-31,jan-dec?open(
exten => s,n,GotoIfTime(08:00-17:00,sat-sun,*,*?open(
exten => s,n,Dial(SIP/101)
exten => s,n(open),Dial(SIP/102)




موضوعات مشابه: