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

Geert Van Pamel (JIRA) noreply at issues.asterisk.org
Thu Sep 12 16:29:03 CDT 2013


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

Geert Van Pamel updated ASTERISK-17179:
---------------------------------------

    Description: 
This problem exists in ALL versions of Asterisk.

Asterisk seems *not* to support RFC 3966 TEL URI for INCOMING INVITEs. X-Lite and other clients like Bria are compliant with RFC 3966.

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

Actually I found out that Asterisk is indeed not conform to the RFC 3966 standard.

I have solved the problem by patching chan_sip.c and reqresp_parser.c -- see patch in code attachments.


I have changed the following functions:

* check_user_full
* get_destination
* parse_uri OR parse_uri_full (depending on the Asterisk version)

When ;phone-context= is provided in the incoming tel:uri then we can extract the calling number for further call handling.

Now IMS and Asterisk are talking to each other without problems.

More information:

http://forums.digium.com/viewtopic.php?f=1&t=76432&sid=6d53062361c22079757c53ccc73d3132

  was:
This problem exists in ALL versions of Asterisk.

Asterisk seems *not* to support RFC 3966 TEL URI for INCOMING INVITEs. X-Lite and other clients like Bria are compliant with RFC 3966.

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

Actually I found out that Asterisk is indeed not conform to the RFC 3966 standard.

I have solved the problem by patching chan_sip.c and reqresp_parser.c -- see patch in code attachments.


I have changed the following functions:

* check_user_full
* get_destination
* parse_uri OR parse_uri_full (depending on the Asterisk version)

When ;phone-context= is provided in the incoming tel:uri then we can extract the calling number for further call handling.

Now IMS and Asterisk are talking to each other without problems.

More information:

http://forums.digium.com/viewtopic.php?f=1&t=76432&sid=6d53062361c22079757c53ccc73d3132

    
> [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: Improvement
>          Components: Channels/chan_sip/Interoperability
>    Affects Versions: 11.5.1
>         Environment: All platforms
>            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-11.5.1-chan_sip-diff.txt, asterisk-11.5.1-reqresp_parser-diff.txt, asterisk-1.6.2.7-sip_chan.dif, asterisk-1.8.13.1-chan_sip-diff.txt, asterisk-1.8.13.1-reqresp_parser-diff.txt, 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 exists in ALL versions of Asterisk.
> Asterisk seems *not* to support RFC 3966 TEL URI for INCOMING INVITEs. X-Lite and other clients like Bria are compliant with RFC 3966.
> 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
> Actually I found out that Asterisk is indeed not conform to the RFC 3966 standard.
> I have solved the problem by patching chan_sip.c and reqresp_parser.c -- see patch in code attachments.
> I have changed the following functions:
> * check_user_full
> * get_destination
> * parse_uri OR parse_uri_full (depending on the Asterisk version)
> When ;phone-context= is provided in the incoming tel:uri then we can extract the calling number for further call handling.
> Now IMS and Asterisk are talking to each other without problems.
> More information:
> http://forums.digium.com/viewtopic.php?f=1&t=76432&sid=6d53062361c22079757c53ccc73d3132

--
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