Коллеги!
Хочу чтобы абоненту при недозвоне не валилось всегда busy, а в зависимости от причины проигрывалось сообщение: "неправильно набран номер", "телефон не подключен" или, если абонент реально занят, busy.
Подскажите в как это грамотно сделать?
exten=>s,n,Dial(SIP/${MACRO_EXTEN},10,tT)
exten=>s,n,ExecIf($[${DIALSTATUS}=NOANSWER],Playback,Абонент_Пупкин_не_отвечает)
exten=>s,n,ExecIf($[${DIALSTATUS}=CHANUNAVAIL],Playback,Абонент_Пупкин_не_подключен)
и так далее
ИМХО: называть форумчан "коллегами" наверное стоит только после прочтения, хотя бы одной книги по теме
:)
т.н. операторы "традиционной" телефонии, уже на 50% - voip'шные. традиционной в вашем смысле, осталась только "последняя миля", над искоренением которой и работает данный форум :)
У оповещения через playback есть один большой минус -- оно сначала отвечает на звонок.
А если надо сделать так чтобы не отвечало и проигрывало -- придётся изголяться: записывать оповещение как отдельный класс music on hold , заводить extension который всегда свободен, переадресовывать туда неудачные вызовы и проигрывать сообщение при вызове этого extension с помощью опции w . Зато после проигрывания сообщения можно вернуть busy или congestion .
Главная проблема у меня понять, где сотка, что бы сказало мобильник отключен и понять где городской отсылает cause 31, что он отключен. Короче много проблем, потому что нужно менять конвертацию cause на циске и иметь много секаса со всем этим, потому что трудно додуматься, вернее на ставиться опытов в моём случае, как и откуда и на что какие коды завершения придут.