#!/usr/bin/perl use Asterisk::AGI; use strict; use vars qw($AGI); close(STDERR); open(STDERR,">/etc/asterisk/agi-bin/stderr.out"); $SIG{"HUP"} = sub { print STDERR "Received hup!\n"; }; sub main { my($phone) = @_; my($res); my($dialstr,$peer); my($answeredtime, $dialstatus); open(OUTFILE, ">>/etc/asterisk/agi-bin/dial.out"); ($phone) = @ARGV; $phone =~ s/^55(.)/0$1/; $peer = "okscm"; $dialstr = "SIP/$peer/$phone|60"; print OUTFILE "----\ndial = $dialstr\n"; $res = $AGI->exec("DIAL",$dialstr); print OUTFILE "postdial\n"; $answeredtime = $AGI->get_variable("ANSWEREDTIME"); $dialstatus = $AGI->get_variable("DIALSTATUS"); print OUTFILE "peer = $peer\n"; print OUTFILE "phone = $phone\n"; print OUTFILE "sec = $answeredtime\n"; print OUTFILE "status = $dialstatus\n"; close(OUTFILE); } # main $AGI = new AGI; &main(@ARGV);