VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

h323

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

may
Сообщения: 37
Зарегистрирован: 23 авг 2013, 14:51

Re: h323

Сообщение may »

Andy писал(а): Файл 122 нормальный вызов, 123 ошибочный.

Спасибо!
1.7z

Проблема здесь вот в чем. Почему-то в нормальном вызове PBX успевает открыть RTP (Logical) каналы до того, как астериск присылает Alerting и Progress,
а в проблемном звонке не успевает. Вероятно дело в том, что в нормальном звонке Alerting возникает через 500 мс после Setup'а и процедура открытия Logical Channels успевает пройти до конца, а в проблемном звонке Alerting приходит через 200 мс и здесь по какой-то причине PBX считает что её надо прекратить.
Далее астериск после Progress пытается отправлять в сторону PBX RTP поток, но не может в силу того, что RTP каналы неоткрыты и сигнализирует ошибку.

Исходная проблема - PBX стопорит OLC процедуру по получении Q.931 сигнала (точнее говоря PBX скорее всего останавливает H.245 обмен) и не продолжает её дальше, даже по получении Facility Start H.245, что в принципе есть ошибка со стороны PBX.

Решать можно такими вариантам:

- поставить Wait(0.5) или Wait(1) на входящем от PBX контексте в самом начале, что бы дать возможность завершить TCMSD/OLC процессы перед отправкой любой другой сигнализации

- включить Fast Start на PBX и Asterisk. Не факт что PBX поддерживает и не факт что поможет, но по умолчанию Asterisk при получении Fast Start считает Logical Channels автоматически открытыми.
amateur
Сообщения: 453
Зарегистрирован: 30 сен 2011, 09:58

Re: h323

Сообщение amateur »

h245-2.PNG
may писал(а):по какой-то причине PBX считает что её надо прекратить
После открытия канала H.245 происходит следующее:
1) chan_ooh323, не проверяя наличие уже открытого канала H.245, передает в сторону PBX еще один запрос на открытие канала H.245; это сообщение Facility, содержащее h245Address и reason=startH245 (на картинке выделено желтым);
2) PBX зачем-то пытается открыть второй канал H.245 (на картинке также выделено желтым)
3) после открытия TCP-соединения для второго канала PBX закрывает первый канал H.245 достаточно грубым способом - путем закрытия TCP-соединения (на картинке подчеркнуто красным);
4) chan_ooh323 завершает вызов с ошибкой после закрытия PBX первого канала H.245; сообщение releasComplete (на картинке тоже подчеркнуто красным).

Попробуйте наложить patch ooq931.c.patch и проблема, скорее всего, решится.
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH