[asterisk-bugs] [JIRA] (ASTERISK-21899) Q850 Reason not forwarded between call legs

Daren Pereira (JIRA) noreply at issues.asterisk.org
Tue Jun 11 16:07:05 CDT 2013


     [ https://issues.asterisk.org/jira/browse/ASTERISK-21899?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daren Pereira updated ASTERISK-21899:
-------------------------------------

    Attachment: Q850 Reason bug dirty bypass patch.rtf

Dirty patch to retrieve Reason code in a dialplan variable.

Dirty because no ideas on how to define a variable directly in the code.

Dirty because as storesipcause it should be resources hungry...
                
> Q850 Reason not forwarded between call legs
> -------------------------------------------
>
>                 Key: ASTERISK-21899
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-21899
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/chan_sip/General
>    Affects Versions: 1.8.22.0
>         Environment: debian squeeze / linux
>            Reporter: Daren Pereira
>            Severity: Minor
>         Attachments: Q850 Reason bug dirty bypass patch.rtf, Q850 Reason bug.rtf
>
>
> We all know that SIP is not as precise as ISUP with reason of the call failure.
> For example, there are no differences between
> UNALLOCATED 1
> NO_ROUTE_DESTINATION 3
> They are all treated as "404 Not Found", that might be a big problem when running with a gateway connected to SS7 and for the one you need precise "Release Cause".
> We normally can use Q850 with "use_q850_reason" in sip.conf but i discovered a problem in the forwarding of the Q850 value.
> The value is simply dropped and replaced by the "not enough precise" HANGUPCAUSE
> See the attached SIP/DIALPLAN debug. You'll see the :
> Using Reason header for cause code: 3
> and on the other leg
> Reason: Q.850;cause=1
> The problem is, except if i missed it in all researchs i've made, there is no way to recover the Q850 value in a DIALPLAN variables.
> There is the "storesipcause" but it stores the "SIP 404 Not Found" message, not the causecode.
> So this ticket is in a way an issue, in a way a improvement to make.
> To bypass the problem, i made a dirty patch to chan_sip.c
> Instead of doing a MASTER_CHANNEL(HASH(SIP_CAUSE,[chan_name])) when "storesipcause" is set, I define a Q850 variable containing the code.
> Thank you for your comments.
> Regards

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.asterisk.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list