Здравствуйте!Помогите пожалуйста разобраться с моей проблемой.
Со станции софт-свитча настроена переадресация А номера на Б номер. Дозвон на Б номер осуществляется через астериск
Так вот проблема в том, что когда звонит номер С на номер А , то астериск к номеру С добавляет префикс из правила exten прописаного в конфиге, и вызов не осуществляется
-- Executing [119288780430@from-trunk:1] Set("SIP/softx-000056ee", "CALLERID(num)=787229285888505") in new stack
-- Executing [119288780430@from-trunk:2] NoOp("SIP/softx-000056ee", "callerid is '787229285888505'") in new stack
-- Executing [119288780430@from-trunk:3] Dial("SIP/softx-000056ee", "SIP/mtt/79288780430") in new stack
Эта проблема встречается только при переадресации. Когда вместо положеного городского номера приходит номер мобильный:
В этом случае вызов успешный:
-- Executing [119282776543@from-trunk:1] Set("SIP/softx-000056f0", "CALLERID(num)=78722460000") in new stack
-- Executing [119282776543@from-trunk:2] NoOp("SIP/softx-000056f0", "callerid is '78722460000'") in new stack
-- Executing [119282776543@from-trunk:3] Dial("SIP/softx-000056f0", "SIP/mtt/79282776543") in new stack
Возможно ли создать правило префикс анализа? Например если С номер короткий(меньше 6 символов то добавлять к нему 78722, если длинный то не добавлять ничего. Или же добавлять префикс только если С номер начинается на 46
Вот правила прописаные в extensions_custom.conf
exten => _11X.,1,Set(CALLERID(num)=78722${CALLERID(num):1})
exten => _11X.,n,Noop(callerid is '${CALLERID(num)}')
exten => _11X.,n,Dial(SIP/mtt/7${EXTEN:2})
exten => _11X.,n,Hangup