Chapter 4 Component APIs

RTP Streaming API

Interaction Rules with Legacy RTP URI Streams

The RTP Streaming API allows a full-duplex stream (mode=sendReceive) to be setup as a single stream request which simplifies the usage of the API. However, in some cases, this creates some interoperability issues with the legacy RTP URIs because the legacy RTP URIs send and receive streams separately. The interaction rules between legacy RTP URI streams and the new RTP Streaming API are as follows:

If an RTP Stop URI is invoked, and an RTP Streaming API stream is currently streaming in that same direction, then the entire RTP Streaming API stream is stopped.

For example, if a full-duplex stream is setup through the RTP Streaming API (mode=sendReceive) and then an RTPTx:Stop URI is invoked, the stream will be stopped in both the send and receive directions (and the onStopped event handler will be called, if present).

If the stopMedia request (from the RTP Streaming API) does not specify a stream ID, then the request will stop all services RTP streams, in any direction (send or receive) and of any type (multicast and unicast). This allows applications using the RTP Streaming API to stop media streams which may have been started by the legacy RTP URIs or by other applications for which a stream ID is not known.

RTP Streaming Schema

Note The port number parameter of the startMedia request is optional and if it is not specified, the phone selects an available port and returns it in the startMediaResponse object. The port parameter, if specified, must be an even number in the range of 20480-32768.

<?xml version="1.0" encoding="UTF-8"?>

<!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) by Cisco Systems, Inc. (Cisco Systems, Inc.) -->

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">

<xs:element name="startMedia">

<xs:complexType>

<xs:all>

<xs:element name="mediaStream" type="mediaStream"/>

</xs:all>

</xs:complexType>

</xs:element>

<xs:element name="stopMedia"> <xs:complexType>

<xs:all>

<xs:element name="mediaStream"> <xs:complexType>

<xs:attribute name="id" type="xs:string" use="optional"/>

</xs:complexType>

</xs:element>

</xs:all>

</xs:complexType>

</xs:element>

<xs:element name="startMediaResponse">

<xs:complexType>

<xs:all>

<xs:element name="mediaStream" type="mediaStream"/>

 

 

 

</xs:all>

 

 

 

</xs:complexType>

 

 

 

</xs:element>

 

 

 

<xs:element name="notifyMediaEvent">

 

 

 

Cisco Unified IP Phone Services Application Development Notes

 

 

 

 

4-2

 

OL-20949-01

 

 

 

 

Page 44
Image 44
Cisco Systems OL-20949-01 manual Interaction Rules with Legacy RTP URI Streams, RTP Streaming Schema