Страница 1 из 1

asterisk ael IfTime

Добавлено: 04 дек 2014, 17:14
dealershowers
Добрый вечер уважаемые форумчане.
Имеется номер, на который отвечают несколько человек.
в рабочее время на работе, утро вечер по графику, который практически не меняется. Но проблема в том что временных промежутков в неделю больше 10.
В данный момент реализована конструкция вида
context SD{

8495(номер) =>{
<------><------>Answer;
<------><------>Set(MONITOR_FILE=/var/spool/asterisk/monitor/${UNIQUEID});
<------><------>MixMonitor(${MONITOR_FILE}.wav,b);
<------><------>Wait(1);
<------><------>ifTime(10:00-19:00|*|*|*) {
<------><------> Playback(Приветствие);
<------><------> Dial(SIP/100&SIP/101&SIP/102,,tm(city));
<------><------>}
<------><------>ifTime(07:00-09:59|mon-tue|*|*){
.......... далее много текста с временными промежутками.

Итак перейдём к сути проблемы. Время до работы и после поделено между двумя людьми
1человек утро => пон вторник суббота воскресенье вечер =>пон суб воскр
2 человек утро => среда четверг пятница вечер =>втор среда четв пятница
каким образом можно сократить кол-во текста сделать проверку на вхождение в IfTime
If (iftime(....) | Iftime(....) ) мой астериск не хочет есть. Помогите пожалуйста с правильным синтаксисом.

Re: asterisk ael IfTime

Добавлено: 04 дек 2014, 18:28
ded
Напишите логику:
IfTime пон вторник суббота воскресенье вечер =>пон суб воскр => Dial человек 1
IfTime среда четверг пятница вечер =>втор среда четв пятница => Dial человек 2
уж по синтаксису - разберитесь, если не трудно, лучше в диаплане, чем ael

Re: asterisk ael IfTime

Добавлено: 04 дек 2014, 18:28
Vlad1983
IFTIME - функция диалплана, её можно использовать только внутри приложения
вы же пытаетесь её использовать вместо приложения

посмотрите приложения GotoIfTime, ExecIfTime, GotoIf, ExecIf

Re: asterisk ael IfTime

Добавлено: 04 дек 2014, 18:47
dealershowers
при GotoIfTime теряется дест адрес

Re: asterisk ael IfTime

Добавлено: 04 дек 2014, 18:48
dealershowers
ded писал(а):Напишите логику:
IfTime пон вторник суббота воскресенье вечер =>пон суб воскр => Dial человек 1
IfTime среда четверг пятница вечер =>втор среда четв пятница => Dial человек 2
уж по синтаксису - разберитесь, если не трудно, лучше в диаплане, чем ael
да уже все написано - просто это 2 экрана занимает , некрасиво но работает

Re: asterisk ael IfTime

Добавлено: 05 дек 2014, 09:50
dealershowers
хорошо, задам вопрос по другому, как можно в аел не используя функции диалплана (iftime gotoiftime) проверить на вхождение в промежуток времени?

Re: asterisk ael IfTime

Добавлено: 05 дек 2014, 10:06
Vlad1983
функцией IFTIME)
но нужно применять её так как можно

если у вас при "GotoIfTime теряется дест адрес" вам в библиотеку