[Asterisk-Users] 2 minutes pause before ring on H323 channel

Peter Valkov petew at rocketmail.com
Tue May 17 15:04:26 MST 2005


> John Daragon wrote:
>> Peter Valkov wrote:
>>
>>> I have build asterisk from latest CVS HEAD-05/09/05 with H323 support
>>> as described in README file.
>>> Open H.323 version v1.17.1 and PWLib v1.9.0 on Mandrake Linux 10.2
>>> kernel-2.6.11
>>>
>>> I tested it with following phones: -- XLite (SIP softphone)
>>> -- QMix SIP IP phone (PA168F)
>>> -- SJPhone (H323 softphone)
>>> -- QMix H323 IP phone (PA168F)
>>> -- FireFly (IAX2 softphone)
>>>
>>> Everything works fine except a problem with h323 extension dialing.
>>> Behavior is the same for both
>>> SJPhone (soft phone) and QMix (PA168F). When I dial such extension I
>>> have to wait 2 minutes
>>> exactly (120 seconds) before extension rings. After long way of trial
>>> and errors with .conf files
>>> I managed to minimize this time to 1 minute exactly (60 seconds)
>>> exten => 20,1,Dial(H323/h323phone) ; this leads to 120 seconds pause
>>> before ring exten => 21,1,Dial(H323/h323phone at 192.168.0.101) ; this
>>> leads to 60 seconds pause before ring
>>
>>
>> Peter, hi;
>>
>> I haven't looked at the openh323 code, and I might not get time to...
>> but in my limited experience, 60 second delays are almost always DNS
>> timeouts.
>
> Yep - down in openh323/src/transports.cxx there's a method
> H323TransportAddress::GetIpAndPorts() which is called (eventually) by
> MakeCallLocked().  This in turn calls GetPortByService() and
> GetHostByAddress().
>
> My guess is that the 60 second wait is caused by a request to a DNS
> server that is never honoured.
>
> Of course, I've been wrong before...

It is definitely DNS problem. The strange thing is that from command line
everything works just fine. I can perform DNS and reverse DNS lookup without
problem.

Here follows my brutal workaround.

In file pwlib/include/ptbuildopts.h is defined P_DNS 1 I changed it to P_DNS
0 ... after that recompiled pwlib openh323 and chan_h323 ... make install
from asterisk home dir ... and voila ... no more 60 or (120) seconds delays.

I suppose that this approach is quite graceless... because in this way
entire openh323 DNS resolver is disabled... but this is the only way I
managed to get it working

I'm still looking for proper solution of the problem... so any help or
advice will be appreciated




More information about the asterisk-users mailing list