Как получить переменную идентификатора вызывающего абонента? - PullRequest
0 голосов
/ 07 июня 2019

Я получаю вызов по одной внешней линии и переадресовываю этот вызов по второй внешней линии со следующим

[from-trunk1]
exten => _X.,1,Dial(SIP/trunk2/12345678) 

Теперь я хотел бы добавить условие IF. Если callerid пользователя, звонящего на trunk1, это 112233, то я бы хотел переслать его на номер 445566 из trunk2.

Ответы [ 2 ]

0 голосов
/ 07 июня 2019

Вы можете просто указать идентификатор вызывающего абонента как часть шаблона расширения .

exten => _X./112233,1,Dial(SIP/trunk2/445566)

Шаблон CID может принимать все те же специальные символы, что и шаблон назначения, если вы добавите к нему префикс _.

0 голосов
/ 07 июня 2019

Если кому-то интересно

[from-trunk1]
; if caller is 112233 go 50
exten => _X.,1,NoOp(${CALLERID(num)})
exten => _X.,n,GotoIf($["${CALLERID(num)}" = "112233"]?50)

; if not code below
exten => _X.,n,Playback(tt-monkeys)

; if condition where true, start from 50
exten => _X.,50,Dial(SIP/trunk2/445566)

Пожалуйста, предложите, если у вас есть лучший код.

...