23 Development Guide XML API for Aastra SIP Phones Firmware 3.3.1 SP4 Doc. No.
Aastra will not accept liability for any damages and/or long distance charges, which result from unauthorized and/or unlawful use. While every effort has been made to ensure accuracy, Aastra will not be liable for technical or editorial errors or omissions contained within this documentation. The information contained in this documentation is subject to change without notice. Copyright 2014 Mitel Networks Corporation. www.aastra.com All Rights Reserved.
TABLE OF CONTENTS 1 Introduction ........................................................................................................................ 15 1.1 Aastra XML API ................................................................................................................... 15 1.2 Revision History ................................................................................................................... 15 1.2.1 Version 3.3.
2 XML and the Aastra IP Phones .........................................................................................24 2.1 What is XML? .......................................................................................................................24 2.2 Functionality .........................................................................................................................24 2.3 How does it work? ................................................................................
3.2.1 Implementation (55i/57i/57iCT/6535i/6737i) ............................................................... 54 3.2.2 Implementation (6867i) ............................................................................................... 54 3.2.3 Implementation (6739i) ............................................................................................... 56 3.2.4 XML Description ..........................................................................................................
3.7.1 Implementation (softkey phones) ..............................................................................123 3.7.2 Implementation on the 6867i .....................................................................................124 3.7.3 Implementation on the 6739i .....................................................................................125 3.7.4 XML Description ........................................................................................................126 3.7.
4.6.2 File format ................................................................................................................. 186 4.6.3 Interaction with action uris ........................................................................................ 187 4.7 Wav file loop playback (melody) ........................................................................................ 188 4.7.1 XML Commands .............................................................................................
6.2.1 Action uri offhook .......................................................................................................211 6.2.2 Action uri onhook .......................................................................................................211 6.2.3 Action uri incoming ....................................................................................................211 6.2.4 Action uri outgoing ......................................................................................
.1.2 Call Processing ......................................................................................................... 239 9.1.3 Voice-Mail ................................................................................................................. 239 9.1.4 Conference Bridge .................................................................................................... 239 9.1.5 Contact Center ........................................................................................
11.3.12 Today… .....................................................................................................................258 11.3.13 Local Weather ...........................................................................................................259 11.3.14 World Clock ...............................................................................................................260 11.3.15 Yahtzee ............................................................................................
17.5 CSV file format ................................................................................................................... 312 17.6 Configuration files .............................................................................................................. 312 17.6.1 server.conf ................................................................................................................ 312 17.6.2 directory.conf.......................................................................
TABLE OF FIGURES Figure 1: Basic XML document .........................................................................................................24 Figure 2: Aastra IP Phone acting as a client .....................................................................................25 Figure 3: Aastra IP Phone acting as a server ...................................................................................26 Figure 4: Access to an internal application ..................................................
Figure 35: TextScreen implementation on 6867i .............................................................................. 65 Figure 36: TextScreen implementation on 6739i .............................................................................. 66 Figure 37: TextScreen Example (non softkey phones) .................................................................... 72 Figure 38: TextScreen Example (softkey phones) ...........................................................................
Figure 72: InputScreen “TimeInt” Example (softkey phone) ...........................................................118 Figure 73: InputScreen “TimeInt” Example (6739i) .........................................................................118 Figure 74: InputScreen “DateUS” Example (non softkey phone) ...................................................119 Figure 75: InputScreen “DateUS” Example (softkey phone) ..........................................................
1 Introduction 1.1 Aastra XML API Aastra SIP phones support an XML API since firmware release 1.3.0. This XML API allows external applications to control the display of the phone as well as its configuration. The list of potential XML applications is endless, see chapter 9 for some examples of potential XML applications. This document details the XML objects supported by the Aastra SIP phones using firmware version 3.3.1 and how to implement them. 1.2 Revision History 1.2.1 1.2.2 1.2.3 1.
o o o o o o 1.2.6 1.2.7 1.2.8 1.2.9 16 Custom icons can now be downloaded from the server as a png file Label color in every UI object can now be configured New Call log XML object to provide call logs or redial applications equivalent to the native 6739i UI.
o Lock/Unlock and ClearCallersList commands o LED control on expansion modules XML object AastraIPPhoneDirectory no longer supported Aastra 6751i no longer supported Play Wav command command is supported on all phones but the 6739i. 1.2.10 Version 3.0.1 (6739i) Support for Keypress emulation but limited to hard keys. AastraIPPhoneInputScreen now supports multiple input fields.
1.2.13 Version 2.5.3 (9143i/9480i/9480iCT/6730i/6731i/51i/53i/55i/57i/57iCT) New scrollConstrain tag for AastraIPPhoneTextMenu to control the wrap-around in the list. When enabled, scrolling down on the last entry of the list does not wrap to the first item. New numberLaunch tag for AastraIPPhoneTextMenu to allow a user to launch the following menu by typing its number on the keypad, of course it is limited to menu 1-9.
o Specify a customized URI for the WebApps key instead of using the default URI of http://xml.myaastra.com/?localip=$$LOCALIP$$ 1.2.18 Version 2.3.0 (9143i/9480i/9480iCT/51i/53i/55i/57i/57i CT) New XML configuration The following telephony keys can now be assigned to call an XML script instead of the regular telephony feature: o Redial o Transfer o Conference o Intercom o VoiceMail Phone ‘Options’ Key can now be redirected to an XML script.
$$LINESTATE$$ Line state when the ‘disconnect’ event happens. Others Custom SSL certificates for HTTPS can now be loaded on the phones. Pre-programmed XML Service Key called WebApps pointing to an Aastra hosted service located at http://xml.myaastra.com/?localip=$$LOCALIP$$ that you can also access from your Web browser at www.myaastra.
1.2.22 Version 2.1.0 (53i/55i/57i/57i CT) doneAction root tag for the AastraIPPhoneTextScreen and AastraIPPhoneFormattedTextScreen XML objects. This tag allows redirecting the user to a specified URI after a “Done” key press; this can be very useful for non softkey phones such as the Aastra 53i. New custom softkeys “Ignore” and “Answer” and “allowAnswer” tag to answer a call when an XML page is called upon the incoming call.
Icons in AastraIPPhoneTextMenu (55i/57i/57i CT) Icons in customizable softkeys (55i/57i/57i CT) New HTTP header to indicate the presence of expansion modules New input types for AastraIPPhoneInputScreen o timeUS, timeInt o dateUS, dateInt 1.2.25 Version 1.4.2 (9112i/9133i/480i/480i CT) New attributes New “style” tag for AastraIPPhoneTextMenu 1.2.26 Version 1.4.
Dial Submit BackSpace NextSpace Dot ChangeMode Other XML softkeys (480i/480i CT) XML programmable keys (9112i/9133i) destroyOnExit attribute common to all XML objects 1.2.28 Version 1.3.
2 XML and the Aastra IP Phones 2.1 What is XML? XML stands for eXtensible Markup Language. It is a markup language much like HTML. HTML was designed to display data and to focus on how data looks. XML was designed to describe data and to focus on what data is. The following are characteristics of XML: XML tags are not predefined.
ImageMenu (UI) Execute object Configuration object Status object Some of these objects also support customizable softkeys that are declared as an independent object. The following sections describe the process of creating XML objects for the Aastra SIP phones. 2.
Figure 3: Aastra IP Phone acting as a server 2.4 System Architecture The XML applications are hosted by one or multiple Web servers which will serve as a proxy to either other applications or to Internet Web servers. 2.4.1 Corporate applications The following figure details the architecture to allow Aastra IP Phones to access an internal application.
Aastra SIP Phone LAN Internet HTTP Public Web Server HTTP Call Processing Web Server Figure 5: Access to an Internet application 2.4.3 Telephony applications The following figure details the architecture of an XML application that would provide more telephony features at the phone level.
SIP Phone XML Proxy Server Application HTTP GET Request XML Document Answer Application HTTP Server HTTP GET XML Application XML Document Request Answer Figure 7: Typical software architecture of an XML application The XML application is in fact translating requests from the phone to the protocol used by the external application and formats the answer into an XML document that the Aastra SIP phone can interpret. 2.5.
Example of a Web based tool http://tools.decisionsoft.com/schemaValidate/ 2.
Example 2.8 HTTP/1.1 200 OK Date: Tue, 15 May 2007 14:24:33 GMT Server: Apache/2.0.52 (CentOS) X-Powered-By: PHP/4.3.11 Content-Length: 564 Connection: close Content-type: text/xml; charset=ISO-8859-1 HTTP Header Title Enter value http://myserver.com/script.
Figure 9: Aastra 6731i XML display and keys 2.8.2 Aastra 6753i The display and keys available for XML applications on an Aastra 6753i are: 3 lines of 16 characters for the display the left and right arrow navigation keys the up and down rocker navigation key rd The 3 line of the display is a command line and will be used to display the labels of the available actions. See chapter 3 for more details on how each XML object will use this line of command.
Figure 10: Aastra 6753i XML display and keys 2.8.
Figure 11: Aastra 6755i/6735i XML display and keys 2.8.
Figure 12: Aastra 6757i/6757iCT/6737i XML display and keys 2.8.5 Aastra 9143i The display and keys available for XML applications on an Aastra 9143i are: 3 lines of 16 characters for the display the left and right arrow navigation keys the up and down arrow navigation keys rd The 3 line of the display is a command line and will be used to display the labels of the available actions. See chapter 0 for more details on how each XML object will use this line of command.
Figure 13: Aastra 9413i XML display and keys 2.8.
5 lines of 21 characters Softkey 1 Softkey 4 Softkey labels Softkey 2 Softkey 3 Cancel Key Softkey 5 Softkey 6 Next Key Navigation keys Figure 14: Aastra 9480i/9480iCT XML display and keys 2.8.7 Aastra 6739i The display and keys available for XML applications on an Aastra 6739i are: 10 softkeys A graphical zone for the XML objects A Cancel/Back key Scroll Up/Down keys See chapter 3 for more detailed information on each XML object.
Fri Nov 6 9:30am XML Softkey 1 Softkey 6 Softkey 2 Softkey 7 Graphical display For XML objects Softkey 3 Softkey 4 Softkey 8 Softkey 9 Softkey 5 Softkey 10 Cancel/Back Key Scroll Up/Down Figure 15: Aastra 6739i XML display and keys 2.8.
Figure 16: Aastra 9413i XML display and keys 2.8.9 Aastra 6865i The display and keys available for XML applications on an Aastra 6865i are: 3 lines of 16 characters for the display the left and right arrow navigation keys the up and down arrow navigation keys rd The 3 line of the display is a command line and will be used to display the labels of the available actions. See chapter 3 for more details on how each XML object will use this line of command.
Figure 17: Aastra 9413i XML display and keys 2.8.10 Aastra 6867i The display and keys available for XML applications on an Aastra 6867i are: 4 softkeys (6 logical softkeys for XML applications) A graphical zone for the XML objects Left/Right arrow navigation keys Up/Down arrow navigation keys Select key See chapter 3 for more detailed information on each XML object.
3 Aastra IP Phone XML Objects This chapter details all the XML objects supported by the Aastra SIP phones In this chapter: Non softkey phones are Aastra phones without softkey: Aastra 6730i/6731i Aastra 9143i Aastra 6753i a.k.a 53i Aastra 6863i/6865i Softkey phones are Aastra phones with softkeys: Aastra 9480i/9480iCT Aastra 6755i a.k.a 55i and 6735i Aastra 6757i/6757iCT a.k.
Line selected Title Item Label Keys Use ^v to view Up and Down Arrow Browse up or down Left Arrow Exit vNext Up and Down Arrow Browse up or down >Enter Right Arrow Select Left Arrow Exit Softkey phone keys The object is displayed on up to 6 lines, the title stays on the top of the display. The Up and Down arrow keys allow the user to browse the list up and down.
key interaction is disabled if the LockIn tag is set to “yes”. Note: the The item prompts are automatically wrapped on 2 lines if needed. The green line around the button indicates that the item is selected. The icon located on the right side of each item is the “Select” key and triggers the default URI of the object. The icon located on the right side of an item is displayed only if the Dial tag is configured for the item. Object default Softkeys Ten customizable softkeys are available for this object.
Figure 19: TextMenu Implementation on 6739i 3.1.3 XML Description “Red” tags indicates that the tag does not apply to all phones, when not supported the tags are just ignored.
Notes: The number of items in a TextMenu object is limited to 30. You must declare at least one item in a TextMenu or the phone will generate a parsing error. 6731i supports only “numbered” style. XML Document Objects Document Object Position Type Comments AastraIPPhoneTextMenu Root tag Mandatory Root object Optional Position of the cursor when the XML object is open. If not specified the arrow is positioned on the first menu item.
Document Object Position GoodbyeLockInURI allowAnswer Root tag Root tag allowDrop Root tag allowXfer Root tag allowConf Root tag Type Comments Optional Valid only if LockIn=”yes”, this tag defines a URI to be called when the “Goodbye” key is pressed during a locked XML session. This URI overrides the native behavior of the “Goodbye” key which is to destroy the current XML object displayed. Optional This tag applies only to the nonsoftkey phones.
Document Object Position Type Comments using the keypad (items 1-9 only). Default value is “no”. Ignored on 6739i unitScroll Root tag Optional If set to “yes”, the 6739i will scroll the menu items in the list as it is done on the other phones, pressing the Up/Down arrow moves the selected item by one. Default value is “no”. 6739i only scrollUp Root tag Optional This tag allows overriding the default behavior of the Up arrow key once the scrolling reaches an end.
Document Object Position Type Comments Label color, the possible values are: Color MenuItem Base “white”, “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”.
Document Object Position Type Comments “white”. 6867i and 6739i only split URI Dial Prompt tag Optional This attribute tells where to split the prompt on 2 lines giving the position of the first character of the second line.
Icons are not supported Only “numbered” is supported for the Style tag. 3.1.4 Dialing from a TextMenu Dialing from a TextMenu is different between the Aastra 6739i and Aastra 675xi.
3.1.6 Examples XML Example 1 Phone Services
Resulting Screen (softkey phones) Figure 24: TextMenu Example 1 (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML Phone Services Traffic Reports Employee List Weather Figure 25: TextMenu Example 1 (6739i) XML Example 2 (softkey phones) Phone Services
045E545E0400 FEAA8292FE00 C00E60029800 Resulting Screen Figure 26: TextMenu Example 2 (softkey phone) XML Example 3 (touchscreen phone) Directory John Doe
http://myserver/myscript.php?a=edit In this example, with item 1 selected: Pressing the icon on the item, will call http://myserver/myscript.php?a=zoom&n=1234 Pressing the icon on the item, will make the phone dial “1234” Pressing the “Delete” softkey, will call http://myserver/myscript.php?a=delete&selection=1234 Pressing the “Edit” softkey, will call http://myserver/myscript.
3.2 ImageMenu Object (55i/57i/57iCT/6735i/6737i/6739i/6867i) The ImageMenu object allows using a bitmap image to serve as a menu. This is desirable when a user wants to display menu choices in some non-ASCII character set or with pictures only. Each menu selection is linked to a keypad key (0-9, *, #).allows developers to create a numerical list of choices. 3.2.1 Implementation (55i/57i/57iCT/6535i/6737i) The image itself is specified as a series of hexadecimal characters. See chapter 4.2.1.
If the image is smaller than the size supported by the requested mode, the image is displayed based on the requested alignment The Left key is mapped to the cancelAction tag, if not specified the XML object is destroyed. Note: the Left Arrow key default interaction is disabled if the LockIn tag is set to “yes”. If the LockIn tag is set to “yes” and the cancelAction tag is configured, pressing the Left Arrow key triggers the configured cancelAction.
Image area 320x240 pixels Figure 29: ImageMenu 6867i implementation (fullscreen mode) Also a URI can be programmed to be called when the user presses the Select key (imageAction root tag). If this tag is empty, phone will use the URI configured by the doneAction tag (SoftKey:Exit by default). So by default pressing the Select key destroys the current XML object unless an imageAction or a doneAction is configured. Native Interaction 3.2.
key interaction is disabled if the LockIn tag is set to “yes”. Note: the Object default Softkeys Ten customizable softkeys are available for this object. Position 10 Label Interaction URIs Done Exit: Redisplays the previous XML object present in the phone browser. SoftKey:Exit The following figure details how the AastraIPPhoneImageMenu is implemented on the Aastra6739i.
Fri Nov 6 9:30am XML Image Area 640x340 pixels Figure 31: ImageMenu implementation (extended mode) Image Area 640x480 pixels Figure 32: ImageMenu implementation (fullscreen mode) Also a URI can be programmed to be called when the user presses on the displayed image (imageAction root tag). If this tag is empty, phone will use the URI configured by the doneAction tag (SoftKey:Exit by default).
Native Interaction 3.2.
Document Object Position Type Comments Beep Root tag Optional “yes” or “no” to indicate if a notification beep must be generated by the phone. Optional Overrides the default 45 seconds timeout of the UI XML object. A Timeout set to “0” will disable the timeout feature. See section 4.10.1 for more details Optional If set to “yes”, the phone ignores all events that would cause the screen to exit without using the keys defined by the object. Default value is “no”. See section 4.10.
Document Object Position Type Comments “white”. 6867i and 6739i only Image Body verticalAlign Image tag Image to be displayed as a series of hexadecimal characters or a URL. See section 4.2.1 for more details. Optional Vertical position of the image (“top”, “middle” or “bottom”). If the tag is not specified, the object will use “middle” as a default value. horizontalAlign Image tag Optional Horizontal position of the image (“left”, “middle” or “right”).
c013021007c02101201f00330ff03f001e000039000003e039001e00103f0033001 01f8021003007c03303f003c01e000000c00001e001c03f033007802002100f0020 02103e000001203c401702003cc0290ff039c02902101fc02b000007c03f01a003c 020039018c0ff02d03c402102703c400001203ec01e000026402b00002640290000 26c029000027c01a0000338000000033800000003100000000300000000030003f0 0003fc03000003fc02000003fc020000030001f0000300000000030001e00003000 2b000030002900003fc02900003fc01a00003f00000000310030000031c01e00003 1f003000033f81e00003f383000001e081e0
http://myserver.com/script.
3.3 TextScreen Object (all models) The TextScreen object can be used to display text. The screen word-wraps appropriately and can scroll to display a message longer then the physical display. 3.3.1 Implementation (softkey and non softkey phones) The object is displayed on 2 lines. The Up and Down arrow keys allow the user to browse the rest of the text.
3.3.2 Implementation (6867i) The title is displayed at the top of the XML area and uses up to 2 lines. The text is displayed after the title area and up to 8 lines can be displayed. Note: The Text and Title area use the same font (fnt and size) but the Title is displayed in bold. The Left key is mapped to the cancelAction tag, if not specified the XML object is destroyed. The Up/Down keys allow up and down scrolling in order to display the complete text.
3.3.3 Implementation (6739i) The title is displayed at the top of the XML area and uses up to 2 lines. The text is displayed after the title area and up to 10 lines can be displayed. Note: The Text area uses a smaller font than the Title area. The key is mapped to the cancelAction tag, if not specified the XML object is destroyed. The keys allow up and down scrolling in order to display the complete text. Ten customizable softkeys are available for this object.
3.3.4 XML Description “Red” tags indicates that the tag does not apply to all phones, when not supported the tags are just ignored.
Document Object Position Type Comments Beep Root tag Optional “yes” or “no” to indicate if a notification beep must be generated by the phone. Optional Overrides the default 45 seconds timeout of the UI XML object. A Timeout set to “0” will disable the timeout feature. See section 4.10.2 for more details Optional If set to “yes”, the phone ignores all events that would cause the screen to exit without using the keys defined by the object. Default value is “no”. See section 4.10.
Document Object Position Type Comments allowConf Root tag Optional This tag applies only to the nonsoftkey phones. If set to “yes”, the phone will display “Conf” if the XML object is displayed when the phone is in the connected state. Default value is “no”. See section 6.4 for more details. Only for 6730i, 6731i, 53i, 6739i and 9143i, 6863i, 6865i allowDTMF Root tag Optional This tag allows letting keypad strokes as DTMF when the phone is in the connected status.
Document Object Position Type Comments “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i and 6739i only TopTitle Icon Body Optional Text to be used as top title for the object 6867i and 6739i only. TopTitle tag Optional Index of the icon to be used for the top title 6867i and 6739i only.
Document Object Position Type Comments “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i and 6739i only SoftKey Body Optional See section 0 for details Softkey and Touchscreen phones only. Note: the URI configured via the scrollUp and scrollDown tags is triggered only when the scrolling reaches an end.
Resulting Screens (non softkey phones) Figure 37: TextScreen Example (non softkey phones) Resulting Screen (softkey phones) Figure 38: TextScreen Example (softkey phones) XML Example 2 This is a very long title which should be on two lines Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Resulting Screen (6739i) Fri Nov 6 9:30am Top Title This is a very long title which should be on two lines Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
Resulting Screen (6867i) Application This is a very long title which should be on two lines but 6867i has a large display. Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
3.4 FormattedTextScreen Object (all models) The FormattedTextScreen object allows the XML designer to display formatted (alignment, size, color and scrolling) text. 3.4.1 Implementation (softkey and non softkey phones) This text is divided into 3 distinct blocks, any of which can be empty. The first block is displayed at the top of the display and contains static text. This block takes up as many lines as the XML object specifies and can range from 0 up to the size of the physical screen.
Left Arrow Exit Softkey phone keys The object is displayed on up to 6 lines, the title stays on the top of the display. The Up and Down arrow keys allow the user to browse the rest of the text. Line selected Text Keys Up and Down Arrow Browse up or down (if scrollable) Right Arrow Done Left Arrow Exit Note: the Left Arrow key default interaction is disabled if the LockIn tag is set to “yes”.
Physical display Header Zone Scroll Zone Footer Zone Figure 42: FormattedTextScreen layout on 6867i The Left key is mapped to the cancelAction tag, if not specified the XML object is destroyed. The Up/Down keys allow up and down scrolling in order to display the complete text if needed. Six customizable softkeys are available for this object. Note: the Left key interaction is disabled if the LockIn tag is set to “yes”. Object default Softkeys Six customizable softkeys are available for this object.
Top Title Text Zone 9 Lines (regular character set) Softkey 1/4 Softkey 2/5 Softkey 3/6 Figure 43: FormattedTextScreen implementation on 6867i Native Interaction 3.4.3 “SoftKey:Exit” Implementation (6739i) The text zone is divided into 3 distinct blocks, any of which can be empty. 78 The first block (header zone) is displayed at the top of the display and contains static text.
Physical display Header Zone Scroll Zone Footer Zone Figure 44: FormattedTextScreen layout on 6739i The key is mapped to the cancelAction tag, if not specified the XML object is destroyed. The keys allow up and down scrolling in order to display the complete text if needed. Ten customizable softkeys are available for this object, there is no default softkey. key interaction is disabled if the LockIn tag is set to “yes”.
Fri Nov 6 9:30am XML Softkey 1 Softkey 6 Softkey 2 Softkey 7 Softkey 3 Text Zone 14 Lines (regular character set) Softkey 8 Softkey 4 Softkey 9 Softkey 5 Softkey 10 Figure 45: FormattedTextScreen implementation on 6739i Native Interaction 3.4.4 “SoftKey:Exit” XML Description “Red” tags indicates that the tag does not apply to all phones, when not supported the tags are just ignored.
Align=”left/center/right” Color=”white/black/red/green/brown/blue/magenta cyan/lightgray/darkgray/lightred/lightgreen yellow/lightblue/lightmagenta/lightcyan” >A line of static text Scrolling text
Document Object Position Type Comments notification beep must be generated by the phone. Timeout Root tag LockIn Root tag GoodbyeLockInURI allowAnswer Root tag allowDrop 82 Root tag Root tag Aastra July 2014 Optional Overrides the default 45 seconds timeout of the UI XML object. A Timeout set to “0” will disable the timeout feature. See section 4.10.
Document Object Position allowXfer Root tag allowConf Root tag allowDTMF Root tag scrollUp Root tag scrollDown Root tag scrollLeft Root tag Type Comments Optional This tag applies only to the non-softkey phones. If set to “yes”, the phone will display “Xfer” if the XML object is displayed when the phone is in the connected state. Default value is “no”. See section 6.4 for more details.
Document Object Position Type Comments 6867i and 6739i only. TopTitle tag Icon Optional Index of the icon to be used for the top title 6867i and 6739i only. Label color, the possible values are: TopTitle tag Color Line Body Optional Optional “white”, “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”.
Document Object Position Type Comments possible values are: “white”, “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i and 6739i only Scroll Body Height Scroll tag Scroll Body Line Optional Defines the scrolling section of the display. Optional Specifies the height of the scroll zone.
Document Object Position Type Comments “center”. If not specified the default value is “left”. Color of the line, the possible values are: Color SoftKey Line tag Body Optional Optional “white”, “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i and 6739i only See section 4.
Resulting Screen Figure 46: FormattedTextScreen Example 1 (non softkey phones) XML Example 2 (softkey phones) Formatted Screen Scrolling text1 Scrolling text2 Scrolling text3 Scrolling text4 Scrolling text5 Footer Resulting Screen Figure 47: FormattedT
XML Example 3 In this example, there is no need for scrolling.
Resulting Screen Fri Nov 6 9:30am XML FormattedTextScreen Header Line Scrolled Line 1 Scrolled Line Scrolled Line Scrolled Line Scrolled Line Scrolled Line 2 3 4 5 6 FormattedTextScreen Footer Line Figure 49: FormattedTextScreen Example 4 (6739i) PA-001011-03-04 Aastra July 2014 89
3.5 ImageScreen Object (55i/57i/57iCT/6735i/6737i/6867i/6739i) The ImageScreen object can be used to display single 55i/57i/57iCT/6735i/6737i, jpeg or png file for 6867i and 6739i). image (bitmap for the 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. 3.5.1 Implementation (55i/57i/57iCT/6735i/6737i) The image itself is specified as a series of hexadecimal characters.
If the image is bigger than the size supported by the requested mode, the image is clipped based on the requested alignment. If the image is smaller than the size supported by the requested mode, the image is displayed based on the requested alignment The Left key is mapped to the cancelAction tag, if not specified the XML object is destroyed. Note: the Left Arrow key default interaction is disabled if the LockIn tag is set to “yes”.
Image area 320x240 pixels Figure 51: ImageScreen 6867i implementation (fullscreen mode) Also a URI can be programmed to be called when the user presses the Select key (imageAction root tag). If this tag is empty, phone will use the URI configured by the doneAction tag (SoftKey:Exit by default). So by default pressing the Select key destroys the current XML object unless an imageAction or a doneAction is configured. Native Interaction 3.5.
key interaction is disabled if the LockIn tag is set to “yes”. Note: the Object default Softkeys Ten customizable softkeys are available for this object. Position 10 Label Interaction URIs Done Exit: Redisplays the previous XML object present in the phone browser. SoftKey:Exit The following figure details how the AastraIPPhoneImageScreen is implemented on the Aastra6739i.
Fri Nov 6 9:30am XML Image Area 640x340 pixels Figure 53: ImageScreen 6739i implementation (extended mode) Image Area 640x480 pixels Figure 54: ImageScreen 6739i implementation (fullscreen mode) Also a URI can be programmed to be called when the user presses on the displayed image (imageAction root tag). If this tag is empty, phone will use the URI configured by the doneAction tag (SoftKey:Exit by default).
Native Interaction 3.5.4 “SoftKey:Exit” XML Description “Red” tags indicates that the tag does not apply to all phones, when not supported the tags are just ignored.
Document Object doneAction Root tag imageAction Root tag Beep Root tag Timeout Root tag LockIn 96 Position Root tag Type Comments Optional Defines the URI to be called when the user selects the “Done” softkey or ‘SoftKey:Exit’. Optional Defines the URI to be called when the user presses on the image (6739i) or presses Select on 6867i. 6867i/6739i only. Optional “yes” or “no” to indicate if a notification beep must be generated by the phone.
Document Object Position Type Comments phone is in the connected status. scrollUp scrollDown scrollLeft scrollRight Root tag Root tag Root tag Root tag Optional This tag allows overriding the default behavior of the Up arrow key. Ignored on 6739i Optional This tag allows overriding the default behavior of the Down arrow key. Ignored on 6739i Optional This tag allows overriding the default behavior of the Left arrow key.
Document Object Position Type Comments “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i/6739i only Image Body verticalAlign Image tag horizontalAlign Height 3.5.5 Image tag Image tag Mandatory Image to be displayed as a series of hexadecimal characters (55i/57i/57iCT/6735i/6 737i) or URL to get the png file. See section 4.2.1 for more details. Optional Vertical position of the image (“top”, “middle” or “bottom”).
fffffffc02fffffffee4ffffbfffc05fffe7ff7a7ffffffffeffeebd 7fffffea6bcfffffe796f3feff6fa289f0a86f4866fa20df42414595dd0134f8037 ed1637f0e2522b2dd003b6eb936f05fffbd4f4107bba6eb0080e93715000010b754 001281271408c640252081b1b22500013c5c66201368004e04467520dc11067152b 82094d418e100247205805494780105002601530020931400020ac5c91088b0f2b0 8c21c07d0c2006009fdfe81f80efe0107fe0fb1c3ffff8ffc3fffef8f7febffbfcf 87ffbff64 http://myserv
Resulting Screen Wed Fri Nov Apr 6 14 9:30am L1 John XML Doe 00:05 Mail 9725551234 Hold Mute Transfer Conf Exit Figure 56: ImageScreen Example (6739i) InputScreen Object – Single Input field (all models) 3.6 The InputScreen object allows developers to create a screen capable of gathering user input.
^Cancel Up Arrow Exit vDone Down Arrow Done Right Arrow Next Character Left Arrow Previous Character prgkey2 (Delete) Backspace Input field Note: the Up Arrow key interaction is disabled if the LockIn tag is set to “yes”. the Up Arrow key interaction can be modified using the cancelAction tag. Softkey phone keys Line selected Input field Keys Right Arrow Next Character Left Arrow Previous Character 55i/57i/57iCT/9480i/9480iCT/6735i/6737i Common default Softkeys Position 3.6.
Position 6(4) Label Description URIs Cancel Redisplays the previous XML object present in the phone browser. Not available if LockIn set to “yes”. SoftKey:Exit Top Title Title Zone Line 1 Title Zone Line 2 Field prompt Input Zone Softkey 1/4 Softkey 2/5 Softkey 3/6 Figure 57: InputScreen implementation on 6867i 3.6.
Fri Nov 6 9:30am XML Title Zone Line 1 Title Zone Line 2 Softkey 1 Softkey 2 Softkey 6 Softkey 7 Field prompt Input Zone Softkey 3 q Softkey 8 w a CAP e s z r d x Hide Canc t f c y g v 123 u h b Space i j n o k p l m Bksp Enter . Figure 58: InputScreen implementation on 6739i Object native interaction Submit (SoftKey:Submit) URI and value.
LockIn = “yes/no” GoodbyeLockInURI = “some URI” inputLanguage = “English / French / German / Italian / Spanish / Portuguese/ Russian / Nordic" >
Title string Top Title Document Object Position Type Comments XML object. Beep Root tag Timeout Root tag LockIn Root tag GoodbyeLockInURI defaultFocus Root tag inputLanguage Root tag allowAnswer PA-001011-03-04 Root tag Root tag Aastra Optional “yes” or “no” to indicate if a notification beep must be generated by the phone. Optional Overrides the default 45 seconds timeout of the UI XML object. A Timeout set to “0” will disable the timeout feature. See section 4.10.
Document Object allowDrop Position Root tag allowXfer Root tag Type Comments Optional This tag applies only to the non-softkey phones. If set to “yes”, the phone will display “Drop” if the XML object is displayed when the phone is in the connected state. Default value is “no”. See section 6.4 for more details. Only for 6730i, 6731i, 53i, 6739i, 9143i, 6863i, 6865i Optional This tag applies only to the non-softkey phones.
Document Object Position Type Comments “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i and 6739i only TopTitle Icon Body Optional Text to be used as top title for the object 6867i and 6739i only. TopTitle tag Optional Index of the icon to be used for the top title 6867i and 6739i only.
Document Object Position Type Comments “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “yellow” for 6867i and “white” for 6739i. 6867i and 6739i only URL Body Mandatory URI called when completes his input. user Parameter Body Mandatory Name of the parameter to be added to the URL after input is complete.
3.6.5 Input Type: IP When the type is set to IP, the user input is restricted to integers only. The phone will validate the user input; if an invalid IP address is entered, nothing will be sent to the server and the user will receive an error message. Object default Softkeys (softkey phones) Position Label Description URIs 1 Backspace Deletes the character before the cursor in the input field. SoftKey:BackSpace 2 Dot “.” Inserts a “.
Resulting Screen (softkey phone) Figure 60: InputScreen “IP” Example (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML Proxy Server Server IP: 192.168.0.100 1 2 3 - * : 4 + “ Hide Canc 5 / @ 6 = . &%* 7 % _ 8 # 9 $ 0 & , Bksp Enter Space Figure 61: InputScreen “IP” Example (6739i) 3.6.6 Input Type: Number Like an IP screen, a number input screen restricts the user to numbers only. Field validation is performed on the user input.
6 Cancel Redisplays the previous XML object present in the phone browser. Does not appear if LockIn set to “yes”. SoftKey:Exit XML Example Proxy Port Port: http://10.50.10.53/script.
Resulting Screen (6739i) Fri Nov 6 9:30am XML Proxy Port Port: 5060 1 2 3 - * : Hide Canc 4 + “ &%* 5 / @ 6 = . 7 % _ 8 # 9 $ 0 & , Bksp Enter Space Figure 64: InputScreen “Number” Example (6739i) Note: In this example, when the user presses “Done” or “Submit” or “Enter” on the phone after entering “5060”, the phone will call the following URL “http://10.50.10.53/script.pl?port=5060”. 3.6.
In Upper Case or Lower Case mode, keys 2-9 scroll through the keypad letters (e.g. pressing repeatedly 2 in Upper case mode will scroll through ABC2) Object default Softkeys (softkey phones) Position Label Description URIs 1 Backspace Deletes the character before the cursor in the input field. SoftKey:BackSpace 2 Dot “.” Inserts a “.” in the user input at the cursor position SoftKey:Dot 3 ABC> Toggle between input modes, “ABC”, “123”, “abc”.
Resulting Screen (softkey phone) Figure 66: InputScreen “String” Example (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML SIP Settings Enter something ***** q w a CAP e s z Hide Canc r d x 123 t f c y g v u h b Space i j n o k p l m Bksp Enter . Figure 67: InputScreen “String” Example (6739i) Note: In this example, when the user press “Done” or “Submit” or “Enter” on the phone after entering “12345”, the phone will call the following URL “http://10.50.10.53/script.
The user navigates between the various fields using the left and right navigation arrow keys, the toggle between AM and PM is done using the right navigation arrow key with the cursor positioned right before the AM/PM field. Notes: the “password” attribute has no effect on this input type. the format of the “Default” attribute must be HH:MM:SSXX where XX is AM or PM, HH between 00 and 12 and MM/SS between 00 and 59. If the “Default” tag is empty, the phone displays “12:00:00 AM”.
Resulting Screen (softkey phone) Figure 69: InputScreen “TimeUS” Example (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML Time US Enter time: 1 2 12 : 00 3 4 - * : Hide Canc + “ &%* : 00 5 / @ AM 6 = . 7 % _ 8 # 9 $ 0 & , Bksp Enter Space Figure 70: InputScreen “TimeUS” Example (6739i) Note: In this example, when the user press “Done” or “Submit” or “Enter” on the phone after entering “10:20:00 AM”, the phone will call the following URL “http://10.50.10.53/script.
The user navigates between the various fields using the left and right navigation arrow keys. Notes: the “password” attribute has no effect on this input type. the format of the “Default” attribute must be HH:MM:SS with HH from 00 to 23. If the “Default” tag is empty, the phone displays “00:00:00”. Object default Softkeys (softkey phone) Position Label Description URIs 5 Done Completes the user input by submitting the programmed URI and value.
Resulting Screen (softkey phone) Figure 72: InputScreen “TimeInt” Example (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML Time International Enter time: 1 2 00 : 00 3 4 - * : Hide Canc + “ &%* : 00 5 / @ 6 = . 7 % _ 8 # 9 $ 0 & , Bksp Enter Space Figure 73: InputScreen “TimeInt” Example (6739i) Note: In this example, when the user press “Done” or “Submit” or “Enter” on the phone after entering “14:20:00”, the phone will call the following URL http://10.50.10.
The user navigates between the various editable fields using the left and right navigation arrow keys. Notes: the “password” attribute has no effect on this input type. the format of the “Default” attribute must be MM/DD/YYYY. If “Default” tag is empty, today’s date is displayed. Object default Softkeys (softkey phone) Position Label Description URIs 5 Done Completes the user input by submitting the programmed URI and value.
Resulting Screen (softkey phone) Figure 75: InputScreen “DateUS” Example (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML Date US Enter date 11 1 2 3 - * / 12 : Hide Canc / 2009 4 + “ &%* 5 / @ 6 = . 7 % _ 8 # 9 $ 0 & , Bksp Enter Space Figure 76: InputScreen “DateUS” Example (6739i) Notes: 120 In this example, when the user press “Done” or “Submit” or “Enter” on the phone after entering “06/14/2009”, the phone will call the following URL “http://10.50.10.
3.6.11 Input Type: dateInt When the input type is set to “dateInt”, the user can enter a date using the international format (DD/MM/YYYY). The user navigates between the various editable fields using the left and right navigation arrow keys. Notes: the “password” attribute has no effect on this input type. the format of the “Default” attribute must be DD/MM/YYYY. If “Default” tag is empty, today’s date is displayed.
Resulting Screen (softkey phone) Figure 78: InputScreen “DateInt” Example (softkey phone) Resulting Screen (6739i) Fri Nov 6 9:30am XML Date International Enter date / 06 14 1 2 * &%* 3 / 2011 4 5 6 7 8 - + / = % # : “ @ .
InputScreen Object – Multiple Input fields (55i / 57i / 57iCT / 9480i / 9480iCT / 6735i / 6737i / 6739i) 3.7 The InputScreen object can support up to 10 input fields, each of them potentially having different individual attributes. The supported input types for each field are the same than the ones supported for the single input object plus an ‘empty’ type.
Position 3.7.2 Label Description URIs 5 Done Completes the user input by submitting the programmed URI and value. SoftKey:Submit 6 Cancel Redisplays the previous XML object present in the phone browser. Not available if LockIn set to “yes”. SoftKey:Exit Implementation on the 6867i On the 6768i, the input is very similar to the softkey phones. The Left/Right keys are used to navigate between characters in the input field.
“SoftKey:Exit” Object default Softkeys Six customizable softkeys are available for this object. If more than 4 softkeys are configured or needed the softkeys are displayed on 2 pages. Position 3.7.3 Label Interaction URIs 5(3) Done Completes the user input by submitting the programmed URI and value. SoftKey:Submit 6(4) Cancel Redisplays the previous XML object present in the phone browser. Not available if LockIn set to “yes”.
Fri Nov 6 9:30am XML Title Zone Line 1 Title Zone Line 2 Softkey 1 Softkey 2 Softkey 3 Softkey 4 Field prompt 1 Input Zone 1 Field prompt 2 Input Zone 2 Field prompt 3 Input Zone 3 Field prompt 4 Input Zone 4 Field prompt 5 Input Zone 5 Softkey 5 Submit Softkey 6 Softkey 7 Softkey 8 Softkey 9 Softkey 10 Figure 83: InputScreen implementation on 6739i mode “condensed” Object native interaction Submit “SoftKey:Exit” Completes the user input by submitting the programmed URI and v
allowDrop = “yes/no” allowXfer = “yes/no” allowConf = “yes/no” defaultIndex = “some integer (1 to 10)” defaultFocus = “yes/no” displayMode = “normal/condensed” >
Title string Top TitleDocument Object Position Type Comments AastraIPPhoneInputScreen Root tag Mandatory Root object Type Root tag Optional Specifies the type of input, possible values are “IP”, “string”, “number”, “timeUS”, “timeInt”, “dateUS”, “dateInt”. Default value is “string”. Password Root tag Optional Specifies if the input is masked by “*” characters. Default value is “no” Editable Root tag Optional Specifies if the user is allowed to modify the input.
Document Object Position Type Comments XML object is displayed when the phone is in the ringing state. Default value is “no”. See section 6.4 for more details. Only for 6730i, 6731i, 53i, 6739i, 9143i, 6863i, 6865i allowDrop Root tag allowXfer Root tag allowConf Root tag defaultFocus Root tag displayMode PA-001011-03-04 Root tag Aastra Optional This tag applies only to the non-softkey phones.
Document Object Position Type Comments Default value is “normal” defaultIndex Root tag Optional Defines the field where the user will start his input amongst the multiple field inputs. Default 1. Title Body Optional Text to be used as title for the object Optional If set to “yes” the title of the object will be wrapped on 2 lines.
Document Object Position Type Comments “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”. 6867i and 6739i only Prompt Body Optional Text to be displayed as guidance for the user input. Is used as the default value for each input field.
Document Object Position Type Comments “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”.
Document Object Position Type Comments Label color, the possible values are: Color Prompt tag Parameter InputField Body Optional Optional “white”, “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “yellow” for 6867i and “white” for 6739i.
Document Object Default Position InputField Body Selection SoftKey InputField Body Body Type Comments Optional Default value to be displayed in the input field. Overrides the value set in the object for the field. Optional The content of this tag will be added when the “Submit” key is pressed while editing this field. Optional See section 4.1 for details. Only on 6867i, 6739i, 6755i, 6757i, 6757iCT, 6735i and 6737i.
Note: In this example, when the user press “Submit” on the phone after entering “admin” for the username and “22222” for the password, the phone will call the following URLs: http://myserver.com/script.php?user=admin&passwd=22222&selection=1, “Submit” or “Enter” key is pressed while editing the “User name” field, if the http://myserver.com/script.php?user=admin&passwd=22222&selection=2, “Submit” key or “Enter” is pressed while editing the “Password” field.
destroyOnExit="yes" >
Date and Time http://myserver.com/script.Resulting Screen (6739i) Fri Nov 6 9:30am XML Date and Time Enter Date 02 / 21 / 2010 : 00 Enter Time 12 : 00 AM Exit Submit Figure 87: InputScreen multiple inputs “normal” (6739i) PA-001011-03-04 Aastra July 2014 137
3.8 PhoneCallLog Object (6739i only) The PhoneCallLog object is an UI XML object which mimics the 6739i native user interface for “Call Logs” and “Redial”.
Note: the list is limited to 50 items. The call details of a selected call are displayed on the right side. Note: this object has no custom softkey. Object interaction The key is mapped to the cancelAction tag, if not specified the XML object is destroyed. The keys allow scrolling up and down the list of calls if needed. When one end is reached they are mapped to scrollUp or scrollDown tags, if not specified the XML object follows scrollConstrain tag.
cyan/lightgray/darkgray/lightred/lightgreen yellow/lightblue/lightmagenta/lightcyan” >Top Title name number date as MM-DD-YYYY selection to be added
Document Object Position Type Comments the current XML object displayed. allowAnswer Root tag allowDrop Root tag allowXfer Root tag allowConf Root tag Optional This tag applies only to the nonsoftkey phones. If set to “yes”, the phone will display “Ignore” and “Answer” if the XML object is displayed when the phone is in the ringing state. Default value is “no”. See section 6.3 for more details. Optional This tag applies only to the nonsoftkey phones.
Document Object TopTitle Icon Position Type Comments Body Optional Text to be used as top title for the object TopTitle tag Optional Index of the icon to be used for the top title Label color, the possible values are: Color LogItem duration “white”, “black”, “red”, “green”, “brown”, “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white”.
Document Object Position Comments Number LogItem body Mandatory Caller or Callee number Date LogItem body Mandatory Call date MM-DD-YYYY Time LogItem body Mandatory Call time HH:MM (24 hours) LogItem body Optional This tag must be used in conjunction with custom uris (addUri, deleteUri, deleteAllUri and dialUri). See Section 4.11 for details Body Optional List of icon definitions Icon IconList body Optional Icon value, it can be “Icon:Iconname” or the URL to a png file.
Resulting Screen Wed Apr 14 9:30am Callers List Wed Jan 5 Jane Doe 408-555-1234 Jane Doe 10:01am Wed Jan 5 10:01am Sun Jan 1 2 Call(s) John Doe 03:28pm Line 1 Dial Add to Directory Delete Figure 89: PhoneCallLog Example If user presses the “Add to directory” button, phone will perform the following HTTP GET. http://myserver/myscript?action=add&selection=2 3.
The non softkey phones display messages on the second line. Long messages that are wider then the phone screen get truncated. Default Softkeys Not Applicable, this object has no predefined softkey as it impacts only the idle screen of the Aastra SIP Phones. Note: On the 6867i alert messages are displayed in red 3.9.2 Implementation on the 6739i On the 6739i, the status messages are displayed in a “box” on the idle screen which is also used by the phone to display the missed calls.
Figure 90: AastraIPPhoneStatus implementation on the 6739i (no URI callback) L1 214-555-1234 01 Softkey 7 Softkey 1 Softkey 2 Fri Nov 6 9:30am 214-555-1234 Softkey 8 John Doe Softkey 9 Softkey 3 Softkey 4 Status Message Line 1 Status Message Line 2 Softkey 10 Softkey 5 Softkey 11 Softkey 6 Softkey 12 Figure 91: AastraIPPhoneStatus implementation on the 6739i (with URI callback) 3.9.
could only be one Session tag per PhoneStatusMsg object. If the Session tag is not provided, the phone assumes a default value (0) for it; this can be used if you don’t have multiple applications displaying messages on the idle screen. The type=”alert” tag indicates the alert mode, if not specified, the message is displayed in the normal mode. In this mode a timeout of “0” indicates that the alert message is displayed is displayed until a new alert is posted or until the phone is rebooted.
Document Object Position Type Comments “blue”, “magenta”, “cyan”, “lightgray”, “darkgray”, “lightred”, “lightgreen”, “ yellow”, ”lightblue”, “lightmagenta”, “lightcyan” If not specified the default value is “white” for standard messages and “red” for alert messages. 6867i and 6739i only Type of message, “alert” to indicate that the message is displayed for a limited time.
3.9.
Resulting Screens (6739i) Alert Message Displayed for 5s Message 1 is a very long message Scrolling every 3s Message 2 is shorter Figure 94: PhoneStatus Example (6739i) Note: The PhoneStatusMsg object can also be used to remove status messages from the display using the same SessionID and the same index. This can be accomplished by setting an empty tag for the Message tag.
3.10 PhoneExecute Object (all models) The PhoneExecute object allows an external application to ask the phone to execute a sequence of local actions using a URI. 3.10.1 Implementation The actions can be: Any supported uri o http(s)://myserver.com/myscript.pl, you can now use variables in the URI, variables are parsed by the phone. o Dial:XXXXX o DialLine:X:YYYYY (X is the SIP line number, YYYYY is the number or URI to dial) see chapter 4.7 for more details on this feature.
In order to prevent a pushed dial uri from putting an active call on hold the PhoneExecute object supports an optional tag ”interruptCall”. By default, the attribute will allow the current call to be interrupted. To prevent this, set the attribute to “no”. 3.10.
Clear the Redial List Reset the phone Notes: the “do nothing” can be used when an application needs to display nothing as an answer to a HTTP GET. you must be careful when you use the “Dial:” URI as the state of phone is unknown at the time of the XML GET. the FastReboot command will speed up the boot process of the phone which may be useful in the self-configuration application.
3.11 PhoneConfiguration Object (all models) The PhoneConfiguration object allows an external application to modify the phone configuration dynamically. The configuration parameters are the ones that are used in the configuration files (aastra.cfg and .cfg) and detailed in the administrator guide. 3.11.
parameter# Or parameter value XML Document Objects Document Object Position Type Comments AastraIPPhoneConfiguration Root tag Mandatory Root object Beep Root tag Optional “yes” or “no” to indicate if a notification beep must
3.11.
the phone will reboot. Upon booting tftp server will still have the value "10.50.103.12". This value will be lost after configuration files have been downloaded from the server.
4 XML extensions 4.1 Customizable Softkeys (softlkey phones) The Softkey object can be used to override the default softkeys in each of the XML objects. It allows developers to link arbitrary URIs to keys in the XML screens and invoke softkey behavior native to each XML screen type.
Notes: Custom softkeys are only available for the UI XML objects.
“SoftKey:BackSpace” is available only for the AastraIPPhoneInputScreen object, it deletes the character placed before the cursor. “SoftKey:NextSpace” is available only for the AastraIPPhoneInputScreen object, it inserts a “space” character at the cursor position. “SoftKey:Dot” is available only for the AastraIPPhoneInputScreen object, it inserts a “.” character at the cursor position.
Note: SymbolList supports only standard ASCII characters. Note that there can be multiple SymbolList softkeys with different list of symbols. There are some special characters that need to be encoded due to XML limitations (see chapter 2.6 for the encoded value). Available object commands (6739i) “SoftKey:Exit” is available for all UI XML objects and redisplays the previous XML object present in the phone browser. “SoftKey:Submit” is available for AastraIPPhoneInputScreen.
SoftKey 2 Conf SoftKey List Formatted TextScreen X ImageScreen ImageMenu X X You can define up to six or ten softkeys depending on the phone model before the closing tag of any object. The following example illustrates the use of the softkey XML element used with the Text Menu object, and the resulting screen output. XML Example 1 My Directory
Resulting Screen (9480i/9480iCT/55i/57i/57iCT/6735i/6737i) Resulting Screen (6739i) Fri Nov 6 9:30am XML My Directory John Doe 1 Previous Next John Doe 2 John Doe 3 Exit XML Example 2 (9480i/9480iCT/55i/57i/57iCT/6735i/6737i) Title Enter email address http://myserver.com/script.
SoftKey:BackSpace SoftKey:SymbolList="@." SoftKey:Submit SoftKey:Exit Resulting Screen 4.2 Graphics (55i/57i/57iCT/6735i/6737i/6867i/6739i) 4.2.1 Images 4.2.1.
any black and white Windows bitmap to the hexadecimal string to be used with Aastra graphical XML objects. The syntax under Windows command line interface is “bitmapconverter XXXXX.bmp”, the output is the result. Screen resolution The 55i/6735i screen has a resolution of 144 by 75 pixels. left x=0 middle x=72 right x=144 top y=0 middle y=25 51 pixels bottom y=51 24 pixels Figure 95: Aastra 6755i screen. Similarly, the 57i/57iCT/6737i has a resolution of 144 by 128 pixels.
HTTP HTTPS The area available to display the picture is 320x240 pixels, the phone uses the provided width and height tags as the display zone, if the image sent is bigger than the display zone, the picture is clipped using the top left corner as the origin of the clipping area. Same thing if the width or height is larger than the supported resolution, the phone will use the minimum value and will clip if needed.
7 6 5 4 3 2 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 AA 54 AA 54 AA 00 FE 92 92 92 82 Figure 97: One cell icon For a two cell icon, the recommended size is 11x7.
Name Icon Name Icon PhoneRinging FilledCircle DND EmptyCircle ArrowRight Envelope ArrowLeft Square Prohibit Ellipse Speaker TailArrowUp ArrowUp TailArrowDown Icons declaration Icons are identified by an index in the XML objects; this index refers to the IconList tag which must be present each an icon is used.
Softkeys, all the icons must be defined in a single IconList tag. Other useful icons Icon Hex Value 4.2.2.2 Icon Hex Value 000000007E565AFE00000000 000000FEAEFAAEFE00000000 00000066 4E5A4E6600000000 00000010 3E7A3E1000000000 Implementation on the 6867i The 6867i also support icons in some XML objects: AastraIPPhoneTextMenu in the menuItem tags All UI objects in TopTitle tag But not in the Custom softkeys for the UI XML objects.
Name Icon Name Icon:BLF_Busy Icon:PhoneDial Icon:BLF_Hold Icon:PhoneOffHook Icon:BLF_Ringing Icon:PhoneOnHold Icon:BLF_Unknown Icon:PhoneOnHook Icon:Book Icon:PhoneRinging Icon:Calendar Icon:PresenceAbsent Icon:CallFailed Icon:PresenceAvailable Icon:CallFwd Icon:PresenceBusy Icon:CellPhone Icon:PresenceMeeting Icon:CheckBoxCheck Icon:PresenceNotAvailable Icon:CheckBoxUnCheck Icon:PresenceSignedOut Icon:CircleBlue Icon:PresenceUnknown Icon:CircleGreen Icon:Prohibit Icon:CircleRed
Name Icon Name Icon Icon:Edit Icon:Speaker Icon:Envelope Icon:StarBlue Icon:EnvelopeOpen Icon:StarYellow Icon:Home Icon:TailArrowDown Icon:Incoming Icon:TailArrowUp Icon:IncomingMissed Icon:UnLock Icon:Information Icon:Warning Icon:Key Icon:World Icons declaration Icons are identified by an index in the XML objects; this index refers to the IconList tag which must be present each an icon is used.
Predefined icons Some predefined icons are available in the phone. To use the predefined icons you must set the Icon tag to Icon:IconName where IconName is the name of the predefined icon. Here is the list of the available icons.
Name Icon Name Icon Icon:CheckBoxCheck Icon:Edit Icon:Lock Icon:Information Icon:UnLock Icon:CircleBlue Icon:EnvelopeOpen Icon:CircleRed Icon:Home Icon:CircleGreen Icon:Book Icon:CircleYellow Icon:Warning Icon:World Icon:Office Icon:StarBlue Icon:Save Icon:StarYellow Icon:PresenceAvailable Icon:PresenceMeeting Icon:PresenceAbsent Icon:PresenceNotAvailable Icon:PresenceBusy Icon:CallFwd Icon:MissedCall Dynamic icons Dynamic icons are identified by an URI which is the location of t
HTTP HTTPS Note: dynamic icons are not yet supported in the AastraIPPhoneStatus phone object. Example http://myserver/icons/icon.png Icons declaration Icons are identified by an index in the XML objects; this index refers to the IconList tag which must be present each an icon is used.
Keys supported on a 9143i prgkey1 to prgkey7 Keys supported on a 9480i/9480iCT None Keys supported on a 53i prgkey1 to prgkey6 Keys supported on a 55i/6735i prgkey1 to prgkey6 softkey1 to softkey20 Keys supported on a 57i/57i CT/6737i topsoftkey1 to topsoftkey10 softkey1 to softkey20 Keys supported on a 6865i prgkey1 to prgkey8 Keys supported on a 6867i topsoftkey1 to topsoftkey20 Keys supported on a 6739i softkey1 to softkey55 Keys supported on an expansion module (5
Softkey 1 Softkey 1 “LED” off “LED” on XML Example PAGE 177 With the audio mixing set to on, the command will apply on the existing audio path, for instance, sending a RTPTx will “add” the RTP streaming to the audio path. The typical use is for “agent whisper” in a contact center environment, “page whisper”, call recording… With the audio mixing set to off, the command will create a new audio path putting the initial call on hold, for instance sending a RTPTx will create a new audio path. The typical use is for paging. Notes: Mixing is not supported: 4.4.
Phone State Action on top of the existing call. Paging line is not displayed. The active voice call is dropped (RTP stream was being played on top of this voice call). RTP stream is dropped as well. A new call comes in while the active voice call (RTP stream was being played on top of this voice call) is put on hold. RTP mixed stream is played on top of the currently active call. Example1: This example orders the phone to receive a unicast RTP stream from 10.30.100.
and RTPMRx:Stop commands as well but does not enable any further listening. 4.4.2 RTPTx The RTPTx URI instructs the phone to transmit a Unicast RTP stream or to stop transmitting Unicast or Multicast RTP streams. The RTPTx formats to use with the AastraIPPhoneExecute object in the URI are: RTPTx:i:p:[mix]:[disableIcon] RTPTx:Stop Where • i specifies the IP Address to which an RTP stream is transmit ed. • p specifies the UDP port on which to transmit the RTP stream.
This example orders the phone to send a unicast RTP stream to 10.30.100.20 on UDP port 21000 with audio mixing. Example 3: This example orders the phone to send a unicast RTP stream to 10.30.100.20 on UDP port 21000 with audio mixing and “mix” icon disabled.
Phone State Action 57iCT/9480iCT, base and handsets are in a “connected” state. Request for receving RTP is declined. 57iCT/9480iCT, handset is in “connected” state. Phone starts playing the incoming RTP stream on top of the existing call. Paging line is not displayed. The active voice call is dropped (RTP stream was being played on top of this voice call). RTP stream is dropped as well.
4.4.4 RTPMTx The RTPMTx URI instructs the phone to transmit a Multicast RTP stream. The RTPMTx format to use with the AastraIPPhoneExecute object in the URI is: RTPMTx:i:p:[mix]:[disableIcon] Where • i specifies the Multicast IP Address to which an RTP stream is transmitted. • p specifies the UDP port on which to transmit the RTP stream. You must ensure that this is a number greater than 3100 to make sure not to use a port already bound to the phone.
Example 2: This example orders the phone to send a multicast RTP stream to 239.0.1.20 from UDP port 21000 with audio mixing. Example 3: This example orders the phone to send a multicast RTP stream to 239.0.1.20 from UDP port 21000 with audio mixing and “mix” icon disabled. 4.4.
Phone does not send a response detailing the success or failure of a simulated key. Lines Key:Line1 to Key:Line4 Line 1 to 4 Note: Since no Aastra phone has Line 5 to 9 physical keys, Line5 to Line9 are not supported.
Key:Intercom Intercom Key:Directory Directory Key:Options Options Key:Save Save Key:Delete Delete Key:Goodbye GoodBye Key:Voicemail Voicemail Note: Since the phones do not have physical keys for Pickup and Park, those features will be only available if they are mapped to a programmable or soft key Navigation (not available on 6739i) Key:NavUp Navigation up key Key:NavDwn Navigation down key Key:NavLeft Navigation left key Key:NavRight Navigation right ke
As the phone displays a “Wav streaming” screen, the beginning of the streaming destroys the current XML display so diverting the action uri incoming and onhook is the only way to regain control for the XML application. The typical use for this feature is a voicemail application or podcasts. Note: Paging will not interrupt the streaming unless barge-in is set. 4.6.1 XML Commands The phone supports 2 AastraIPPhoneExecute commands. 'Wav.Play' and 'Wav.Stop'. XML Command: Wav.
Wav file G.711 µ-law and a-law Codec 20 ms packet size Mono 8KHz If the format is not supported by the phone, the request is declined. 4.6.3 Interaction with action uris action uri incoming/connected When the phone starts streaming the wav file, the action uri incoming as well as action uri connected are triggered and the XML variables get the following values.
4.7 Wav file loop playback (melody) The phone also has the capability to download a wav file from a TFTP / FTP / HTTP server and play it continuously until it is stopped by a stop command or a user intervention. Unlike the “Wav” streaming commands the file is first downloaded from the server and them played in loop locally on the phone. For performance reasons, up to 8 wav files can be cached on the phone to allow a faster playback for following commands. The cache is limited to 400k and lost at reboot.
Syntax: Melody.Stop: Example: 4.7.2 File format The phones support only the following file format: Wav file G.711 µ-law and a-law Codec 20 ms packet size Mono 8KHz 200 kb If the format is not supported by the phone, the request is declined. 4.8 Dial and DialLine URIs The phone supports 2 URI commands to launch an outgoing call from XML. Dial:XXXXX DialLine:Y:XXXXX Where XXXXX is the number/URI to dial and Y is the SIP line number.
Phone model Max Line 6730i, 6731i 6 6735i, 6737i, 6739i, 6753i, 6755i, 6757i, 6757iCT, 9143i, 9480i, 9480iCT 9 6863i 2 6865i/6867i 9 4.9 Crash and configuration files retrieval The phone has the capability to upload the last crash file as well as the configuration files to a preconfigured location. This operation can be triggered manually via the Web UI or via the phone (if configured) but also via an XML command. Example In the configuration file (aastra.cfg or MAC.
For example, if an AastraIPPhoneStatus object has the attribute of Beep=”yes”, and you uncheck (disable) the “XML Beep Support” in the Aastra Web UI, the phone does not beep when it receives an AastraIPPhoneStatus object. 4.10.2 Timeout The Timeout attribute is an optional root tag attribute for all of the current UI XML objects. When the phone receives an XML object with this attribute set it will override the default 45 seconds timeout specified for custom applications.
http://someserver/somepage.xml dataToAppend http://someotherserver/someotherpage.xml When the user selects item 1 and presses softkey 1, the URI requested is http://someotherserver/someotherpage.xml?selection=dataToAppend Notes: If a “?” already exists in the URI, then a “&” is used to separate the parameters. Note the parameter name “selection” is automatic.
# Adjust with the style switch($style) { case 'none': case 'radio': $length--; break; default: $length-=4; break; } # Unbreakable space $nbsp=chr(0xa0); # Pad the the first line with regular spaces switch($mode) { case 'center': $line=str_pad($line1,$length-1-$offset,$char,STR_PAD_BOTH); break; case 'right': $line=str_pad($line1,$length-1-$offset,$char,STR_PAD_LEFT); break; default: $line=str_pad($line1,$length-1-$offset,$char,STR_PAD_RIGHT); break; } # Crop the line to the correct length (-1 for wrap-space
mode Optional padding mode (“left”, “right”, “center”), “left” is the default value. Examples 2 lines left justified with double size icon format_line(‘Line 1’,’Line 2’,’none’,2,’ ‘); generated with the ‘envelope’ icon. 1 line centered with ‘-‘ padding format_line(‘Line 1’,’’,’none’,0,’-‘,’center’); PHP SDK This function has been embedded in the XML SDK (fully described in chapter 13) within the AastraIPPhoneTextMenu constructor.
$menu->output(); 4.13 “Select” and “Dial” in the same TextMenu object The only way to have a “Select” and “Dial” keys in the same text menu, the only option is to use “Dial” as a system command and mimic “Select” with a custom key.
4.14 “Select”, “Dial” and “Dial2” behavior in a TextMenu object The following table describes what actions will be performed for each possible combination of items and actions in a
‘User-Agent’ providing information on the characteristics of the phone (type, MAC address, firmware), ‘X-Aastra-ExpMod1’ providing information on the expansion module 1 if present, ‘X-Aastra-ExpMod2’ providing information on the expansion module 2 if present, ‘X-Aastra-ExpMod3’ providing information on the expansion module 3 if present, ‘Accept-Language’ providing information on the language used on the phone. Example: User-Agent: Aastra57i MAC:00-08-5D-19-94-B7 V:2.3.1.
$header[‘mac’]=$value[1]; $header[‘firmware’]=$value[2]; return($header); } This function returns an array with Array[‘model] is the phone model o “Aastra9143i”, o “Aastra9480i”, o “Aastra9480iCT”, o “Aastra6730i”, o “Aastra6731i”, o “Aastra6735i” o “Aastra6737i” o “Aastra6739i” o “Aastra53i”, o “Aastra55i”, o “Aastra57i” o “Aastra57iCT” o “Aastra6863i” o “Aastra6865i” o “Aastra6867i” Array[‘mac’] is the MAC address Array[‘firmware’] is the firmware version Example o
560M for the 60 keys self labeled expansion module (6735i, 6737i, 6739i, 55i, 57i, 57i CT) M680i for the 16 keys paper labeled expansion module (6867i) The following source code is a php example that can be used to decode the X-Aastra_ExpMod header sent by an Aastra phone.
For XML applications using data from the Internet, it they are not real time you might consider to “cache” the data on the server and update them on a regular basis (a weekly update is necessary for Movie schedules but a 10 minutes update might be necessary for a weather application for severe conditions). As the XML objects are limited to 10000 bytes, you might sometime hit this limit for a complex TextMenu with a lot of custom keys and custom icons.
5 URL Format and Variables 5.1 URL format To access to an XML application the phone performs a HTTP (or HTTPS) GET on a URL. The supported syntax is: http://host[:port]/dir/file or https://host[:port]/dir/file where: host is the hostname or IP address of the Web server supporting the XML application port is the port number the phones is using for the HTTP request. Note: If the port is not specified, the phone uses port 80. The phone also supports the following URLs: 5.
Variable Name Value CALLDIRECTION Direction of the current call (“Incoming” or “Outgoing”) REGISTRATIONCODE 3 digits registration code for the registration coming from the SIP Proxy server. REGISTRATIONSTATE Registration state available from the Registration event, values are: LINESTATE “REGISTERED", "UNREGISTERED", "EXPIRED", "REFUSED", "TIMEOUT".
$$SIPAUTHNAME$$ Active line SIP authentication name $$PROXYURL$$ Active line SIP proxy $$ACTIVEPROXY$$ Active line active SIP proxy They can be used anywhere where the active line is meaningful for your XML application but they should not be used with outside event action uris such as action uri poll or action uri xml sip notify as the active line can be anything when the event is processed. 5.2.2 Variables related to the current call The following variables are related to the current call.
startup registered registration onhook REMOTENUMBER X LINESTATE X LOCALIP X X X offhook incoming X outgoing disc. poll X X X X CALLDURATION X X CALLDIRECTION X X X X X X X X X3 X X X X X X X X REGISTRATIONSTATE X X X REGISTRATIONCODE X X X 5.2.4 Phone State The following table details when the variables are meaningful for a programmable/soft key depending on the phone state.
To allow HTTPS connections, the web server must have a root certificate; this certificate must be signed by a certificate authority of one form or another, which certifies that the certificate holder is indeed the entity it claims to be. The certificate can also be self-signed. Aastra SIP phones come with the signing certificates of Verisign GeoTrust Thwate So, only certificates signed by these Certification Authorities can be verified by the phone.
dHJpeGJveDAeFw0wODA2MTAxOTM4MzZaFw0wOTA2MTAxOTM4MzZaMIGlMQswCQYD VQQGEwItLTESMBAGA1UECBMJU29tZVN0YXRlMREwDwYDVQQHEwhTb21lQ2l0eTEZ MBcGA1UEChMQU29tZU9yZ2FuaXphdGlvbjEfMB0GA1UECxMWU29tZU9yZ2FuaXph dGlvbmFsVW5pdDETMBEGA1UEAxQKbXlfdHJpeGJveDEeMBwGCSqGSIb3DQEJARYP cm9vdEBteV90cml4Ym94MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUZa1m 3ienPcP1zmgp2jT7oGnVoSfKmOs7n7kLpWTUyWpmEfrleetVoRoaGL5j+zTwaAjO lp9apC17nwe0qRC2BuPDyzkVE4f30Vn2pm1u5yYDoi+yRE1NFyVLbQwLFTffUGwQ kfC7YabPdbjQ87/XU6/AhuquET0n3nNE9NwQHwIDAQABo4IBBjCCAQIwH
Range 0 or 1 Example https validate expires : 1 Parameter – https validate hostname Configuration Files aastra.cfg, .cfg Description When this parameter is set to 1 the https client will verify the commonName of a certificate matches the server it is connecting to prior to accepting the certificate Format Boolean (0=disabled, 1=enabled) Default Value 1 (enabled) Range 0 or 1 Example https validate hostname : 1 Parameter – https user certificates Configuration Files aastra.cfg, .
HTTPS Settings Note: Depending on the changes performed, you might have to reboot the phone to apply them. 5.4 XML Objects Pushed to the Phone 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 to the screen. The HTTP POST packet must contain an “xml=” line in the message body. The string to parse is located after the equals sign in the message.
$post .= "Content-Type: text/xml\r\n"; $post .= "Content-Length: ".strlen($xml)."\r\n\r\n"; $fp = @fsockopen ( $phone, 80, $errno, $errstr, 5); if($fp) { fputs($fp, $post.$xml); flush(); fclose($fp); } } ############################## $xml = "\n"; $xml .= "Push test\n"; $xml .= "This is a test for pushing a screen to a phone. It is a way to demonstrate that we can push XML objects to an Aastra Phone.\n"; $xml .
6 Action URIs Configuration parameters have been introduced to configure the phone to make an HTTP GET based on events, these events are: End of the boot sequence action uri startup Successful registration action uri registered On-hook action uri onhook Off-hook action uri offhook Incoming call action uri incoming Outgoing call action uri outgoing Time based action uri poll SIP Notify action uri xml sip notify Connect action uri connected Disconnect action ur
Example action uri startup: http://myserver.com/startup.php action uri incoming: http://myserver.com/incoming.php?number=$$REMOTENUMBER$$ sip xml notify event: 1 action uri xml sip notify: http://myserver.com/notify.php 6.2 Action uri detailed behavior Action uris are available on all the lines and line appearance of the phone so passing the system variables $$SIPUSERNAME$$ or $$SIPAUTHNAME$$ and $$PROXYURL$$ or $$ACTIVEPROXY$$ will define which line has triggered the action uri. Notes: 6.2.
6.2.4 Action uri outgoing The action uri outgoing is triggered each time an outgoing call is performed by the phone (SIP INVITE message sent). Note: the action uri outgoing is also triggered when the user makes a second call to perform a transfer or a conference. 6.2.5 Action uri connected The action uri connected is triggered each time the phone transitions to a connected state. This includes regular phone calls but also Intercom, Paging, RTP streaming or Play Wav. Notes: 6.2.
6.2.7 Action uri startup The action uri startup is triggered at the end of the phone boot sequence. 6.2.8 Action uri registered The action uri registered is triggered the first time the phone registers successfully a line to its SIP proxy/registrar. If the phone has multiple SIP registration, the action uri registered is triggered for each line. 6.2.
Max-Forwards: 70 Event: aastra-xml Content-Type: application/xml Content-Length: 115 When the phone receives the SIP NOTIFY, the XML content is processed as any XML object; in this example, the phone will call http://10.30.100.39/XMLtests/SampleTextScreen.xml after reception of the SIP NOTIFY. Note: The phone supports all the current XML objects with all the existing limitations.
sip notify aastra-xml 200 201…. Where 200, 201… are the SIP peers for the Aastra SIP phones. This will trigger the action uri xml sip notify if it has been enabled and properly configured. “Answer” and “Ignore” keys for action uri incoming 6.
Call Center As for the Screen pop, the incoming URI can be used in a call center environment to display CRM or queue information on the caller. The on-hook URI can also be used to collect the wrap-up code at the end of a call.
7 XML Configuration After creating an XML application to use on the IP phone, the application can be accessed as a Service or a Key. 7.1 Configuring a Custom Service from the Web UI The custom service is available only for 9480i/9480iCT/55i/57i/57i CT/6735i/6737i. To load a new custom XML application to the IP phone, enter an HTTP address for the application at the “Softkeys and XML” screen in the Aastra IP Phone Web interface. 1. Select Operation=>Softkeys and XML. 2.
7.2 Configuring a Soft or Programmable Key using the phone Web UI In addition to linking an XML application to a custom service, an application can be also be linked to a softkey and/or a programmable key depending on the phone and on the phone configuration (expansion modules). 1.
XML Push Server List 7.4 Configuring the Action URIs using the phone Web UI You can configure the URI to be called for each type of event supported by the phone from the Web UI... 1. Select Advanced Settings=>Action URI. 2. Enter the URI for each type of event. 3. Click .
7.5 Configuring the XML Beep Support using the phone Web UI You can configure the XML Beep Support (enabled or disabled) from the Web UI. It impacts the behavior of the AastraIPPhoneStatus object regarding the phone notification. 1. Select Basic Settings=>Preferences. 2. Enable or disable the parameter. 3. Click . XML Beep Support 7.6 Configuring the Status Scroll Delay using the phone Web UI You can configure the Status Scroll Delay (delay in seconds, default 5) from the Web UI.
Status Scroll Delay 7.7 Configuring the XML SIP Notify using the phone Web UI You can configure the XML SIP Notify from the Web UI. It will enable or disable SIP Notify aastraxml to be processed by the phone. 1. Select Advanced Settings=>Global SIP. 2. Enable or disable the parameter. 3. Click .
XML SIP Notify 7.8 XML Configuration using the Configuration Files The aastra.cfg and .cfg Configuration File contains all the configuration parameters for the phone. Please refer to the phone administration guide for more details. 7.8.1 General XML parameters You can configure the XML applications in the aastra.cfg or .
auto offhook Parameter – xml application URI Configuration Files aastra.cfg, .cfg Description This is the XML application you are loading into the IP phone configuration. Format HTTP server path or fully qualified Domain Name Default Value Not Applicable Range Not Applicable Example xml application URI: http://172.16.96.63/aastra/internet.php Parameter – xml application title Configuration Files aastra.cfg, .
address Default Value Not Applicable Range Not Applicable xml application post list: 10.50.10.53, Example dhcp10-53.ana.aastra.com Parameter – xml beep notification Configuration Files aastra.cfg, .cfg Description Enables or disables a BEEP notification on the phone when an AastraIPPhoneStatus object containing a “beep” attribute arrives to the phone. Format Boolean Default Value Value 1 (ON) 0 (OFF) No beep is audible even if the beep attribute is present in the XML object.
Description Specifies the length of time, in seconds, that the phone will wait for a HTTP GET answer called by an XML. Format Integer Default Value 0 (no timeout) Range 0 to 4294967295 Example xml get timeout: 10 Parameter – Configuration Files aastra.cfg, .cfg xml lock override Specifies the method to use for overriding a locked phone when XML applications are sent to the phone.
Range Not Applicable Example services script: http://172.16.96.63/services.php Parameter – callers list script Configuration Files aastra.cfg, .cfg Description Specifies the XML URI to call when a “Callers List” key (prgkey or softkey) is pressed. The URI overrides native behavior of the “Callers List” key. Format HTTP server path or fully qualified Domain Name Default Value Not Applicable Range Not Applicable Example callers list script: http://172.16.96.63/callers.
Default Value Not Applicable Range Not Applicable Example redial script: http://172.16.96.63/redial.php Parameter – Configuration Files aastra.cfg, .cfg xfer script Description Specifies the XML URI to call when a “Xfer” key (prgkey or softkey) is pressed. The URI overrides native behavior of the “Xfer” key. Format HTTP server path or fully qualified Domain Name Default Value Not Applicable Range Not Applicable Example xfer script: http://172.16.96.63/xfer.
Parameter – Configuration Files aastra.cfg, .cfg icom script Description Specifies the XML URI to call when a “Icom” key (prgkey or softkey) is pressed. The URI overrides native behavior of the “Icom” key. Format HTTP server path or fully qualified Domain Name Default Value Not Applicable Range Not Applicable Example icom script: http://172.16.96.63/icom.php Parameter – Configuration Files aastra.cfg, .
options script: http://172.16.96.63/opt.php Example Notes: If no Options URI script is configured, the local Options Menu on the phone displays as normal. If you configure password access to the Options Menu, this password is required when accessing the local Option Menu, but is not required for the Options Key redirection feature.
action uri xml sip notify: sip xml notify event: action uri connected: action uri disconnected: Parameter – action uri startup Aastra Web UI: Configuration Files Description URI to be called at then end of the boot sequence.
action uri registration event: http://myserver.com/myappli.xml Example Parameter – action uri incoming Aastra Web UI: Configuration Files Advanced Settings->Action URI Aastra.cfg, .cfg Description URI to be called every time the phone receives an incoming call. Format HTTP(s) server path or fully qualified Domain Name Default Value Not applicable Range Not applicable Example action uri incoming: http://myserver.com/myappli.
Parameter – Aastra Web UI: Configuration Files action uri onhook Advanced Settings->Action URI aastra.cfg, .cfg Description URI to be called every time the phone goes back on hook after an active call. Format HTTP(s) server path or fully qualified Domain Name Default Value Not applicable Range Not applicable Example action uri onhook: http://myserver.com/myappli.
Format HTTP(s) server path or fully qualified Domain Name Default Value Not applicable Range Not applicable Example action uri xml sip notify: http://myserver.com/myappli.xml Parameter – Aastra Web UI: sip xml notify event Configuration Files Description Enables or disables the phone to accept an aastra-xml SIP NOTIFYmessage. Format Boolean Default Value 0 Advanced Settings->Global SIP-> Advanced SIP Settings Aastra.cfg, .
Range Not applicable Example action uri disconnected: http://myserver.com/di.php 7.8.3 Programmable and Soft keys You can configure keys calling an XML application using the following parameters. softkeyX/prgkeyX/topsoftkeyX/expmodT keyX type: xml softkeyX/prgkeyX/topsoftkeyX/expmodT keyX value: http://someapp.xml As described in chapter 5.2, system variables can be used in the URI to be called by pressing a key. 7.8.
8 Troubleshooting XML Applications 8.1 Introduction The following figure shows the HTTP call flows when the phone is performing an XML operation.
Nothing happens, most of the time the problem comes from a wrong configuration of the XML push list. “Cannot display”, if the XML object pushed to the phone creates a parsing error (object not properly formatted). 8.2 Troubleshooting tools The following tools will help you troubleshoot problems with the XML services. Standard web browser (Microsoft Internet Explorer 6.
Syslog Server Debug levels 8.4 Configuring the Syslog server using the configuration files The traces can also be activated from the configuration files (aastra.cfg and/or .cfg), using the following parameters: Syslog server log server ip IP address of the Syslog server log server port Port of the Syslog server Traces level log module xml debug level for xml module Example # Syslog Server log server ip: 192.168.0.
8.5 Parsing error debug example In this example, the phone is making an XML GET and receives the following XML object as an answer. The answer has an obvious parsing error, the phone displays ‘Cannot display’. Graphic Apps Demo
9 Why XML Applications for an IP Phone? XML applications can be split in 3 categories: Telephony applications, integration with the call processing, Voice Mail server, Conference server, Call Center application… Media and information Vertical applications 9.1 Telephony applications This chapter details potential XML telephony applications which could be developed to enhance integration of an IP phone with the other telecom applications. 9.1.
Access to call center reports Account codes Wrap codes 9.2 Media and information These are the applications getting information from the Web.
401K balance Clock-In/Clock-Out 9.3.2 Travel/Hotel Current Balance In-Room Dining Ordering Delivery Dining Options Extend Stay Schedule Airport Shuttle Request Housekeeping/Engineering Leave Feedback Wake-Up Call Book Corporate Travel Do Not Disturb 9.3.3 Health Care Test Results Manage Appointment Appointment Reminders Take-Your-Medicine Reminders Order Hospital Meals Check Pharmacy Inventory Schedule Blood Donation 9.3.
10 Phone Self-Configuration using XML 10.1 Introduction The deployment of a SIP phone is not a simple task; you have to face 2 challenges: 1. Provide the address of the configuration server to the phone 2. Link the MAC address of the phone with a SIP extension The first challenge is usually solved by using DHCP option 66 (bootp) to provision the phone with the IP address/name of the configuration server (TFTP, FTP, HTTP or HTTPS).
Phone Server Gets IP address Gets Configuration Server parameters Request for aastra.cfg aastra.cfg (configured with a startup URI) Request for .cfg No .cfg Startup URI XML questions and answers Script creates .cfg XML “Reset” Phone reboots Figure 100: Auto-configuration message flow 10.3 Auto-configuration policy The auto-configuration policy which includes the flow of questions asked to the user and the script to generate the .cfg file is totally open with this mechanism.
database and then creates the .cfg, the extension number can be either automatically assigned or the user can select it in a list of available extensions. 10.4 Architecture The following diagram represents the architecture of what needs to be developed to implement the Aastra self-configuration mechanism. IP-PBX configuration aastra.cfg Database . . .
11 Sample XML applications Here is the list of XML applications provided by Aastra, these XML applications are available either through an Internet server hosted by Aastra or as source code (part of the Aastra XML API SDK) to be executed from a local PC running XAMPP for example.
The XAMPP 1.6.6 Basic Package includes the following main components: Apache HTTPD 2.2.8 + OpenSSL 0.9.8g MySQL 5.0.51 PHP 5.2.5 + PHP 4.4.8 rc2 dev + PEAR SQLite 2.8.15 phpMyAdmin 2.11.4 Mercury Mail Transport System v4.52 FileZilla FTP Server 0.9.25 Note: the XML scripts provided by Aastra use only Apache and PHP. 11.2.1 XAMPP installation The nice thing with XAMPP is that it does not need to be installed. Simply extracting the archive to the root folder of your disk is enough.
Apache is now running. Note: In case you have a firewall running (native for Windows XP or Vista), you will be prompted to authorize Apache HTTP Server. To stop Apache, simply click on the Stop-button. To close the XAMPP Control Panel, click on the Exit button.
11.2.4 Test your installation To test the HTTP server, direct your Web browser to http://localhost/xampp/. You should see the following page: To test the XML scripts, direct your Web browser to http://localhost/xml/area/area.php. You should see the following page: 11.2.5 Troubleshooting Apache Most common problem is that another program is already using TCP server port 80 (HTTP) and port 443 (HTTPS). Run the program in the xampp directory. Check which program is using server port 80 and/or 443.
Aastra6739i Aastra6730i/6731i/6863i/6865i Aastra6757i/57iCT/6737i/6867i Configuration (Internet) uri=http://65.205.71.13/xml/area/area.php Configuration (XAMPP) uri=http://myserver.com/xml/area/area.php Screenshots 11.3.2 Biorhythms Description Check your Biorhythms. Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.
Comments User’s birth date is stored on the server. Only phones with graphical display (6755i/6757i, 6757iCT, 6735i and 6737i) will display the charts PHP-GD extension is needed for this XML script. 11.3.3 CNN News Description RSS feed from CNN.com including the following topics: Top Stories Entertainment World Travel U.S.
11.3.4 Currency Converter Description This application uses www.yahoo.com to convert any currency in to another currency. It also allows the user to setup a list of favorite conversions. Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.13/xml/stock/currency.php Configuration (XAMPP) uri=http://myserver.com/xml/stock/currency.
Comments User’s last request and favorites are stored on the server. 11.3.5 ESPN News Description RSS feed from ESPN.com bringing news for the most popular sports in North America.
Screenshots 11.3.6 FOX News Description RSS feed from foxnews.com including the following topics: Latest Headlines Business National SciTech World Health Politics Entertainment Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.13/xml/rss/rss.php?feed=fox Configuration (XAMPP) uri=http://myserver.
11.3.7 Horoscope Description RSS feed from dailyhoroscopes.com. Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.13/xml/rss/rss.php?feed=horoscope Configuration (XAMPP) uri=http://myserver.com/xml/rss/rss.php?feed=horoscope Screenshots 11.3.
API provided by http://www.geoplugin.net. Phone compatibility Aastra480i/480iCT Aastra6739i Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6730i/6731i/6863i/6865i Aastra6757i/6757iCT/6737i/6867i Configuration (Internet) uri=http://65.205.71.13/xml/area/ip.php Configuration (XAMPP) uri=http://myserver.com/xml/area/ip.php 11.3.9 Movies Description RSS feed from yahoo.
Screenshots 11.3.10 Netflix Description RSS feed from netflix.com including the following topics: Top 100 Horror Top 25 New Releases* Sci-Fi Top 25 Action/adventure Top 25 Television Top 25 Comedy Top 25 Thrillers Top 25 Drama Top 25 Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6751i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Aastra6739i Configuration (Internet) uri=http://65.205.
Comments *Not available if you are using XAMPP under Microsoft Windows due to memory limitation for PHP. 11.3.11 Stock Quotes Description This application uses www.yahoo.com to get the value of any given stock. Please refer to yahoo.com for the syntax of the stock ticker. Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.
Screenshots Comments User’s last request and favorites are stored on the server. Only large screen phones have access to the favorites. 11.3.12 Today… Description RSS feed from answers.
11.3.13 Local Weather Description RSS feed from rssweather.com providing weather forecast for any given US ZIP code Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.13/xml/weather/weather.php Configuration (XAMPP) uri=http://myserver.com/xml/weather/weather.
11.3.14 World Clock Description Date and time from around the world using www.timeanddate.com. It allows the user to define a list of favorite cities for quick access. Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.13/xml/clock/clock.php Configuration (XAMPP) uri=http://myserver.com/xml/clock/clock.php Screenshots 11.3.
Screenshots 11.3.16 Global menu Description This application is an XML application agragator. It can be configured as an XML key or as the XML custom menu behind the “Services” key (not supported on 9143i and 6753i). Phone compatibility Aastra9143i Aastra6753i Aastra9480i/9480iCT Aastra6755i/6735i Aastra6739i Aastra6757i/57iCT/6737i/6867i Aastra6730i/6731i/6863i/6865i Configuration (Internet) uri=http://65.205.71.13/xml/menu/mymenu.php Configuration (XAMPP) uri=http://myserver.
12 Appendix A: XSL Model PAGE 263 PAGE 264
<
// 30? 80 ?
13 Appendix B: Object Oriented PHP Classes Aastra also provides an object oriented API to develop XML applications which is included in the XML SDK. Note: The PHP objects are taking care of the XML escape encoding when they are needed. 13.1 AastraIPPhoneCallLog() This class allows you to create a XML PhoneCallLog object. Include AastraIPPhoneCallLog.class.
generate() to return the generated XML for the object output(flush) to display the object o flush boolean optional, output buffer to be flushed out or not.
$object->output(); In this example, the label and the type of the softkey 1 are changed. Output Wed Apr 14 9:30am Callers List Wed Jan 5 Jane Doe 408-555-1234 Jane Doe 10:01am Wed Jan 5 10:01am Sun Jan 1 2 Call(s) John Doe 03:28pm Line 1 Dial Add to Directory Delete 13.2 AastraIPPhoneConfiguration() This class allows you to create a XML PhoneConfiguration object. Include AastraIPPhoneConfiguration.class.
$configuration = new AastraIPPhoneConfiguration(); $configuration->addEntry('softkey1 label','Test'); $configuration->addEntry('softkey1 type','xml'); $configuration->setTriggerDestroyOnExit(); $configuration->setBeep(); $configuration->output(); In this example, the label and the type of the softkey 1 are changed. 13.3 AastraIPPhoneExecute() This class allows you to create a XML PhoneExecute object. Include AastraIPPhoneExecute.class.
setCancelAction(uri) to set the cancel parameter with the URI to be called on Cancel (optional) o uri string setDestroyOnExit() to set DestroyonExit parameter to 'yes', 'no' by default (optional) setLockIn(uri) to set the Lock-in tag to 'yes' and the GoodbyeLockInURI (optional) o uri string, GoodByeLockInURI setAllowAnswer() to set the allowAnswer tag to 'yes' (optional) setAllowDrop() to set the allowDrop tag to 'yes' (optional) setAllowXfer() to set the allowXfer tag to 'yes' (o
$ftext->addLine('Scrolled text5'); $ftext->setScrollEnd(); $ftext->addLine('Footer',NULL,'center',’blue’); $ftext->addSoftkey('10', 'Exit', 'SoftKey:Exit'); $ftext->output(); Output Fri Nov 6 9:30am XML Formatted Screen Scrolled Line Scrolled Line Scrolled Line Scrolled Line Scrolled Line 1 2 3 4 5 Exit Footer 13.5 AastraIPPhoneImageMenu() This class allows you to create a XML ImageMenu object on 55i/57i/57iCT/6735i/6737i. Include AastraIPPhoneImageMenu.class.
setAllowDrop() to set the allowDrop tag to 'yes' (optional) setAllowXfer() to set the allowXfer tag to 'yes' (optional) setAllowConf() to set the allowConf tag to 'yes' (optional) setTimeout(timeout) to define a specific timeout for the XML object (optional) o timeout integer (seconds) addSoftkey(index,label,uri,icon_index) to add custom soktkeys to the object (optional) o index integer, softkey number o label string o uri string o icon_index integer, icon number setRefre
setDoneAction(uri) to set the URI to be called when the user selects the default "Done" key (optional) o uri string setImageAction(uri) to set the imageAction parameter with the URI to be called when user presses on the displayed image (optional, 6739i only) o uri string Example require_once('AastraIPPhoneImageMenu.class.
Output 13.6 AastraIPPhoneImageScreen() This class allows you to create a XML ImageScreen object. Include AastraIPPhoneImageScreen.class.php Methods setTopTitle(title,color,icon_index) to set the Top Title of the XML screen (6739i only) o title string o color string, "red", "blue", ...
o uri string o icon_index integer, icon number setRefresh(timeout,URL) to add Refresh parameters to the object (optional) o timeout integer (seconds) o URL string setEncodingUTF8() to change encoding from default ISO-8859-1 to UTF-8 (optional) addIcon(index,icon) to add custom icons to the object (optional) o index integer, icon index o icon string, icon name or definition generate() to return the generated XML for the object output(flush) to display the object o st
# setImageAction(uri) to set the imageAction parameter with the URI to be called when user presses on the displayed image (optional, 6739i only) o uri string Example require_once('AastraIPPhoneImageScreen.class.
o color string, "red", "blue", ...
setNotEditable() to set the editable parameter to 'no', 'yes' by default (optional) setEditable() is now replaced by setNotEditable but kept for compatibility reasons (optional) setPrompt(prompt) to set the prompt to be displayed for the input. o prompt string Example require_once('AastraIPPhoneInputScreen.class.
o title string o color string, "red", "blue", ...
setEditable() is now replaced by setNotEditable but kept for compatibility reasons (optional) setPrompt(prompt) to set the default prompt to be displayed for the input. o password enum ("yes", "no") editable enum ("yes", "no") parameter string prompt string setFieldSelection(selection) to set the Selection tag for the field o type (IP, string, number, dateUS, timeUS,dateInt, timeInt or empty) if the type is an empty string then the type is inherited from the main object.
$input->setFieldPassword('yes'); $input->setFieldPrompt('Password:'); $input->setFieldParameter('password'); $input->setFieldSelection('2'); $input->addSoftkey('10', 'Exit', 'SoftKey:Exit'); $input->output(); Output Fri Nov 6 9:30am XML Restricted application Username: admin Password: ***** Submit Exit 13.9 AastraIPPhoneStatus() This class allows you to create a XML PhoneStatus object. Include AastraIPPhoneStatus.class.
o type enum ("alert") optional o timeout integer (seconds) optional o uri string (6739i only, optional) o icon integer (6739i only, optional) Example require_once('AastraIPPhoneStatus.class.php'); $status = new AastraIPPhoneStatus(); $status->setSession('Session'); $status->addEntry('1','Message 1'); $status->addEntry('2','Alert Message',’alert’,5); $status->output(); Output Alert Message Displayed for 5s Message 1 13.
setAllowConf() to set the allowConf tag to 'yes' (optional) setTimeout(timeout) to define a specific timeout for the XML object (optional) o timeout integer (seconds) addSoftkey(index,label,uri) to add custom soktkeys to the object (optional) o index integer, softkey number o label string o uri string setRefresh(timeout,URL) to add Refresh parameters to the object (optional) o timeout integer (seconds) o URL string setEncodingUTF8() to change encoding from default ISO-8859-
$menu->addEntry('Choice 2', 'http://myserver.com/script.php?choice=2', 'Value=2'); $menu->addEntry('Choice 1', 'http://myserver.com/script.php?choice=1', 'Value=1'); $menu->addEntry('Choice 3', 'http://myserver.com/script.php?choice=3', 'Value=3'); $menu->natsortByName(); $menu->addSoftkey('1', 'My Select', 'http://myserver.com/script.php?action=1'); $menu->addSoftkey('10', 'Exit', 'SoftKey:Exit'); $menu->output(); Output Fri Nov 6 9:30am XML My Select Title Choice 1 Choice 2 Choice 3 Exit 13.
o uri string setDestroyOnExit() to set DestroyonExit parameter to 'yes', 'no' by default (optional) setBeep() to enable a notification beep with the object (optional) setLockIn(uri) to set the Lock-in tag to 'yes' and the GoodbyeLockInURI (optional) o uri string, GoodByeLockInURI setAllowAnswer() to set the allowAnswer tag to 'yes' (optional) setAllowDrop() to set the allowDrop tag to 'yes' (optional) setAllowXfer() to set the allowXfer tag to 'yes' (optional) setAllowConf()
Output Fri Nov 6 9:30am XML Mail Title Text to be displayed and this text can be really long… Exit 13.12 AastraIPPhoneScrollableTextMenu() This class allows you to create TextMenu supporting more than 30 items, all the next/previous page management is handled by the object. Include AastraIPPhoneScrollableTextMenu.class.php Methods setEntries(entries) Set entries of the list by 2 dim array.
setSelectKeyLabel(label) Set the label of the Select Softkey. Default is 'Select'. Make sure the string is in language.ini.
$entries[99]['selection'] = "100"; $menu = new AastraIPPhoneScrollableTextMenu(); $menu->setTitle('My Menu'); $menu->setEntries($entries): $menu->output(); 13.13 AastraIPPhoneScrollableDirectory() This class allows you to create a complete directory application by jusr providing the results of a directory query as an array.. Include AastraIPPhoneScrollableDirectory.class.php Methods setDialKeyPosition(position)setNameDisplayFormat(format) Set position of Dial Softkey in list view. Default is 2.
speedURL: If this field is present, a "+Speed" Softkey will be shown in zoom mode. Selected number will be passed in $selection variable. Example: speedURL=http://xmlserver/xml/speed/speed.php?action=add&name=Peter Inherited from AastraIPPhoneScrollableTextMenu setTopTitle(title,color,icon_index) to set the Top Title of the XML screen (6739i only) o title string o color string, "red", "blue", ...
$records[99]['office'] = "+1 (0) 555-123-1234"; $records[99]['officeDigits'] = "1234"; $records[99]['home'] = "044 555 22 33"; $records[99]['company'] = "Mitel"; $directory = new AastraIPPhoneScrollableDirectory(); $directory->setTitle('Directory'); $directory->setBackURI($XML_SERVER."?action=start"); $directory->setEntries($records): $directory->output(); 13.14 Examples provided with the PHP API With the PHP API, Aastra provides some source code on how to use it. sample.
14 Appendix C: Dynamic Parameters The following table lists the configuration parameters that can be modified by a PhoneConfiguration object without a reboot of the SIP phone. Parameter Comments ALL action uri ALL SIP parameters admin password alternate tftp server audio mode auto offhook auto resync days auto resync max delay auto resync mode auto resync time background image call forward key mode call transfer disabled This parameter is dynamic so a user can’t access it or add to it.
Parameter Comments dst end hour dst end month dst end relative date dst end week dst minutes dst start day dst start hour dst start month dst start relative date dst start week feature key selection list ftp password ftp server ftp username handset sidetone gain handset tx gain handsfree tx gain headset sidetone gain headset tx gain http path http server https validate certificates https validate expires https validate hostname icom script inactivity brightness level language line1 ring tone line2 ring to
Parameter Comments line8 ring tone line9 ring tone live dialpad log module lldp map conf key to map redial key to mwi missed calls options password enabled options script play a ring splash preferred line preferred line timeout prgkeyN line prgkeyN name Changes to subscriptions (eg BLF or BLA) require a reboot. prgkeyN type prgkeyN value This parameter is dynamic so a user can’t access it or add to it. However, you need to reboot the phone to clear the list.
Parameter Comments time server disabled time server1 time server2 time server3 time zone code time zone minutes time zone name tone set use alternate tftp server user password voicemail script xfer script xml application title xml application URI xml beep notification PA-001011-03-04 Aastra July 2014 297
15 Appendix D: Localized input character set 15.1 English Key Capital Characters 1 1.:;=_,-'&() 2 ABC2 3 DEF3 4 GHI4 5 JKL5 6 MNO6 7 PQRS7 8 TUV8 9 WXYZ9 0 0+ * * # #/\\@ Small Characters 1.:;=_,-'&() abc2 def3 ghi4 jkl5 mno6 pqrs7 tuv8 wxyz9 0+ * #/\@ 15.2 French/Français Key 1 2 3 4 5 6 7 8 9 0 * # Capital Characters 1.:;=_,-'&() ABC2ÀÂÇÁÅÆ DEF3ÉÈÊË GHI4ÎÏ JKL5 MNO6ÑÓÒÔÖ PQRS7 TUV8ÚÙÛÜ WXYZ9 0+ * #/\@ Small Characters 1.
15.4 German/Deutsch Key 1 2 3 4 5 6 7 8 9 0 * # Capital Characters 1.:;=_,-'&() ABC2ÄÀ DEF3É GHI4 JKL5 MNO6Ö PQRS7ß TUV8Ü WXYZ9 0+ * #/\@ Small Characters 1.:;=_,-'&() abc2äà def3é ghi4 jkl5 mno6ö pqrs7ß tuv8ü wxyz9 0+ * #/\@ Capital Characters 1.:;=_,-'&() ABC2ÀCÇ DEF3ÉÈË GHI4 JKL5 MNO6ÓÒ PQRS7 TUV8Ù WXYZ9 0+ * #/\@ Small Characters 1.:;=_,-'&() abc2àcç def3éèë ghi4 jkl5 mno6óò pqrs7 tuv8ù wxyz9 0+ * #/\@ 15.5 Italian/Italiano Key 1 2 3 4 5 6 7 8 9 0 * # 15.
16 Appendix E: XML Self-Configuration Aastra provides here a possible implementation for the self-configuration, this is just an example source code not supported by Aastra. In this implementation targeted for Trixbox CE using FreePBX, the chosen policy is to have all the extensions pre-configured in the Asterisk database and use the extension the voice mail password for the credentials to authenticate the user and link the MAC address of the phone to an extension.
echo echo echo echo echo "Creating a default config file for Aastra phones" "--------------------------------------------------------------" "" "Creating /tftpboot/aastra.cfg..." "" IFCONFIG=`which ifconfig 2>/dev/null||echo /sbin/ifconfig` IPADDR=`$IFCONFIG eth0|gawk '/inet addr/{print $2}'|gawk -F: '{print $2}'` cat > /tftpboot/aastra.cfg <
# SIP Lines sip line1 auth name: $$AA_SIPAUTHNAME_AA$$ sip line1 password: $$AA_SIPSECRET_AA$$ sip line1 user name: $$AA_SIPUSERNAME_AA$$ sip line1 display name: $$AA_SIPCALLERID_AA$$ sip line1 screen name: $$AA_SIPCALLERID_AA$$ sip line1 proxy ip: $$AA_PROXY_SERVER_AA$$ sip line1 proxy port: 5060 sip line1 registrar ip: $$AA_REGISTRAR_SERVER_AA$$ sip line1 registrar port: 5060 sip line1 vmail: *98 sip line1 mode: 0 # Action URI action uri startup: startup.
return($value); } ##################################################################### # lookup_config_file(extension) # Checks if extension is already in use. # # Parameters # extension extension t check # # Returns 1 if extension already in use ##################################################################### function lookup_config_file($extension) { $config="startup.
# # Parameters # extension user extension # mac MAC address of the phone # username SIP authname # secret SIP secret # callerid User CallerID # model Phone model # ##################################################################### function create_mac($mac,$extension,$username,$secret,$callerid,$model) { Global $AA_PROXY_SERVER,$AA_REGISTRAR_SERVER; $value=preg_split("/ /",$callerid); $result=$value[0]." ".
# Connect to AGI $as = new AGI_AsteriskManager(); $res = $as->connect(); # Get value in the database $res = $as->Command('database get AMPUSER '.$user.'\/cidname'); $line=split("\n", $res['data']); $cid=split(" ", $line[1]); $callerid= $cid[1].' '.
# # Parameters # @user user ID # # Returns # secret as a string ##################################################################### function get_secret($user) { Global $ASTERISK_LOCATION; # Get all the user data $sip_array = @parse_ini_file($ASTERISK_LOCATION."sip_additional.
$output .= "password\n"; $output .= "\n"; $output .= "\n"; header("Content-Length: ".strlen($output)); echo $output; exit; } # IF authentication failed if (!$userinfo = verify_user($extension, $password)) { # Display error $output = "\n"; $output .= "Authentication failed\n"; $output .= "Wrong user and password.\n"; $output .
# Create Reboot screen $output = "\n"; $output .= "REBOOT\n"; $output .= "Reboot\n"; $output .= "\n"; header("Refresh: 1; url=".$XML_SERVER."?action=reboot"); # Display XML Object header("Content-Type: text/xml"); header("Content-Length: ".strlen($output)); echo $output; exit; ?> logout.
##################################################################### # update_config_file(extension) # Update the config file deleting the current extension # # Parameters # extension user extension ##################################################################### function update_config_file($extension) { # Config file $config="startup.
$output .= "Reboot.\n"; $output .= "\n"; break; default: # Input Password if ($password=='') { $output = "\n"; $output .= "Logout\n"; $output .= "Enter Password\n"; $output .= "$XML_SERVER?extension=$extension\n"; $output .= "password\n"; $output .= "\n"; $output .
17 Appendix F: CSV based Directory 17.1 Introduction The application described in this chapter is a generic directory application using a CSV file as data source as well as a server-side speed dial application which can be linked from the directory application.
17.3 Installation The provided scripts must be extracted under the ROOT directory of the HTTP server in a ‘xml’directory, a cache directory (default /var/cache/aastra) must also be created with read/write access for the HTTP server user. The cache directory can be configured in config/server.conf, see chapter 17.6.1 for more details. 17.4 XML key configuration Directory The uri to use is http://myserver.com/xml/directory/directory.php?user=USER&source=SOURCE Where myserver.
# Path for the XML directory behind the HTTP Server (optional), default is xml xmldirectory= # Mode DEBUG (0 or 1), default is 0 debug= # Mode TRACE (0 or 1), default is 0 trace= # Forced language (optional), can be en, de, fr... language= When activated, the traces are stored in a log file located in the ‘cache’ directory (by default /var/cache/aastra) indexed by the date, a file is generated per day. 17.6.2 directory.conf This file includes configuration parameters for the Directory application.
/include/ Directory for common includes AastraCommon.php AastraIPPhone.php AastraIPPhone.class.php AastraIPPhoneConfiguration.class.php AastraIPPhoneConfigurationEntry.class.php AastraIPPhoneExecute.class.php AastraIPPhoneExecuteEntry.class.php AastraIPPhoneInputScreen.class.php AastraIPPhoneInputScreenEntry.class.php AastraIPPhoneSoftkeyEntry.class.php AastraIPPhoneStatus.class.php AastraIPPhoneStatusEntry.class.php AastraIPPhoneTextMenu.class.php AastraIPPhoneTextMenuEntry.class.
18 Appendix G: LDAP Directory 18.1 Introduction This appendix describes how to provide access to the Corporate Directory (Active Directory) from the Aastra SIP phones. As LDAP protocol is used to access Active Directory, this document is also valid for any other LDAP enabled directory server. This document is solely about user initiated directory lookup, it does not cover Corporate Directory based caller ID lookup for incoming or outgoing calls.
The message flow is given by the diagram below: Figure 103: LDAP directory message flow The directory application allows the user to perform a lookup based on The first letters of the first name AND last name (at least 3) Letters anywhere in the complete name The source code is provided in the XML SDK as a zip file called ldap_directory_3.3.1.zip Note: the source code is not supported by Aastra, it is provided only as an example. 18.
18.3 Network Requirements 18.3.1 Phone -> XML Proxy Server The phone must be able to reach the XML Proxy Server. Typically, the XML Proxy Server will run on port 80/tcp, but any other port can be used as well. The phone can be behind NAT as the TCP requests will always be phone initiated. In case there is a firewall between the phone and the XML Proxy Server, the firewall must allow phone initiated TCP sessions towards the Web server port on the XML Proxy Server. 18.3.
############################################################################################## # ldap_directory.conf # # Configuration file for the LDAP directory application ############################################################################################## ############################################################################################## # Global configuration # # [LDAP_Server] # hostname Hostname or IP address of LDAP server # port TCP server port of LDAP server.
19 Appendix H: PictureCallerID (6867i/6739i) 19.1 Introduction This feature, unique to the Aastra 6739i, allows the display of a picture referenced by the Caller ID number for an incoming and an outgoing call. When the user makes or receives a call, the Aastra 6739i (by configuration) fetches an image stored on a TFTP/FTP/HTTP/HTTPS server and displays it. For instance, if the incoming or outgoing number is “9725551234” the phone makes a request for a file named “9725551234.
This implementation means that the server must host all the pictures in the right format which can be pretty tedious. 19.
Configured to be called by the HTTP server for ‘.php’ files php-gd extension 19.3.2 Aastra 6739i The Picture Caller ID application is available only for the following phones: Aastra 6739i using firmware release 3.0.1 or better 19.4 Installation 19.4.1 Introduction The Picture Caller ID application is provided to allow generic implementation and also for testing purpose as a zip file which includes only the source code to be installed on an existing HTTP Server “pictureCallerID_3.3.1.zip”. 19.4.
19.4.5 Troubleshooting If the previous test did not work here are a couple of things you may want to check: Is the HTTP Server running? Is php supported? Is php-gd extension installed? Are the user rights OK for “pictures” and “cache” directories? 19.4.6 Windows PC using XAMPP Lite Please refer to chapter 11.2 on how to use XAMPP as an http server for this application. 19.5 Configuration 19.5.
19.5.2 Application configuration The application can be configured by modifying ‘pictureID.conf’ in the main directory; this configuration file contains 3 sections. Note: Changes in this file are dynamic. 19.5.2.
# # [Dialplan] # country Country code # If phone number starts with "+", this will be # removed # # long distance Long distance prefix # This prefix will be added to the number in case + # has been stripped. # Leave blank if not needed. # # international International prefix # The "+" sign will be replaced with this prefix # # outgoing Outgoing prefix # Prefix that needs to be appended for outgoing calls # (all call but local calls), e.g.
# Line Format # [Numbers] # number and/or patterns comma separated=mapped_number or mappedname,LABEL|YPOSITION|ALIGNMENT|COLOR|FONTSIZE # Simple number matching # it can be used to map multiple phone numbers (cell, home , other) to a user # Pattern matching # it can be used to map open numbers # Pattern format is P followed by # any digit including * or # # X digit between 0 and 9 # Z digit between 1 and 9 # N digit between 2 and 9 # .
P972XXXXXXX,P469XXXXXXX,P214XXXXXXX =default,"DALLAS, TX"|187|center|red|10 Will display the following picture on the phone When a 10 digit number starting with 972, 469 or 214 is calling or being called. . Example 2 This example demonstrates the relevance of the lines order in the configuration files.
P44.= default,"United Kingdom"|187|center|red|10 Will display the following picture When a number (any number of digits) starting with 44 is calling or being called. United Kingdom 19.6 Files This chapter describes the files provided in the package File Comment ./ Root directory imageServer.php PHP script for the Picture Caller ID application License.txt License file pictureID.conf Configuration file ./cache Cache directory ./fonts Font directory DejaVuSans-Bold.
Aastra July 2014 PA-001011-03-04
20 LAST PAGE OF THE DOCUMENT PA-001011-03-04 This page is intentionally left blank PA-001011-03-04 Aastra July 2014 329