rusya писал(а):Vlad1983, у меня работают транки. каждый по отдельности. А перебор - нет. Если бы была блокировка по CID, ни один бы не работал...
Логично!
Могу посоветовать вот что:
1) разобрать SIP ответ на составляющие через переменные SIP_HEADER
для чего создать для теста кастомный контекст и отправить вызов из него через
exten => _X.,1,Dial(SIP/trunk1/${EXTEN})
exten => _X.,n,Dial(SIP/trunk2/${EXTEN})
exten => _X.,n,Dial(SIP/trunk3/${EXTEN})
exten => _X.,n,Dial(SIP/trunk4/${EXTEN})
и посмотреть как обработается вызов. Вытаскивать инфу об ответах через NoOp(${SIP_HEADER()}) и NoOp(${SIPCHANINFO})
и сделать свой макрос путём введения строк
GotoIf((${SIPCHANINFO}=фигзнает_ошибка_607):nextTrunk)
в текущий макрос macro-dialout
2) использовать GoTo или Gosub чтобы отправлять по BUSY через другой транк, но это не кажется мне изящным.