How does it work? ......................4 Phone initiated application ..................4 Server initiated application ..................4 XML display control and keys on Yealink IP phones ..........5 Yealink IP Phone XML Objects ..........9 XML Object Definitions ....................9 TextMenu Object ....................10 TextScreen Object ....................
Page 4
XML Browser Developer’s Guide for Yealink IP Phones Status Object ......................46 Execute Object ....................... 51 Configuration Object ..................... 56 FormattedTextScreen Object ................57 ImageScreen Object ..................... 65 ImageMenu Object ....................71 Customizable Soft keys ..................... 78 XML Objects Pushed to the Phone ................81 Some Development Guidelines ................
Page 5
XML browser simply means that the SIP phones’ LCD screen display can be managed by external applications. This guide shows you how to use XML API to control the LCD screen display of Yealink IP phones as well as its configuration. The XML API is intended to provide you with flexibility in developing applications on the phones while tightly integrating into the phone’s telephony capabilities and functions.
Page 6
XML Browser Developer’s Guide for Yealink IP Phones This section describes the changes to this guide for each release and guide version. Documentations of the newly released CP860 and SIP VP-T49G IP phones have been added. Documentations of the newly released SIP-T40P IP phones have been added.
Page 7
About This Guide Documentations of the newly released SIP-T29G IP phones have also been added. Major updates have occurred to the following sections: XML display control and keys on Yealink IP phones on page Yealink IP Phone XML Objects on page ...
Page 8
Major updates have occurred to the following section: Yealink IP Phone XML Objects on page Major updates have occurred to the following sections: XML display control and keys on Yealink IP phones on page Yealink IP Phone XML Objects on page ...
Page 9
About This Guide Configuring the Block XML in Calling on page Major updates have occurred to the following section: Yealink IP Phone XML Objects on page ...
XML and Yealink IP Phones XML stands for extensible Markup Language. It is a markup language much like HTML. HTML is designed to display data and to focus on how data looks, while XML is designed to describe data and to focus on what data is.
Page 12
To respect XML recommendations, the following header can be set at the beginning of the XML document, <?xml version="1.0" encoding="ISO-8859-1"?> <?xml version="1.0" encoding="UTF-8"?> Yealink provides XML object files beginning with the XML declaration “<?xml version="1.0" encoding="ISO-8859-1"?>”. For more information on XML, refer to http://www.xml.com/.
Page 13
XML and Yealink IP Phones The XML browser feature on Yealink IP phones allows users to develop and deploy custom services which meet user functional requirements on the server. Users can customize practical applications, such as weather report, stock information, Google search, news service, etc.
XML Browser Developer’s Guide for Yealink IP Phones Depending on the IP infrastructure, Yealink has supported developing the XML browser capability of the phones using HTTP . Yealink IP phones support two modes for XML browser applications: Phone-initiated Server-initiated ...
Page 15
This chapter describes the available part of the LCD screen for each phone model of Yealink IP phones as well as the keys that are controlled by the XML objects. The LCD screen and keys available for XML applications on a Yealink SIP VP-T49G IP phone are: 16 text lines and 1 soft key line for the LCD screen ...
Page 16
The soft key line is a command line and will be used to display the labels of the available actions. The LCD screen and keys available for XML applications on a Yealink SIP-T48G IP phone are: 15 text lines and 1 soft key line for the LCD screen ...
Page 17
Depending on the XML object displayed on the phone, the X key can also be interpreted as a “cancel” key, and the OK key as a “confirm” key. The LCD screen and keys available for XML applications on a Yealink SIP-T27P IP phone are: 7 text lines and 1 soft key line for the LCD screen ...
Page 18
XML Browser Developer’s Guide for Yealink IP Phones available actions. Depending on the XML object displayed on the phone, the OK key as a “confirm” key.
Yealink SIP-T48G IP phones This section details each proprietary XML object supported by Yealink IP phones. You can ask the distributor or Yealink FAE for XML object files or obtain XML object files online: http://support.yealink.com/documentFront/forwardToDocumentFrontDisplayPage. Note The size of an XML object cannot exceed 10000 bytes (10 kb).
XML Browser Developer’s Guide for Yealink IP Phones The TextMenu object allows users to create a list of menu items on the IP phones. You can use the TextMenu object to customize some functions such as weather report, stock information, new services, etc. You can browse the menu items by linking HTTP requests.
Page 21
Yealink IP Phone XML Objects Parameter Position Type Value Description return to the previous screen, and keep in the same XML object after exit. Default value is “no”. Position of the cursor. If the value is not specified or exceeds the number...
Page 22
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description the phone will automatically exit from the TextMenu screen. If it is set to 0, the phone will not automatically exit from the TextMenu screen until pressing the “Exit”...
Page 23
Yealink IP Phone XML Objects Parameter Position Type Value Description next. Title Body mandatory string The title of the text menu. Whether to display the title of the menu in multi-lines when the content of the title is more than one line (up to 3 lines for SIP-T27 IP phones;...
Page 24
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description key or the off-hook key. Note: Picking up the handset or pressing the Speakerphone key is not applicable to CP860 IP phones. Pressing line key is not applicable to SIP-T19(P) E2/CP860 IP phones.
Page 25
Browse the menu item up and down. Up/Down Pressing the Note: Pressing the up/down key is not up/down key applicable to SIP VP-T49G IP phones. Turn pages. Left/Right Pressing the left/right Note: Pressing the left/right key is not applicable to SIP VP-T49G/CP860 IP phones.
Page 26
XML Browser Developer’s Guide for Yealink IP Phones Key Name Operation Function “yes”, the phone will be no response. Note: IP phones support one-digit number only. If you press the digit that exceeds the maximum of the menu items, the phone will be no response.
Page 27
The function of “OK/√” key is the same as that of “Select”. Pressing the “OK/√” OK/√ Key Note: Pressing the “OK/√” key is not applicable to SIP VP-T49G IP phones. An example of the TextMenu object: <?xml version="1.0" encoding="ISO-8859-1"?> <YealinkIPPhoneTextMenu style="numbered"...
Page 28
Pressing the Select soft key or OK key, the phone will call http://10.2.11.158/yealink/google/google.php?user=&selection=12345. The screenshot of the SIP-T23G IP phone user interface for reference is shown as below: The screenshot of the SIP VP-T49G IP phone user interface for reference is shown as below:...
Yealink IP Phone XML Objects The screenshot of the SIP-T48G IP phone user interface for reference is shown as below: The screenshot of the SIP-T46G IP phone user interface for reference is shown as below: The TextScreen object allows users to display some texts on the IP phones.
Page 30
XML Browser Developer’s Guide for Yealink IP Phones </YealinkIPPhoneTextScreen> The parameters of the TextScreen object are listed in the following table: Parameter Position Type Value Description YealinkIPPh The root element of the oneTextScr Root tag mandatory none TextScreen object. Select “yes” to return to the previous XML object after exit.
Page 31
Yealink IP Phone XML Objects Parameter Position Type Value Description key is not applicable to SIP VP-T49G/SIP-T19(P) E2/CP860 IP phones. Pressing the off-hook key is only applicable to CP860 IP phones. Tapping is only applicable to SIP VP-T49G/SIP-T48G IP phones.
Page 32
If there is no soft key defined in the TextScreen object, the LCD screen displays the following default soft key (the SIP VP-T49G/SIP-T48G IP phones do not display the soft key): For CP860/SIP-T46G/T42G/T41P/T40P/T29G/T27P/T23P/T23G/T21(P) E2/T19(P) E2 IP phones:...
Page 33
If “cancelAction” is left blank, the function of “X” key is returning to the idle screen. Note: Pressing the “X” key is not applicable to SIP VP-T49G/SIP-T19(P) E2/CP860 IP phones. The function of “OK/√” key is calling the URI defined by “doneAction”.
Page 34
XML Browser Developer’s Guide for Yealink IP Phones The screenshot of the SIP-T23G IP phone user interface for reference is shown as below: The screenshot of the SIP VP-T49G IP phone user interface for reference is shown as below: The screenshot of the SIP-T48G IP phone user interface for reference is shown as below:...
Yealink IP Phone XML Objects The screenshot of the SIP-T46G IP phone user interface for reference is shown as below: 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.
Page 36
XML Browser Developer’s Guide for Yealink IP Phones <URL>Target receiving the input</URL> <Parameter> parameter name add to URL</Parameter> <Selection>Selection</Selection> <Default>Default Value</Default> </InputField> <!--Additional input field Items may be added --> <!--Additional soft key items may be added --> </YealinkIPPhoneInputScreen >...
Page 37
Yealink IP Phone XML Objects Parameter Position Type Value Description HH:0-23, MM:0-59, SS:0-59 Example: 23:25:00 6. dateUS Format: MM/DD/YYYY MM:1-12,DD:1-31,YYYY:000 0-9999 Example: 12/31/2009 7. dateInt Format: DD/MM/YYYY DD:1-31,MM:1-12,YYYY:000 0-9999 Example: 31/01/2010 Note: The value in the root tag takes effect only if that in the InputField tag is left blank.
Page 38
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description a fixed interval (in seconds) on the phone, the phone will automatically exit from the InputScreen screen. If it is set to 0, the phone will not exit from the InputScreen screen until pressing the “Exit”...
Page 39
Yealink IP Phone XML Objects Parameter Position Type Value Description Define the URI to be cancelActi Root tag optional called when the user cancels the XML object. normal (default): Display the prompt and input box in two lines. (not applicable to SIP-T27P IP phones) “normal”...
Page 40
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description Specify the target URL to Body mandatory receive the user input InputField Body optional none Set several input boxes. Specifies the type of input. Data input options: 1.
Page 41
Yealink IP Phone XML Objects Parameter Position Type Value Description 31/01/2010 Note: The value in the InputField tag has a higher priority than that in the root tag. Whether to mask the input by the “ ” or “·” character (“*” for black-and-white screen phones, “·”...
Page 42
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description “&” is used to separate the parameters. If the “Parameter” is omitted, then nothing extra is appended to the URL. Pressing the “OK/√” key is not applicable to SIP VP-T49G IP phones.
Page 43
Dot (.) SoftKey:Dot BackSpace SoftKey:BackSpace Submit SoftKey:Submit For SIP VP-T49G IP phones: SoftKey Index Label Submit SoftKey:Submit If there is no soft key defined in the InputScreen object, and the Type for input box is “timeUS”, “timeInt”, “dateUS” or “dateInt”, the LCD screen displays the following...
Page 44
XML Browser Developer’s Guide for Yealink IP Phones BackSpace SoftKey:BackSpace Submit SoftKey:Submit For SIP VP-T49G IP phones: SoftKey Index Label Submit SoftKey:Submit If there is no soft key defined in the InputScreen object, and the Type for input box is “number”, the LCD screen displays the following default soft keys:...
Page 45
Browse the input box up and down. Up/Down Pressing the Note: Pressing the up/down key is not up/down key applicable to SIP VP-T49G IP phones. Move the cursor left and right. Left/Right Pressing the Note: Pressing the left/right key is not left/right key applicable to SIP VP-T49G/CP860 IP phones.
Page 46
XML Browser Developer’s Guide for Yealink IP Phones Key Name Operation Function VP-T49G/SIP-T48G IP phones) Pressing the on-hook key (only applicable to CP860 IP phones) Input mode switch, e.g., switch the input mode among “2aB”, “ABC”, “abc” or “123”. Pressing the 2aB...
Page 47
Yealink IP Phone XML Objects Timeout="15" LockIn="no"> <Title wrap="yes">Proxy Server</Title> <URL>http://10.3.5.5/</URL> <InputField> <Prompt>User Name:</Prompt> <Parameter>proxy</Parameter> <Default></Default> <Selection>1</Selection> </InputField> <InputField> <Prompt>Password:</Prompt> <Parameter>proxy</Parameter> <Default></Default> <Selection>2</Selection> </InputField> </YealinkIPPhoneInputScreen> In this example, when the user presses the Submit soft key or OK/√ key on the phone after entering “admin”...
XML Browser Developer’s Guide for Yealink IP Phones The screenshot of the SIP VP-T49G IP phone user interface for reference is shown as below: The screenshot of the SIP-T48G IP phone user interface for reference is shown as below: The screenshot of the SIP-T46G IP phone user interface for reference is shown as below: You can press the More soft key to find more soft keys.
Page 49
Yealink IP Phone XML Objects Directory object is just like a 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 Send soft key, picking up the handset or pressing the line/Speakerphone off-hook key.
Page 50
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description the value is not specified or exceeds the number of menu items, the cursor will position on the first menu item. Default value is 1. Define the URI to be...
Page 51
Yealink IP Phone XML Objects Parameter Position Type Value Description blank, the function of “X” key is returning to the idle screen. Note: Pressing the “X” key is not applicable to SIP VP-T49G/SIP-T19(P) E2/CP860 IP phones. Pressing the off-hook key is only applicable to CP860 IP phones.
Page 52
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description Address item. MenuItem Body mandatory none (Value ranges from 1 to 30.) MenuItem The prompt of address Prompt mandatory string body item. The operation of address MenuItem...
Page 53
Note: IP phones support one-digit number only. keys 1~9 If you press the digit that exceeds the maximum of the menu items, the phone will be no response. It is not applicable to SIP VP-T49G IP phones. Pressing the Send Send Dial out the number of the highlighted contact.
Page 54
XML Browser Developer’s Guide for Yealink IP Phones Key Name Operation Function Key/off-hook key, the phone will enter the pre-dialing screen. If the value of the LockIn is “yes” and there is a number contained in the URI tag: For off hook and pressing the line key, the phone will dial out the number.
Page 55
Yealink IP Phone XML Objects <MenuItem> <Prompt>Joy</Prompt> <URI>10.2.11.163</URI> </MenuItem> <MenuItem> <Prompt>John Doe</Prompt> <URI>1003</URI> </MenuItem> </YealinkIPPhoneDirectory> In the example, with the first item selected and taking SIP-T23G IP phone for reference: Picking up handset, the phone will dial “10.2.11.163”. Pressing the Speakerphone key, the phone will dial “10.2.11.163”.
Page 56
XML Browser Developer’s Guide for Yealink IP Phones The screenshot of the SIP VP-T49G IP phone user interface for reference is shown as below: The screenshot of the SIP-T48G IP phone user interface for reference is shown as below: The screenshot of the SIP-T46G IP phone user interface for reference is shown as below:...
Yealink IP Phone XML Objects on the phone’s idle screen when XML information is pushed from the servers. The Status object can remind users of received messages, missed calls, news, notify, etc. XML description of the Status object: <?xml version="1.0" encoding="ISO-8859-1"?>...
Page 58
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description application sending the XML object to the phone. The time for status information display. The phone will automatically exit from the status screen at a fixed interval (in seconds) on the phone.
Page 59
Yealink IP Phone XML Objects Parameter Position Type Value Description “large” “double”: 24 pt “large”: 28 pt Default value is “normal”. CP860/SIP-T42G/T41P/T40P /T27P/T23P/T23G/T21(P) E2/T19(P) E2: This parameter will be ignored. “center” Alignment of the Message Align optional “left” message display. Default value is “left”.
Page 60
</YealinkIPPhoneStatus> The screenshot of the SIP-T23G IP phone user interface for reference is shown as below: The screenshot of the SIP VP-T49G IP phone user interface for reference is shown as below: The screenshot of the SIP-T48G IP phone user interface for reference is shown as below:...
Page 61
Yealink IP Phone XML Objects The screenshot of the SIP-T46G IP phone user interface for reference is shown as below: The status messages will be erased when the phone is restarted. You can also remove status messages from the display using the same Session ID. This can be accomplished by setting an empty tag for the Message tag.
XML Browser Developer’s Guide for Yealink IP Phones </YealinkIPPhoneExecute> The parameters of the Execute object are listed in the following table: Parameter Position Type Value Description YealinkIPPh The root element of the oneExecut Root tag mandatory none Execute object. Whether to play a tone “yes”...
Page 63
Yealink IP Phone XML Objects Name URI Value Function "Dial:1234", IP phone URI= will dial out 1234 using the first available account.) Control the LEDs according to the commands. Led:XXXX=on/off/slowflash/fastflash See the following table for more information. Execute XXXX key operation.
Page 64
XML Browser Developer’s Guide for Yealink IP Phones Name URI Value Function list. Command: ClearDirectory Clear contact list. Command: ClearRedialList Clear placed calls list. Specification of “XXXX” in “Led:XXXX=on/off/slowflash/fastflash”: Setting Indicator Example Method %d: the “%d”th expansion module, “Led:EXP-2-3-RED=on”: value range: 1~6;...
Page 65
Yealink IP Phone XML Objects Setting Indicator Example Method (not applicable to CP860 IP phones) Specification of “XXXX” in “Key:XXXX”: Setting Method Indicator Example Off hook/off-hook key (only Key: OFF_HOOK OFF_HOOK applicable to CP860 IP phones) On hook/on-hook key (only...
Page 66
XML Browser Developer’s Guide for Yealink IP Phones Setting Method Indicator Example Message key (not applicable to CP860 IP phones) Activate the headset mode (not HEADSET applicable to CP860 IP phones) Speakerphone key (not applicable HANDFREE to CP860 IP phones)
The Header block is displayed at the top of the LCD screen and contains static text. For SIP VP-T49G/SIP-T48G/T46G/T29G IP phones, this block can display 2-line texts at most. Not limit for other phone models. The Scroll block is displayed under the Header block. How many lines of text can ...
Page 68
XML Browser Developer’s Guide for Yealink IP Phones block can display one line only. XML description of the FormattedTextScreen object: <?xml version="1.0" encoding="ISO-8859-1"?> <YealinkIPPhoneFormattedTextScreen destroyOnExit="yes/no" doneAction = "URI" Beep = "yes/no" Timeout = "integer" LockIn = "yes/no"> <Line Size="normal/small/double/large" Align="center/left/right"...
Yealink IP Phone XML Objects The parameters of the object are listed in the following table: FormattedTextScreen Parameter Position Type Value Description YealinkIPPh The root element of the oneFormatt Root tag mandatory none FormattedTextScreen edTextScre object. Select “yes” to return to the previous XML object after exit.
Page 70
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description key is not applicable to SIP VP-T49G/SIP-T19(P) E2/CP860 IP phones. Pressing the off-hook key is only applicable to CP860 IP phones. Tapping is only applicable to SIP VP-T49G/SIP-T48G IP phones.
Page 71
Yealink IP Phone XML Objects Parameter Position Type Value Description “right” “white” “black” “red” Color of the text. “green” “brown” CP860/SIP-T42G/T41P/ T40P “blue” T27P/T23P/T23G/T21(P) E2/T19(P) E2 IP phones: “magenta” This parameter will be “cyan” Color Line tag optional ignored and the text “lightgray”...
Page 72
Soft keys for more information. If there is no soft key defined in the FormattedTextScreen object, the LCD screen displays the following default soft key (the SIP VP-T49G/SIP-T48G IP phone does not display the soft key): SoftKey Index Label Exit...
Page 73
Up/Down Pressing the up/down up and down line by line. For SIP-T48G: Turn pages. Note: Pressing the up/down key is not applicable to SIP VP-T49G IP phones. Turn pages. Left/Right Pressing the left/right Note: Pressing the left/right key is not applicable to SIP VP-T49G/CP860 IP phones.
Page 74
In this example, when you press the OK/√ key, the phone will call http://10.1.0.105/menu.php The screenshot of the SIP-T23G IP phone user interface for reference is shown as below: The screenshot of the SIP VP-T49G IP phone user interface for reference is shown as below:...
Page 75
Yealink IP Phone XML Objects The screenshot of the SIP-T48G IP phone user interface for reference is shown as below: The screenshot of the SIP-T46G IP 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.
XML Browser Developer’s Guide for Yealink IP Phones XML description of the ImageScreen object: <YealinkIPPhoneImageScreen destroyOnExit="yes/no" doneAction = "URI" Beep = "yes/no" Timeout = "integer" LockIn = "yes/no" mode="regular/fullscreen"> <Image horizontalAlign="right/middle/left" verticalAlign="top/middle/bottom" height="integer" width="integer" >Image as hexadecimal characters or URL</Image>...
Page 77
Yealink IP Phone XML Objects Parameter Position Type Value Description opened. Default value is “yes”. If there is no operation at a fixed interval (in seconds) on the phone, the phone will automatically exit from the ImageScreen screen. If it is set to 0, the phone...
Page 78
Soft keys for more information. If there is no softkey defined in the ImageScreen object, the LCD screen displays the following default soft key (the SIP VP-T49G/SIP-T48G IP phone does not display the soft key): For CP860/SIP-T46G/T42G/T41P/T40P/T29G/T27P/T23P/T23G/T21(P) E2/T19(P) E2 IP phones:...
Page 79
The function of “OK/√” key is calling the URI defined by “doneAction”. OK/√ Key Pressing the “OK/√” key Note: Pressing the “OK/√” key is not applicable to SIP VP-T49G IP phones. An example of the ImageScreen object (for CP860/SIP-T42G/T41P/T40P/T27P/T23P/T23G/T21(P) E2/T19(P) E2): <YealinkIPPhoneImageScreen doneAction="http://10.1.0.105/menu.php"...
Page 80
In this example, when you press the OK/√ key, the phone will call http://10.1.0.105/menu.php The screenshot of the SIP-T23G IP phone user interface for reference is shown as below: An example of the ImageScreen object (for SIP VP-T49G/SIP-T48G/T46G/T29G): <?xml version="1.0" encoding="ISO-8859-1"?> <YealinkIPPhoneImageScreen doneAction="http://10.1.0.105/menu.php"...
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. Note ImageMenu object is applicable to SIP VP-T49G, SIP-T48G, SIP-T46G, SIP-T42G, SIP-T41P , T19(P) E2 SIP-T40P , SIP-T29G, SIP-T27P , SIP-T23P/G, SIP-T21(P) E2, SIP- and CP860 IP phones running firmware version 80 or later.
Page 82
XML Browser Developer’s Guide for Yealink IP Phones destroyOnExit="yes/no" doneAction = "URI" Beep = "yes/no" Timeout = "integer" LockIn = "yes/no" mode="regular/fullscreen" > <Image horizontalAlign="right/middle/left" verticalAlign="top/middle/bottom" height="integer" width="integer" > Image as hexadecimal characters or URL </Image> <URIList base="URL"> <URI key=" 0-9,* or #">URL</URI>...
Page 83
Yealink IP Phone XML Objects Parameter Position Type Value Description Whether to play a tone “yes” when the XML object is Beep Root tag optional opened. Default value is “no” “yes”. If there is no operation at a fixed interval (in...
Page 84
XML Browser Developer’s Guide for Yealink IP Phones Parameter Position Type Value Description Image as hexadecimal characters (for CP860/SIP-T42G/T41P/T40 P/T27P/T23P/T23G/T21(P) Image Body mandatory string E2/T19(P) E2) or URL (for VP-T49G/SIP-T48G/T46G/T 29G). “left” Vertical position of the horizontalA Image optional “middle”...
Page 85
Soft keys for more information. If there is no soft key defined in the ImageMenu object, the LCD screen displays the following default soft key (the SIP VP-T49G/SIP-T48G IP phone does not display the soft key): SoftKey Index Label Exit...
Page 86
LockIn = "no" mode="regular"> <Image verticalAlign="middle" horizontalAlign="middle" height="81" width="59"> 000000000000000000000000000000…50ff08b2fd2db301780000</Image> <!--Here just provide portion of hexadecimal string, use Yealink-supplied tool “Dob2Text.exe” to convert a “dob” file to the hexadecimal string--> <URIList base="http://10.3.6.129:8080/XML/new/"> <URI key="#">TextMenu.xml</URI> <URI key="0">Directory.xml</URI> <URI key="1">InputScreen.xml</URI> </URIList> </YealinkIPPhoneImageMenu>...
Page 87
Yealink IP Phone XML Objects <YealinkIPPhoneImageMenu doneAction="http://10.1.0.105/menu.php" Beep = "yes" Timeout = "120" LockIn = "no" mode="regular"> <Image verticalAlign="middle" horizontalAlign="left" >http://10.3.6.129:8080/XML/new/ImageMenu.jpg</Image> <URIList base="http://10.3.6.129:8080/XML/new/"> <URI key="#">TextMenu.xml</URI> <URI key="0">Directory.xml</URI> <URI key="1">InputScreen.xml</URI> </URIList> </YealinkIPPhoneImageMenu> In this example, you can do the followings: Press the pound key to enter the TextMenu screen.
The screenshot of the SIP-T46G IP phone user interface for reference is shown as below: Yealink IP phones allow users to create soft keys with customizable labels, positions and actions to be taken when the soft keys are pressed. The customizable soft keys can override the default soft keys in each XML object.
Page 89
SoftKey:Dial menu item. TextScreen Object Exit SoftKey:Exit Exit from the current XML screen. InputScreen Object (soft keys cannot be customized on SIP VP-T49G/SIP-T48G IP phones) Delete the character before the cursor in BackSpace SoftKey:BackSpace the input box. Execute the command comprised of the...
Page 90
XML Browser Developer’s Guide for Yealink IP Phones Label Function ImageMenu Object Exit SoftKey:Exit Exit from the current XML screen. An example of the customizable soft keys used with the TextMenu object: <?xml version="1.0" encoding="ISO-8859-1"?> <YealinkIPPhoneTextMenu style="none" Beep="no" Timeout="30" LockIn="no">...
Page 91
The phone can request an XML object via HTTP GET, or an object can be pushed to the phone via a POST. The phone parses this object immediately upon receipt and displays the information on the screen. You can ask the distributor or Yealink FAE for php source code or obtain php source code online: http://support.yealink.com/documentFront/forwardToDocumentFrontDisplayPage.
Page 92
XML Browser Developer’s Guide for Yealink IP Phones flush(); fclose($fp); ############################## # The above codes are fixed, please just edit the following codes according to requirement. $xml = "the beginning of the root element in the XML object\n"; $xml . = "the child elements in the XML...
Page 93
Yealink IP Phone XML Objects fclose($fp); ############################## $xml = "<YealinkIPPhoneTextScreen Beep=\"yes\">\n"; $xml .= "<Title>Push test</Title>\n"; $xml .= "<Text>This is a test for pushing text to a phone.</Text>\n"; $xml .= "</YealinkIPPhoneTextScreen>\n"; #The above 4 lines prefixed with “$xml =” constructs a TextScreen object to be pushed to the #phone.
Page 94
XML Browser Developer’s Guide for Yealink IP Phones...
Configuring the HTTP Server Yealink IP phones support downloading by using the HTTP (HTTPS) protocol. You can set up the HTTP(s) server, and place some XML files on the server for downloading. This section provides you with some instructions on how to configure the HTTP server and obtain the access URL of the XML files downloaded by the IP phones.
Page 96
XML Browser Developer’s Guide for Yealink IP Phones...
Page 97
Configure the Push XML Server XAMPP is a free, cross-platform, easy-to-use web server capable of serving dynamic pages. XAMPP consists mainly of the Apache HTTP Server, MySQL database and interpreters for scripts written in the PHP and Perl programming languages. XAMPP is an acronym for X (any of the four operating systems Windows, Linux, Sun Solaris and Mac OS X), Apache, MySQL, PHP and Perl.
Page 98
XML Browser Developer’s Guide for Yealink IP Phones...
Page 100
XML Browser Developer’s Guide for Yealink IP Phones Click Finish to finish the installation. To start the XAMPP: Double click xampp-control.exe in the installation path of the XAMPP . Click Start next to the Apache module.
Page 101
Configure the Push XML Server Apache is running as shown below: You can also click Stop to stop Apache. Note Ensure ports 80 and 443 are not being used when starting the Apache server. To test the installation of the XAMPP: Enter “http://localhost/xampp/”in the address bar of the web browser and press the Enter key.
Page 102
XML Browser Developer’s Guide for Yealink IP Phones the address bar of the web browser, and press the Enter key to push an XML object to the phone.
Yealink IP Phone XML Configurations The followings take configurations of a SIP-T23G IP phone running firmware version 80 as examples. To use the XML browser feature, you must configure an XML key in advance. You can configure an XML Browser key via web user interface, phone user interface or configuration files.
Page 104
Configures a DSS key X as an XML Browser key on the IP phone. The digit 27 stands for the key type XML Browser. For line keys: X ranges from 1 to 29 (for SIP VP-T49G/SIP-T48G). X ranges from 1 to 27 (for SIP-T46G/T29G). X ranges from 1 to 15 (for SIP-T42G/T41P).
Page 105
For SIP-T40P/T23P/T23G/T21(P) E2 IP phones: The default value is 15. For programable keys: For SIP VP-T49G IP phones: When X=1, the default value is 28 (History). When X=2, the default value is 61 (Directory). When X=3, the default value is 5 (DND).
Page 106
XML Browser Developer’s Guide for Yealink IP Phones Parameters Permitted Values Default For SIP-T42G/T41P/T40P IP phones: When X=1, the default value is 28 (History). When X=2, the default value is 61 (Directory). When X=3, the default value is 5 (DND).
Page 107
Yealink IP Phone XML Configurations Parameters Permitted Values Default When X=8, the default value is 52 (Switch Account Down). When X=9, the default value is 33 (Status). When X=10, the default value is 0 (NA). When X=14, the default value is 2 (Forward).
Page 108
XML Browser Developer’s Guide for Yealink IP Phones Parameters Permitted Values Default X ranges from 1 to 29 (for SIP VP-T49G/SIP-T48G). X ranges from 1 to 27 (for SIP-T46G/T29G). X ranges from 1 to 15 (for SIP-T42G/T41P). X ranges from 1 to 21 (for SIP-T27P).
Yealink IP Phone XML Configurations Parameters Permitted Values Default Web User Interface: DSSKey->Line Key/Programable Key->label Phone User Interface: Menu->Features->DSS Keys->Line Key X->label The following shows an example of configuring an XML Browser key using configuration files: linekey.1.type = 27 linekey.1.value = http://10.2.1.158/TextMenu.xml linekey.1.label = XML Browser...
Page 110
XML Browser Developer’s Guide for Yealink IP Phones To configure the Block XML in Calling using configuration files: Add/Edit Block XML in Calling parameters in configuration files. The following table shows the information of parameters: Parameter Permitted Values Default 0 or 1 push_xml.block_in_calling...
Page 111
Yealink IP Phone XML Configurations The valid values must be within 512 characters. Each IP address or domain name is separated by a comma. If this field is left blank or the value is set as “any”, the phone will reject HTTP POST messages from any server.
Page 112
XML Browser Developer’s Guide for Yealink IP Phones Upon receiving the POST message, the phone will display the information or execute the command contained in the POST message. Example of a POST message with the XML content: In this example, the phone will play a tone and display the information shown as below: You can configure the XML SIP Notify via web user interface.
Page 113
Yealink IP Phone XML Configurations Select Enabled from the pull-down list of SIP Notify field. Click Confirm to accept the change. To configure the XML SIP Notify using configuration files: Add/Edit the XML SIP Notify parameters in configuration files. The following table shows the information of parameters:...
Page 114
XML Browser Developer’s Guide for Yealink IP Phones Example of a SIP Notify with the XML content: In this example, the phone will play a tone and display the information shown as below: You can specify the default input method when the type of input is “string” in the InputScreen object.
Page 115
Yealink IP Phone XML Configurations The following table shows the information of parameter: Permitted Parameter Default Values Abc, 2aB, default_input_method.xml_browser_input_screen 123, abc or Description: Configures the default input method when the type for input box is set to “string” in the InputScreen object.
Page 116
XML Browser Developer’s Guide for Yealink IP Phones...
Troubleshooting This chapter provides general troubleshooting information to help to solve the problems you might encounter when developing XML applications for Yealink IP phones. Besides, it also provides related troubleshooting tools and parsing error debug example for you to trace errors. If you require additional information or assistance, contact your system administrator.
Page 118
XML Browser Developer’s Guide for Yealink IP Phones Some of the XML editors (such as UltraEdit and Dreamweaver) can also verify the XML syntax and detail the related error in the output window. The following takes the Dreamweaver tool as an example for reference.
“dob” file, and also provides a tool called “Dob2Text.exe” to convert a “dob” file to the hexadecimal string to be used for the ImageScreen and ImageMenu objects. Ask Yealink reseller or FAE for these two tools. For more information on how to convert a Yealink_SIP-T2_Series_T19(P) “bmp”...
Page 120
XML Browser Developer’s Guide for Yealink IP Phones We are striving to improve our documentation quality and we appreciate your feedback. Email your opinions and comments to DocsFeedback@yealink.com.
Need help?
Do you have a question about the SIP VP-T49G and is the answer not in the manual?
Questions and answers