Cisco Unified IP Phone Services Application Development Notes Supporting XML Applications Release 7.1(3) Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.
THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.
C O N T E N T S Preface vii Overview vii Revision History Audience vii vii Cisco Developer Support Program Organization vii viii Related Documentation ix Obtaining Documentation and Submitting a Service Request Cisco Product Security Overview Document Conventions i-ix x x CHAPTER 1 Overview CHAPTER 2 New and Changed Information 1-1 2-1 New Information for Cisco Unified Communications Manager 7.
Contents CiscoIPPhoneResponse 3-19 CiscoIPPhoneError 3-19 Custom Softkeys 3-19 XML Considerations 3-20 Mandatory Escape Sequences XML Encoding 3-21 Application Event Handlers CHAPTER 4 Component APIs 3-21 3-22 4-1 Application Management API 4-1 RTP Streaming API 4-1 Interaction Rules with Legacy RTP URI Streams RTP Streaming Schema 4-2 Error Schema 4-4 Examples 4-5 Errors and Responses 4-5 CHAPTER 5 Internal URI Features 4-2 5-1 Supported URIs by Phone Model 5-1 Device Control URIs 5-2 K
Contents Application Management URIs Init 5-16 Notify 5-16 Application 5-18 CHAPTER 6 5-16 HTTP Requests and Header Settings HTTP Client Requests (HTTP GET) 6-1 6-1 HTTP Server Requests (HTTP POST) 6-1 HTTP Header Settings 6-2 HTTP Refresh Setting 6-3 MIME Type and Other HTTP Headers 6-4 Audio Clips 6-4 Content Expiration Header Setting 6-4 Set-Cookie Header Setting 6-5 HTTP Encoding Header Setting 6-6 HTTP Response Headers: Content-Type Identifying the Capabilities of IP Phone Clients x-CiscoIPPho
Contents User Service Subscription CHAPTER 10 DeviceListX Report Benefits 9-4 10-1 10-2 Restrictions 10-2 Integration Considerations and Interoperability Performance and Scalability Security 10-2 10-2 10-3 Related Features and Technologies Supported Platforms Prerequisites 10-3 10-3 10-3 Message and Interface Definitions DeviceList XML Object 10-3 10-3 Troubleshooting DeviceListX Reports 10-4 Error Codes 10-4 Determining Problems With the Interface APPENDIX A CiscoIPPhone XML Object
Preface Overview Use this document with Cisco Unified Communications Manager, Release 7.1(3) to develop and deploy customized client services for the Cisco Unified IP Phones that support Cisco Unified Phone services. Because of the complexity of a Unified Communications network, this guide does not provide complete and detailed information for procedures that you need to perform in Cisco Unified Communications Manager or other network devices.
Preface formalized process provides access to CDN Engineers who are an extension of the product technology engineering teams. CDN Engineers have access to the resources necessary to provide expert support in a timely manner. The Cisco Developer Network Program is designed for businesses (IHV's and ISV's) interested in going to market with Cisco.
Preface Obtaining Documentation and Submitting a Service Request Chapter Description Chapter 9, “IP Phone Service Administration Describes how to add and administer and Subscription” Cisco Unified IP Phone Services through Cisco Unified Communications Manager Administration. Chapter 10, “DeviceListX Report” Describes how the report provides a list of the services-capable devices along with basic information about the device to identify or classify the devices based on specific criteria.
Preface Obtaining Documentation and Submitting a Service Request Cisco Product Security Overview This product contains cryptographic features and is subject to United States and local country laws governing import, export, transfer and use. Delivery of Cisco cryptographic products does not imply third-party authority to import, export, distribute or use encryption. Importers, exporters, distributors and users are responsible for compliance with U.S. and local country laws.
Preface Obtaining Documentation and Submitting a Service Request Timesaver Warning Means the described action saves time. You can save time by performing the action described in the paragraph. Means reader be warned. In this situation, you might perform an action that could result in bodily injury.
Preface Obtaining Documentation and Submitting a Service Request Cisco Unified IP Phone Services Application Development Notes xii OL-20949-01
CH A P T E R 1 Overview You can use Cisco Unified IP Phones to deploy customized client services with which users can interact via the keypad and display. Services deploy using the HTTP protocol from standard web servers. Users access these features using the services and directories buttons or menu options (availability varies by phone model). When a user presses the services button (or chooses the services menu item), a menu of configured services displays.
Chapter 1 Figure 1-2 Overview Graphic Menu on a Cisco Unified IP Phone Sample Phone users can navigate a text menu by using the Navigation button followed by the Select softkey, or by using the numeric keypad to enter a selection directly. Graphic menus currently do not support cursor-based navigation; users simply enter a number using the DTMF keypad. When a menu selection is made, the Cisco Unified IP Phone acts on it by using its HTTP client to load a specific URL.
Chapter 1 Overview Note HTML Disclaimer: Phone service developers must take into consideration that the phone is not a web browser and cannot parse HTML. Although content is delivered to the phone through HTTP messages by using a web server, keep in mind that the content is not HTML. All content comes either as plain text or packaged in proprietary XML wrappers.
Chapter 1 Overview Cisco Unified IP Phone Services Application Development Notes 1-4 OL-20949-01
CH A P T E R 2 New and Changed Information This chapter gives details on the new and changed information in the XML service interface for the latest releases of Cisco Unified Communication Manager. New Information for Cisco Unified Communications Manager 7.1(3) The following are the updates made in the XML service interface for Cisco Unified Communication manager 7.1(3): • Support for the latest 9971, 9951, and 8961 series Cisco IP phones.
Chapter 2 New and Changed Information New Information for Cisco Unified Communications Manager 7.
CH A P T E R 3 CiscoIPPhone XML Objects The following sections describe the general behavior and use of XML objects: • Understanding Object Behavior • XML Object Definitions • Custom Softkeys • XML Considerations • Application Event Handlers Understanding Object Behavior Creating interactive service applications is relatively easy when you understand the XML objects that are defined for Cisco Unified IP Phones and the behavior that each object generates.
Chapter 3 CiscoIPPhone XML Objects Understanding Object Behavior Table 3-1 shows the supported XML objects for this release. Table 3-1 XML Objects Supported for Release 7.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions XML Object Definitions The following sections provide definitions and descriptions of each CiscoIPPhone XML object: • CiscoIPPhoneMenu • CiscoIPPhoneText • CiscoIPPhoneInput • CiscoIPPhoneDirectory • CiscoIPPhoneImage • CiscoIPPhoneImageFile • CiscoIPPhoneGraphicMenu • CiscoIPPhoneGraphicFileMenu • CiscoIPPhoneIconMenu • CiscoIPPhoneIconFileMenu • CiscoIPPhoneStatus • CiscoIPPhoneStatusFile • CiscoIPPhoneExecute • CiscoIP
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions When a menu is loaded, the phone behaves the same as for built-in phone menus. The user navigates through the list of menu items and eventually chooses one by using either the Select softkey or the DTMF keys. After the user chooses a menu option, the phone generates an HTTP request for the page with the URL or executes the uniform resource identifiers (URIs) that are associated with the menu item.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions CiscoIPPhoneInput When a Cisco Unified IP Phone receives an XML object of type CiscoIPPhoneInput, it constructs an input form and displays it. The user then enters data into each input item and sends the parameters to the target URL. Figure 3-1 shows a sample display that is receiving input from a user.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions InputFlag Description A Plain ASCII text—use the DTMF keypad to enter text that consists of uppercase and lowercase letters, numbers, and special characters. T Telephone number—enter only DTMF digits for this field. The acceptable input includes numbers, #, and *. N Numeric—enter numbers as the only acceptable input. E Equation—enter numbers and special math symbols. U Uppercase—enter uppercase letters as the only acceptable input.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Note For the directory listing, the Cisco Unified IP Phone displays the appropriate softkeys that are needed to dial the numbers that are listed on the display. The softkeys include the Edit Dial softkey, which allows users to insert access codes or other necessary items before dialing. The Title and Prompt tags in the XML object have the usual semantics.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Number of bits per pixel Packed Pixel Data Name of the softkey URL of softkey Numerical position of the softkey Note The 6900 series IP phones does not display the Title and Prompt menu fields at the same time. If both Title and Prompt fields are defined at the same time, then these phones display only the Prompt field.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Example The following XML code defines a CiscoIPPhoneImage object that displays the sequence of pixels shown in Figure 3-3 as a graphic positioned at the center of the phone display: -1 -1 4 1 2 2D The graphic display comprises a contiguous stream of hexadecimal digits, with no space
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Table 3-2 Cisco Unified IP Phones Display Image Sizes and Color Depths (continued) Model Resolution1 Color/Grayscale (width x height) /Monochrome Color Depth (bits) Cisco Unified IP Phones 7945G, 7965G 298 x 156 Color 16 Cisco Unified IP Phone 7970G/7971G 298 x 168 Color 12 Cisco Unified IP Phone 7975G 298 x 168 Color 16 Cisco IP Communicator 298 x 168 Color 24 Cisco Unified IP Phones 6921, 6961 396 x 81 Monochrome — Cisco
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions CiscoIPPhoneGraphicMenu Graphic menus serve the same purpose as text menus: they allow a user to select a URL from a list. Use graphic menus in situations when the items may not be easy to display in a text list. For example, users might prefer to have their choices presented in a non-ASCII character set such as Kanji or Arabic. When using non-ASCII character sets, the system presents the information as a bitmap graphic.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Figure 3-5 shows the display of the CiscoIPPhoneGraphicFileMenu. Figure 3-5 CiscoIPPhoneGraphicFileMenu If the coordinates that are supplied in tag exceed the dimensions of the phone display, the rectangle will be “clipped” to fit. See Table 3-2, “Cisco Unified IP Phones Display Image Sizes and Color Depths” for a listing of usable display resolutions for each phone model.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Icons in the CiscoIPPhoneMenu object have a maximum width of 16 pixels and a maximum height of 10 pixels. Figure 3-6 shows an IconMenu on a Cisco Unified IP Phone. Figure 3-6 IconMenu on a Cisco Unified IP Phone Sample The system presents the information as a bitmap graphic to the left of the menu item text. The user selects menu items in the same way as a CiscoIPPhoneMenu object.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions CiscoIPPhoneIconFileMenu This icon menu is similar to CiscoIPPhoneMenu, but it uses color PNG icons rather than grayscale CIP icons. Use icon menus in situations when you want to provide additional visual information to the user to show the state or category of an item. For example, you can use icons to indicate priority (see Figure 3-7).
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions The Status object cannot be closed or cleared by the user (for example, by pressing Services) because the Status object is only present on the Call plane. In order to clear the object, the phone must execute the Init:AppStatus URI. This would typically occur as the result of an application server pushing an Execute object to the phone that contains the Init:AppStatus URI.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions The Application Status window contains three main areas: (see Figure 3-9): • Text Area • Timer Area • Image Area Figure 3-9 Note Elements of Application Status Window Self-terminating XML elements, non-declared or missing elements, and elements with the default values are all considered non-configured elements. To allow dynamic sizing, do not configure the Text and Timer areas with any value other than the default used by the XML parser.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Note The Cisco IP Phone models 9951, 9971, and 8961 does not support CiscoIPPhoneStatus object. See Table 3-1 on page 3-2 for information on XML objects supported on various phone models. See Table 3-4 for an overview of the text and timer area sizes by phone model.
Chapter 3 CiscoIPPhone XML Objects XML Object Definitions Note that instead of using the tag to embed the image data, this object uses a tag to point to the PNG image file to be used for the graphics area. CiscoIPPhoneExecute The CiscoIPPhoneExecute object differs from the other CiscoIPPhone objects. It is not a displayable object for providing user interaction. The purpose of this object is to deliver (potentially multiple) execution requests to the phone.
Chapter 3 CiscoIPPhone XML Objects Custom Softkeys CiscoIPPhoneResponse The CiscoIPPhoneResponse object items provide messages and information resulting from CiscoIPPhoneExecute . As a result, a ResponseItem exists for each ExecuteItems that you send. The order differs based on completion time, and the execution order is not guaranteed. The URL attribute specifies the URL or URI that was sent with the request.
Chapter 3 CiscoIPPhone XML Objects XML Considerations Note The tag can only contain Internal URIs—it cannot contain an HTTP URL. The “URL” in the name “URLDown” does not signify that an HTTP URL can be used.
Chapter 3 CiscoIPPhone XML Objects XML Considerations Note All CiscoIPPhone element names and attribute names are case sensitive. Mandatory Escape Sequences By XML convention, the XML parser also requires that you provide escape values for a few special characters. Table 3-5 lists characters and their escape values. .
Chapter 3 CiscoIPPhone XML Objects Application Event Handlers Application Event Handlers The Application Manager API (see “Application” section on page 5-18) includes an Application Management Event Handler which is supported by any displayable object, which are noted in the following table.
Chapter 3 CiscoIPPhone XML Objects Application Event Handlers Attribute Description appID Identifies the application to which this displayable XSI object belongs. The format of the appID attribute should be in the format vendor/product, such as Cisco/Unity, but this syntax is not enforced, and the application can assign any unique identifier.
Chapter 3 CiscoIPPhone XML Objects Application Event Handlers Event Handler Schema PAGE 43CH A P T E R 4 Component APIs In addition to the primary phone XSI API, two additional component APIs are available: • Application Management API, page 4-1 • RTP Streaming API, page 4-1 Application Management API To address the limited application management, the Application Management API provides a smoother hand-off between the call mode and the application mode.
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.
Chapter 4 Component APIs RTP Streaming API
Chapter 4 Component APIs RTP Streaming API PAGE 47Chapter 4 Component APIs RTP Streaming API Examples Start Media • Request HTTP POST /CGI/Execute audio G.729 sendReceive 239.1.2.
Chapter 4 Component APIs RTP Streaming API Applicable Methods HTTP Result Code Type Data Request object does not comply with the API’s XML schema all 400 (BadRequest) InfalidXML Media cannot be started because no DSP resources is available to handle the media startMedia 400 (BadRequest) Unavailable Resource No Media Resource Available Media cannot be stopped because the specified stream ID does not exist stopMedia 400 (BadRequest) InvalidResourceID Unknown Media S
CH A P T E R 5 Internal URI Features Internal uniform resource identifiers (URIs) provide access to embedded phone features such as placing calls, playing audio files, and invoking built-in object features.
Chapter 5 Internal URI Features Device Control URIs Table 5-1 URIs Supported for Release Cisco Unified IP Phone Services SDK (continued) 7920G 7921G 7925G 7940G 7960G 7941G/7941G-GE, 7961G/7961G-GE, 7942G, 7962G, 7945G, 7965G, 7970G IP 7971G-GE Communicator 7975G — X X — — — — — — X — X — X X — X — X — X — X X — X — X — X — X X — X 7905G 7912G 7906G 7911G 7931G Vibrate — 3 URI Notify SendDigits3 Application 3 6921, 6941, 6961 9971, 9951, 8961 1.
Chapter 5 Internal URI Features Device Control URIs Table 5-2 lists the Key URIs and the phone models in which these are supported.
Chapter 5 Internal URI Features Device Control URIs Table 5-2 Key URIs With Supported Phone Models 7920G 7921G 7925G 7940G 7960G 7941G/7941G-GE, 7961G/7961G-GE, 7942G, 7962G, 7945G, 7965G, 7970G IP 7971G-GE Communicator 7975G Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Key:FixedFeature 3 Yes Yes Yes Yes Yes Yes Yes Yes Yes Key:NavBack Yes Yes Yes Yes Yes Yes Yes Yes Yes Key:Release Yes Yes Yes Yes Yes Yes Yes Yes Yes 7905G 7912G
Chapter 5 Internal URI Features Device Control URIs Table 5-3 Unsupported Key URIs and Alternative Options Phone Models Unsupported URI 9971, 9951, 8961 Key:AppMenu The 8900 and 9900 series IP phones does not support the Key:AppMenu URI. All applications are accessed via their individual Key URIs like Applications, Contacts, and Messages. 9971, 9951, 8961 Key:Hold The 8900 and 9900 series IP phones does not support the Key:Hold URI.
Chapter 5 Internal URI Features XML Displayable Object URIs XML Displayable Object URIs These sections describe the XML displayable object URIs: • SoftKey • QueryStringParam SoftKey You can execute native softkey functionality when the phone executes a Softkey URI. The SoftKey URI allows developers to customize softkey names and layout in the Services and Directories windows while retaining the functionality that the softkeys provide.
Chapter 5 Internal URI Features XML Displayable Object URIs Table 5-4 Valid Softkey Actions for CiscoIPPhoneObject Types (continued) Edit Select Exit Update Submit Search << Cancel Next Dial Dial IPPhoneObject1 CiscoIPPhoneImage X X CiscoIPPhoneGraphicMenu X X CiscoIPPhoneInput X X2 X CiscoIPPhoneDirectory X X X X3 X3 1. The SoftKey URI is not allowed in an Execute object. 2. Only when used under the Directories button. 3.
Chapter 5 Internal URI Features XML Displayable Object URIs Delete http://server/delete.asp Example 5-1 shows how to use the QueryStringParam URI in a CiscoIPPhoneMenu object. The CiscoIPPhoneMenu object includes two MenuItems with QueryStringParam URIs. If the user chooses the MenuItem(s) with the numeric keypad, the cursor moves to that entry, but nothing executes because the values are QueryStringParam URIs.
Chapter 5 Internal URI Features Multimedia URIs Multimedia URIs These sections describe the multimedia URIs: • RTP Streaming • Play • Vibrate RTP Streaming You can invoke RTP streaming via URIs in services. You can instruct the phone to transmit or receive an RTP stream with the following specifications: Note • RTPRx • RTPTx • RTPMRx • RTPMTx For some Cisco Unified IP Phone models, the RTP Streaming URIs have been deprecated by the RTP Streaming API.
Chapter 5 Internal URI Features Multimedia URIs The user has no explicit mechanism for terminating the Rx URI stream independent of the call. Thus, if the Rx stream is not terminated automatically, it would continue to play. For example, a user is listening to Internet radio feed and gets an incoming call. The user answers the call, which either closes or minimizes the Internet radio XSI application. Otherwise, the user has no intuitive way to stop the music stream.
Chapter 5 Internal URI Features Multimedia URIs RTPTx Use the RTPTx URI to instruct the phone to transmit a Unicast RTP stream or to stop transmitting Unicast or Multicast RTP streams. URI Formats RTPTx:i:p RTPTx:Stop Where i = the IP Address to which an RTP stream is transmit ed. p = the UDP port on which to transmit the RTP stream. Ensure that this is an even port number within the decimal range of 20480 to 32768.
Chapter 5 Internal URI Features Multimedia URIs Play The Play URI downloads an audio file from the TFTP server and plays through the phone speaker. This same mechanism also plays ring files, and the format of the files is the same. You could use the Play URI to play files that are in the Ringlist.xml or those that are not. If the phone is equipped with an MWI light, it will be flashing while the audio file is playing, providing a visual alert as well. Note The Play URI is a synchronous request.
Chapter 5 Internal URI Features Telephony URIs URI Format Vibrate:vibrateDuration:silenceDuration:count Where vibrateDuration = duration (in milliseconds) in which the vibrate state remains on. Value must be an integer ranging from 0-65536 milliseconds. silenceDuration = duration (in milliseconds) in which the vibrate state remains off. Value must be an integer ranging from 0-65536 milliseconds. count = number of times to repeat the vibrate on and off sequence.
Chapter 5 Internal URI Features Telephony URIs useAppUI = Specifies whether or not this application will be used as the user interface for this call. A value of true will cause the application to keep UI focus when the call is made instead of switching to the Call UI application. The appId must be specified or this param will have no effect – it will always be false.
Chapter 5 Internal URI Features Telephony URIs Audible feedback to the user can be enabled or disabled and an optional application ID can be specified to ensure that the DTMF digits will only be sent to the call which is associated with a specific application. URI Format SendDigits:dtmfSequence:audibleFeedback::applicationId Where dtmfSequence = the sequence of DTMF digits to be sent.
Chapter 5 Internal URI Features Application Management URIs Condition Status Data Phone is temporarily unable to execute URI due to some other transient issue 6 (Internal error) Application Management URIs These sections describe the application management URIs: • Init • Notify • Application Init The Init URI allows an application to initialize a feature or data with the argument that is passed with the URI. URI Format Init:o Where o = the Object name.
Chapter 5 Internal URI Features Application Management URIs The Notify URI is not made in the context of an XSI application session and does not contain any HTTP cookie or session information. Thus, the back-end application cannot rely on HTTP cookies or session information to uniquely identify the client or application.
Chapter 5 Internal URI Features Application Management URIs HTTP POST /path/streamhandler?event=stopped HTTP/1.1 Accept: */* Authorization: Basic 8fh4hf7s7dhf Content-Type: application/x-www-form-urlencoded; charset=”UTF-8” Host: myserver:8080 Content-Length: 23 • Called from SoftKey, no credentials, no data Notify:http:server:8080:path/streamhandler?event=stopped HTTP POST /path/streamhandler?event=stopped HTTP/1.
Chapter 5 Internal URI Features Application Management URIs This prevents open, but not active, applications which are buried on the application “stack” from closing the entire application context which would also close the active application, potentially disrupting the user’s interaction with the application.
Chapter 5 Internal URI Features Application Management URIs • 0—Do immediately, even if user is interacting with the phone. This priority is unavailable if the Application URI is contained within an Application Management Event Handler (see the “Application Event Handlers” section on page 3-22). • 1—Do when user is done interacting with the phone. • 2—Do only if the user is not interacting with the phone.
CH A P T E R 6 HTTP Requests and Header Settings Cisco Unified IP Phones use HTTP to communicate to external applications. The phone firmware includes both an HTTP client for making requests, and an HTTP server for receiving requests. This chapter describes the capabilities of the HTTP interface.
Chapter 6 HTTP Requests and Header Settings HTTP Header Settings The form that is posted should have a case-sensitive form field name called “XML” that contains the desired XML object. For any HTTP POST operation, the server must provide basic HTTP authentication information with the POST. The provided credentials must be of a user in the global directory with a device association with the target phone.
Chapter 6 HTTP Requests and Header Settings HTTP Header Settings HTTP Refresh Setting The HTTP headers that are sent with any page from an HTTP server can include a Refresh setting. This setting comprises two parameters: a time in seconds and a URL. These two parameters direct the recipient to wait the time given in the seconds parameter and then get the data to which the URL points.
Chapter 6 HTTP Requests and Header Settings HTTP Header Settings MIME Type and Other HTTP Headers Although delivering pages with the proper MIME type and other formatting items is not difficult, it requires moderately in depth knowledge of your web server. The following code excerpt, written in JavaScript and used with Microsoft IIS and ASP, sets these values in a few lines: <%@ Language=JavaScript %> <% Response.AddHeader( "Refresh", "3; url=http://services.cisco.com/s/q.asp"); Response.
Chapter 6 HTTP Requests and Header Settings HTTP Header Settings This functionality allows you to make the content of any page that is sent to the phone expire. When a user presses the Exit softkey, the user goes back to the last URL that did not expire when it was loaded. This differs from traditional browsers by not considering the current freshness of the data but the freshness of the data when the URL was requested.
Chapter 6 HTTP Requests and Header Settings HTTP Header Settings HTTP Encoding Header Setting The encoding header controls language and character settings related to localization. Accept-Language Cisco Unified IP Phones populate the Accept-Language HTTP request header in compliance with the HTTP specification.
Chapter 6 HTTP Requests and Header Settings Identifying the Capabilities of IP Phone Clients If 'charset' is not specified, the phones will use the default encoding for the currently configured user locale. So to avoid possible problems where the phone's default encoding may NOT be ISO-8859-1, the web server should explicitly set the Content-Type charset (which must match one of the Accept-Charset values specified by the phone).
Chapter 6 HTTP Requests and Header Settings Accept Header x-CiscoIPPhoneSDKVersion This Cisco-proprietary header contains the version of the IP Phone Services SDK that the requesting phone supports. The HTTP header does not specify which URIs are supported. Therefore, you must check the “Supported URIs” matrix in the IP Phone Services SDK to determine which URIs are supported based on the Phone Model Name and supported SDK version.
Chapter 6 HTTP Requests and Header Settings Accessing IP Phone Information Accessing IP Phone Information Cisco Unified IP Phones have an embedded web server to provide a programming interface for external applications and a debugging and management interface for system administrators. You can access the administrative pages using a standard web browser and pointing to the IP address of the phone with: /http:///, where phoneIP is the IP address of the specific phone.
Chapter 6 HTTP Requests and Header Settings Accessing IP Phone Information Cisco Unified IP Phone Services Application Development Notes 6-10 OL-20949-01
CH A P T E R 7 Troubleshooting Cisco Unified IP Phone Service Applications This chapter contains the following sections: • Troubleshooting Tips • XML Parsing Errors • Error Messages Troubleshooting Tips The following tips apply to troubleshooting Cisco Unified IP Phone service applications: • Microsoft Internet Explorer 5 or higher can display the XML source with its default style sheet. • Understand that standard IP troubleshooting techniques are important for HTTP errors.
Chapter 7 Troubleshooting Cisco Unified IP Phone Service Applications Error Messages – CiscoIPPhoneMenu Object—If the field is missing for a
CH A P T E R 8 Cisco IP Phone Services Software Development Kit (SDK) The Cisco IP Phone Services Software Development Kit (SDK) contains everything that you require to create XML applications, including necessary documentation and sample applications. Contact Cisco Developer Services to obtain the SDK at: http://developer.cisco.
Chapter 8 Cisco IP Phone Services Software Development Kit (SDK) SDK Components • Development Tools – Cip.8bi—Adobe Photoshop plug-in that allows .cip extensions to be viewed and saved. – Cip2Gif.exe—DOS-based program that converts .cip files to .gif. – Gif2Cip.exe—DOS-based program that converts .gif files to .cip. – ImageViewer.exe—Windows application that displays .cip graphic files.
Chapter 8 Cisco IP Phone Services Software Development Kit (SDK) Sample Services Requirements – Speed Dials (JSP) – Group MWI (JSP) – AutoDialer (JSP) – PhotoDirectory (JSP) – CallerInfo (JSP) – PushAuthenticate (ASP) – ScreenShot (ASP) – Integrating RS-232 devices with IP Telephony Applications (OtherApps) – PNGViewer (ASP) – Keyboard (ASP) – MultiDirectory (ASP) – Phone Push Step and Subsystem (Cisco Unified Contact Center Express / CRS) Sample Services Requirements The following list contains the item
Chapter 8 Cisco IP Phone Services Software Development Kit (SDK) Sample Services Requirements Cisco Unified IP Phone Services Application Development Notes 8-4 OL-20949-01
CH A P T E R 9 IP Phone Service Administration and Subscription Cisco Unified Communications Manager administrators maintain the list of services to which users can subscribe. Administrators must use Cisco Unified Communications Manager Administration to add and administer Cisco Unified IP Phone services. Note This chapter provides just a brief overview about managing IP Phone services.
Chapter 9 IP Phone Service Administration and Subscription Adding a Phone Service Example http:///ccmuser/sample/sample.asp Where designates a fully qualified domain name or an IP address.
Chapter 9 IP Phone Service Administration and Subscription Defining IP Phone Service Parameters Table 9-1 IP Phone Service Configuration Settings (continued) Field Description Enable Select this check box to enable the service, or clear the check box to disable the service without deleting it. Note Enterprise Subscriptions You cannot delete default services. Use this field if a default service exists, but you do not want to make it available for subscription.
Chapter 9 IP Phone Service Administration and Subscription User Service Subscription Tip If you change the service URL, remove a Cisco Unified IP Phone service parameter, or change the Parameter Name of a phone service parameter for a phone service to which users are already subscribed, be sure to click Update Subscriptions to update all currently subscribed users with the changes. If you do not do so, users must resubscribe to the service to rebuild the URL correctly.
CH A P T E R 10 DeviceListX Report The DeviceListX Report is no longer supported as of Cisco Unified Communications Manager Release 5.0. Retrieving real-time information from Cisco Unified Communications Manager is now supported via the Cisco Unified Communications Manager AXL Serviceability API. The DeviceListX Report provides a list of the services-capable devices along with basic information about the device to identify or classify the devices based on specific criteria.
Chapter 10 DeviceListX Report Benefits • Device Pool • IP Address • Real-Time Information The completed list of data gets formatted into a simple XML object and gets returned in the HTTP Response to the developer. Benefits DeviceListX provides access to critical real-time data that was previously unavailable to third-party developers.
Chapter 10 DeviceListX Report Security Security This report, which is within the Cisco Unified Communications Manager Administration, inherits its security from that web site, so no security issues directly relate to this report. If the Cisco Unified Communications Manager Administration changes how it implements security with additions, such as SSL, this report benefits from that enhancement.
Chapter 10 DeviceListX Report Troubleshooting DeviceListX Reports Table 10-1 DeviceList XML Object Attributes Attribute Name Field Name Description t Device Type Numeric enumeration value that is specified in the database. n Device Name String value that specifies the device name. d Device Description String value that is specified in the database.
Chapter 10 DeviceListX Report Troubleshooting DeviceListX Reports Error Message 1001 Too many simultaneous requests for Device List. Please wait at least 60 seconds and try again. Explanation When two or more clients attempt to get the list at the same time, or if the list is long, overlapping requests can result (first request is processing when the second request attempts processing). Recommended Action Request information only as often as necessary.
Chapter 10 DeviceListX Report Troubleshooting DeviceListX Reports Cisco Unified IP Phone Services Application Development Notes 10-6 OL-20949-01
A P P E N D I X A CiscoIPPhone XML Object Quick Reference Table A-1 provides a quick reference of the CiscoIPPhone XML objects and the definitions that are associated with each.
Appendix A Table A-1 CiscoIPPhone XML Object Quick Reference CiscoIPPhone XML Object Quick Reference (continued) Object Definition CiscoIPPhoneImage Image title goes here Prompt text goes here Position information of graphic Position information of graphic Size information for the graphic Size information for the graphic Number of bits per pixel Packed
Appendix A Table A-1 CiscoIPPhone XML Object Quick Reference CiscoIPPhone XML Object Quick Reference (continued) Object Definition CiscoIPPhoneIconMenu Title text goes here Prompt text goes here Indicates what IconItem to display The name of each menu item The URL associated with the menu item A unique index from 0 to 9 Size information for the
Appendix A CiscoIPPhone XML Object Quick Reference Cisco Unified IP Phone Services Application Development Notes A-4 OL-20949-01
A P P E N D I X B Cisco Unified IP Phone Services XML Schema File These sections provide details about the XML schema supported on Cisco Unified IP Phones: • Updated XML Parser and Schema Enforcement • CiscoIPPhone.xsd Updated XML Parser and Schema Enforcement In order to provide a stable and consistent platform upon which to build enhancements to IP phones services, Cisco released an updated XML parser beginning with firmware release 8.3(2).
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.xsd CiscoIPPhone.xsd PAGE 101Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
Appendix B Cisco Unified IP Phone Services XML Schema File CiscoIPPhone.
I N D EX Cisco IP Phone Services Software Development Kit (SDK) Symbols components << softkey 5-6 8-1 development tools 8-2 sample services description Numerics 8-2 requirements 8961 8-3 CiscoIPPhone XML Objects Color depth CiscoIPPhoneDirectory 3-10 Resolution CiscoIPPhoneError 3-10 URIs supported XML Objects supported 2-1, 3-2 9951 Color depth Reolution 3-10 2-1, 3-2 9971 3-10 Resolution 3-11 CiscoIPPhoneIconFileMenu 3-14 XML Objects Supported 3-2 3-7 CiscoIPPhoneInput
Index client requests, using HTTP 6-1 content expiration, header setting cookie behavior F 6-4 featuers, supported 6-5 2-1 G D development tools, included with SDK 8-2 Key 3-11 graphics Device control URI Display graphic menus, creating displaying color images 5-5 3-9 displaying grayscale images 5-2 DeviceInformation PNG support 6-9 device information URLs 3-9, 3-14 using with status 6-9 3-7 3-14 DeviceList XML Object attributes 10-4 description DeviceListX Report DeviceLog
Index I S icon menus, creating Screenshot, CGI script color SDK.
Index tips 7-1 XML parsing errors 7-1 U uniform resource identifiers (URI) description 5-1 miscellaneous Dial 5-13 EditDial Init 5-14 5-16 Play 5-12 to control RTP streaming RTPMTx Update softkey 5-9 5-11 5-6 URI.