5-8
Cisco Unified IP Phone Services Application Development Notes
OL-20949-01
Chapter 5 Internal URI Features
XML Displayable Object URIs
<Name>Delete</Name>
<URL>http://server/delete.asp</URL>
</SoftKeyItem>
</CiscoIPPhoneMenu>
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.
If the user presses either custom softkey, the currently highlighted MenuItem URI value gets appended
to the softkey URL that was pressed and requested from the web server.
If you highlight the first MenuItem and press the Read softkey, the phone generates the following URL:
http://server//read.asp?message=1
Example 5-2 Selecting an Item with Numeric Keypad Calls the URL
<CiscoIPPhoneMenu>
<Title>Message List</Title>
<Prompt>Two Messages</Prompt>
<MenuItem>
<Name>Messae One</Name>
<URL>http://server/messages.asp?message=1</URL>
</MenuItem>
<MenuItem>
<Name>Messae Two</Name>
<URL>http://server/messages.asp?message=2</URL>
</MenuItem>
<SoftKeyItem>
<Name>Read</Name>
<Position>1</Position><URL>QueryStringParam:action=read</URL>
</SoftKeyItem>
<SoftKeyItem>
<Name>Delete</Name>
<Position>2</Position><URL>QueryStringParam:action=delete</URL>
</SoftKeyItem>
</CiscoIPPhoneMenu>
The Cisco Unified IP Phones allow you to implement the QueryStringParam URI in either manner
although Example 5-2 is not as efficient as Example 5-1. Choose the best way to perform the action
based on your applications needs.
Example 5-2 does have a slight advantage in that if the user chooses an item with the numeric keypad,
the URL gets called. This would allow you to invoke some default behavior such as to read the message
in the example. By highlighting the first message and pressing the Read softkey, the phone creates the
following URL: http://server/messages.asp?message=1&action=read
Using the QueryStringParam URI reduces the size of the XML objects that yo u ge nera te by not having
to repeat redundant portions of a URL in every MenuItem.