[asterisk-bugs] [JIRA] (ASTERISK-17179) [patch] IMS TEL URI incoming INVITE RFC 3966 not recognized

Geert Van Pamel (JIRA) noreply at issues.asterisk.org
Sun Jan 27 15:55:58 CST 2013


    [ https://issues.asterisk.org/jira/browse/ASTERISK-17179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=202260#comment-202260 ] 

Geert Van Pamel commented on ASTERISK-17179:
--------------------------------------------

Patch for *Asterisk 1.8.13.1* to implement incoming TEL URI INVITE RFC 3966 functionality.
This version is used by *Raspberry Pi* - *Raspbian* 7.0...

    Added "tel:" to the function *get_destination* in file channels/chan_sip.c; see attachment asterisk-1.8.13.1-chan_sip-diff.txt (4 code sections)
    Added "tel:" to the function *check_user_full* in file channels/chan_sip.c; see attachment asterisk-1.8.13.1-chan_sip-diff.txt (2 code sections)
    Added "phone-context" to the function *parse_uri_full* in file channels/sip/reqresp_parser.c; see attachment asterisk-1.8.13.1-reqresp_parser-diff.txt (1 code section)

                
> [patch] IMS TEL URI incoming INVITE RFC 3966 not recognized
> -----------------------------------------------------------
>
>                 Key: ASTERISK-17179
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-17179
>             Project: Asterisk
>          Issue Type: New Feature
>          Components: Channels/chan_sip/Interoperability
>            Reporter: Geert Van Pamel
>              Labels: INVITE, PATCH, RFC3966, RFC5341, SIP, TEL, URI
>         Attachments: asterisk_10.1.3_chan_sip_diff.txt, asterisk_10.1.3_reqresp_parser_diff.txt, asterisk-1.6.2.7-sip_chan.dif, chan_sip-asterisk_1.6.2.9-2ubuntu2.1-diff.txt, chan_sip-asterisk-1.6.2.9.txt, chan_sip-diff.txt
>
>
> This problem should also exist in version 1.8! Please verify & confirm.
> Asterisk seems *not* to support RFC 3966 TEL URI for incoming INVITE. X-Lite does.
> When an IMS server sends an incoming TEL URI INVITE I get the following errors, and the incoming call is disconnected (number busy).
> Here you find part of an (incoming) INVITE request and sip debug output:
> From: <tel:0987654321;phone-context=+32987654321>;tag=tag-etc
> CSeq: 1 INVITE
> P-Asserted-Identity: <tel:0987654321>
> P-Called-Party-ID: <sip:+3212345678 at ...>
> Diversion: <sip:+3212345678 at ...;user=phone>;reason="extension";privacy="off";counter=1
> Using INVITE request as basis request -
> Nov 13 17:52:05 NOTICE[27459]: chan_sip.c:6973 check_user_full: From address missing 'sip:', using it anyway
> Nov 13 17:52:05 WARNING[27459]: chan_sip.c:6525 get_destination: Huh? Not a SIP header (tel:0987654321;phone-context=+32987654321)?
> RDNIS is +3212345678
> SIP/2.0 404 Not Found
> I have solved the problem by patching chan_sip.c -- see rcsdiff -u below
> Actually I found out that Asterisk 1.6.1.20 is indeed not conform to the RFC 3966 standard.
> I have written a patch for Asterisk 1.6.1.20 chan-sip.c to support the TEL URI INVITE standard for incoming calls.
> I have changed the following functions:
> * parse_uri
> * check_user_full
> * get_destination
> Now IMS and Asterisk are talking to each other without problems.
> When there is no domain as with TEL INVITE we should set name to the calling number (I simply reversed dom and name in the original source for TEL INVITE leaving the domain blank). It was already suggested in the code that there is confusion with the RFC.
> More information:
> http://forums.digium.com/viewtopic.php?f=1&t=76432&sid=6d53062361c22079757c53ccc73d3132
> ****** ADDITIONAL INFORMATION ******
> <code removed>
> Please always add code as an attachment and mark as code.
> </code removed>

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list