Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / выполнение контекста после комманды Dial

выполнение контекста после комманды Dial

Сообщений: 80

выполнение контекста после комманды Dial

Привет,

необходимо чтобы после комманды диал, выполнялись определенные комманды.

exten => s,n,Dial(Zap/3/${ARG1},60)
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => _s-.,1,Macro(set-cdr,33${ARG1:1},PSTN,${DIALSTATUS})
exten => s-.,1,Macro(set-cdr,33${ARG1:1},PSTN,${DIALSTATUS})

если добавить опцию g к комманде Dial, то следующие комманды выполняются (Goto, Macro ...). Опция g полезна если тот кому звонят положил трубку, но если звонящий первым кладет трубку, то после Dial ничего не выполняется.

Как сделать так, чтобы не зависимо от того кто положил трубку, не зависимо от статуса звонка, Dial не заканчивал текущий контекст, а позволял дальнейшее выплнение?
2008-12-10 13:23

Сообщений: 1573

Re: выполнение контекста после комманды Dial

mbyte:

если добавить опцию g к комманде Dial, то следующие комманды выполняются (Goto, Macro ...). Опция g полезна если тот кому звонят положил трубку, но если звонящий первым кладет трубку, то после Dial ничего не выполняется.
Откуда такое взяли? Для этой опции не важно, кто положил трубку. Она обеспечивает дальнейшее выполнение команд плана.

Четвертую, приведенную, строку удалите - она с ошибкой (маска)
2008-12-10 13:39

Сообщений: 80

Re: выполнение контекста после комманды Dial

взял из wiki и тестировал :)

"If the g option is specified, and the called party hangs up before the calling party, then Dial continues execution at priority n+1."

http://www.voip-info.org/wiki-Asterisk+cmd+Dial#Returncodes
2008-12-10 13:43

Сообщений: 1573

Re: выполнение контекста после комманды Dial

тогда пропишите выполнение этой проверки на екстеншен - "h"

exten => h,1,Macro(set-cdr,33${ARG1:1},PSTN,${DIALSTATUS})
exten => h,n,Hangup()
2008-12-10 13:53

Сообщений: 6521

Re: выполнение контекста после комманды Dial

Чтобы выполнение сценария продолжилось в той же точке, нужно использовать макрос.

Определяет диал статус стандартный макрос macro-stdout
exten => _X.,1,Macro(stdout,${EXTEN},Zap/3)
Его можно подточить под собственные нужды.
2008-12-10 14:02

Сообщений: 1573

Re: выполнение контекста после комманды Dial

Вернее вот это хотел сказать:

exten => h,1,Goto(s-${DIALSTATUS},1)
exten => h,n,Hangup()
2008-12-10 14:09

Avatara of litnimax
Откуда: Москва
Сообщений: 3421

Re: выполнение контекста после комманды Dial

cron333:

Откуда такое взяли? Для этой опции не важно, кто положил трубку. Она обеспечивает дальнейшее выполнение команд плана.
Нет, g работает только для одной из сторон. Надо использовать h exten.
http://pbxware.ru - все для Asterisk! || Switchvox - сделано на Asterisk! Подробности на http://switchvox.ru
2008-12-10 22:21

Сообщений: 1573

Re: выполнение контекста после комманды Dial

Согласен ... :) Бури :))
2008-12-11 00:18

Avatara of simax
Откуда: Нижний Новгород
Сообщений: 277

Re: выполнение контекста после комманды Dial

опция g вообще не нужна тут.
управление перейдет в экстеншн h независимо от того кто положит трубку если нет опции g.
2008-12-11 10:26

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru