У меня был следующий код в моем extensions.conf
файл:
[local]
exten => _NXXNXXXXXX,1,Set(CALLERID(name)=${OUTGOING_NAME})
exten => _NXXNXXXXXX,n,Set(CALLERID(num)=${OUTGOING_NUMBER})
Теперь я хочу изменить этот код, чтобы установить CallerID и номер в зависимости от пользователя / добавочного номера, который выполняет вызов. Фактически у меня четыре (4) пользователя / расширения в моем sip.conf
и только один из них (тот, который я использую для бизнеса) должен отправлять другой идентификатор / номер вызывающего абонента.
Все находится в одном контексте (для простоты), поскольку все линии должны иметь возможность принимать входящий вызов. Единственная разница в том, когда line1
необходимо позвонить, он должен отправить другой идентификатор / номер вызывающего абонента и использовать другого поставщика.
Вот что у меня есть на данный момент:
[local]
exten => _NXXNXXXXXX,1,Set(line=${SIP_HEADER(From)})
exten => _NXXNXXXXXX,n,Verbose(line variable is <${line}>)
exten => _NXXNXXXXXX,n,Set(CALLERID(name)=${IF($[ ${line} = line1 ]?${COMPANY_NAME}:${FAMILY_NAME})})
exten => _NXXNXXXXXX,n,Set(CALLERID(num)=${IF($[ ${line} = line1 ]?${COMPANY_NUMBER}:${FAMILY_NUMBER})})
exten => _NXXNXXXXXX,n,Dial(${IF($[ ${line} = line1]?SIP/${EXTEN}@${COMPANY_PROVIDER}:SIP/${EXTEN}@${FAMILY_PROVIDER})})
Я действительно не знаю, правильно ли это и Я боюсь зафиксировать эти изменения в моем extensions.conf
перед проверкой.
Любая помощь будет оценена.
В соответствии с Информация о VoIP вики вы можете указать информацию о вызывающем абоненте на расширениях SIP для каждого расширения следующим образом:
callerid="Tuomas Tammisalo" <1000>
ОБНОВИТЬ: Вы можете получить доступ к Переменные CDR по звонку начался. "$ {CDR (src)}" предоставит вам добавочный номер источника вызова.
После некоторого расследования я обнаружил, что могу получить необходимую информацию из ${CALLERID(num)}
.
Итак, вот что я сделал:
[local]
exten => _NXXNXXXXXX,1,Set(line=${CALLERID(num)})
same => n,Verbose(line variable is <${line}>)
same => n,GotoIf($["${line}" = "line1"]?business-out,${EXTEN},1:family-out,${EXTEN},1)
[business-out]
...
[family-out]
...
Надеюсь, это кому-то поможет