Jump to content
Калькуляторы

GnuGk + Yate

Доброго времени суток!

 

Yate -> GnuGk -> провайдер

 

h323chan.conf

[general]

external_rtp=yes

passtrough_rtp=yes ; note the incorrect spelling

 

[codecs]

default=enable

mulaw=yes

alaw=yes

g723=on

g729=on

 

[ep]

ep = on

faststart=on

 

GnuGk.ini

Fourtytwo=42

Name=GK001

EndpointIDSuffix=_gk001

TimeToLive=480

EndpointSignalPort=1720

 

[RoutedMode]

GKRouted=1

H245Routed=1

AcceptUnregisteredCalls=1

CallSignalPort=1721

 

[RasSrv::PermanentEndpoints]

235.79.153.32=voip;38

 

[GkStatus::Auth]

default=allow

 

Yate пытается связаться с портом 1720, который GnuGk не слушает. Хотя телефончики на нем регистрируются и с них можно звонить. Как это побороть?

 

Share this post


Link to post
Share on other sites

Либо в gnugk:

[RoutedMode]

CallSignalPort=1720

 

Либо в yate (regexroute.conf):

h323/${called}@<IP-адрес gnugk>:1721

 

Share this post


Link to post
Share on other sites
Либо в gnugk:

[RoutedMode]

CallSignalPort=1720

 

Либо в yate (regexroute.conf):

h323/${called}@<IP-адрес gnugk>:1721

Да. Спасибо. Именно это.

 

Вот только теперь не всегда звук появляется. Я как понял дело в кодеках. На 711 все вроде хорошо, на других не поймешь. Разговор вроде идёт, а звука нет. Никак не могу нарыть, какой же мне параметр подкрутить. В GK и Yate rtp и H.245 идут напрямую между ep.

 

Зато когда идёт SIP-SIP все нормально.

Edited by mesmit

Share this post


Link to post
Share on other sites

Запишите трафик проблемного вызова с помощью wireshark. Картинка, скорее всего, прояснится.

 

Share this post


Link to post
Share on other sites
Запишите трафик проблемного вызова с помощью wireshark. Картинка, скорее всего, прояснится.

Да вот тут экспериментировал и кое-что прояснилось.

 

Когда используется regexroute

 

${rtp_forward}possible=;rtp_forward=yes

${formats}^\([^,]*\)=;formats=\1

${module}^sip$=h323/${called}@73.138.54.201

;${module}^h323$=sip/sip:${called}@10.1.0.5

.*=-;error=forbidden;reason=Protocol not allowed

 

Все вроде нормально. Но когда я маршрутизирую через register из базы данных, то начинают происходить чудеса. Я так понял, что это из-за первых двух строк. Как бы их "привентить" в register модуль? Пытался все сделать через regexroute, но тут перестают локальные между собой по SIP.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this