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

Re: Обрыв выполнения диалплана

Добавлено: 26 сен 2012, 17:06
guvijur
Снова вынужден вернуться в данную тему.
Экстеншен "h" не оказался выходом, ибо он, тварь, отрабатывает все хангапы всех вышестоящих контекстов.
Из того, что вы мне подсказали, я увидел два варианта: просто "F" и "F([[context^]exten^]priority)".
Первый не срабатывает, второй для меня бессмыслен.

Re: Обрыв выполнения диалплана

Добавлено: 26 сен 2012, 18:05
zzuz
Если в вышестоящих контекстах тоже есть h , то там обработка тоже продолжится.

Re: Обрыв выполнения диалплана

Добавлено: 26 сен 2012, 18:08
Vlad1983
"F" не отрабатывает так как не может понять в каком контексте находится
собственно, на h валится все подряд по той же причине
все потому что у вас куча инклудов из контекста в контекст

"F([[context^]exten^]priority)" оп идее должно работать даже в этой ситуации

....Dial(.....,..,F(test-caller-hangup^s^1))

[test-caller-hangup]
exten => s,1,NoOp(!!!!!!!!!!!!!!!!!!!!)

Re: Обрыв выполнения диалплана

Добавлено: 27 сен 2012, 09:34
guvijur
Вчера,перед тем как заснуть, одну мыслю в голове нашёл, которая мне сказала - "А поставь ка ты экстен h в том контексте, в который включён мой текущий, по которому я и спрашиваю вас сейчас. Это не позволит вызовам из высших контекстов скакать на h в этот." Либо в h мне надо будет написать несколько GotoIF() чтобы отбросить ненужные мне записи.

По поводу конструкции "Dial(.....,..,F(test-caller-hangup^s^1))".
Вопрос - А будут ли видны в контексте test-caller-hangup те переменные, которые определены в текущем? Если нет, то мне это тоже не поможет.

Re: Обрыв выполнения диалплана

Добавлено: 27 сен 2012, 09:45
Vlad1983
"А будут ли видны в контексте..."
взять и попробовать никак не можно?

к тому же, задавать переменные можно с различной областью видимости и наследуемости
http://www.voip-info.org/wiki/view/Asterisk+variables

Re: Обрыв выполнения диалплана

Добавлено: 27 сен 2012, 11:04
guvijur
Огромнейшее спасибо.

Я попробую, а пока реализовал всё с помощью h и проверкой в скрипте perl количества переданных ему элементов. Если хоть одного не хватает, то запись в БД не производится.

Спасибо.