Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2014-01-28 15:28:34 +0400

romariosar Gravatar romariosar flag of Russian Federation

http://www.webunix.ru/

выполнение диалплана во время разговора

собсвенно есть тестовый диалплан:

[test]
exten => _XXX,1,NoOp(test call)
exten => _XXX,2,Dial(SIP/trunk/${EXTEN},30,M(duration))
exten => h,1,HangUp

[macro-duration]
exten => s,1,NoOp( >>> Call DURATION NOW - ${CDR(duration)} seconds)
exten => s,n,Wait(2)
exten => s,n,Goto(s,1)

идея заключалась в том чтобы во время разговора в консоль выкидывать с периодичностью в n секунд. Решил использовать макросы в команде Dial, но макрсос нужно выпонять в цикле, и при это соединение не происходит, а данный диаллан не работает. Если заменить макрос duration на :

 [macro-duration]
    exten => s,1,NoOp( >>> Call DURATION NOW - ${CDR(duration)} seconds)

то он выполняет его 1 раз. А вот как бы соединить абонентов в запустить цикл вывода этого сообщения во время ихнего разговора?

Хочется именно средствами диалплана.

выполнение диалплана во время разговора

собсвенно есть тестовый диалплан:

[test]
exten => _XXX,1,NoOp(test call)
exten => _XXX,2,Dial(SIP/trunk/${EXTEN},30,M(duration))
exten => h,1,HangUp

[macro-duration]
exten => s,1,NoOp( >>> Call DURATION NOW - ${CDR(duration)} seconds)
exten => s,n,Wait(2)
exten => s,n,Goto(s,1)

идея заключалась в том чтобы во время разговора в консоль выкидывать с периодичностью в n секунд. секунд длительность звонка. Решил использовать макросы в команде Dial, но макрсос нужно выпонять в цикле, и при это соединение не происходит, а данный диаллан не работает. Если заменить макрос duration на :

 [macro-duration]
    exten => s,1,NoOp( >>> Call DURATION NOW - ${CDR(duration)} seconds)

то он выполняет его 1 раз. А вот как бы соединить абонентов в запустить цикл вывода этого сообщения во время ихнего разговора?

Хочется именно средствами диалплана.

выполнение диалплана во время разговора

собсвенно есть тестовый диалплан:

[test]
exten => _XXX,1,NoOp(test call)
exten => _XXX,2,Dial(SIP/trunk/${EXTEN},30,M(duration))
exten => h,1,HangUp

[macro-duration]
exten => s,1,NoOp( >>> Call DURATION NOW - ${CDR(duration)} seconds)
exten => s,n,Wait(2)
exten => s,n,Goto(s,1)

идея заключалась в том чтобы во время разговора в консоль выкидывать с периодичностью в n секунд длительность звонка. Решил использовать макросы в команде Dial, но макрсос нужно выпонять в цикле, и при это соединение не происходит, а происходит потомучто макрос циклится, но абонентов не соединяет, видимо потомучто Dial ждет его выполнения - данный диаллан не работает. Если заменить макрос duration на :

 [macro-duration]
    exten => s,1,NoOp( >>> Call DURATION NOW - ${CDR(duration)} seconds)

то он выполняет его 1 раз. А вот как бы соединить абонентов в запустить цикл вывода этого сообщения во время ихнего разговора?

Хочется именно средствами диалплана.

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.