Задать вопрос
@Desert-Eagle
Новичок во всем

Как сделать звонки на внутренние 3 и 4-х значные?

Соединены две АТС через транк, настроены внутренние номера, у первой АТС префикс (условно) 01 у второй 02.
Есть работающий план для звонков на 3-х значные номера.
extansions.conf

[phones]
include => local
include => outgoing

[local]
exten => _0[1-9]XXX,1,Noop
 same => n,Set(CALLEID(num)=01${CALLRID(num)})
 same => n,Dial(SIP/SecretLine/${EXTEN},15,Tt)
 same => n,HangUp()

exten => _XXX,1,Macro(recording,${CALLERID(num)},${EXTEN})
exten => _XXX,n,Dial(SIP/${EXTEN},60,tT)
exten => _XXX,n,Hangup()
exten => _XXX.,1,Goto(outgoing,${EXTEN},1)

[outgoing]
exten => _XXX.,1,Macro(recording,${CALLERID(num)},${EXTEN})
exten => _XXX.,n,Gosub(trunk_check,s,1(${EXTEN}))

При таком диалплане, если я набираю 01700, то звонок заворачивается на транк SecretLine и уходит на первую АТС на номер 700, с этим все ОК.

Как мне добавить возможность звонков на номера из 4-х цифр?

Если я сейчас набираю 017001 (тобишь номер 7001), то звонок заворачивается на внешний trank_check и пытается звонить наружу.
Если я меняю первую строку на exten => _0[1-9]XXX.,1,Noop тобишь ставлю "точку" после ХХХ, но тогда все ломается с 3-х значными, и как только я набираю 01700, то звонок уходит в пожарную службу на номер 01.
  • Вопрос задан
  • 445 просмотров
Подписаться 2 Средний 6 комментариев
Решения вопроса 1
@dronmaxman
VoIP Administrator
На самом деле лучше писать как можно более четкие правила, а не универсальные.

[local]
exten => _0[1-9]XXX,1,Noop
 same => n,Set(CALLEID(num)=08${CALLRID(num)})
 same => n,Dial(SIP/SecretLine/${EXTEN},15,Tt)
 same => n,HangUp()

exten => _0[1-9]XXXX,1,Noop
 same => n,Set(CALLEID(num)=08${CALLRID(num)})
 same => n,Dial(SIP/SecretLine/${EXTEN},15,Tt) same => n,HangUp()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы