Developer’s Guide SoundPoint IP / SoundStation IP Attribute Value/s Description dir ltr (left to right) Sets the text direction rtl (left to right) lang language_code (Ex: EN, deu/ger, hin) Sets the language code xml:lang language_code (Ex: EN, deu/ger, hin) Sets the language code
This tag defines a table body. The thead, tfoot and tbody elements enable you to group rows in a table.
Application Development Attribute Value/s Description id unique_name Defines a unique name for the map tag.
Developer’s Guide SoundPoint IP / SoundStation IP The SoundPoint IP/SoundStation IP XML API is intended to provide developers with flexibility in developing applications on SoundPoint IP and SoundStation IP phones, while tightly integrating into the phone’s telephony capabilities and functions.
Application Development The supported actions are described in the following table: Action Default Action Name Description SoftKey:Home Home Moves to configured home page Softkey:Back Back Move to previous page Softkey:Exit Exit Exits Microbrowser SoftKey:Refresh Refresh Refreshes current page SoftKey:Fetch; Fetch Fetches the page from the given URI SoftKey:Reset Reset Clears all input fields in the form SoftKey:Submit Submit Submits the form Key:VolDown VolDown Decreases vo
Developer’s Guide SoundPoint IP / SoundStation IP Note The soft keys from the “Browser Active” and “Edit Active” soft key groups override any custom soft keys defined in the current XHTML. The soft keys from the “Browser Stop” soft key group appear if no custom soft keys are defined. The exact soft keys that appear vary between the SoundPoint IP and SoundStation IP phones. The following should be noted with respect to softkey tags: • All actions are case insensitive.
Application Development Note Internal URI actions contained in a file with content type “application/x-com-polycom-spipx” can be executed only through a URL push. The following format is supported: ActionType:Action where: • ActionType is a type of key or action to execute (Key, Softkey, Tel, or Play) • Action is the name of the action to be executed.
Developer’s Guide SoundPoint IP / SoundStation IP Action Type Action Description SoftKey Back The SoftKey URIs send the soft key press event to the phone. The phone processes this event as if the associated soft key had been physically pressed. These URIs function when the interactive Microbrowser is on the screen. Cancel Exit Submit Reset Refresh Tel Number;LineIndex The Tel URI initiates a new call to the specified number on the specified line.
Application Development For example, to create a link that behaves as if you pressed the Do Not Disturb key:
Click on the link to engage the DND feature DNDSettings Push Requests A push request is defined as a request that you send to a remote site asking for data to be sent to you.
Developer’s Guide SoundPoint IP / SoundStation IP The following table describes when to use a specific priority: Phone State Priority Description Idle State Critical The phone will display push request immediately. Normal The phone will display push request immediately. Critical The phone will display push request immediately. Normal The phone will keep push request in push queue. Once the phone is idle, the push request will be displayed.
Application Development Data Push The data push allows you to send messages in XHTML format to a specific phone.
Developer’s Guide SoundPoint IP / SoundStation IP • Set apps.push.password to the appropriate password. For example, apps.push.password=1234 Telephony Notification Events The phone can be configured to send information to a specific URI if one of the following telephony notification events occurs: • Incoming Call Event • Outgoing Call Event • Offhook Event • Onhook Event These events are XML data posted to web server by the phone’s Microbrowser. Changes must be made in the sip.
Application Development Attribute Value/s Description CallingPartyName name The name displayed in phone's "From" label in screen. CallingPartyNumber CalledPartyName CalledPartyNumber TimeStamp number name number time • If the line is registered and the call is initiated from that line, then the registered line display name of the calling party is shown.
Developer’s Guide SoundPoint IP / SoundStation IP When the telephone notification URI is set and the incoming call event is enabled to gather information, the following example shows the transmitted data for a call between two registered lines: 172.24.132.135 0004f214b89e 20701 20701@172.18.186.
Application Development Attribute Value/s Description CallingPartyNumber number • If the line is registered and the call is initiated from that line, the registered line number of the calling party is shown. • If the line is not registered and the call is initiated using IP address from that line, the IP address of the calling party is shown. CalledPartyName CalledPartyNumber TimeStamp name number time The name displayed at phone’s "To" name.
Developer’s Guide SoundPoint IP / SoundStation IP The following attributes are supported: Attribute Value/s Description Phone IP IP address IP address of the phone. For example, “172.24.128.160” MACAddress MAC address MAC address of the phone. For example, “0004f214b8e7” TimeStamp time The date and time that the event occurred on the phone.
Application Development • Set apps.telNotification.incomingEvent to 1 or 0 (for Enable or Disable respectively). For example, apps.telNotification.incomingEvent=1 • Set apps.telNotification.outgoingEvent to 1 or 0 (for Enable or Disable respectively). For example, apps.telNotification.outgoingEvent=1 • Set apps.telNotification.offhookEvent to 1 or 0 (for Enable or Disable respectively). For example, apps.telNotification.offhookEvent=1 • Set apps.telNotification.
Developer’s Guide SoundPoint IP / SoundStation IP Call Line Information The following format is supported: Active
Application Development Attribute Value/s Description CallingPartyName number If the line is registered, the value is the registered line display name. If the line is not registered, the value is the IP address of the calling party. CallingPartyDirNum number If the line is registered, the value is the registered line number. If the line is not registered, the value is the IP address of the calling party.
Developer’s Guide SoundPoint IP / SoundStation IP NotConnected 3 36 NotConnected Device Information The following format is supported: The following attrib
Application Development Network Configuration The following format is supported: 0004f214b8e7 172.24.128.160 255.255.255.0 172.24.128.1 172.21.6.218 0.0.0.
Developer’s Guide SoundPoint IP / SoundStation IP Phone State Polling Configuration Parameters The phone state polling configuration parameters in sip.cfg must be set as followed: • Set apps.statePolling.URL to the location where requested information should be sent. For example, apps.statePolling.URL=http://172.24.128.85:8080 If this URL is set to Null, the requested information will not be sent. • Set apps.statePolling.username to the appropriate username. For example, apps.statePolling.
Application Development HTTP Support The Microbrowser is a fully compliant HTTP/1.1 user agent: • It supports: — Cookies Note Cookies are stored in RAM, therefore they are not are not preserved when the phone reboots or is reconfigured. Cookies are not shared between the idle display Microbrowser and the main Microbrowser. — Refresh headers — HTTP proxies — HTTP over SSL/TLS — Self-signed or custom CA certificates • There are the following exceptions: — There is no sophisticated caching.
Developer’s Guide SoundPoint IP / SoundStation IP SoundPoint IP 430 SoundPoint IP 650 SoundPoint IP 501 SoundStation IP 4000 • An instance that does not support user input, but appears in a window on the idle display SoundPoint IP 430 SoundPoint IP 650 SoundPoint IP 501 SoundStation IP 4000 Launching the Microbrowser The first time the Applications key is pressed, the main Microbrowser loads the home page specified in the mb.main.home configuration parameter.
Application Development Whenever there is an event in the telephony application that requires the user's attention, the telephony application is brought to the foreground automatically. The Microbrowser can be displayed again by simply pushing the Applications key. While the Microbrowser application is not displayed, it is still active and pending transactions will complete in the background and be immediately visible when the browser is brought to the foreground.
Developer’s Guide SoundPoint IP / SoundStation IP Developing an XHTML Application Changing Configuration Parameters Create a new configuration file in the style of sip.cfg so that users will connect to your application when they press the Application key (or select the Application feature item). Note For more information on why to create another configuration file, refer to the “Configuration File Management on SoundPoint IP Phones” whitepaper at www.polycom.com/support/voice/ . Setting sec.
Application Development a Set apps.push.messageType to the appropriate display priority. For example, apps.push.messageType=3 b Set apps.push.serverRootURL to the application server root URL. For example, apps.push.serverRootURL=http://172.24.128.85:8080/sampleapps c Set apps.push.username to the appropriate username. For example, apps.push.username=bob The username and password are required to authenticate incoming push requests to the phone. d Set apps.push.password to the appropriate password.
Developer’s Guide SoundPoint IP / SoundStation IP b Set apps.statePolling.username to the appropriate username. For example, apps.statePolling.username=bob The username and password are required to authenticate incoming polling requests to the phone. c Set apps.statePolling.password to the appropriate password. For example, apps.statePolling.password=**** 12. Save your changes and close the XML editor. 13. Add the new file to the master configuration file’s CONFIG_FILES list in the appropriate order.
Application Development 2. Configure the Web server to serve the above XHTML file. For example, if you are using Apache Tomcat to try this example, then put this file into the webapps\PLCM folder of Tomcat. 3. Configure SoundPoint IP and SoundStation IP phones to point to the XHTML file in the sip.cfg configuration file. For this example, change mb.main.home to http:///PLCM/Sample.xhtml . 4. Reboot the phones. 5. On a SoundPoint IP phone, press the Applications (or Services) key.
Developer’s Guide SoundPoint IP / SoundStation IP 3. Write an application that is going to retrieve the stock information from a data service provider. For this example, this application will be retrieving stock information from Yahoo and will send it to the Microbrowser. This application is written using a Java Server Page (JSP). <%@page import="java.io.
Application Development 4. Configure the Web server to deploy the above JSP file. For example, if you are using Apache Tomcat to try this example, put this file into the webapps\PLCM folder of Tomcat. 5. Configure SoundPoint IP and SoundStation IP phones to point to the XHTML file in the sip.cfg configuration file. For this example, change mb.main.home to http:///PLCM/AddStock.xhtml . 6. Reboot the phones. 7. On a SoundPoint IP phone, press the Applications (or Services) key.
Developer’s Guide SoundPoint IP / SoundStation IP • After the customer clicks Send Request, the page shown below is pushed to the customer support agent’s phone. The customer support agent can call the customer by just pressing the Select key, because the highlighted link contains a Tel URI with the customer’s phone number. To develop an XML API application: 1. Using Microsoft Visual Studio, create a file called webcallback.aspx . <%@ Page Language="C#" AutoEventWireup="true" CodeFile="WebCallback.aspx.
Application Development