Asterisk 1.8 и транк ooh323
Провайдер предоставляет телефонию по h323.
На сервере стоит Asterisk 1.8 + FreePBX (AsteriskNOW distr) + ooh323
Исходящие звонки с ip-телефонов наружу проходят нормально.
Входящие на назначенный провайдером городской номер не доходят до Астериска, а обрубаются на этапе установки соединения по h323 медлу сервером провайдера и сервером Астера.
Исходные данные:
а) В сервере установлено 2 сетевых интерфейса:
1.1.1.1 - смотрит в сторону локальной сети (ip-телефоны)
2.2.2.2 - смотрит в интернет
3.3.3.3 - адрес сервера провайдера
б) конфигурация Астериск
NAT - включен
Созданы 6 extensions
Создана RingGroup с политикой ringall - в нее включены все extensions
в) конфигурация ooh323
| Код: |
| # santarm h323 conf file [general] tracelevel=7 port=1720 bindaddr=2.2.2.2 h323id="Santarm Asterisk PBX" e164=100 rtptimeout=60 gateway=no gatekeeper=DISABLE context=from-trunk disallow=all allow=g729,alaw,ulaw dtmfmode=rfc2833 progress_setup=8 progress_alert=8 logfile=/var/log/asterisk/h323_log faststart=yes h245tunneling=yes [infotecsrt] type=peer context=from-trunk dtmfmode=rfc2833 ip=3.3.3.3 port=1720 rtptimeout=60 disallow=all allow=g729,alaw,ulaw |
в) debug h323 неудачного исходящего вызова
см. прикрепленный файл
В чем может быть проблема, не подскажите?
Заранее благодарен за помощь.
Последний раз редактировалось: a.sasin (Чт Фев 16, 2012 13:05)
я бы сказал повышайте tracelevel, но он и так уже по максимуму
пишите майнтейнеру модуля
его контакты есть в соурсах ooh323
У меня сборка на базе AsteriskNOW 1.7 + FreePBX. До версии Asterisk 1.8 обновлялся через yum.
Во всех руководствах указано, что необходимо собирать сам asterisk с поддержкой h323 вместо использования asterisk-addons.
Как включить использование h323 вместо ooh323 на установленном AsteriskNOW? Может подскажете?
Теперь при входящем звонке в дебаге вижу следующее:
| Код: |
| == New H.323 Connection created. --Received SETUP message -- Setting up Call -- Call token: [ip$80.68.14.2:41183/9717] -- Calling party name: [] -- Calling party number: [9034635500] -- Called party name: [78632067551] -- Called party number: [78632067551] -- Calling party IP: [80.68.14.2] Setting capabilities to 0x100 (g729) Capabilities in preference order is (g729) DTMF mode is 1 Allowed Codecs for ip$80.68.14.2:41183/9717 (ip$95.167.126.46:1720): Table: G.729A G.729 UserInput/hookflash UserInput/RFC2833 Set: 0: 0: G.729A G.729 1: UserInput/hookflash 2: UserInput/RFC2833 ERROR: on_external_rtp_create failure ERROR: on_external_rtp_create failure =-= In OnAnswerCall for call 9717 - Progress Indicator: 0 - Inserting PI of 0 into ALERTING message -- Sending RELEASE COMPLETE -- ClearCall: Request to clear call with token ip$80.68.14.2:41183/9717, cause EndedByNoUser -- ClearCall: Request to clear call with token ip$80.68.14.2:41183/9717, cause EndedByAnswerDenied ExternalRTPChannel Destroyed ExternalRTPChannel Destroyed -- Remote endpoint could not find user: 9034635500 [80.68.14.2] == H.323 Connection deleted. |
Как решить эту проблему?
Заранее благодарен.
| Код: |
| ERROR: on_external_rtp_create failure ERROR: on_external_rtp_create failure |
конфиг настройте
bindaddr должен быть айпишник а не 0.0.0.0
| Код: |
| bindaddr=[asterisk_external_ip] |
Все равно при входящем звонке получаю:
| Код: |
| == New H.323 Connection created. --Received SETUP message -- Setting up Call -- Call token: [ip$80.68.14.2:33398/11009] -- Calling party name: [] -- Calling party number: [8632675833] -- Called party name: [78632067551] -- Called party number: [78632067551] -- Calling party IP: [80.68.14.2] Setting capabilities to 0x100 (g729) Capabilities in preference order is (g729) DTMF mode is 1 Allowed Codecs for ip$80.68.14.2:33398/11009 (ip$95.167.126.46:1720): Table: G.729A G.729 UserInput/hookflash UserInput/RFC2833 Set: 0: 0: G.729A G.729 1: UserInput/hookflash 2: UserInput/RFC2833 ERROR: on_external_rtp_create failure ERROR: on_external_rtp_create failure =-= In OnAnswerCall for call 11009 - Progress Indicator: 0 - Inserting PI of 0 into ALERTING message -- Sending RELEASE COMPLETE -- ClearCall: Request to clear call with token ip$80.68.14.2:33398/11009, cause EndedByNoUser -- ClearCall: Request to clear call with token ip$80.68.14.2:33398/11009, cause EndedByAnswerDenied ExternalRTPChannel Destroyed ExternalRTPChannel Destroyed -- ClearCall: Request to clear call with token ip$80.68.14.2:33398/11009, cause EndedByTransportFail -- Remote endpoint could not find user: 8632675833 [80.68.14.2] == H.323 Connection deleted. |
В какую сторону смотреть? Может можно дебаг более детальный включить?
| Цитата: |
| on_external_rtp_create failure |
только вроде что то пофиксили
разве что не всё
изучать надо
Added after 3 minutes:
дебаг астериска нужно включать
а не только h323
а вообще поставте ooh323 и не партесь
во-первых: теперь он deprecated а после сборки модуль тупо не работает и показывает причину:
| Цитата: |
| Error loading module 'chan_h323.so': /usr/lib/asterisk/modules/chan_h323.so: undefined symbol: _ZNK7PObject7CompareERKS |
видимо придется перелазить на ooh323, как бы не хотелось этого...
ps: годами работал. RIP.
to amateur: реанимировать h323 желание есть. чем я смогу помочь в этом? может донейшином?
P.S. Насчет "донейшн"... Это конечно приятно, но думаю, что пока рановато
А выложить можно много куда - да на тот же code.google.com например можно залить - шикарный сервис и бесплатно.
ps: готов начать тестить хоть сегодня
https://code.google.com/p/ast-h323/
Исходный код и сценарии загрузки/сборки:
svn checkout http://ast-h323.googlecode.com/svn/trunk/ ast-h323
Краткая информация в README.txt
и/или постить свои изменения цивильно на https://reviewboard.asterisk.org/r/
переносить сразу нужно там где все к астериску валяется,
а не распихивать по всему интернету
ищите как регистрироватся девелопером и коммите сразу свои изменения в паралельную свою ветку svn
да, еще лучше когда изменения идут планомерно, это если будете коммитить свои в свою ветку
и пробелы табуляции итд лучше потом уже выставлять.
я как сапожник не могу носить сапоги от коллег))
и по некоторым ньюансам у меня там свои взгляды
после сборки, не вижу модуля в /usr/lib/asterisk/modules
есть только chan_ooh323.so
так должно быть и я что то пропустил?
или же в коде проблемы?
_________________
Обновленный chan_h323 с поддержкой T.38 для Asterisk 1.8, 10, 11 и 12 - http://code.google.com/p/ast-h323/