april22 писал(а):а они все по разным транкам должны ходить ? или просто у каждого должен быть свой Caller ID
У каждого маршрута свой устанавливаемый CallerID.
Вопрос в другом, как до передачи вызова в макрос исходящего звонка, проверить имеет ли к примеру номер 777 разрешение на звонок в нужном направлении...
ЗЫ недоработанный макрос исходящего вызова:
Код: Выделить всё
[macro-dial-out]
exten => ${EXTEN},1,NoOp(${CALLERID(num)})
same => n,Log(NOTICE, Dialing out from ${CALLERID(all)} to (${MACRO_EXTEN}))
same => n,Set(CALLERID(num)=${OUTCID_2})
same => n,Set(GROUP()=${OUT_34})
same => n,GotoIF($[${GROUP_COUNT(${OUT_34})} > 10]?OUT_31)
same => n,Dial(${OUT_34}/${EXTEN},60)
same => n,Set(Call_Dial_status=${DIALSTATUS})
same => n,Noop("Dialstatus is - ${Call_Dial_status}")
same => n,GotoIf($["${Call_Dial_status}" = "BUSY"]?100)
same => n,GotoIf($["${Call_Dial_status}" = "CANCEL"]?100
same => n,GotoIf($["${Call_Dial_status}" = "CONGESTION"]?300)
same => n,GotoIf($["${Call_Dial_status}" = "NOANSWER"]?400)
same => n,GotoIf($["${Call_Dial_status}" = "ANSWER"]?complete_call)
same => 100,Playback(ru/cancelled)
same => n,Hangup
same => 300,Playback(ru/cannot-complete-as-dialed)
same => n,Hangup
same => 400,Playback(ru/number-not-answering)
same => n,Hangup
same => n(OUT_31),Set(GROUP()=OUT_31)
same => n,GotoIF($[${GROUP_COUNT(OUT_31)} > 10]?258035)
same => n,Dial(SIP/OUT_31/${EXTEN},60)
same => n,Set(Call_Dial_status=${DIALSTATUS})
same => n,Noop("Dialstatus is - ${Call_Dial_status}")
same => n,GotoIf($["${Call_Dial_status}" = "BUSY"]?100)
same => n,GotoIf($["${Call_Dial_status}" = "CANCEL"]?100)
same => n,GotoIf($["${Call_Dial_status}" = "CONGESTION"]?300)
same => n,GotoIf($["${Call_Dial_status}" = "NOANSWER"]?400)
same => n,GotoIf($["${Call_Dial_status}" = "ANSWER"]?complete_call)
same => 100,Playback(ru/cancelled)
same => n,Hangup
same => 300,Playback(ru/cannot-complete-as-dialed)
same => n,Hangup
same => 400,Playback(ru/number-not-answering)
same => n,Hangup
same => n(258035),Set(GROUP()=258035)
same => n,GotoIF($[${GROUP_COUNT(258035)} > 1]?stop)
same => n,Dial(SIP/258035/${EXTEN},60)
same => n(stop),Hangup()