Добрый день, облазил весь FAQ и прочитал все ответы на подобные вопросы на форуме но решения своей проблемы не нашел.
Задача классическая, предопределить исходящий CID для каждого сотрудника или в моем случае для группы сотрудников.
Воспользовался решением из FAQ где в extensions.conf добавил
[SIP-1598090504-outgoing-custom]
exten => _.!,1,NoOp(callerid settings)
same => n,ExecIf($["${MIKO_CALLERID_NUM}x" != "x"]?Set(CALLERID(num)=${MIKO_CALLERID_NUM}))
same => n,ExecIf($["${MIKO_CALLERID_NUM}x" != "x"]?Set(CALLERID(name)=${MIKO_CALLERID_NUM}))
same => n,return
а в доп параметрах учетки сотрудника добави
setvar=MIKO_CALLERID_NUM=74952293333
Но по итогу все равно не получаю никаких изменений.
outgoing-custom насклько я понимаю настроил нормально, потому что при звонке вызов заходит в данный контекст, но ExecIF не исполняется, а возвращает 0.
-- Executing [79161111111@SIP-1598090504-outgoing-custom:2] ExecIf("PJSIP/201-00000020", "0?Set(CALLERID(num)=)") in new stack
-- Executing [79161111111@SIP-1598090504-outgoing-custom:3] ExecIf("PJSIP/201-00000020", "0?Set(CALLERID(name)=)") in new stack
Подскажите пожалуйста в чем может быть проблема.
Советы вроде установить шлюзовый номер на весь транк в после fromuser не подойдут, так как через единый транк должно выходить несколько номеров в зависимости от того сотрудник какого отдела звонит.
UPD 1
При убирании ExecIF и принудительном SET ситуация сохраняется.
same => n,Set(CALLERID(num)=${MIKO_CALLERID_NUM})
same => n,Set(CALLERID(name)=${MIKO_CALLERID_NUM})
Такое ощущение что setvar не отрабатывает.