Jump to: navigation, search

Sending Outgoing INVITEs with Multipart Body

SIP Server now supports passing geo-location information formed by the routing strategy in the multi-part body of the outgoing INVITE message. The new functionality is triggered from the routing strategy by adding two key-value pairs to the AttributeExtensions: SIP_MIME_HEADERS and Geolocation:

  • The SIP_MIME_HEADERS extension key consists of the following parameters separated by a colon (see mapping examples):
    • The name of the extension key containing an actual payload to be included in the outgoing INVITE body. The current supported extension key for this feature is Geolocation.
    • The content type for this payload, one of the IANA-registered MIME types. The current supported content type for this feature is application/pidf+xml.
  • The value of the Geolocation extension key will be included as the body of the outgoing multipart INVITE message. No format check, no re-encoding and no other modifications to payload are made by SIP Server; the payload is included in the INVITE body as is.

SIP Server generates an outgoing INVITE message using the information provided in the two extensions described above, as specified by RFC 6442.

The feature can be triggered on any calls routed to the external number.

AttributeExtensions

Key: SIP_MIME_HEADERS
Type: String
Values: Geolocation:application/pidf+xml
Requests: TRouteCall

Passes geolocation content from TRouteCall into an outgoing INVITE message.


Key: Geolocation
Type: String
Requests: TRouteCall

Carries geolocation content of the body to be included into an outgoing INVITE message.

Mapping Examples

Example of TRouteCall

RequestRouteCall
AttributeThisDN '5002'
AttributeConnID 22660268d90ab001
AttributeOtherDN    '22002'
AttributeRouteType  1   (RouteTypeDefault)
AttributeReferenceID    10
AttributeExtensions
  ‘SIP_MIME_HEADERS’       ‘Geolocation:application/pidf+xml’
  ‘Geolocation’            ‘<?xml version="1.0" encoding="UTF-8"?>
                            <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10" xmlns:gml="http://www.opengis.net/gml" entity="pres:point2d@example.com">
                            <tuple id="22c0e6a14348456597c8f02b5915a29b">
                            <status>
                            <gp:geopriv>
                            <gp:location-info>
                            <gml:Point srsName="urn:ogc:def:crs:EPSG::4326" xmlns:gml="http://www.opengis.net/gml">
                            <gml:pos>43.6198128 -70.2696997</gml:pos>
                            </gml:Point>
                            </gp:location-info>
                            </gp:geopriv>
                            </status>
                            <timestamp>2015-07-16T13:07:06Z</timestamp>
                            </tuple>
                            </presence>


Example of the corresponding outgoing INVITE

INVITE sip:22002@192.168.73.38:63081 SIP/2.0
From: <sip:msml=5593f1ad00000001@UTE_HOME:11001>;tag=CE972381-9AD5-46EA-B8E9-43E45959890D-13
To: <sip:5002@UTE_HOME:11001>
Call-ID: 6FE4A45E-37B2-468B-B618-8A9D41F5B751-8@UTE_HOME
CSeq: 1 INVITE
Via: SIP/2.0/UDP UTE_HOME:11001;branch=z9hG4bKD0725BBB-9A0A-4A89-981C-163DBD1F47A9-16
Contact: <sip:SVC_Mediaserver@UTE_HOME:11001>
X-Genesys-CallInfo: routed
Allow: ACK, BYE, CANCEL, INFO, INVITE, MESSAGE, NOTIFY, OPTIONS, PRACK, REFER, UPDATE
Max-Forwards: 69
X-Genesys-CallUUID: UQS8MJGDDD0KD8IKDCUQC17F20000001
Session-Expires: 1800;refresher=uac
Min-SE: 90
Supported: geolocation,timer
Geolocation: cid:1430852104988
Content-Type: multipart/mixed; boundary=845F3842_73B5_48B3_AC8A_15B65DA517FA
Content-Length: 947
   
--845F3842_73B5_48B3_AC8A_15B65DA517FA
Content-Type: application/sdp
   
v=0
o=PhoneSimulator 1 1 IN IP4 192.168.73.29
s=incoming INVITE
c=IN IP4 192.168.73.29
t=0 0
m=audio 63209 RTP/AVP 0
a=rtpmap:0 PCMU/8000/1
   
--845F3842_73B5_48B3_AC8A_15B65DA517FA
Content-Type: application/pidf+xml
Content-ID: 1430852104988
   
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10" xmlns:gml="http://www.opengis.net/gml" entity="pres:point2d@example.com">
<tuple id="22c0e6a14348456597c8f02b5915a29b">
<status>
<gp:geopriv>
<gp:location-info>
<gml:Point srsName="urn:ogc:def:crs:EPSG::4326" xmlns:gml="http://www.opengis.net/gml">
<gml:pos>43.6198128 -70.2696997</gml:pos>
</gml:Point>
</gp:location-info>
</gp:geopriv>
</status>
<timestamp>2015-07-16T13:07:06Z</timestamp>
</tuple>
</presence>
 
--845F3842_73B5_48B3_AC8A_15B65DA517FA--
This page was last modified on September 9, 2015, at 11:45.

Feedback

Comment on this article:

blog comments powered by Disqus