[Freeswitch-users] Freeswitch hangup cause code issue

Ankit Gandhi ahgindia308 at gmail.com
Fri Feb 6 00:57:07 PST 2009


Hello,
I want my caller to detect hangup cause as 34 so that he can try next
provider according to lcr.
Here is my setup.
Caller -> switch (fs) -> Terminator.
Now when terminator sends "503 Service Unavailable", I want to override this
cause, so that the caller gets hangup case 34. (According to the terminator
he is sending hangup cause 34 from his side, but in freeswitch we are
getting hangup cause 41 for that call and the same hangup cause on caller
side).
When I tried asterisk as caller, I get hangup cause 34 in that case. But
when I tried freeswitch as caller, then we are getting hangup cause 41, the
same as we are getting in switch (fs).
>From the switch, I tried one of this condition through javascript to
override the hangup cause before sending to caller:
-> session.execute("respond","503");
-> session.execute("hangup","NORMAL_CIRCUIT_CONGESTION");
-> session.execute("hangup","34");
-> session.hangup(34);
In all the above cases, asterisk properly detects the hangup cause 34, but
freeswitch does not detect that. It detects the same hangup cause 41 for the
call. Other callers also get the same hangup cause 41 for such calls.
How can I override this cause, so that the caller gets hangup cause 34 in
such cases?

Here is the sip trace, on the caller side returned through switch (fs).
ss = switch
cc = caller
--------------------------------------------------------------------
U ss.ss.ss.ss:5060 -> cc.cc.cc.cc:5080
SIP/2.0 503 Service Unavailable.
Via: SIP/2.0/UDP
cc.cc.cc.cc:5080;rport=5080;branch=z9hG4bK8HvDU4Z88KU5m;received=122.169.29.122.
From: "654321" <sip:654321 at cc.cc.cc.cc>;tag=8p7aF18aN0mSj.
To: <sip:123456 at ss.ss.ss.ss>;tag=Nj8ypjDyvKUXe.
Call-ID: fd1ab774-6ec5-122c-9fac-001cc086141d.
CSeq: 110835048 INVITE.
User-Agent: FreeSWITCH-mod_sofia/1.0.trunk-hacked.
Accept: application/sdp.
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, PRACK, MESSAGE, SUBSCRIBE, NOTIFY,
REFER, UPDATE, REGISTER, INFO, PUBLISH.
Supported: timer, precondition, path, replaces.
Allow-Events: talk, presence, dialog, call-info, sla,
include-session-description, presence.winfo, message-summary, refer.
Reason: Q.850;cause=34;text="NORMAL_CIRCUIT_CONGESTION".
Content-Length: 0.
-----------------------------------------------------------------------


-- 
View this message in context: http://www.nabble.com/Freeswitch-hangup-cause-code-issue-tp21868781p21868781.html
Sent from the Freeswitch-users mailing list archive at Nabble.com.





More information about the FreeSWITCH-users mailing list