On Thu, Jan 7, 2010 at 6:27 PM, JR Richardson <[email protected]>
wrote:
problem I'm running into is if the DNS server is not responding, the
script hangs and waits for 30 seconds before returning to the Asterisk
dialplan. ?I would like a timeout of 1 second, then return.
On Thursday 07 January 2010 18:59:24 David Backeberg wrote:
* stop using DNS? Problem solved. * put nagios monitoring on your DNS
server? * put in a second DNS server, and tune your DNS timeout to a
very low value in /etc/resolv.conf (read the man page) before jumping
to next server?
Or you could use the Perl language feature, which is called 'alarm'.
Google around for some code samples.
On Thu, 7 Jan 2010, Tilghman Lesher wrote:
Ah, but Perl isn't actually doing the DNS lookup. If you examine his
script, he's merely passing back a name to the Asterisk process, which
is then calling inet_aton(), which is the reason why he cannot control
it from within the script. What he'd actually need to do is to start
using Net::DNS to do the resolution on that name, first, perhaps even
going as far as to connect to the server himself, and relay the channel
between the AGI interface and the remote TCP interface.
Then, he could use alarm() or the Time::Hires module to ensure his own
timeouts override the builtins. But as it stands now, it's all
Asterisk.
If the DNS lookup is being done by Asterisk to resolve the FastAGI server
name. If the DNS lookup is for the (assumed) database server in his script
then the suggestions to use alarm() would do the trick.
I guess we need clarification from the OP.
--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards [email protected] Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000
_______________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users