а как же switch в ael? http://www.voip-info.org/wiki/view/Asterisk+AEL как раз оно самое.
Злобный Мыш (Apr 11 '12)editswitch(${arg1})
{
case (${arg1}=0):
...
...
default:
...
};
В Си такое сделать можно, а вот в астериске у меня пока кроме преобразования ${arg1} во что либо, ничего не получается, а мне нужно сравнить.
в астриске в диалплане вообще ничего похожего нет.
в луа можно.
а как же switch в ael? http://www.voip-info.org/wiki/view/Asterisk+AEL как раз оно самое.
Злобный Мыш (Apr 11 '12)editПроверяйте с помощью GotoIf()
, и прыгайте по диалплану куда надо.
А если в AEL, то ваше условие будет примерно таким:
switch(${arg1})
{
case 0:
App1();
...;
default:
App2();
...
};
Сравнение в If:
if(${arg1}>335) {
App1();
}
else {
App2();
}
ну что вы зациклились на этом gotoif. Я же не спроста switch использую, у меня и pattern-ы есть. И прыгать мне из контекста не нужно, и меток я делать в контексте не хочу. И не уверен я в gtoif потому что с gotoiftime у меня были проблемы. Пришлось переделать на iftime и goto. Коме этого я не уверен с потерей номеров и контекстов, помню что с goto у меня какие-то проблемы были. Goto после себя мало информации в биллинге оставляет.
Sevruga (Apr 13 '12)editКто мещает agi на c написать?
Задан: Apr 11 '12
Просмотрен: 2,200 раз
Обновлен: Apr 12 '12
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Вот точно такое делается case 0. Если сравнение нужно -- заведи дополнительную переменную.
tesak89 (Apr 11 '12)edit