не соединять канал пока не будет ответа на звонок голосом
Откуда: Москва
Сообщений: 64
|
не соединять канал пока не будет ответа на звонок голосом
Возникла вот такая задача:
Схема подключения:
Абонент SIP (A) <-----> Asterisk <------> SIP провайдер линии <--------> Междугородний провайдер (через PIN код) <--------> Абонент (B)
Когда абонент A набирает номер телефона Абонента B, звонок уходит на линию SIP провайдера до номера доступа Междугороднего провайдера и через PIN звонок уходит на Абонента B.
В чем собственно проблема. Абонент А набирает номер слышит гудок вызова от Asterisk, Asterisk набирает номер доступа и PIN код, начинается соединение, Абонент А уже слышит гудок Междугороднего провайдера (а Asterisk начинает отсчитывать время соединения) и если у Абонента B номер занят, то Абонент А слышит занятость от провайдера и кладет трубку. Но Asterisk посчитал это соединение как отверченное, а не как занято.
Сложно как-то написал, но надеюсь понятно, что я имел ввиду. Как заставить Asterisk не соединять канал пока не получит ответ от Абонента B или если Asterisk получил занятость от провайдера с PIN кодом, чтобы он разъединил канал и передал эту занятость Абоненту А?
Может есть идеи как решить данную проблему? Спасибо.
С уважением, Дмитрий.
|
Откуда: Уфа
Сообщений: 5856
|
Re: не соединять канал пока не будет ответа на звонок голосом
просто подключитесь к междугороднему провайдеру по SIP и убейте эту извращенную схему.
|
Откуда: Москва
Сообщений: 64
|
Re: не соединять канал пока не будет ответа на звонок голосом
Да, это пожалуй самое простое решения. Но возможности такой нет, и вопрос остается.
|
Откуда: Саратов
Сообщений: 414
|
Re: не соединять канал пока не будет ответа на звонок голосом
Тогда смените междугороднего провайдера. Только не надо говорить, что нет такой возможности.
+7(925)140-7438
|
Сообщений: 80
|
Re: не соединять канал пока не будет ответа на звонок голосом
дело не только в провайдере, при аналогичных звонках через городские линии, та же ситуация - billsec отсчитывается даже если абонент еше не ответил.
http://asterisk-support.ru/forum/topics/4096/
|
Откуда: Саратов
Сообщений: 414
|
Re: не соединять канал пока не будет ответа на звонок голосом
mbyte: дело не только в провайдере, при аналогичных звонках через городские линии, та же ситуация - billsec отсчитывается даже если абонент еше не ответил
Если pin-кодного провайдера заменить на нормального, то проблема полностью исчезнет.
+7(925)140-7438
|
Откуда: Украина, Киев - Одесса
Сообщений: 50
|
Re: не соединять канал пока не будет ответа на звонок голосом
mbyte: при аналогичных звонках через городские линии, та же ситуация - billsec отсчитывается даже если абонент еше не ответил.
Через FXO-порты - всегда так, что ж Вы хотели :)
Чтобы по меди позвонить, надо трубку поднять, чтобы АТС зуммер выдыла и подтвердила готовность принять набранный номер.
Правду говорить - легко и приятно. (с) Иешуа Га-Ноцри
|
Сообщений: 80
|
Re: не соединять канал пока не будет ответа на звонок голосом
Lonely_Ghost
Я согласен с вами, мне казалось что астериск "легко" может делать разницу между голосовым потоком и бип-бип ожидания соединения, чтобы правильно начать billsec.
Evgen
провайдер - самая обычная атс, без пинкодов (France Telecom)
|
Откуда: Украина, Киев - Одесса
Сообщений: 50
|
Re: не соединять канал пока не будет ответа на звонок голосом
Астериск прекрасно ловит разницу между SIP 183 Progress/SIP 180 Ringing и RTP :)
Разница только в том что через FXO тот же КПВ от АТС идет уже по RTP, тут - хоть убейся.
Могу только посоветовать поиграться с переполюсовкой, но и тут есть свои бока.
Правду говорить - легко и приятно. (с) Иешуа Га-Ноцри
|
Откуда: Москва
Сообщений: 64
|
Re: не соединять канал пока не будет ответа на звонок голосом
Понимаю изврат, но все же. А возможно ли заставить Asterisk слушать канал который создается с PIN провайдером, если слышим гудки вызова, то канал с абонентом А не соединяем, если слышим сигнал бизи, то отправлять в канал абонента А занятость, при этом не соединять канал чтобы у абонента А не считались секунды. А вот если слышим ответ, тогда уже соединяем каналы и считаем время.
|
|