Нужно четко понимать что при использовании кодека g729 донабор DTMF inband работать не будет т.к. сильно искажается исходный звук! тут DTMF сигналы нужно отправлять через порт сигнализации.
DJs3000 ( 2012-07-12 12:01:32 +0400 )редактироватьДобрый день! Возникла необходимость соединить две сети, где в одной исторически сложившаяся сеть на h323, а в недавно установленной sip и нами всеми любимый Asterisk=) Заработало, звонки пошли, правда пока в одну сторону, в другую ещё не пробовали.. Слышимость отличная. Но возникла проблема, в сети с h323 стоят пара FXO шлюзов которым необходим донабор. И он то как раз и не работает! Разумеется погуглил и результаты в конфиге ниже: Используется ooh323 и соответственно конфиг ooh323.conf
[general]
port=1720
bindaddr=0.0.0.0
faststart=yes
h245tunneling=yes
mediawaitforconnect=yes
callerid=asterisk
gatekeeper = DISABLE
logfile=/var/log/asterisk/h323_log
context=from-internal
disallow=all
allow=g729
dtmfmode=h245signal
[Alex]
type=friend
context=from-internal
host=X.X.X.X
port=1720
disallow=all
allow=g729
[Revda]
type=friend
context=from-internal
host=X.X.X.X
port=1720
disallow=all
allow=g729
вывод консоли
ooh323 show config
Objective Open H.323 Channel Driver's Config:
IP:Port: 0.0.0.0:1720
H.225 port range: 12030-12230
FastStart yes
Tunneling yes
CallerId asterisk
MediaWaitForConnect yes
Gatekeeper: No Gatekeeper
H.323 LogFile: /var/log/asterisk/h323_log
Context: from-internal
Capability: 0x100 (g729)
DTMF Mode: h245signal
T.38 Mode: faxgw/chan_sip compatible
Call counter: 7
AccountCode: ast_h323
AMA flags: Unknown
Но вот хоть убей при звонке передается inband.. На телефоне и в настройках пира стоит rfc2833, при звонке через sip транк dtmf передается отлично! лог при звонке в сеть ooh323
[Jul 11 13:30:50] VERBOSE[15260] app_dial.c: -- OOH323/Alex-8 is ringing
[Jul 11 13:30:50] VERBOSE[15260] app_dial.c: -- OOH323/Alex-8 answered SIP/901-00000016
[Jul 11 13:30:50] VERBOSE[15260] chan_ooh323.c: ----- ooh323_indicate 20 on call ooh323c_o_9
[Jul 11 13:30:50] VERBOSE[15260] chan_ooh323.c: ++++ ooh323_indicate 20 on ooh323c_o_9
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF begin '8' received on SIP/901-00000016
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF begin passthrough '8' on SIP/901-00000016
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: --- ooh323_digit_begin
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: +++ ooh323_digit_begin
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF end '8' received on SIP/901-00000016, duration 110 ms
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF end accepted with begin '8' on SIP/901-00000016
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF end passthrough '8' on SIP/901-00000016
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: --- ooh323_digit_end
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: +++ ooh323_digit_end
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF begin '5' received on SIP/901-00000016
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF begin passthrough '5' on SIP/901-00000016
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: --- ooh323_digit_begin
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: +++ ooh323_digit_begin
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF end '5' received on SIP/901-00000016, duration 110 ms
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF end accepted with begin '5' on SIP/901-00000016
[Jul 11 13:30:51] DTMF[15260] channel.c: DTMF end passthrough '5' on SIP/901-00000016
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: --- ooh323_digit_end
[Jul 11 13:30:51] VERBOSE[15260] chan_ooh323.c: +++ ooh323_digit_end
Если я правильно все понимаю, то при использовании g729, а приходится использовать именно его, передача DTMF inband не срабатывает корректно.. В общем я дозваниваюсь до шлюза расположенного в сети h323 и после слышу в трубке только равномерное гудение. Вот и вопрос, почему шлюз не улавливает сигнал? Если неверно обрисовал ситуацию, то готов добавить все недостающие штрихи!=)
Нужно четко понимать что при использовании кодека g729 донабор DTMF inband работать не будет т.к. сильно искажается исходный звук! тут DTMF сигналы нужно отправлять через порт сигнализации.
DJs3000 ( 2012-07-12 12:01:32 +0400 )редактироватьИзвините что поднимаю этот вопрос снова.. но он так и не решился=( Выставил dtmfmode=rfc2833 уже везде прописал, толку ноль! Не схватывает. Пытаюсь установить h323, но пока не могу сдружить скомпилированный модуль с asteriskom elastix..
Попробуй с другими кодеками.
[XX.XX.XX.2]
type=friend
ip=XX.XX.XX.2
port=1720
rtptimeout=60
dtmfmode=rfc2833
context=from-trunk
disallow=all
allow=ulaw
allow=alaw
allow=g723
allow=g729
;e164=208;
я бы с удовольствием, но на другой стороне очень трудный товарищ, он только за g729.. И никто не может подсказать откуда взять исходники asterisk использованного в elastix 2.2, а то скачал той же версии что показывает в консоли - 1.8.7.0. Собрал по известному мануалу, подменил местами файлики, и оказалось что из модулей не грузится ничего кроме H323, который тоже из свежесобранного..
Нужно четко понимать что при использовании кодека g729 донабор DTMF inband работать не будет т.к. сильно искажается исходный звук! тут DTMF сигналы нужно отправлять через порт сигнализации.
Я это четко понимаю! но разве строка dtmfmode=h245signal не должна привести именно к этому результату?
http://b.arsenbespalov.ru/2012/01/h323-dtmf-chanooh323.html
bolshoy_plohish ( 2012-07-12 17:34:24 +0400 )редактироватьВсе завелось и заработало!
[general]
port=1720
bindaddr=X.X.X.X
faststart=no
h245tunneling=yes
gatekeeper = DISABLE
;logfile=/var/log/asterisk/h323_log
context=from-internal
disallow=all
allow=alaw
dtmfmode=h245signal
dtmfcodec=127
musiconhold=default
[Alex]
type=friend
host=X.X.X.X
port=1720
canreinvite=no
Если у кого возникнет такая же проблема - попробуйте изменить параметр
faststart
Понимаю что уже много где об этом написано было, но может кому пригодится..=)
Задан: 2012-07-11 08:36:48 +0400
Просмотрен: 1,729 раз
Обновлен: Jul 14 '12
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Не совсем понял вопрос... понятное дело что в FXO линию будет DTMF inband отправляться.
DJs3000 ( 2012-07-11 10:35:47 +0400 )редактироватьпропиши dtmfmode=rfc2833
romariosar ( 2012-07-11 17:16:02 +0400 )редактировать