dail out error SIP/2.0 603 Declined

Get help with installing, upgrading and running Asterisk.

Moderators: muppetmaster, Moderator, Support

dail out error SIP/2.0 603 Declined

Postby sunnykhan » Tue Apr 07, 2009 8:34 am

I’m Unable to make calls with my current configurations.
Kindly advice, what’s wrong with my configurations
All of my configurations are mention below along with error.
Thanks in Advance... !!

---------------------------------------------------
asterisk -r
---------------------------------------------------
<------------>
-- Executing [03235879678@default:1] AGI("SIP/192.168.1.14-08f932c0", "d.pl") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/d.pl
-- AGI Script d.pl completed, returning 0
== Auto fallthrough, channel 'SIP/192.168.1.14-08f932c0' status is 'UNKNOWN'
Scheduling destruction of SIP dialog 'B4B8729BC507469587D683F82AF243070xc0a8010e' in 32000 ms (Method: INVITE)
trixbox1*CLI>
<--- Reliably Transmitting (NAT) to 192.168.1.14:5060 --->
SIP/2.0 603 Declined
Via: SIP/2.0/UDP 192.168.1.14;branch=z9hG4bKc0a8010e000001ee49db25e500007c7f000000a3;received=192.168.1.14;rport=5060
From: "unknown" <sip:192.168.1.14>;tag=36ddc4ccfb
To: <sip:03235879678@192.168.1.60>;tag=as345dd9a5
Call-ID: B4B8729BC507469587D683F82AF243070xc0a8010e
CSeq: 1 INVITE
User-Agent: X-PRO build 1101
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces
Contact: <sip:03235879678@192.168.1.60>
Content-Length: 0
----------------------------------------------------------------------------------------

Sip.conf
-----------------------------------------------------------------------------------------
[general]
context=default
dtmfmode=auto
allowoverlap=no
realm=Huawei.com
bindport=5060
bindaddr=0.0.0.0
dumphistory=yes
srvlookup=no
domain=huawei.com
useragent=X-PRO build 1101
usereqphone=yes
maxexpirey=180
qualify=yes
defaultexpirey=1800
nat=yes

disallow=all ; First disallow all codecs
allow=ulaw ; Allow codecs in order of preference
allow=alaw
allow=g729
allow=g723
;seragent=Linksys/PAP2T-3.1.15(LS)
useragent=eyeBeam release 3007n stamp 17816
;useragent=Motorola-IMS/3.1 807301148
;useragent=KZ Tech iSurf 1008 IAD
;useragent=WRTP54G-3.1.27
usereqphone = no ;
dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833
matchexterniplocally = yes ; Only substitute the externip or externhost setting if it matches



;[general]
;context=default ; Default context for incoming calls
;allowoverlap=no ; Disable overlap dialing support. (Default is yes)
;realm=Huawei.com ; Realm for digest authentication
;bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)
;bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
;srvlookup=yes ; Enable DNS SRV lookups on outbound calls
;domain=Hu ; Set default domain for this host
;maxexpirey = 120
;defaultexpirey = 120
;regseconds=120

;disallow=all ; First disallow all codecs
;allow=ulaw ; Allow codecs in order of preference
;allow=alaw
;allow=g729
;allow=g723
;useragent=Linksys/PAP2T-3.1.15(LS)
;useragent=eyeBeam release 3007n stamp 17816
;useragent=Motorola-IMS/3.1 807301148
;useragent=KZ Tech iSurf 1008 IAD
;useragent=WRTP54G-3.1.27
;usereqphone = no ;
;dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833
;matchexterniplocally = yes ; Only substitute the externip or externhost setting if it matches

;----------------------------------------- OUTBOUND SIP REGISTRATIONS ------------------------
registertimeout=20 ; retry registration calls every 20 seconds (default)
registerattempts=0 ; Number of registration attempts before we give up


register => xxxxxxx:yyyyyyy@10.215.11.250/xxxxxxx
register => xxxxxxx:yyyyyyy@10.215.11.250/xxxxxxx
register => xxxxxxx:yyyyyyy@10.215.11.250/xxxxxxx
register => xxxxxxx:yyyyyyy@10.215.11.250/xxxxxxx


[authentication]
auth = xxxxxxx@Huawei.com:yyyyyyyy
auth = xxxxxxx@Huawei.com:yyyyyyyy
auth = xxxxxxx@Huawei.com:yyyyyyyy


;----------------------------------------- NAT SUPPORT ------------------------
;externip = 10.131.66.7 ; Address that we're going to put in outbound SIP
;externip = 78.129.223.169

localnet=192.168.0.0/255.255.0.0; All RFC 1918 addresses are local networks

autodomain=no ; Turn this on to have Asterisk add local host
fromdomain=huawei.com ; When making outbound SIP INVITEs to


