Table of Contents | ||||
---|---|---|---|---|
|
...
Some of these objects also support customizable softkeys that are declared as an independent object.
How does it work?
Htek has developed the XML browser capability on the phone using the HTTP transport protocol.
You can press the predefined key to trigger the phone initiated application of XML browser. After pressing the key, the IP phone issues an HTTP(s) GET command to the server, waits for the answer, decodes and displays the answer on the LCD screen.
.
...
Figure1: Htek IP Phone as a client
...
TextMenu object allows users to display a list of menu items on IP phones.
TextMenu XML example:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<TextMenu defaultIndex="1" style="number" Beep="yes" wrapList="yes" Timeout="45"> <Title wrap="yes" >MenuTitle</Title> <MenuItem> <Prompt>First Menu item</Prompt> <URI> HTTP(s) URL </URI> <Dial>number</Dial> <Selection>selection</Selection> </MenuItem> <SoftKey index="1"> <Label>Select</Label> <URI>SoftKey:Select</URI> </SoftKey> <SoftKey index="2"> <Label>Custom</Label> <URI>HTTP(s) URL</URI> </SoftKey> <SoftKey index="4"> <Label>Exit</Label> <URI>SoftKey:Exit</URI> </SoftKey> </TextMenu> |
The parameters of the TextMenu object are listed in the following table:
Parameter | Type | Value | Description | |||||
TextMenu | mandatory | none | The root element of the TextMenu. | |||||
defaultIndex | optional | Integer | Position of the cursor to enter into the menu interface. If not specified, the cursor is positioned on the first menu item. Default value is 1. | |||||
style | optional | "number" | MenuType: | |||||
Beep | optional | "yes" | Whether to play a tone when entering into the menu. | |||||
wrapList | optional | "yes" | Whether to display the title specified by the Prompt parameter | |||||
Timeout | optional | "integer" | If the user has no operation at a fixed interval, the phone will automatically exit the menu interface. Default value is 45s. | |||||
Title | mandatory | string | The content of the menu item. | |||||
wrap | optional | "yes" | Whether to display the title in multi-lines when the content of the title is longer than one line. | |||||
MenuItem | mandatory | none | The element of menu item.(Up to 30 instance, minimum is 1) | |||||
Prompt | mandatory | string | The label of menu item, its display is controlled by "wrapList". | |||||
URI | mandatory | URI | The operation of menu item. | |||||
Dial | optional | Phone number | The phone will dial out the number by an off-hook action with the cursor on this menu item. | |||||
Selection | optional Anchor | | OLE_LINK11 | OLE_LINK11 | ||||
Anchor | OLE_LINK12 | OLE_LINK12string | If the URI of softkey is the HTTP server address, it will send a request with the "selection=the parameter" | |||||
---|---|---|---|---|---|---|---|---|
SoftKey | optional | XML object | Support "Exit", "Select", "Next", "Previous" |
...
An example of the TextMenu object:
<?xml version="1.0" encoding="ISO-8859-1"?> <TextMenu defaultIndex="1" style="number" Beep="yes" wrapList="yes" Timeout="45" |
...
> <Title wrap="yes">TextMenu</ |
...
Title> <MenuItem> <Prompt>TextScreen</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/TextScreen. |
...
xml> <Dial></Dial> <Selection>0&menu_pos=1</Selection> </ |
...
MenuItem> <MenuItem> <Prompt>Directory</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/Directory. |
...
xml> <Dial>101</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>Status</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/Status. |
...
xml> <Dial>102</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>Execute</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/Execute. |
...
xml> <Dial>103</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>FormattedTextScreen</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/FormattedTextScreen. |
...
xml> <Dial>104</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>InputScreen</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/InputScreen. |
...
xml> <Dial>105</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>ImageScreen</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/ImageScreen. |
...
xml> <Dial>106</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>Configuration</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/Configuration. |
...
xml> <Dial>107</Dial> <Selection></Selection> </ |
...
MenuItem> <MenuItem> <Prompt>ImageMenu</Prompt> |
...
<URI>http://192.168.0.106/xml_browser/ImageMenu. |
...
xml> <Dial>107</Dial> <Selection></Selection> </ |
...
MenuItem> <SoftKey index="1"> <Label>Select</Label> <URI>SoftKey:Select</URI> </ |
...
SoftKey> <SoftKey index="2"> <Label>Custom</Label> |
...
<URI>http://192.168.0.106/xml_browser/TextScreen. |
...
xml> </ |
...
SoftKey> <SoftKey index="4"> <Label>Exit</Label> <URI>SoftKey:Exit</URI> </ |
...
SoftKey> </TextMenu> |
The screenshot of the UC924 phone user interface for reference is shown as below:
...
The TextScreen object allows users to display some texts on the IP phones.
XML description of the TextScreen object:
<?xml version="1.0" encoding="ISO-8859-1"?> <TextScreen Timeout="15"> <Title>Title name</Title> <Text>Text contents </Text> </TextScreen> |
The parameters of the TextScreen object are listed in the following table:
Parameter | Type | Value | Description |
Timeout | optional | "integer" | If there is no operation at a fixed interval on the phone, the phone will automatically exit the TextScreen interface. |
Title | mandatory | string | The title of the screen text. |
Text | mandatory | string | The content of the screen text. |
...
An example of the TextMenu object:
<?xml version="1.0" encoding="ISO-8859-1"?> <TextScreen Timeout="15"> <Title>1 ESPN and Associated Press Sports Headlines</Title> <Text>Stewart sits race after hitting, killing racer (ESPN) Broncos LB Trevathan (knee) out 6-8 weeks (Jeff Legwold) Ballmer can run Clippers; NBA sues Sterling ( ) Sources: LeBron back to Miami for Christmas (Marc Stein) Failed test, ban humble Dallas' Scandrick (Tim MacMahon) Manning 'not a fan' as Broncos fight at camp (Jeff Legwold) Pettine: Hoyer 'absolutely not' expendable (Pat McManamon) Ex-Ohio St. QB Pryor 'wrong' for infractions (Terry Blount) </Text> </TextScreen> |
The screenshot of the UC924 phone user interface for reference is shown as below:
...
The Directory object allows users to browse an online directory in real time. The Directory object is just like are remote phonebook. It displays an automatically numbered list of contacts. After selecting a contact with the cursor, the contact can be dialed directly by pressing the "Dial" softkey.
XML description of the Directory object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<Directory defaultIndex="1" Beep="yes" Timeout="50"> <Title wrap="yes">Menu Title</Title> |
...
<MenuItem> <Prompt>Contact name</Prompt> <URI>number</URI> </MenuItem> </Directory> |
The parameters of the Directory object are listed in the following table:
...
An example of the Directory object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<Directory defaultIndex="1" Beep="yes" Timeout="50" |
...
> <Title wrap="yes">Directory</ |
...
Title> |
...
<MenuItem> <Prompt>nancy</Prompt> <URI>100</URI> </MenuItem> <MenuItem> <Prompt>max</Prompt> <URI>101</URI> </MenuItem> <MenuItem> <Prompt>vincent</Prompt> <URI>102</URI> </MenuItem> <MenuItem> <Prompt>simon</Prompt> <URI>103</URI> </MenuItem> |
...
<MenuItem> <Prompt>joe</Prompt> <URI> 105</URI> </MenuItem> <MenuItem> <Prompt>monica</Prompt> <URI>106</URI> </MenuItem> <MenuItem> <Prompt>nico</Prompt> <URI>107</URI> </MenuItem> </Directory> |
The screenshot of the UC924 phone user interface for reference is shown as below:
...
The Status object allows users to display a status message on a single designated line on the phone's idle screen when XML information is pushed from the servers. The Status object an remind users of received messages, missed calls, news, notify, etc.
XML description of the Status object:
<?xml version="1.0" encoding="ISO-8859-1"?> <PhoneStatus Beep="yes" SessionID="12" Timeout="30"> <Message Size="normal/small/double/large" Align="center/left/right" Color="red" Account="" Icon="">Message</Message> </PhoneStatus> |
The parameters of the Status object are listed in the following table:
Parameter | Type | Value | Description | |||||
PhoneStatus | mandatory | none | The root element of the Status. | |||||
Beep | optional | "yes" | Whether to play a tone when entering into the menu. | |||||
SessionID | optional Anchor | | OLE_LINK29 | OLE_LINK29 | ||||
Anchor | OLE_LINK30 | OLE_LINK30string | Session ID is used to mark different Status Objects. | |||||
---|---|---|---|---|---|---|---|---|
Timeout | optional | "integer" | If the user has no operation at a fixed interval, the phone will automatically exit the menu interface. Default value is 30s. | |||||
Message | optional | string | Message to be displayed or empty to reset the message. (Up to 10 instances.) | |||||
Size | optional | "normal" | Font size of the text. | |||||
Align | optional | "center" | Alignment of the message display. | |||||
Color | optional | "white" | Color of the line. | |||||
Account | optional | string | Specify the registered account for the status. | |||||
Icon | optional | Forward | Icon used to index status message |
An example of the Status object:
<?xml version="1.0" encoding="ISO-8859-1"?> <PhoneStatus Beep="yes" SessionID="12" Timeout="30" wrapList="no"> <Message Size="large" Align="left" Color="red" Account="" Icon="">Foward to 101</Message> <Message Size="large" Align="left" Color="white" Icon="Forward" >Foward to 102</Message> <Message Align="right" Color="blue" Icon="Forward" Account="">DND</Message> <Message Align="left" Color="red" Icon="Forward" Account="">Foward to 103</Message> </PhoneStatus> |
The screenshot of the UC924 phone user interface for reference is shown as below:
...
The Execute object allows an external application to ask the phone to execute a sequence of local commands using URIs. The phone will execute each specified command in order.
XML description of the Execute object:
<?xml version="1.0" encoding="ISO-8859-1"?> <PhoneExecute Beep="yes"> <ExecuteItem URI="URI "/> </PhoneExecute> |
The parameters of the Execute object are listed in the following table:
...
Commonly used commands:
Name | URI Value | Function |
Supported
| http(s)://myserver.com/ | Execute "TextMenu.xml" from the root directory on the server "myserver.com". |
| Dial:XXXXX | Dial out the number |
| Led:XXXX=on/off/slowflash/fastflash | Control the LEDs according to the commands |
Phone Reset | Command:Reset | Reset to the factory |
Phone Reboot | Command:Reboot | Phone Reboot |
Clear
| Command:ClearCallersList | Clear local call record list |
| Command:ClearDirectory | Clear contact list |
| Command:ClearRedialList | Clear placed calls list |
An example of the Execute object:
<?xml version="1.0" encoding="ISO-8859-1"?> <PhoneExecute Beep="yes"> <ExecuteItem URI="Led:MEMO5_GREEN=fastflash"/> <ExecuteItem URI="Led:LINE3=on"/> <ExecuteItem URI="Dial:860"/> </PhoneExecute> |
The IP phone enters into the phone Execute interface.
...
The FormattedTextScreen object allows IP phones to display formatted (alignment, size, color and scrolling) texts on the LCD screen.
XML description of the FormattedTextScreen object:
<?xml version="1.0" encoding="ISO-8859-1"?> <FormattedTextScreen Beep="yes" Timeout="60"> <Line Color="green">Header line1</Line> <Line Color="red" Align="right" Size="large">Header line2</ |
...
Line> <Scroll> <Line Size="large" Align="center">Scroll line1</Line> </ |
...
Scroll> <Line Size="large" Align="center" Color="white">Footer line1</Line> </FormattedTextScreen> |
The parameters of the FormattedTextScreen object are listed in the following table:
Parameter | Type | Value | Description | |||||
FormattedTextScreen | mandatory | none | The root element of the FormattedTextScreen | |||||
Beep | optional | "yes" | Whether to play a tone when entering into the menu. | |||||
Timeout Anchor | | OLE_LINK58 | OLE_LINK58 | |||||
Anchor | OLE_LINK59 | OLE_LINK59optional | "integer" | If the user has no operation at a fixed interval, the phone will automatically exit the menu interface. Default value is 60s. | ||||
---|---|---|---|---|---|---|---|---|
Line | mandatory | string | Text to be displayed on the line. If the length of the text is too long to be displayed on the LCD screen, the line will be cropped to the last word. The Header block can display two lines at most, and the Footer block can display only one line. | |||||
Size | optional | "normal" | Font size of the text. | |||||
Align | optional | "center" | Alignment of the message display. | |||||
Color | optional | "white" | Color of the line. | |||||
Scroll | optional | none | Define the scrolling content for display. The Line above the Scroll is as Header, under the Scroll is as Footer. |
...
An example of the FormattedTextScreen object:
<?xml version="1.0" encoding="ISO-8859-1"?> <FormattedTextScreen Beep="yes" Timeout="60" |
...
> <Line Color="green">Header line1</Line> <Line Color="red" Align="right" Size="large">Header line2</ |
...
Line> <Scroll> <Line Size="large" Align="center">Scroll line1</Line> <Line Align="right" Color="red">Scroll line2</Line> <Line Align="right" Color="green">Scroll line3</Line> <Line Size="large" Align="center">Scroll line4</Line> <Line Align="right" Color="red">Scroll line5</Line> <Line Align="right" Color="green">Scroll line6</Line> <Line Align="left" Color="blue">Scroll line7</Line> <Line Align="center" Color="blue">Scroll line8</Line> <Line Align="left" Color="yellow">Scroll line9</Line> <Line Align="center" Color="black">Scroll line10</Line> </Scroll> <Line Size="large" Align="center" Color="white">Footer line1</Line> </FormattedTextScreen> |
The screenshot of the UC924 phone user interface for reference is shown as below:
Note: The UC802/UC803/UC804/UC806 don't support the FormattedTextScreen Object.
...
The InputScreen object allows users to create a screen capable of gathering user input. It constructs and displays an input form, which prompts the users to input content, then sends the input content to the target URL. You can use Input Screen object for user login or saving some information to server. You can define the content and format of the input content.
XML description of the InputScreen object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<InputScreen type="string" Beep="yes" Password="no" Timeout="0" inputLanguage="English" displayMode = "normal" defaultIndex="2" > <Title wrap="yes">Menu Title</Title> <URL>Target receiving the input</URL> <InputField type="string" password="no" editable="yes"> <Prompt>Name</Prompt> <Parameter>parameter name add to URL</Parameter> <Selection>Selection</Selection> <Default>Default Value</Default> </InputField> </InputScreen> |
The parameters of the InputScreen object are listed in the following table:
Parameter | Type | Value | Description |
InputScreen | mandatory | none | The root element of the InputScreen |
Type | mandatory | "IP" | Data input options: |
Beep | optional | "yes" | Whether to play a tone when entering into the menu. |
Password | optional | "yes" | Whether to mask the input by "*" characters. Default value is "no". |
Timeout | optional | "integer" | If the user has no operation at a fixed interval, the phone will automatically exit the menu interface. Default value is 0s. |
inputLanguage | optional | "English" | The language of user input. |
displayMode | optional | "normal" | normal (default): |
defaultIndex | optional | integer | Position of the cursor. If the value is not specified or exceeds the number of input boxes, the cursor is positioned on the first input box. Default value is 2. |
Title | mandatory | string | The content of the menu item. |
wrap | optional | "yes" | Whether to display the title in multi-lines when the content of the title is longer than one line. |
URI | mandatory | URI | The operation of menu item. |
InputField | optional | none | Set several input boxes. |
editable | optional | "yes" | Whether to allow users to input something. Default value is "yes". Users can not input anything if it is set to "no". |
Prompt | mandatory | string | The label of menu item, its display is controlled by "wrap List". |
Parameter | mandatory | string | Name of parameter to be added after the URL. |
Selection | optional | string | If "URI" is set to an HTTP URL, the phone will send a request with "selection= xxx" when the user presses the "Select" soft key. |
Default | optional | string | Default value to be displayed |
...
An example of the InputScreen object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<InputScreen type="string" Beep="yes" Password="no" Timeout="0" inputLanguage="English" displayMode = "normal" defaultIndex="2" > <Title wrap="yes">Input Info</Title> <URL>http://192.168.0.106/xml_browser/Directory.xml</URL> <InputField type="number" password="no" editable="no"> <Prompt>User ID:</Prompt> <Parameter>userid</Parameter> <Selection>1QQQQ</Selection> <Default>21501</Default> </InputField> <InputField type="IP" password="no" editable="yes"> <Prompt>IP Address:</Prompt> <Parameter>IP</Parameter> <Selection>2</Selection> <Default>192.168.0.138</Default> </InputField> <InputField type="string" password="no" editable="yes"> <Prompt>Name:</Prompt> <Parameter>user</Parameter> <Selection>5QQQQ</Selection> <Default>jxz</Default> </InputField> <InputField type="string" password="yes" editable="no"> <Prompt>password:</Prompt> <Parameter>passwd</Parameter> <Selection>4</Selection> <Default>123456</Default> </InputField> </InputScreen> |
The screenshot of the UC924 phone user interface for reference is shown as below:
...
The ImageScreen object allows users to display simple image on the IP phones. The user can specify where the image should be placed by setting horizontal and vertical alignment of the upper left hand corner, along with the height and width of the image. But this Object is only applies to color IP Phone.
XML description of the ImageScreen object
<?xml version="1.0" encoding="ISO-8859-1"?> <ImageScreen Beep="yes" Timeout="45" mode="regular"> |
...
<Image horizontalAlign="middle" verticalAlign="bottom" >Image as hexadecimal characters or URL</Image> </ImageScreen> |
The parameters of the ImageScreen object are listed in the following table:
...
An example of the ImageScreen object:
<?xml version="1.0" encoding="ISO-8859-1"?> <ImageScreen Beep="yes" Timeout="45" mode="regular"> |
...
<Image horizontalAlign="middle" verticalAlign="bottom" >http://192.168.0.106/xml_browser/APDirIcon.png</Image> </ImageScreen> |
The screenshot of the UC924 phone user interface for reference is shown as below:
Note: The UC802/UC803/UC804/UC806 also support ImageScreen Object, but the image's depth must be 1bit.
...
The Configuration object allows an external application to modify configuration of the IP phones dynamically. The configuration parameters are ones that are used in configuration files.
XML description of the Configuration object
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<Configuration Beep="yes" > <Item> parameter= value</Item> </Configuration> |
The parameters of the Configuration object are listed in the following table:
...
An example of the Configuration object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<Configuration Beep="yes" > <P271 para="Account1.Active">1</P271> <P47 para="Account1.Sipserver">192.168.0.9</P47> <P20000 para="Account1.Lable">531</P20000> <P35 para="Account1.SipUserId">531</P35> <P36 para="Account1.AuthenticateID">531</P36> <P34 para="Account1.AuthenticatePassword">test11</P34> <P3 para="Account1.DispalyName">531</P3> </Configuration> |
The IP phone registers account 531 on line 1:
...
The ImageMenu object allows users to create an image list of menu items on the IP phones. The user can specify the image menu items to link HTTP requests.
XML description of the ImageMenu object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<ImageMenu Beep="yes" Timeout="120" mode="regular"> |
...
<Image verticalAlign="top" horizontalAlign="left"> HTTP(s) URL </Image> <URIList base="URL"> <URI key="0-9" or "#"> URL </URI> </URIList> </ImageMenu> |
The parameters of the ImageMenu object are listed in the following table:
...
An example of the ImageMenu object:
<?xml version="1.0" encoding="ISO-8859-1"?> <ImageMenu Beep="yes" Timeout="120" mode="regular"> |
...
<Image verticalAlign="top" horizontalAlign="left">http://192.168.0.106/xml_browser/ImageMenu.jpg</Image> <URIList base="http://192.168.0.106/xml_browser/"> <URI key="#">http://192.168.0.106/xml_browser/TextMenu.xml</URI> <URI key="0">http://192.168.0.106/xml_browser/Directory.xml</URI> <URI key="1">http://192.168.0.106/xml_browser/InputScreen.xml</URI> </URIList> </ImageMenu> |
The screenshot of the UC924 phone user interface for reference is shown as below:
...
Htek IP phones allow users to create softkeys with customizable labels, positions and actions o be taken when the softkeys is pressed. The customizable softkeys can override the default softkeys in each XML object.
XML descriptions of customizable softkeys :
<SoftKey index="2"> <Label>Custom</Label> <URI>URL</URI> </SoftKey> |
The parameters of the softkey are listed in the following table:
Parameter | Type | Value | Description | |||||
softkey | mandatory | none | The softkey | |||||
index | mandatory | Integer | Indicatethe softkey number. | |||||
Label | mandatory | string Anchor | | OLE_LINK106 | OLE_LINK106 | |||
Anchor | OLE_LINK107 | OLE_LINK107The label of the softkey. | ||||||
---|---|---|---|---|---|---|---|---|
URI | mandatory | string | The action of the softkey. |
An example of the customizable softkeys used with the TextMenu object:
<?xml version="1.0" encoding="ISO-8859-1"?> |
...
<TextMenu defaultIndex="1" style="number" Beep="yes" wrapList="yes" Timeout="45" LockIn="no" |
...
> <Title wrap="yes" >TextMenu</Title> <MenuItem> <Prompt>TextScreen</Prompt> <URI>http://192.168.0.106/xml_browser/TextScreen.xml</URI> <Dial></Dial> |
<Selection>0&menu_pos=1</Selection> </MenuItem> … |
<MenuItem> <Prompt>ImageMenu</Prompt> <URI>http://192.168.0.106/xml_browser/ImageMenu.xml</URI> <Dial>107</Dial> <Selection></Selection> </ |
...
MenuItem> <SoftKey index="1"> <Label>Select</Label> <URI>SoftKey:Select</URI> </ |
...
SoftKey> <SoftKey index="2"> <Label>Custom</Label> <URI>http://192.168.0.106/xml_browser/TextScreen.xml</URI> </ |
...
SoftKey> <SoftKey index="4"> <Label>Exit</Label> <URI>SoftKey:Exit</URI> </ |
...
SoftKey> </TextMenu> |
The screenshot of the IP phone user interface for reference is shown as below:
Configuration a HTTP server
Htek IP Phone support downloading by HTTP(s) protocol . You can setup a HTTP(s) server and place the XML files on the server for downloading.
We recommend using the XAMPP application.
Step 1: Double click the XAMPP Control Panel.exe.
Step 2: Click Config of Apache and click Apache (httpd.conf). Edit the name and port that the server uses to identify itself. Default port is 80. Edit the server's root directory. Default root directory is ../xampp/htdocs.
Step 3: Click Start of Apache. Put the XML files into the root directory of the HTTP server.
How to configuration the XML Browser via webpage?
Step 1: Log in the IP Phone's webpage
Step 2: Function keys->Line key (Memory key), select the XML Browser in Type field and input the XML Browser's URL in the value field.
Step 3: Click the "SaveSet" button to accept the change.
Step 4: Press the Line key 4, you can browse the XML content.