[xlite1]
type=friend
secret=blah
callerid="Jane Smith" <5678>
host=dynamic ; This device needs to register
nat=yes ; X-Lite is behind a NAT router
canreinvite=no ; Typically set to NO if behind NAT
fromdomain=huawei.com
Host=huawei.com
disallow=all
allow=ulaw
allow=alaw
allow=g729
allow=gsm ; GSM consumes far less bandwidth than ulaw
context=default


;---------------- TRUNKS -------------------

[192.168.1.14]
type=friend
context=default
host=192.168.1.14
canreinvite=no
disallow=all
allow=g729
allow=g723
allow=ulaw
allow=alaw
nat=yes


[xxxxxxx]
type=friend
secret=yyyyyyy
username=xxxxxxx@10.215.11.250
fromuser=xxxxxxx
fromdomain=huawei.com
host=huawei.com
defaultip=192.168.1.14
context=sip
userregphone=yes
outboundproxy=10.215.11.250
port=5060
regseconds=10

[xxxxxxx]
type=friend
secret=yyyyyyy
username=xxxxxxx@10.215.11.250
fromuser=xxxxxxx
fromdomain=huawei.com
host=Huawei.com
userregphone=yes
outboundproxy=10.215.11.250
port=5060
regseconds=10


[xxxxxxx]
type=friend
secret=yyyyyyy
username=xxxxxxx@10.215.11.250
fromuser=xxxxxxx
fromdomain=huawei.com
host=Huawei.com
userregphone=yes
outboundproxy=10.215.11.250
port=5060
regseconds=10
-----------------------------------------------------------------------------
extensions.conf
-----------------------------------------------------------------------------
[general]
static=yes
writeprotect=no
clearglobalvars=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo


[default]
exten => _X.,1,agi,d.pl
exten => _X.,3,Hangup
exten => 99999,1,Dial(SIP/0218010094/92214321901)
exten => 99999,2,Hangup
---------------------------------------------------------------------------------
Agi-script
---------------------------------------------------------------------------------

#!/usr/bin/perl



use Asterisk::AGI;

use DBI;

use DBD::Pg;

use POSIX;



sub logger ($) {

$AGI->verbose("@_", 1);

}



sub elogger ($) {

$AGI->verbose("@_", 1);

open(ERRLOG, '>>/var/log/deErr.log');

print ERRLOG "@_ \n";

close (ERRLOG);

}





$AGI = new Asterisk::AGI;

my %input = $AGI->ReadParse();



my $todial = "";

my $inputdid = $input{'dnid'};

$inputdid =~ s/^92/0/;

my $num_len = length($inputdid);

my $call_flag = 0;



if ( ($inputdid =~ /^03/) && ($num_len==11) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^02/) && ($num_len==10) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^04/) && ($num_len==10) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^05/) && ($num_len==10) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^06/) && ($num_len==10) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^07/) && ($num_len==10) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^08/) && ($num_len==10) )

{

$call_flag=1;

}

elsif( ($inputdid =~ /^09/) && ($num_len==10) )

{

$call_flag=1;

}

else

{

$call_flag=0;

}





if ($call_flag eq "1")

{





# Connect to Database

my $dsn = 'dbi:Pg:dbname=viz;host=127.0.0.1;';

my $dbh = DBI->connect($dsn, "", "");

if (!$dbh) {

elogger "error connecting to database ($inputdid) !";

$AGI->set_variable('hangup','1');

exit;

}



my $query2 = "select did from numbers where status=1 and activechan<maxchan and (now()-lasthit)> (interval '30 seconds') order by (now()-lasthit) desc limit 1";

my $xth = $dbh->prepare (qq {$query2});

$xth->execute();

my ($did) = $xth->fetchrow_array();

logger ("called: $inputdid, selected DID: $did");



if ($did)

{



my $vx1 = "update numbers set activechan=activechan + 1, lasthit=now() where did='$did'";

# logger ($vx1);

my $vx1_a = $dbh->prepare (qq { $vx1 });

$vx1_a->execute();

$vx1_a->finish();



$AGI->exec('Set',"CALLERID(ani)=$did");

$AGI->exec('Set',"CALLERID(name)=$did");

$AGI->exec('Set',"CALLEDTON=local");

$todial = "SIP/$did/$inputdid";

$AGI->exec('Dial',$todial);

my $answeredtime = $AGI->get_variable('ANSWEREDTIME');

$answeredtime = $answeredtime / 60;



my $vx2 = "update numbers set activechan=activechan-1, minstoday=minstoday + $answeredtime where did='$did'";

# logger ($vx2);

my $vx2_a = $dbh->prepare (qq { $vx2 });

$vx2_a->execute();

$vx2_a->finish();

}

else

{

logger ("All DIDs busy !");

}



$dbh->disconnect();



}

else

{

logger ("Invalid Called $inputdid Length: $num_len ");

}



exit;



sunnykhan
Newsterisk
 
Posts: 3
Joined: Fri Sep 26, 2008 5:18 am

Return to Asterisk Support

Who is online

Users browsing this forum: No registered users and 12 guests