panasonic ip proprietary telephone kx-nt400 xml

92
KX-NT400XML Panasonic IP Proprietary Telephone KX-NT400 XML Application Developers Guide Revision 1.00 All Rights Reserved, © 2010 PANASONIC SYSTEM NETWORKS CO., LTD.

Upload: others

Post on 19-Feb-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

KX-NT400XML

Panasonic IP Proprietary Telephone KX-NT400 XML Application Developers Guide

Revision 1.00

All Rights Reserved, © 2010 PANASONIC SYSTEM NETWORKS CO., LTD.

KX-NT400XML

Revision No.

Date Page Comments of revision

0.32 10.September, 2010

16~59 69 12

Fixed typo, Added default value of optional attribute, Added hyper link Changed Setup button spec. Added POST port number explanation.

0.40 1.November, 2010

all Fixed typo, Added explanation, note, etc., Added hyper link Revised according to the latest XML definitions

1.00 29.November, 2010

4.2.2 Added missed attribute(name, persistent) 4.2.15 Added action elements( LoadRequest, SetFocus, ShowKeyboard,

HideKeyboard) Added event element(OnHeld) Added SetConfig item(durationForKeyInput)

4.2.11 Changed specifications(margin, text) 4.2.9 Changed specifications(ScreenKeyboadrd focus, Hardkey)

5 Added On Holding dialog all Fixed typo, Added explanation, note, etc., Added hyper link

KX-NT400XML

[CONTENTS]

1. INTRODUCTION ............................................................................................................. 2

2. OVERVIEW...................................................................................................................... 3

2.1. A GENERAL SYSTEM STRUCTURE ................................................................................... 3 2.2. BASIC OPERATION ........................................................................................................ 4 2.2. XML DATA ACCESS FLOW ............................................................................................. 5 2.3. GUI COMPONENTS ....................................................................................................... 5 2.4. AVAILABLE MEDIA (SUPPORTING FILE) FORMAT ................................................................ 5 2.5. DISPLAY AREA AND HARDWARE KEY ............................................................................... 6 2.6. LIMITATIONS ................................................................................................................. 7

3. HTTP SERVER INTERFACE ........................................................................................... 8

3.1. GET XML DATA ............................................................................................................ 8 3.1.1. Structure of Web Server ................................................................................................. 8 3.1.2. HTTP POST/GET Request/Response from NT400XML to Web Server. ......................... 9

3.2. PUSH XML DATA ........................................................................................................ 12 3.2.2. Push Event Process ..................................................................................................... 13

3.3. HTTP METHOD SPECIFICATIONS ................................................................................. 15 3.3.1. POST method example (Send request to get XML data from server) ........................... 15 3.3.2. GET method example (get content data and supporting files from server) .................... 15 3.3.3. POST method example (Event trigger from web server to NT400XML) ........................ 15 3.3.4. GET method example (Notify Extension number and IP address on starting up) .......... 16

4. XML STRUCTURE ........................................................................................................ 17

4.1. XML DOCUMENT ........................................................................................................ 17 4.1.1. XML Schema of NT400XML ......................................................................................... 18 4.1.2. Name Space of XML Document .................................................................................... 19 4.1.3. System Environment Variables ..................................................................................... 19 4.1.4. Predefined Entities of XML ........................................................................................... 19 4.1.5. XML Object Outline ...................................................................................................... 20

4.2. XML OBJECTS DEFINITION .......................................................................................... 21 4.2.1. ppxml ........................................................................................................................... 22 4.2.2. Screen .......................................................................................................................... 23 4.2.3. Pages ........................................................................................................................... 25 4.2.4. Page ............................................................................................................................. 27 4.2.5. Components ................................................................................................................. 29 4.2.6. Label ............................................................................................................................ 30 4.2.7. List ............................................................................................................................... 32 4.2.8. PictureBox .................................................................................................................... 34 4.2.9. TextBox ........................................................................................................................ 35 4.2.10. Button ......................................................................................................................... 39 4.2.11. PictureButton .............................................................................................................. 41 4.2.12. RadioButton ............................................................................................................... 44 4.2.13. CheckBox ................................................................................................................... 46 4.2.14. ComboBox ................................................................................................................. 48 4.2.15. Events ........................................................................................................................ 51 4.2.16. Dialog ......................................................................................................................... 60

KX-NT400XML

4.2.17. Trigger ........................................................................................................................ 62 4.2.17. Profile ......................................................................................................................... 63 4.2.18. Skin ............................................................................................................................ 64 4.2.19. ScreenSaver .............................................................................................................. 67 4.2.20. SetVariable ................................................................................................................. 68 4.2.21. Timer .......................................................................................................................... 70 4.2.22. Execute ...................................................................................................................... 71

5. CALL CONTROL DIALOG/POPUP .............................................................................. 72

5.1. CALL ALERT POP UP ................................................................................................... 72 5.2. DIAL POP UP .............................................................................................................. 72 5.3. MAKE CALL DIALOG .................................................................................................... 72 5.4. DURING CALLING ........................................................................................................ 73 5.5. DURING TALKING ........................................................................................................ 73 5.6. DURING HOLDING A CALL ............................................................................................. 74 5.7. ON PARK HOLDING A CALL ........................................................................................... 74 5.8. PRIORITY TO SHOW POPUP AND DIALOG. ....................................................................... 75

6. SETUP ........................................................................................................................... 76

6.1. EXCHANGE METHOD OF NT400 FIRMWARE ................................................................... 76 6.1.1. Insert SD card .............................................................................................................. 76 6.1.2. Turn on power. (Connect A/C adaptor) ......................................................................... 76 6.1.3. IP Address setting ........................................................................................................ 77 6.1.4. Firmware Version Up .................................................................................................... 78 6.1.5. Update File select ......................................................................................................... 79 6.1.6. Confirmation of Firmware Version................................................................................. 81 6.1.7. Setting initialize to factory default. ................................................................................ 82

6.2 SETTINGS OF NT400XML ............................................................................................ 83 6.2.1. Hide Setup button ......................................................................................................... 83 6.2.2. Initial Access XML Server setting .................................................................................. 84 6.2.3. LCD Calibration setting ................................................................................................. 85

7. APPENDIX ..................................................................................................................... 86

7.1. ERROR CODES OF NT400XML ................................................................................. 86 7.2. EDITING XML SCRIPTS ON THE PC .............................................................................. 87

1

ATTENTION

- This document is copyrighted by Panasonic System Networks Co., Ltd. (“PSN”) or its licensor, and is protected by the copyright laws and international treaty provisions, and all other applicable laws.

- All contents of this document are subject to change without notice. - THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT ANY WARRANTY. PSN AND ITS

AFFILIATE COMPANIES (“PANASONIC”) DOES NOT MAKE OR PASS ON TO YOU OR OTHER THIRD PARTY, ANY WARRANTY OR REPRESENTATION INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. WITHOUT LIMITING THE GENERALITY OF THE FOREGOING, PANASONIC DOES NOT WARRANT THAT THIS DOCUMENT WILL BE ERROR-FREE OR THAT IT WILL MEET YOUR REQUIREMENTS. PANASONIC SHALL NOT BE LIABLE FOR ANY DAMAGE SUFFERED BY YOU OR OTHER THIRD PARTY INCLUDING, BUT NOT LIMITED TO, CONSEQUENTIAL, INCIDENTAL, SPECIAL OR PUNITIVE DAMAGES, EVEN IF PANASONIC HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

2

1. Introduction This document has described the technical information and specification for the application development of the NT400 XML version. This document is aimed at PSN, Panasonic Sales Company and 3rd party developer. NT400 supports new application interface using the XML method for development in a vertical market (e.g. Hospitality market...). It becomes possible to control GUI of NT400 freely by the application server side XML description. In addition, it becomes possible to display the push event information from the application server though it was impossible in the Portal function using HTML of standard NT400. In order to use the XML feature, you must exchange to the XML version firmware from standard NT400 firmware. It means new XML features cannot use under standard production of NT400, and the standard feature (TAB controls - Home / Contacts / Call log / Camera / Chat / Portal / Options, Popup controls) cannot be used under XML version firmware. However, the screen and the touch panel of NT400 can be freely used from application server instead. It is a limitation due to the NT400 structure and physical memory. It will be improved at the future products. To obtain the XML and standard firmware, please access the following web site. http://www.panasonic.net/pcc/products/pbx/

3

2. Overview

2.1. A general System Structure [System Requirements] To use NT400XML, your PBX must have the correct software file version installed. Confirm your PBX matches the requirements listed below.

PBX Model Required Software File Version KX-NCP500/KX-NCP1000 PBMPR Software File Version 2.0000 or later KX-TDE100/KX-TDE200 PMMPR Software File Version 3.0000 or later. KX-TDE600 PGMPR Software File Version 3.0000 or later

NT400 : Updated firmware from ver.1.0/1.1/1.2 to XML Activation Key : To connect NT400XML, any special activation key is not necessary except for general key (IP-PT)

Guest Room:1101 Guest Room:1102 Guest Room:110xx

NT400XML NT400XML NT400XML

FRONT

PC PBX

Server Room

HTTP Server CTI Server Hotel Application for NT400XML etc...

NT400XML : max 64 pcs./ PBX (Please consult Panasonic Sales Company when you want to connect more than 64.)

4

2.2. Basic Operation NT400XML translates XML data and generate GUI. 1) Parses XML data by using XML parser and analyze the meaning. 2) Creates Window for screen. 3) Prepare components. Attach event handler and action function. Create component image. 4) Place components on Window. 5) Show Window.

NT400XML

HTTP Server

XML Data

<ppxml> <screen> <component> …………………. </component> <events> ……………….. </events> </screen> </ppxml>

Analyze XML data.

Create Window for screen.

Place components on Window

Prepare components.

Show Window

NT400XML

5

2.2. XML Data Access Flow There are two methods to access XML Data.

2.3. GUI components XML nodes are separated in two kinds, GUI Components and others. GUI components are followings. - Label - List - PictureBox - TextBox - Button - PictureButton - RadioButton - ComboBox - CheckBox 2.4. Available Media (supporting file) Format The following are available media format which can be supported in NT400XML. They are called ‘Supporting file’. They are downloaded from server, saved to the local memory and accessed by the XML description. Please note all supporting files in the ‘Screen’ are downloaded simultaneously. It is recommended to adjust the media quality suitably beforehand. Such a needless high quality format (large size) is not suitable from the viewpoint of the speed/memory. Moreover, please note if too many supporting files are used, it needs a lot of time for the display screen. Please actually try and adjust it.

Media Type Format Total Size Max. Remarks Picture BMP 8/16/24/32bit 512KB (NT400 spec.:16bit color)

Animation GIF/PNG cannot be used.

GIF 256KB JPEG 16/24/32bit 256KB PNG 256KB

Sound WAV 8/16bit 8/16/44.1/48KHz PCM mono

1,024KB

Text TXT UTF-8 plain text 128 KB MAX text characters -> 65536

SERVER

HTTP GET/POST

200 OK + XML DATA

HTTP POST

200 OK HTTP GET/POST

200 OK + XML DATA B. SERVER PUSH

A. NT400 GET/POST

NT400

Event Trigger

6

2.5. Display Area and Hardware Key GUI components are located in any place of All LCD Area (QVGA: 320x240). GUI components work with hard keys and HOOK key.

[HOOK key] This keys influences to display Dial Popup and Call Alert.

Dial Popup Call Alert Remarks OFF-HOOK Show Answer ON-HOOK Close Close

[Hard keys] These keys influence to input data and manipulate GUI components.

Hard key Input data Manipulate Remarks ‘1’~’0’, ‘*’ ,’#’

‘1’~’0’, ‘*’, ‘#’ -

Transfer(T) - - For Telephony Operation only. Hold(H) - -

Speaker(SP) - - Cancel(C) - Backspace

Only TextBox supports hardkey press. Left, right, up, down, enter, cancel keys operations behave same like standard version.

Left - Move cursor Right - Move cursor Up - Move cursor Down - Move cursor Enter(E) - Click

Display Area of XML data (All LCD area)

1 2 3

4 5 6

7 8 9

T H SP

C

E

240

320

HOOK

Hard keys * 0 #

7

2.6. Limitations There are some limitations in the XML version compared with a standard version as follows. [Feature] - There is no PT LCD emulation function. The function for which it is necessary cannot be used. e.g.) Registration of Bluetooth headset - There is not all hard key emulation of NT3xx.(4.2.15) - The Flexible Button can be only used without LED as a pressing flexible button.

8

3. HTTP Server Interface 3.1. Get XML Data 3.1.1. Structure of Web Server Web Server is installed in followings : 1) PC Server 2) Appliance Server Web Server usually manages following directory.

CGI for NT400XML usually processes along following steps.

CGI for NT400XML

Decode CGI parameters.

Execute requested process.

Generate XML data.

CGI-bin Html

initialURL.cgi

RoomService.cgi

・・・

Start.xml

Menu.xml

・・・

Document Root

Static XML file. *) "Template" xml files may be prepared. "Template" means that almost definitions are static and only the part is replaced dynamically.

9

3.1.2. HTTP POST/GET Request/Response from NT400XML to Web Server. [HTTP POST/GET Request] NT400XML sends HTTP POST/GET request to Web Server as the result of "SendRequest" Action. The format of HTTP POST/GET request is same as ordinary HTTP POST/GET request.

<Note1> There are some values reserved values by NT400XML. These values are automatically replaced by NT400XML and sent to Web Server. *) if Connection Failed, following popup would be shown and error information(BB02) would be stored in error log. *)At booting phase,

a. When pushing "OK" button, NT400XML reboots. b. When 30 seconds pass as it is, NT400XML reboots automatically.

Correct values of XML components on GUI.(Note1)

When definition of "Action" is "SendRequest".

Send all pairs of name and value to Web Server specified with URL by using HTTP.

Format each name and value with URL encode.

10

[HTTP POST/GET Response] NT400XML receives HTTP response including XML data from Web Server.

Receive HTTP response header.

Check the HTTP result code.

Receive HTTP response content.

200 OK

Other

Analyze XML data to parse all URLs of supporting files

Download supporting file by using HTTP GET.

Save error log. Display GUI.

No Save

Save (persistent=”true”)

Save XML data in Flash File System.

200 OK

Other

No Save

Save

Save XML data in Flash FileSystem

supporting file remains Delete all files on RAM Disk (memory) and Flash File System.

11

*) If XML validation failed, following popup would be shown and warning information(B602:0502) would be stored in error log. *)At booting phase,

a. When pushing "OK" button, NT400XML reboots. b. When 30 seconds pass as it is, NT400XML reboots automatically.

12

3.2. Push XML Data 3.2.1. Push Mechanism Push may be kicked by PC Client which operator uses. Push is achieved with 2 steps. First step is to send trigger. Second step is to get XML data.(This is same as the description of "Get XML data".) Web Server sends a Link XML data as Trigger , which describes the behavior of NT400XML, to "Push Port" by using HTTP POST. When NT400XML catches the Link XML data,NT400XML executes Push Event process.

1.Send Trigger

2.Get XML Data

NT400XML

HTTP Server

PC Client (Operator)

13

3.2.2. Push Event Process When considering from NT400XML side, this process is separated to 2 phases.(Processing Trigger and Processing Service Content.) [Phase1: Processing Trigger] This phase processes a trigger. A TCP/IP connection is kept during following flow.

Listen on Push Port.

Receive Link XML data.

Check Link XML data.

OK

NG

Send error HTTP response ("400 Bad Request")

Save Link XML data in RAM Disk(memory)

Send HTTP response header (200 OK).

14

[Phase2: Processing Service Content] This phase executes service by downloading all XML data and supporting files from Web Server . TCP/IP connection is established each downloading. While a pending indirect demand remains, the following demand is queued(max.8) and is not executed.

Downloads main XML data.

Downloads other XML data and supporting files.

Indirect

Direct

Show confirmation dialog during timeout. (This dialog is system defined, cannot be modified.)

<Note1> These sequences are same as the sequences "Get XML data".

NO

YES / Timeout

Wait for timeout.

15

3.3. HTTP Method Specifications 3.3.1. POST method example (Send request to get XML data from server)

POST /HOTEL/GetXml.aspx?xml=Hotel/Xmls/Wake%20Up%20Call/Accepted.xml HTTP/1.1 Content-Type: application/x-www-form-urlencoded Content-Length: 33 Expect: 100-continue Host: 10.64.xxx.16 Via: 1.1 ik-sg02 Connection: Keep-Alive X-BlueCoat-Via: 465D323384C54B54 today=Today&day=AM&timeName=10:30

3.3.2. GET method example (get content data and supporting files from server)

GET /HOTEL/media/picture.png HTTP/1.1

3.3.3. POST method example (Event trigger from web server to NT400XML)

POST / HTTP/1.1 Accept: text/xml,application/xml,application/xhtml+xml, text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 Content-Type: multipart/form-data; boundary=---------------- Content-Type: text/html Host: 10.64.xxx.16:6666 Content-Length: 607 Connection: Keep-Alive ---------------- Content-Disposition: form-data; name="XmlLinkFile"; filename="C:¥XmlLinkFile.xml" Content-Type: text/xml <?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Trigger.xsd"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Trigger.xsd Trigger.xsd">

<Trigger version="1.0"> <Source> http://10.64.xxx.16/xmlserver/standard/xmls/checkbox.xml </Source>

<Handling> <Mechanism>Direct</Mechanism> <Timeout>10</Timeout>

</Handling> </Trigger> </ppxml>

<Note> Header format requirements - “Content-Type” must be “multipart/form-data” - “Content-Length” must be existing. - “Host” must be existing. - “Content-Disposition” must be existing at the following line of the boundary.

Please refer to the above example.

16

(*)default POST port of NT400 : 6666

It is able to change by setConfig element.(4.2.15)

3.3.4. GET method example (Notify Extension number and IP address on starting up)

GET /menu.cgi?ext_number=xxx&ext_IP_Address=10.64.xxx.xxx/ HTTP/1.1 parts depend on the server environments, settings of NT400, contents, etc..

17

4. XML Structure 4.1. XML Document XML Document is consisted of XML declaration and instance. XML Document file has ".xml" extension. [XML Declaration] XML version and character set are described. See below.

<?xml version="1.0" encoding="utf-8"?> XML version of NT400XML is "1.0". Character set used at NT400XML is only "UTF-8". [XML Instance] XML data defined by NT400XML is described. For example,

XML Declaration XML Instance

<?xml version="1.0" encoding="utf-8"?> <!-- Sample screen --> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen backColor="C0C0C0"> ........... </Screen> </ppxml>

18

4.1.1. XML Schema of NT400XML NT400XML has XML schema which defines words and types , formats of all XML object . XML schema file has ".xsd" extension and uses "http://www.w3.org/2001/XMLSchema" namespace. There are following schema files:

NO Schema File (.xsd) Description 1 Common Schema references to commonly used schemas (Core and

UI) and provide a single reference point to other schemas (Template, Service, Screen, Dialog and etc.)

2 Core Schema contains common/reusable definitions for all the schemas

3 UI Schema contains common/reusable definitions related to user interface (UI control's properties and etc.)

4 Screen Schema that define the structure, content allowed in customizing the main screen (XML viewer)

5 Dialog Schema that define the structure, content allowed in customizing the dialog (Call alert, dial popup and custom dialog)

6 Trigger Schema that define the structure, content of the service link (XML) file

7 Screensaver Schema for Screensaver service 8 Skin Schema that define the resources (images) used by UI

controls 9 Profile Schema that define the global settings of NT400 10 Execute Schema that define actions to be executed (e.g. SetConfig,

GetConfig, Reboot, DeleteAllFiles) [XML Schema parsing] It is able to entirely checks when parsing XML document.

NT400XML

XML Document

Parsing by XML Parser XML Schema

Check the type and format of each XMLobject.

19

4.1.2. Name Space of XML Document Name Space is declared in ppxml node. XML document uses each XML schema of NT400XML corresponding to itself. The formula is following:

<ppxml xmlns="http://panasonic/Screen.xsd"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd">

User has to change the description of A) and C) corresponding to target xml data. 4.1.3. System Environment Variables There are following environment variables, those are automatically replaced to real value. “$ip” (Application IP address) “$ext” (Extension number) “$peerName” (Peer name) “$peerExt” (Peer extension) “$parkNumber” (Park number) “$parkExt” (Park extension) “$parkName” (Park name) As an example, you can describe Initial Server URL like following to send own extension number and ip address to WebServer. “http://192.168.0.203/xmlserver/XMLLogin.aspx?ext=$ext&ip=$ip” 4.1.4. Predefined Entities of XML The XML specification defines five "predefined entities" representing special characters, and requires that all XML processors honor them. The table below lists the five XML predefined entities. The "Name" column mentions the entity's name. The "Character" column shows the character, if it is renderable. In order to render the character, the format &name; is used; for example, &amp; renders as &. The "Description" column cites the character via its canonical UCS/Unicode name, in English.

Character Name Description " &quot; Quotation mark & &amp; Ampersand ' &apos; Apostrophe < &lt; Less-than sign > &gt; Greater-than sign

A) Declare "http://panasonic/Screen.xsd" as Name Space.

B) "xsi" description obeys "http://www.w3.org/2001/XMLSchema-instance".

C) "http://panasonic/Screen.xsd" name space is defined in "Screen.xsd" file.

20

4.1.5. XML Object Outline The following table is an outline of main XML objects.

Element Functionality ppxml Root element

Screen Screen object is same as Window of GUI.

Pages Pages object is correction of Page object.

Page Page object consists of component and events.

Components Components object is correction of GUI control object mainly.

Label It displays the text string, date-time, call duration

List it displays the list of text string.

PictureBox It displays PNG or GIF or JPEG format data.

TextBox It enables the user to enter and modify the text.

Button Button is an object pushed by user.

PictureButton Almost same as Button. Added attributes(border,margin,text)

RadioButton It selects one from a mutually exclusive set of options.

ComboBox It is a drop-down list.

CheckBox It allows multiple selection at the same time.

Events Events is an object to catch events. An events can also have some "Actions".

Timer It is able to define timer period and actions at the expiration.

Events (same as the above)

Components same as the above)

Events (same as the above)

Dialog It is independent window which expresses custom popup screen

Components (same as the above)

Events (same as the above)

Trigger It is used for the Push Service initiated from the server.

Skin It is used to change embedded button image files of following components (Button, PictureButton, ComboBox, List).

Profile It is used to define some parameter in NT400XML.

ScreenSaver It displays user defined images, like photo stand.

SetVariable It provides the global variable which is available until rebooting.

Execute Execute defines the operations (GetProfile, Get/SetConfig, Reboot, DeleteAllFiles, SetDateTime).

21

4.2. XML Objects Definition [Common Rule / Condition]

Item Rule / Condition Note m/o ‘m/o’ means ‘mandatory / optional’. element / attribute Describe the capital letter and the small letter accurately

regarding the elements and attributes.

name attribute Only alphabets and numerals {A-Z, a-z, 0-9} can be used in the name attribute. All punctuation marks (!”#$%&’()-+=~/<>*...), space, and underscore cannot be used.

It should be unique over the entire xml scripts. Especially, the name of the following elements must be absolutely unique.

Screen, Dialog, Button, Textbox, Picturebutton, CheckBox, RadioButton, ComboBox

Operation by hard key The object operation with a hard key is invalid if there is no special description.

22

4.2.1. ppxml [Overview] "ppxml" object is root element. This element is mandatory to define XML data. [Definition]

Child Element Attribute Value m/o

xmlns http://panasonic/Screen.xsd o http://panasonic/Service.xsd http://panasonic/Dialog.xsd http://panasonic/Skin.xsd http://panasonic/Profile.xsd http://panasonic/Screensaver.xsd

xmlns:xsi http://www.w3.org/2001/XMLSchema-instance o xsi:schemaLocation http://panasonic/Screen.xsd Screen.xsd o

http://panasonic/Service.xsd Service.xsd http://panasonic/Dialog.xsd Dialog.xsd http://panasonic/Skin.xsd Skin.xsd http://panasonic/Profile.xsd Profile.xsd http://panasonic/Screensaver.xsd Screensaver.xsd

Screen *Please refer to the element definition o Dialog *Please refer to the element definition o Trigger *Please refer to the element definition o Skin *Please refer to the element definition o Profile *Please refer to the element definition o ScreenSaver *Please refer to the element definition o SetVariable *Please refer to the element definition o Execute *Please refer to the element definition o

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <SetVariable key="@webServerPath" value=”http://192.168.0.203/NT400XML” /> <Screen> </Screen> </ppxml>

[LCD Image] none

23

4.2.2. Screen [Overview] Screen object is same as Window of GUI. This can have some components and pages. The usage for "persist =true" is for rapidly displaying common screen, like fixed Top Page. It is necessary to store Screen's script beforehand (e.g. by using LoadRequest action event) for displaying by ShowScreen action. Also all supporting files are also stored with xml scripts. [Definition]

Child Element1 Child Element2 Attribute Value m/o Functionality name text o This must be set if

persistent attribute is set "true".

version "1.0" o backcImage url o backcolor (RGB)000000~ffffff o default=”d4d0c8” persistent true / false o default=”false” show true / false o default=”true”

Components *Please refer to the element definition o Pages *Please refer to the element definition o Events OnInitialized *Please refer to the element definition o

OnUninitialized *Please refer to the element definition o OnTalking *Please refer to the element definition o OnHeld *Please refer to the element definition o OnHungup *Please refer to the element definition o OnPark *Please refer to the element definition o

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0"

backImage="@webServerPath/Screen/BackgroundImage.png" backColor="C0C0C0"> </Screen> </ppxml>

24

[LCD Image]

25

4.2.3. Pages [Overview] Pages object is correction of Page which is similar to Screen object. Pages will always stay at the same location and have same size. User can use "Next", "Back", "First", "Last" buttons to change between pages. This operation does not need to submit to server. It is already defined in XML content. Page number of each Page is automatically assigned . At least 1 page must be defined in Pages. [Definition]

Child Element Attribute Value m/o Functionality Left 0~319 m

Top 0~239 m Width 1~320 m Height 1~240 m

Page *Please refer to the element definition. m

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Pages left="0" top="30" height="210" width="320"> <!-- Page's full declaration --> <Page name="page1" border="true" borderColor="C0C0C0" backColor="C0C0C0"> <Components> <!-- Please refer to Screen->Components tag. --> </Components> <Events> <!-- Please refer to Screen->Events tag. --> </Events> </Page> <!-- Page's minimal declaration --> <Page name="page2"> <Components> <!-- Please refer to Screen->Components tag. --> </Components> </Page> </Pages> </Screen> </ppxml>

26

[LCD Image]

Page 1 content

Page 2 content

Page 16 content

Next Back

Next Back

Next Back

Pages (Max. 16 page)

Last First

Last First

Last First

...

Screen

27

4.2.4. Page [Overview] Page object consists of component and events. Each page is automatically assigned "page numbers" from top page to bottom page within Pages. (This will also prevent possible error by vendor (duplicate page, key in character for page number etc).) [Definition]

Child Element1

Child Element2 Attribute Value m/o Functionality

name Page Name m backcolor (RGB)000000~ffffff o default=”d4d0c8”

<!-- Transparent if no background color is specified -->

border true / false o default=”false” bordercolor (RGB)000000~ffffff o default=”000000” transparent true / false default=”false”

Components Please refer to the element definition. m Events OnInitialized *Please refer to the element definition o

OnUninitialized o [Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Pages left="0" top="30" height="210" width="320"> <!-- Page's full declaration --> <Page name="page1" border="true" borderColor="FF0000" backColor="0000FF" transparent=”false” > <Components> <!-- Please refer to Screen->Components tag. --> </Components> <Events> <OnInitialized> <PlaySound source="@webServerPath/Screen/ OnInitializedEvent.wav"/> </OnInitialized> <OnUninitialized> <PlaySound source="@webServerPath/Screen/ OnUninitializedEvent.wav"/> </OnUninitialized> </Events> </Page> <!-- Page's minimal declaration --> <Page name="page2"> <Components> <!-- Please refer to Screen->Components tag. --> </Components> </Page> </Pages>

28

</Screen> </ppxml>

[LCD Image]

Page(Background:Blue,Border:Red)

29

4.2.5. Components [Overview] Components object is correction of GUI control object mainly . All GUI controls (Button, CheckBox etc) are optional. Components are optional for main XML screen. As for popup/dialog "Components" are mandatory. [Definition]

Child Element m/o Functionality

Label o It displays the text string, date-time, call duration

List o it displays the list of text string. PictureBox o It displays PNG or GIF or JPEG format data. TextBox o It enables the user to enter and modify the text. Button o Button is an object pushed by user. PictureButton o Almost same as Button. Added attributes(border,margin,text) RadioButton o It selects one from a mutually exclusive set of options. ComboBox o It is a drop-down list. CheckBox o It allows multiple selection at the same time. Timer o It is able to define timer period and actions at the expiration.

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <!-- Please refer to each child element definition. --> </Components> </Screen> </ppxml>

30

4.2.6. Label [Overview] A label is a user interface control which displays text on a form. It is usually a static control; having no interactivity. A label is generally used to identify a nearby text box or other widget. Labels being used to indicate the purpose of a Check box or Button, as well as for a category heading. Label is able to display single line and multiple line text. [Definition]

Child Element Attributes Value m/o Functionality

name Text m left 0~319 m top 0~239 m width 1~320 m height 1~240 m text Displayed String m Content text in the label field. textAlignment Left/Center/Right o default=”Left” foreColor (RGB) 000000~ffffff o text color default=”ffffff” fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal / italic o default=”normal” fontWeight normal / bold o default=”normal” backColor (RGB) 000000~ffffff o default=”d4d0c8” border true / false o default=”false” borderColor (RGB) 000000~ffffff o default=”d4d0c8” textOverFlow true / false o If this is true and text is overflow, show

"...". Default=true transparent true / false o showDateTime true / false o For displaying clock object.

The clock synchronizes with PBX on 3:30 every day. The SetDateTime element is used to set it by XML.

refreshDateTime 0~86400 o Interval(second) of updating clock display (if showDateTime is true) default=”0”, 1~30sec is recommended.

showTalkDuration true / false o For displaying talking dialog [Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <!-- Label's full declaration --> <Label name="labelTitle" left="0" top="0" height="20" width="50" text="Screen title" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" textOverflow="true" backColor="C0C0C0" border="true" borderColor="C0C0C0" transparent="true" showDateTime="true"

31

refreshDateTime="10" showTalkDuration="true"/> <!-- Label's minimal declaration --> <Label name="labelName" left="0" top="0" height="20" width="20" text="Name"/> </Components> </Screen> </ppxml>

[LCD Image]

[DateTime format]

Language setting Display Format English-UK dd/mm/yyyy hh:mm English-US m/d/yyyy hh:mm Russia dd.mm.yyyy hh:mm Ukraine dd.mm.yyyy hh:mm German dd.mm.yyyy hh:mm France dd/mm/yyyy hh:mm Italy dd/mm/yyyy hh:mm Spain dd/mm/yyyy hh:mm Portugal dd-mm-yyyy hh:mm France dd/mm/yyyy hh:mm

[note] Actual string display priority of label is shown as below: (High) (Low) showDateTime > showTalkDuration > text

Screen Title

32

4.2.7. List [Overview] List displays the list of Text String. List allows the user to inspect, manipulate or select from a list of items. Lists may have one or more columns, and contain text, graphics, simple controls, or a combination of all three. There is a big panel which support multiple items display, with up and down buttons. The List Box in NT400 supports read only. User is not allowed to select an item [Definition]

Child Element 1 Child Element 2 Attributes Value m/o Functionality name text m

left 0~319 m top 0~239 m height 1~320 m width 1~240 m arrowImageHeight 1~320 o default=”18” arrowImageWidth 1~240 o default=”18” textAlingnment Left / Center / Right o default=”Left” foreColor (RGB)

000000~ffffff o default=”ffffff”

fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal / italic o default=”normal” fontWeight normal / bold o default=”normal” backColor (RGB)

000000~ffffff o default=”d4d0c8”

textOverFlow true / false o If this is true and

text is overflow,

show "...".

Default=true border true / false o default=”false” borderColor (RGB)

000000~ffffff o default=”d4d0c8”

linesPerScroll Value o default scroll is 1 line.

Item o Text text m

ListImages o UpArrownormal Source Url m These definition is

for Scroll bar of list control

UpArrowdown Source Url m DownArrownormal Source Url m DownArrowdown Source Url m

33

[Syntax] <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <List name="listBusinessNews" left="30" top="30" height="100" width="200" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" border="true" borderColor="C0C0C0" backColor="00FF00" linesPerScroll="3"> <ListImages> <UpArrowNormal source="http://[Web_server_IP_address]/NT400 /Screen/UpArrowNormalImage.png"/> <UpArrowDown source="http://[Web_server_IP_address]/NT400 /Screen/UpArrowDownImage.png"/> <DownArrowNormal source="http://[Web_server_IP_address]/NT400 /Screen/DownArrowNormalImage.png"/> <DownArrowDown source="http://[Web_server_IP_address]/NT400 /Screen/DownArrowDownImage.png"/> </ListImages> <Item text="Business news"/> <Item text="Wether news"/> <Item text="..."/> </List> </Components> </Screen> </ppxml>

[LCD Image]

Business news

Wether news

34

4.2.8. PictureBox [Overview] Image displays PNG or GIF or JPEG format data. [Definition]

Child Element Attribute Value m/o Functionality

name name m

left 0~319 m

top 0~239 m

height 1~240 m

width 1~320 m border true / false o default=”false” bordercolor (RGB)000000~ffffff o default=”000000” source Url m stretch true / false o True(default) : Image is stretched within

specified size. False: Image is clipped by specified size.

[Syntax]

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <PictureBox name="image1" left="30" top="30" height="100" width="100" source="http://[Web_server_IP_address]/NT400/Screen/Image_1.png" stretch="true" border="false" borderColor="C0C0C0"/> </Components> </Screen> </ppxml>

[LCD Image]

stretch=”true” stretch=”false”

35

4.2.9. TextBox [Overview] Text Box enables the user to enter and modify the text. Text Box can enter multiline text and have vertical and horizontal Scrollbars Password characters can be masked by '*'. Text Box loses the focus when the background of screen, dialog or page is touched. [Input method] There are 3 following ways. All methods are always available. 1. Screen Keyboard

*)Vendor is allowed to define whether show or hide Screen Keyboard and its position. For closing the Screen Keyboard, press its ESC key or remove focus from it. If you would like to show Screen Keyboard again, please move focus to the TextBox again.

2. Dial pad - 12 hard key(0~9,*,#) 3. USB keyboard [Validation Rule] Following validation rules exist.

none all character numeric numeric only dialNumber 0~9,*,# ip IP address format e.g. 192.168.0.1 date Date format e.g. dd/mm/yyyy dateUS US date format e.g. mm/dd/yyyy time Time format e.g. hh:mm

hh:0~23 mm:0~59

‘:’ and ‘.’ is allowed to input OK) 1, 12, 123, 1234, 1:23, 12:34, 1.23, 23.59

If validation fails, there are 2 types of validations. 1. Prohibit when character is pressed - numeric, dial number, date, dateUS, time, ip 2. Prompt error when TextBox lost focus - date, dateUS, time, ip Type 1 - Prevent invalid character input Type 2 - Check whole string to ensure format is matched. If text string does not match validation, text string will be set to "". When TextBox lost focus, some validation will be performed (e.g. Date, ip address, time etc).

36

[Definition] Child

Element Attributes Value m/o Functionality

name text m left 0~319 m top 0~239 m height 1~240 m width 1~320 m text initial value o text Alignment Left / Right / Center o default=”Left” foreColor (RGB)000000~ffffff o default=”ffffff” fontFamily Tahoma o fontSize 1~300 o default=“9” fontStyle normal/ italic o default=”normal” fontWeight normal/ bold o default=”normal” password true / false o Default value is false

Display Inputted character with '*'. This is enabled if multiline is false.

multiline true / false o Height does not affect the number of lines. But Width and fontSize will affect the number of lines, for a sentence for example. default=”false”

wordWrap true / false o Setting to true will disable horizontal scrollbar Default=“false” *)The wordWrap attribute is to allow long sentence to be shown in next line. The scrollBars attribute is to define whether the scroll bar (vertical or horizontal or both) to be shown if necessary [Example] 1. wordWrap: true, scrollBars: None -> No scroll bar is displayed even the text exceeds display area of textbox. 2. wordWrap: true, scrollBars: Vertical -> Vertical scroll bar is enabled if number of line of text exceeds display area of text box 3. wordWrap: false, scrollBars: Both -> Horizontal scroll bar is displayed if the sentence is longer than text box width.

maxLength 0~65535 o Default=”2048” keyboard true / false o True will auto show Software Input Panel if

TextBox got focus, and auto hide SCREEN KEYBOARD when lost focus. Default=”false”

keyboardLeft 0~319 o Default value is follow previous SCREEN KEYBOARD location

keyboardTop 0~239 o Default value is follow previous SCREEN KEYBOARD location

validationRule none/ numeric / dialNumber / date / dateUS / time / ip

o If preset text value does not match validation, text value will be set to "". Default=”none”

37

scrollBars Both / Horizontal / Vertical / None

o Horizontal : left & right Vertical : up & down Both : left/right & up/down None : no scrollbar default=”None” *)The scrollbar for TextBox is normal WinCE control, which is gray color (similar to Portal scrollbar).

source url o For loading text file. When "readonly" is true, NT400 does NOT Post this TextBox to server (during <SendRequest> execution). We'll also allow file extension with ".txt" to be downloaded. default=”false”

readonly true / false o

Data which is sent by "SendRequest" action. Each data of TextBox, RadioButton, CheckBox and ComboBox on the same Screen/Dialog is sent at the same time. [Syntax]

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <TextBox name="textBoxName" left="30" top="30" height="100" width="200" text="1234567890123456789012345678901234567890" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" password="false" multiline="false" textOverflow="true" wordWrap="false" maxLength="10" keyboard="true" keyboardLeft="0" keyboardTop="0" validationRule="numeric" scrollBars="both"/> </Components> </Screen> </ppxml>

[Operation by hard key]

Hard key Input data Operation Remarks 1~9, *, # Input '1' ~’0’, ‘*’, ‘#’

text -

Cancel(C) - lose focus Left - backspace Right - move right Up - move up multiline Down - move down multiline Enter(E) - enter CR multiline

38

[LCD Image]

[Restrictions] *) User cannot type characters using 12key in TextBox when phone state is not idle.

123456789012345678901234567 123456789012345678901234567 123456789012345678901234567 123456789012345678901234567 123456789012345678901234567

Input Field(Multiline)

39

4.2.10. Button [Overview] Button is an object pushed by user. (This is usually known as a command button or push button.) By pushing Button, some events occur and are handled to practice actions. Pushing button raises an event and initiates some actions. <Note> Currently button can support graphic and/or text. It will only have "normal" or "down" states. We do NOT support "toggle", "selected", "disable" states. This is because it requires more complex definition to decide when should change the button states. [Definition]

Child Element1

Child Element2 Attributes Value m/o Functionality

name Text m left 0~319 m top 0~239 m height 1~240 m width 1~320 m textAlingnment Left / Right / Center o default=”Left” foreColor (RGB)000000~ffffff o default=”ffffff” fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal / italic o default=”normal” fontWeight normal / bold o default=”normal” text Displayed Text String o backColor (RGB)000000~ffffff o default=”d4d0c8” textOverflow true / false o default=”true”

Events m OnClicked *Please refer to the element definition m

ButtonImages o Normal source Url m This definition is for

override image of button control which is embedded in NT400XML.

Down source Url m

[Syntax]

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <Button name="button1" left="30" top="30" height="20" width="60" text="MyButton" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" backColor="00FF00"> <ButtonImages> <Normal source="http://[Web_server_IP_address]/NT400/Screen /LastButtonNormalImage.png"/> <Down source="http://[Web_server_IP_address]/NT400/Screen /LastButtonDownImage.png"/> </ButtonImages> <Events>

40

<OnClicked> <NavigateLastPage/> </OnClicked> </Events> </Button> </Components>

[LCD Image]

An image is always stretched and displayed. [note] ProgressBar is immediately shown after OnClicked Event with SendRequest is processed. The default duration of showing the ProgressBar is 30 seconds. The default duration of showing the ProgressBar can be changed by Profile service.

My Button

My Button

<Down> <Normal>

41

4.2.11. PictureButton [Overview] PictureButton is an object pushed by user. (Almost same as Button object.) By pushing PictureButton, some events occur and are handled to practice actions. Pushing button raises an event and initiates some actions. <Note> The difference from Button object are as follows. - text label positon - margin. - border.

And if text and margin is not defined, its appearance is same as PictureBox. Currently PictureButton can support graphic and/or text. It will only have "normal" or "down" states. We do NOT support "toggle", "selected", "disable" states. This is because it requires more complex definition to decide when should change the button states. [Definition]

Child Element1

Child Element2 Attributes Value m/o Functionality

name Text m left 0~319 m top 0~239 m height 1~240 m width 1~320 m textAlignment Left / Right / Center o default=”Left” foreColor (RGB)000000~ffffff o default=”ffffff” fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal/ italic o default=”normal” fontWeight normal/ bold o default=”normal” text Displayed Text String o backColor (RGB)000000~ffffff o default=”ffffff” verticalAlignment Top / Bottom o default=”Bottom” margin 0~320 o default=”0” textOverflow true / false o default=”true” border true / false o default=”false” bordercolor (RGB)000000~ffffff o default=”000000”

Events o OnClicked *Please refer to the element definition m

PictureButtonImages o Normal source Url m These definitions

are for override image of button control which is embedded in NT400XML.

Down source Url m

42

[Syntax]

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <!-- PictureButton's full declaration --> <PictureButton name="pictureButton1" left="0" top="0" height="20" width="50" text="PictureButton" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" verticalAlignment="Bottom" textOverflow="true" border="true" borderColor="C0C0C0" margin="6" backColor="FFFFFF" clickable="true"> <PictureButtonImages> <Normal source="@web_server_path/Screen /PictureBoxNormalImage.png"/> <Down source="@webServerPath/Screen /PictureBoxDownImage.png"/> </PictureButtonImages> <Events> <OnClicked> <SendRequest url="@webServerPath/Screen /Next Screen.aspx?extensionNumber=100"/> </OnClicked> </Events> </PictureButton> </Components> </Screen> </ppxml>

PictureButton

fontSize (if text is defined)

margin width / height

border

PictureButtonImages (Clickable area)

43

[LCD Image]

An image is always stretched and displayed. [note] ProgressBar is immediately shown after OnClicked Event with SendRequest is processed. The default duration of showing the ProgressBar is 30 seconds. The default duration of showing the ProgressBar can be changed by Profile service.

<Down>

<Normal>

Picture Picture

44

4.2.12. RadioButton [Overview] Radio button selects one from a mutually exclusive set of options. If more options are to be allowed at the same time then Check box need to be used. [Definition]

Child Element 1

Child Element 2 Attribute Value m/o Functionality

name name m left 0~319 m top 0~239 m height 1~320 m This influences only

the height of Text .

width 1~240 m This influences only the width of Text .

text Button Text o foreColor (RGB)000000~ffffff o fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal / italic o default=”normal” fontWeight normal / bold o default=”normal” value Radio Button

Value m

checked selection status(true / false)

o default=”false”

groupName Radio Button group name

m Radio Buttons are grouped in a group by this name.

textOverFlow true / false o default=”true” buttonBackColor (RGB)000000~ffffff o buttonBorderColor (RGB)000000~ffffff o

Events o OnChecked *Please refer to the element definition o

Data which is sent by "SendRequest" action. Each data of TextBox, RadioButton, CheckBox and ComboBox on the same Screen/Dialog is sent at the same time. [Syntax]

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components>

<!-- RadioButton's full declaration --> <RadioButton name="radioButtonMale" left="0" top="0" height="20" width="50" text="Male" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" textOverflow="true" backColor="C0C0C0" squareBoxBackColor="C0C0C0" squareBoxBorderColor="000000" value="M" checked="true" groupName="Gender" buttonBackColor="D4D0C8" buttonBorderColor="000000"> <Events> <OnChecked> <PlaySound source="@web_server_path/Screen /RadioButtonChecked.wav"/>

45

</OnChecked> </Events> </RadioButton> <!-- RadioButton's minimal declaration --> <RadioButton name="radioButtonFemale" left="0" top="0" height="20" width="50" text="Female" value="F" groupName="Gender"/> </RadioButton> </Components> </Screen> </ppxml>

[LCD Image]

Male Femal

46

4.2.13. CheckBox [Overview] Radio button selects one from a mutually exclusive set of options. If more options are to be allowed at the same time then Check box need to be used. A box which indicates an "on" or "off" state via a check mark (✓) or a cross (✗). [Definition]

Child Element 1

Child Element 2 Attribute Value m/o Functionality

name name m left 0~319 m top 0~239 m height 1~240 m width 1~320 m foreColor (RGB)000000~ffffff o default=”ffffff” fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal / italic o default=”normal” fontWeight normal / bold o default=”normal” text Button Text o textOverflow true / false o default=”true” buttonBorderColor (RGB)000000~ffffff o default=”000000” buttonBackColor (RGB)000000~ffffff o default=”d4d0c8” value Button Value m checked true / false o default=”false”

selection status groupName name o CheckBoxs are

grouped in a group by this name.

Events o OnChecked *Please refer to the element definition o OnUnchecked *Please refer to the element definition o

Data which is sent by "SendRequest" action. Each data of TextBox, RadioButton, CheckBox and ComboBox on the same Screen/Dialog is sent at the same time. [Syntax]

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <CheckBox name="checkBoxApple" left="0" top="0" height="20" width="20" text="Apple" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" value="Apple" checked="true" > <Events> <OnChecked> </OnChecked> <OnUnchecked> <Actions> <!-- Optional action(s) --> </Actions> </OnUnchecked> </Events> </CheckBox>

47

<!-- CheckBox's minimal declaration --> <CheckBox name="checkBoxOrange" left="0" top="0" height="20" width="20" text="Female" value="F" > </CheckBox> </Components> </Screen> </ppxml>

[LCD Image]

M Female

Male Female

48

4.2.14. ComboBox [Overview] Combo box is a drop-down list. It allows the user to choose from the list of existing options. [Definition]

Child Element 1 Child Element 2 Attribute Value m/o Functionality name name m

left 0~319 m top 0~239 m height 1~240 m width 1~320 m textAlingnment Left / Right /

Center o default=”Left”

foreColor 000000~ffffff o default=”ffffff” fontFamily Tahoma o fontSize 1~300 o default=”9” fontStyle normal / italic o default=”normal”

fontWeight normal / bold o default=”normal”

textOverflow true / false o default=”true” backColor 000000~ffffff o default=”d4d0c8”

itemsPerPage 1~20 o How many items to show when the ComboBox is clicked. And "ItemsPerPage" will be optional attribute, where the default value is 5.

arrowImageHeight 1~240 o default=”18” arrowImageWidth 1~320 o default=”18”

Item o text text string m

value value string m selected true / false o Selected Item

Events o OnSelectionChanged *Please refer to the element definition o

ComboImages o These definition is for Scroll bar of ComboBox control which is embedded in NT400XML.

Normal Source Url m Down Source Url m ItemNormal Source Url m ItemDown Source Url m UpArrowNormal Source Url m UpArrowDown Source Url m DownArrowNormal Source Url m DownArrowDown Source Url m

Data which is sent by "SendRequest" action. Each data of TextBox, RadioButton, CheckBox and ComboBox on the same Screen/Dialog is sent at the same time.

49

[Syntax] <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen backColor="C0C0C0"> <Components> <!-- ComboBox's full declaration --> <ComboBox name="comboBoxHobbies" left="0" top="0" height="20" width="50" arrowImageHeight="18" arrowImageWidth="18" textAlignment="Left" foreColor="000000" fontFamily="Tahoma" fontSize="9" fontStyle="normal" fontWeight="normal" textOverflow="true" backColor="C0C0C0" itemPerPage="5"> <ComboBoxImages> <Normal source="@web_server_path/Screen /ComboBoxNormalImage.png"/> <Down source="@web_server_path/Screen /ComboBoxDownImage.png"/> <ItemNormal source="@web_server_path/Screen /ComboBoxItemNormalImage.png"/> <ItemDown source="@web_server_path/Screen /ComboBoxItemDownImage.png"/> <UpArrowNormal source="@web_server_path/Screen /UpArrowComboBoxItemNormalImage.png"/> <UpArrowDown source="@web_server_path/Screen /UpArrowComboBoxItemDownImage.png"/> <DownArrowNormal source="@web_server_path/Screen /DownArrowComboBoxItemNormalImage.png"/> <DownArrowDown source="@web_server_path/Screen /DownArrowComboBoxItemDownImage.png"/> </ComboBoxImages> <Item text="Reading" value="Reading"/> <Item text="Watching TV" value="Watching TV" selected="true"/> <Events> <OnSelectionChanged> <PlaySound source="@web_server_path/Screen /ComboBoxSelectionChanged.wav"/> </OnSelectionChanged> </Events> </ComboBox> <!-- ComboBox's minimal declaration --> <ComboBox name="comboBoxFavouriteColors" left="0" top="0" height="20" width="50" arrowImageHeight="18" arrowImageWidth="18"> <Item text="Red" value="Red"/> <Item text="Green" value="Green" selected="true"/> </ComboBox> </Components> </Screen> </ppxml>

50

[LCD Image]

51

4.2.15. Events [Overview] Events is an object to catch events. The trigger of Events is raised from following cases: 1) Normal Event : Respond to a user operation for components . 2) System Event : Load and Unload Screen and Pages, Page ,Dialog. An event can have some "Actions". Maximum 5 “Action” can be defined for each event. Action is an object to define a processes for an event. An event can have the plural Actions. Each Action is sequentially executed. For example , let say a Button click event has defined 3 actions (NavigateNextPage, MakeCall, ShowDialog) So when user click on the Button, 1st it will change to next page, then MakeCall, lastly Show a dialog. [Definition] <Event Elements>

Child Element 1 Attributes Value m/o Functionality OnInitialized o System Event : When loading Screen , Page and

Dialog. OnUninitialized o System Event : When unloading Screen , Page,

and Dialog. OnClicked o When pushing Button and PictureButton. OnChecked o When selecting CheckBox and RadioButton.

OnUnchecked o When unselecting CheckBox and RadioButton.

OnSelectionChanged o When selecting ComboBox.

OnExpired o When Timer is expired. OnTalking o System Event : When the call state is changed to

talking. The talking dialog should be displayed when this event is received.

OnHeld o System Event : When the call state is change to holding. The call retrieve dialog should be displayed when this event is received.

OnHungup o System Event : When the call is hung up The related dialog should be closed when this event is received.

OnPark o System Event : When the call state is changed to park-holding. The park number is obtain from environment variable ($Parknumber). To Unpark the call, you must make call with feature number for unparking with this environment variables.

52

<Actions Elements 1> (The following elements must be child of Event elements.) Child Element 2 Attributes Value m/o Functionality

SendRequest o Client to server communication.

event send to Web Server. You should not define two or more SendRequest for one Events because the operation is not warrantable.

url Url m Web server URL

method GET / POST

o default=”POST” Method for sending to Web server

LoadRequest o Client to server communication.

Load xml scripts from Web Server. Multiple LoadRequest can be defined. If you only need load scripts beforehand instead of showing, you must set "false" in 'show' attribute.

url Url m Web server URL

method GET / POST

o default=”GET” You should set “GET” so that various server may not refuse.

SetValiable o refer to 4.2.20

NavigateFirstPage o Page navigation Go to top page in Pages.

NavigatePreviousPage o Back to previous page in Pages.

NavigateNextPage o Go to next page in Pages.

NavigateLastPage o Go to last page in Pages.

NavigatePage o Jump to specified page in Pages. name page

name m

MakeCall number phone number

o Call Control Call to specified phone number.

AnswerCall o Answer incoming call.

HoldCall o Hold the call

RetrieveCall o Retrieve the call

HangupCall o Clear the call. Mute o Hardkey emulation Change mute mode

mode on / off m Conference o Conference button press

Intercom o Intercom button press Flash o Flash button press

FFKey o Flexible button press (without LED)

value 1~48 m Key location number

SetFocus o UI control Set focus to specified UI name name m Components name to focus

ShowKeyboard o Screen Keyboard

left 0~319 m x-coordinate of the left edge of the keyboard

top 0~239 m y-coordinate of the top edge of the keyboard

HideKeyboard o

PlaySound o Multimedia Start playing audio data.

source Url m volume 0~255 o

StopSound o Stop playing audio data.

53

DeleteAllFiles o flashFileSystem true / false m Delete stored script by using persist=”true” ramDisk true / false m Delete current displayed script

Reboot o interval 0~86400 o default=”0” second

<Actions Elements 2> (The following elements must be child of Event elements.) Child Element 2 Child Element3 Child Element4 Attributes Value m/o Functionality ShowDialog o Show dialog on

current Screen / Page. name name m

OK o SendRequest m Refer to

SendRequest Cancel o SendRequest m Refer to

SendRequest CloseDialog o

name name m

result OK / Cancel o ShowScreen o

name name m <Actions Elements 3> (The following elements must be child of Event elements.) Child Element 2 Child Element3 Attributes Value m/o Functionality GetConfig o

mode DisplaySetting /IpAddressSetting /LanguageSetting /FirmwareVersion /All

m

url Url m SetConfig LanguageSetting o

language English_US /English_UK /French /French_CA /German /Spanish /Italian /Portuguese /Russian /Ukrainian

o

DisplaySetting o lcdBrightness 1~5 o backlightOffTimer 1/ 3/

5/10/15/30/60 o

lcdOffTimer 1/ 3/ 5/10/15/30/60

o

touchScreenSound true / false o durationForKeyInput 500~9999 o

IpAddressSetting o isDhcp true / false o voIpAddress ip o ceIpAddress ip o subnetMask mask o defaultGateway ip o

54

primaryPbxAddress ip o secondaryPbxAddress ip o pbxChangeTime 30-300 o xmlInitializePageURL url o xmlPortNumber 1~65535 o for receiving push event

default=”6666” xmlSetupStatus 1 / 0 o 1 : Setup button is

displayed (default) 0 : Setup button is not displayed

GetProfile o url Url m

SetDateTime o value mm/dd/yyyy

hh:mm m ex) 10/07/2010 11:22

55

[Syntax] <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <Button name="buttonlast" left="30" top="30" height="20" width="20" text="MyButton"> <Events> <OnClicked> <NavigateNextPage /> <MakeCall number="101" /> <ShowDialog name="MyDialog" /> </OnClicked> </Events> </Button> </Components> </Screen> </ppxml>

[LCD Image]

[Operatings]

[SendRequest] SendRequest is used to get XML data from WebServer. SendRequest sends "HTTP POST/GET Request" which has some parameters. The format of the parameter is same as one of the <FORM> tag. Components which can be the paramater are followings.

Components Parameter Name Parameter Value TextBox text value Radio Button groupname value Check Box groupname value Combo Box name value

The scope of Names and Values which are sent by "SendRequest" is <Screen> or <Dialog>. (Names and Values can not be sent per Page.)

MyButton

When user clicks this button, "OnClicked" event occurs and "Actions" of that is called.

56

[SetConfig] If xmlPortNumber is already opened by other application, SetConfig action makes no change and only add an error to Error Log.

[ShowScreen]

ShowScreen Action will only be able to show for Screen with persistent=true (kept in /NORFlash). So, if SendRequest or LoadRequest obtains a Screen with persistent=false, that Screen can never be shown.

[ShowDialog]

ShowDialog Action will first search for Dialog with persistent=true (kept in /NORFlash) to show, else it will search for Dialog with persistent=false (kept in Temp Location) to show.

[Restrictions] 1. When a button is clicked, a new thread is created to process the actions.

If the actions have not completed, clicking the same button has no effect. If the actions have not completed, clicking another button/control will trigger the another button/control's actions.

2. If ProgressBar is not displaying, clicking multiple buttons with different SendRequest will cause. latest SendReqeust to stop earlier SendRequest operation. Not all SendRequest to be successfully executed, because some may be stoped by later SendRequest. GUI to show later SendReqeust screen. 3. If multiple actions are declared within a button, the actions will always be executed in sequential manner. Asynchronize action m>ust also be completed before next action can start. 4. In order for <ShowDialog> to work, you must PUSH the XML file of Dialog to NT400(XML) first. This is <ShowDialog> limitation, but can also be advantage because commonly used Dialog no need to

download every time. *) If you prefer to download Dialog xml every time, then use <SendRequest> with the url point to Dialog. 5. If downloading many files via LoadRequest in Execute: a) please run a pretest beforehand to ensure that OutOfStorage does not occur. b) please run during non-peak usage period since there is always no Progress Bar & user might be

surprised to see some performance slowdown. c) please avoid having a recursive loop where Execute.xml has a LoadRequest which points to same

Execute,xml on Server. d)It is able to define max. 5 LoadRequest elements per event.

57

[Note - Reboot / GetConfig / SetConfig actions] Reboot / GetConfig / SetConfig actions can be defined as following types. Though these actions are processed as normal action, <Trigger> may be sent from WebServer by PUSH.

[Type 1] <ppxml> <Screen> <Components> <Button> <Events> <OnClicked> <GetConfig/> <Reboot/> </OnClicked> </Events> </Button> <Components> </Screen> </ppxml> [Type 2] <ppxml> <Screen> <Events> <OnInitialized> <GetConfig/> <Reboot/> </OnInitialized> </Events> </Screen> </ppxml> [Type 3 - separate XML content file] <ppxml> <Execute> <GetConfig/> <Reboot/> <!--All actions are also supported here--> <MakeCall/> <SendRequest/> </Execute> </ppxml>

58

[OK and Cancel definitions of ShowDialog actions] 1) Define "OK" or "Cancel" element in Screen definition. 2) Define result attribute of CloseDialog action with "OK" or "Cancel" in Dialog definition. 3) When OK or Cancel button is clicked on Dialog , SendRequest of Screen action is called. Reboot /

<ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen > <Components> <Button name="button1" left="30" top="30" height="20" width="60"

text="MyButton"> <Events> <OnClicked> <ShowDialog name="MyDialog"> <OK> <SendRequest url="http://192.168.0.200/OK.xml"/> </OK> <Cancel> <SendRequest url="http://192.168.0.200/Cancel.xml"/> </Cancel> </ShowDialog> </OnClicked> </Events> </Button> </Components> </Screen> </ppxml> <!—Another xml file : Dialog's full declaration --> <!—It is necessary to store dialog's script beforehand by using "persist attribute" (persist=”true”) for displaying by ShowDialog action. --> <ppxml xmlns="http://panasonic/Dialog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Dialog.xsd Dialog.xsd"> <Dialog name="MyDialog"> <Components> <Button name="ok" left="10" top="40" height="30" width="145" text="OK"> <Events> <OnClicked> <CloseDialog name="MyDialog" result="OK"></CloseDialog> </OnClicked> </Events> </Button> <Button name="cancel" left="160" top="40" height="30" width="145"

text="CANCEL"> <Events> <OnClicked> <CloseDialog name="MyDialog" result="Cancel"></CloseDialog> </OnClicked> </Events> </Button> </Components> </Dialog> </ppxml>

59

[GetConfig/GetProfile result examples] [GetConfig mode=”DisplaySetting”] POST /HOTEL/post1.asp HTTP/1.1 Content-Type: application/x-www-form-urlencoded Content-Length: 98 Connection: Keep-Alive Expect: 100-continue Host: 10.64.xxx.16 lcdBrightness=3&backlightOffTimer=5&lcdOffTimer=30&touchScreenSound=False&durationForKeyInput=9999 [GetProfile] POST /HOTEL/SaveProfile.aspx HTTP/1.1 Content-Type: text/xml; charset=utf-8 Content-Length: 508 Expect: 100-continue Host: 10.64.xxx.16 Via: 1.1 ik-sg09 Connection: Keep-Alive X-BlueCoat-Via: A9C0FA0D6BEBFF37 <?xml version="1.0" encoding="utf-8"?> <!-- Profile's full declaration --> <ppxml xmlns="http://panasonic/Profile.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Profile.xsd Profile.xsd"> <Profile> <IndirectHandlingReminderTime>5</IndirectHandlingReminderTime> <ProgressBarTime>30</ProgressBarTime> <DebugMode>false</DebugMode> <ShowProgressBar>true</ShowProgressBar> </Profile> </ppxml>

60

4.2.16. Dialog [Overview] Dialog is independent window which expresses custom popup screen definition by XML definition. (Embedded CallAlert and DialPopup are already implemented.) Though the structure of XML definition is same as "Screen" except for Pages definition ,the way to display is different. Dialog is displayed on a Screen. The usage for "persist =true" is for rapidly displaying common dialog, like Talking, Make Call and so on. It is necessary to store dialog's script beforehand (e.g. by using LoadRequest action event) for displaying by ShowDialog action. And, "persist=false" usually is for 1 time showing screen (e.g. clothes washing completed, message broadcast from hotel front desk). [Definition]

Child Element1

Child Element2 Attribute Value m/o Functionality

name Dialog name m persistent true / false o default=”true” top 0~239 m left 0~319 m height 1~240 m width 1~320 m backColor (RGB)000000~ffffff o default=”d4d0c8” border true / false o default=”false” borderColor (RGB)000000~ffffff o default=”000000” version “1.0” o default=“1.0” backImage url o show true / false o default=”true”

Components Please refer to the element definition m Events o

OnInitialized *Please refer to the element definition o OnUninitialized *Please refer to the element definition o OnTalking *Please refer to the element definition o OnHeld *Please refer to the element definition o OnHungup *Please refer to the element definition o OnPark *Please refer to the element definition o

[Syntax]

<ppxml xmlns="http://panasonic/Dialog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Dialog.xsd Dialog.xsd"> <Dialog name="callalert" persistent="true" top="0" left="0" height="100" width="100" backImage="http://@webServerPath/Call_alert/BackgroundImage.png" backColor="C0C0C0"> <Components> <!-- Please refer to Screen->Components tag for more information. --> <Button name="buttonAnswerCall"

61

left="0" top="0" height="20" width="40"> <Events> <OnClicked> <AnswerCall/> </OnClicked> </Events> </Button> <Button name="buttonHangupCall" left="30" top="0" height="20" width="40"> <Events> <OnClicked> <HangupCall/> </OnClicked> </Events> </Button> </Components> <Events> <!-- Please refer to Screen->Events tag of Screen.xml. --> </Events> </Dialog> </ppxml>

[LCD Image]

[Restriction] When a custom dialog is shown (defined by developer), pressing dial key will not send to PBX (dial popup also not display).

Answer Hangup

62

4.2.17. Trigger [Overview] It is used for the Push Service initiated from the server. Service defines Content XML file URL and the way to process. XML file which includes Service is called "Link XML file". It is a trigger to NT400, to inform NT400 to download next XML content file from server. Please refer to 3.2.2 [Definition]

Child Element1 Child Element2 Attribute Value m/o Functionality version "1.0" o Source url m Content XML file URL Handling m

Mechanism Direct / Indirect

m default=”Direct” Server push handling mechanism If “Indirect” is set, the embedded dialog is displayed to confirm whether this event can be accepted soon.

Timeout 0~65535 m default=”30” minutes. Forcibly handle server push after specified interval in minute(s) Applicable only for indirect server push handling

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Trigger.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Trigger.xsd Trigger.xsd"> <Trigger version="1.0"> <Source>http://[Web_server_IP_address]/NT400/Screen.xml</Source> <Handling> <Mechanism>Direct</Mechanism> <Timeout>30</Timeout> </Handling> </Trigger> </ppxml>

[LCD Image] This is a system embedded dialog which is displayed if “Mechanism” is set to “Indirect”.

63

4.2.17. Profile [Overview] This is used to define some parameter in NT400XML. It is able to modify and reuse the script obtained by GetProfile element. [Definition]

Child Element Attribute Value m/o Functionality version "1.0" o IndirectHandlingReminderTime 1~30 o default = “5” min ProgressBarTime 1~1000 o default = “30” sec ShowProgressBar true / false o default = “true” DebugMode true / false o default = “false”

If “true”, schema error messages are displayed on the screen.

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Profile.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Profile.xsd Profile.xsd"> <Profile> <IndirectHandlingReminderTime>5</IndirectHandlingReminderTime> <ProgressBarTime>30</ProgressBarTime> <DebugMode>true</DebugMode> <ShowProgressBar>true</ShowProgressBar> </Profile> </ppxml>

[LCD Image] none

64

4.2.18. Skin [Overview] This is a feature to change embedded image files of following components. Button PictureButton ComboBox List Before operating user development GUI,the image files have to be downloaded if necessary. [Definition]

Child Element1

Child Element2

Child Element3 Attribute Value m/o Functionality

version "1.0" m persistent true / false o default=”true” Button o These definition is for

override image of button control which is embedded in NT400XML.

ButtonImages m Normal source Url m Down source Url m

PictureButton o These definition is for override image of button control which is embedded in NT400XML.

PictureButtonImages m Normal source Url m Down source Url m

ComboBox o These definition is for Scroll bar of ComboBox control which is embedded in NT400XML.

ComboBoxImages m Normal source Url m Down source Url m ItemNormal source Url m UpArrowNormal source Url m UpArrowDown source Url m UpArrowNormal source Url m UpArrowDown source Url m DownArrowNormal source Url m DownArrowDown source Url m

List o These definition is for Scroll bar of list control which is embedded in NT400XML.

ListImages m UpArrownormal source Url m UpArrowdown source Url m DownArrownormal source Url m DownArrowdown source Url m

65

[Syntax] <?xml version="1.0" encoding="utf-8"?> <!-- Skin's full declaration --> <ppxml xmlns="http://panasonic/Skin.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Skin.xsd Skin.xsd"> <Skin> <Button> <ButtonImages> <Normal source="@web_server_path/Skin/Button/Normal.png"/> <Down source="@web_server_path/Skin/Button/Down.png"/> </ButtonImages> </Button> <ComboBox> <ComboBoxImages> <Normal source="@web_server_path/Skin/ComboBox/Normal.png"/> <Down source="@web_server_path/Skin/ComboBox/Down.png"/> <ItemNormal source="@web_server_path/Skin/ComboBox/ItemNormal.png"/> <ItemDown source="@web_server_path/Skin/ComboBox/ItemDown.png"/> <UpArrowNormal source="@web_server_path/Skin/ComboBox /UpArrowNormal.png"/> <UpArrowDown source="@web_server_path/Skin/ComboBox /UpArrowDown.png"/> <DownArrowNormal source="@web_server_path/Skin/ComboBox /DownArrowNormal.png"/> <DownArrowDown source="@web_server_path/Skin/ComboBox /DownArrowDown.png"/> </ComboBoxImages> </ComboBox> <List> <ListImages> <UpArrowNormal source="@web_server_path/Skin/List /UpArrowNormal.png"/> <UpArrowDown source="@web_server_path/Skin/List/UpArrowDown.png"/> <DownArrowNormal source="@web_server_path/Skin/List /DownArrowNormal.png"/> <DownArrowDown source="@web_server_path/Skin/List /DownArrowDown.png"/> </ListImages> </List> <PictureButton> <PictureButtonImages> <Normal source="@web_server_path/Skin/PictureButton/Normal.png"/> <Down source="@web_server_path/Skin/PictureButton/Down.png"/> </PictureButtonImages> </PictureButton> </Skin> </ppxml>

66

[LCD Image]

Parts of GUI control

XML object

using this parts

Default Control Color

Normal Push

Scroll Up / Down List Dark Gray

Button Button Dark Gray

ComboBox ComboBox Dark Gray

67

4.2.19. ScreenSaver [Overview] Screen saver displays user defined images. The images will rotate after certain period of time (e.g. 10 seconds - user define). [Definition]

Child Element Attribute Value m/o Functionality version "1.0" m persistent true / false o default = false backlightOffTime 1 / 3 / 5 / 10 / 15 / 30 / 60 o in minute lcdOffTimer 1 / 5 / 10 / 30 / 60 / 120 / 180 / 300 o in minute pictureTimer 2~86400 m in second Picture stretch true / false o default=”true”

source Url m [Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screensaver.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screensaver.xsd Screensaver.xsd"> <ScreenSaver version="1.0" persistent="false" backlightOffTimer="1" lcdOffTimer="1" pictureTimer="4"> <Picture stretch="true" source="@webServerPath/Images/Hotel_1.png"/> <Picture stretch="true" source="@webServerPath/Images/Hotel_2.png"/> </ScreenSaver> </ppxml>

[LCD Image]

pictureTimer

68

4.2.20. SetVariable [Overview] This element provide the global variable which is available until rebooting. This variable can be read at any position, but it can be set only at child of ppxml element and event elements of Events (e.g. OnClicked...)s. Rules of variable name:

- Can be any combinations of alphanumeric (character + number) - White space, symbol and special character are not allowed - Valid: @MyVariable123, $aB12Cd, #textBox1 - Invalid: #MyName_Textbox, $Hello~!^%,

Example usage of SetVariable - Store the XML server URL path, e.g. <SetVariable key="@serverPath" value="http://192.168.0.100/" /> - Copy current Screen component value to next Screen/Dialog. E.g. <SetVariable key="@serverPath" value="#myTextBoxName" /> [Definition]

Child Element Attribute Value m/o Functionality

key string (@ followed by a~z,A~Z,0~9)

m Prefix character is @.

value string (Except '&', '"', '<')

m If this is '#'+ the name of component , this is replaced with the value of correspond component.

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <SetVariable key="@company" value="Panasonic"></SetVariable> <SetVariable key="@webServerPath" value=http://192.168.0.203/NT400XML /> <Screen version="1.0"> <Components> <TextBox name="textBox" left="10" top="10" height="20" width="170" text="Hello.NT400."> </TextBox> <Button name="button1" left="30" top="30" height="20" width="60" text="MyButton" > <OnClicked> <SetVariable key="@MyNameSystemWideValue" value="#MyNameTextBox" /> </OnClicked> </Button> </Components> </Screen> </ppxml> <Note> To refer to System Variable which has already set. <ppxml> <Screen> <Components> <TextBox name="WataTextBox" left="30" top="30" height="100" width="200" text="@MyNameSystemWideValue " /> </Components> </Screen> </ppxml>

69

[LCD Image] none

70

4.2.21. Timer [Overview] It is able to define timer period and actions at the expiration. (e.g. PlaySound, SendRequest, MakeCall, Open/Close Dialog). Timer will only stop if the current screen is being replaced. If the current screen is still showing, and there is a Dialog, the timer will still execute. Pressing/manipulate components like checkbox will NOT reset the timer [Definition]

Child Element1

Child Element2 Attribute Value m/o Functionality

name name m

repeat true / false m

interval 1~86400 m seconds

Events m OnExpired *Please refer to the element definition m

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Screen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Screen.xsd Screen.xsd"> <Screen version="1.0" backColor="C0C0C0"> <Components> <Timer name=”tm1” repeat="true" interval="30"> <Events> <OnExpired> <SendRequest url="@webServerPath/ GetXml.aspx?xml=HotelHome.xml" /> </OnExpired> </Events> </Timer> </Components> </Screen> </ppxml>

[LCD Image] none

71

4.2.22. Execute [Overview] Execute defines the operations that can be executed in NT400. Though Action with Screen influences the displaying, Execute does not influence the displaying. So developer who would like to perform without changing the displaying should use Execute definition. It is able to define as a child element is less than 30. [Definition]

Child Element Attribute Value m/o Functionality

version ”1.0” o

LoadRequest *Please refer to the Action definition of the EVENTS element definition

o

GetProfile o

SetConfig o

GetConfig o

Reboot o

DeleteAllFiles o

SetDateTime o

[Syntax]

<?xml version="1.0" encoding="utf-8"?> <ppxml xmlns="http://panasonic/Execute.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://panasonic/Execute.xsd Execute.xsd"> <Execute version="1.0"> <GetConfig mode="All" url="@webServerPath/Saveconfig.aspx"/> <GetProfile url="@webServerPath/SaveProfile.aspx"/> <SetConfig> <LanguageSetting language="English_US"/> </SetConfig> <DeleteAllFiles flashFileSystem="true" ramDisk="true"/> <SetDateTime value="10/07/2010 11:10"/> <LoadRequest url="@webServerPath/GetXml.aspx?xml=test.xml"/> <Reboot interval="10"/> </Execute> </ppxml>

[LCD Image] none

72

5. Call Control Dialog/Popup 5.1. Call Alert Pop Up This is a system embedded dialog. It is not possible to change color, displayed item and its layout. Caller name is only displayed when the PBX notify of it. (e.g. When the Caller name is available in the subscriber line. Please note the extension name cannot be displayed.) If another XML dialog is already displayed, it is closed(canceled) forcibly beforehand.

5.2. Dial Pop Up This is a system embedded dialog. When user goes off hook or press 12 key in the idle call state, this dial pop up is displayed. This dialog close automatically when the call state is changed (e.g. calling) . If another XML dialog is already displayed, it is closed(canceled) forcibly beforehand.

5.3. Make Call Dialog This is a user defined dialog example. Please note that this dialog close automatically like the dial popup when the call state is changed (e.g. calling/talking/busy tone...).

73

5.4. During Calling There is no embedded dialog during calling. It is able to display the original screen(not dialog) after making call action. You should at least compose the ‘calling number’ and the ‘Hangup the Call’ button, like the below.

5.5. During Talking There is no embedded dialog during Talking. It is able to display the original screen(not dialog) using system Events (OnTalking) You should at least compose the Talking Dialog of ‘Call Duration label’, ‘Hangup the Call button’ (and Retrieve the Call button’), like the below. (*)The call duration is reset to zero when user answers a hold recall alert.

74

5.6. During Holding a call There is no embedded dialog during Holding a call. It is able to display the original dialog using system Events (OnHeld). You should at least compose the Retrieve the Call button’, like the below.

5.7. On Park Holding a call There is no embedded dialog on Park Holding. If your system use the Park Hold operation, you should handle OnPark system event. You can get the park number from the environment variable ($ParkNumber). ⇒4.1.3 To Unpark the call, you must make call with feature number for unparking and this environment variables.

75

5.8. Priority to show popup and dialog. Basically priority to show popup and dialog is as following, which Popup has the highest priority. Popup > Dialog > Base Window The ways to display are followings on NT400XML. 1) Basic Window -> This is basic window of XML Viewer. 2) XML Dialog -> This is displayed on Basic Window. 3) Embedded Call Control Dialog. (Call Alert and Dial Popup) 4) Embedded other Dialog. (Regarding error and warning) 5) Embedded other Popup. (Regarding error and warning) In detail, there are following patterns to show those. 5 > 3 > 4 > 2 > 1 - (e.g. Error message "popup" can show on top of "Call Alert") 3 > 5 > 4 > 2 > 1 - (e.g. "Call Alert" can show on top of error message "popup") 5 > 3 > 4 > 2 > 1 - (e.g. "Embedded dialog" can show on top of "custom dialog") 5 > 3 > 2 > 4 > 1 - (e.g. "Custom dialog" can show on top of "Embedded dialog") [*]Restrictions 4 > 5 > 3 > 2 > 1 - (e.g. "Embedded dialog" cannot show on top of Error message

"popup") 5 > 2 > 3 > 4 > 1 - (e.g. "Custom dialog" cannot show on top of "Call Alert") If XML dialog is already displayed, it is closed(canceled) forcibly before higher priority dialog/popup is displayed.

76

6. Setup 6.1. Exchange method of NT400 firmware 6.1.1. Insert SD card 6.1.2. Turn on power. (Connect A/C adaptor)

[Note] A) Prepare the SD card (more than 32MB, below than 2GB) Note:NT400 doesn't support SDHC/SDXC.

Please format the SD card using PC by 'FAT' instead of 'FAT32'. B) Make following directories in the SD card using PC. ¥¥private¥meigroup¥pcc¥pbxpt¥nt400 C) Copy the firmware file (PNT400***) for updating into above directory using PC. ¥¥private¥meigroup¥pcc¥pbxpt¥nt400¥PNT400***

When this dialog is displayed, press 'OK' button. And move to next. (This dialog may not be displayed.)

77

6.1.3. IP Address setting

When you can see “Now initializing network settings”, then touch the 'Setup' button.

Touch 'IP Address' menu.

Set DHCP Disable.

Set 192.168.0.16

Set 192.168.0.17

Set 255.255.255.0

Touch 'Close' button, then NT400 reboots automatically

78

6.1.4. Firmware Version Up

Move to 2nd. page using down arrow.

When you can see “Now initializing network settings”, then touch the Setup button.

Enter the password. Password : 387255 - You can use Screen Keyboard or 12 key.

Touch 'Firmware Version Up' menu.

79

6.1.5. Update File select

Touch the firmware file name for updating. e.g.) ‘PNT400’

Touch 'Start' button.

Move to 4th. page using down arrow.

Show directory lists of the SD card..

[Note] The setting data of NT400 are all cleared by this update operation. If it is necessary to backup, you must export them to SD card beforehand.

80

[Note] - It takes about 8 min. - Do not touch the LCD till the version up complete. - Do not turn off the power till the version up complete. - NT400 will reboot (twice) automatically when the version up completes. - After that if the NT400 does not show anything on the LCD, turn OFF and then

ON manually. - The setting data of NT400 are all cleared by this update operation. If it is necessary to backup, you must export them to SD card beforehand.

81

6.1.6. Confirmation of Firmware Version

05.000

05.000

01.200

05.000

VoIP IPL, VoIP Application and Application version must be same as described in release note. But if you see different version number, please retry firmware update procedure from 6.1.5. NOTE) It is not a problem that only the Application Loader Version is different like the above. It displays the original ROM version which has been produced, and it is not changed by this procedure.

Touch 'Firmware Version' button.

82

6.1.7. Setting initialize to factory default. When the firm is changed from a standard version(Ver.1.0~1.2) to XML, this process is omissible. However, when you change the firmware from XML into a standard version, this process is necessary.

Touch 'OK' button menu.

Enter the password. Password : 7262 - You can use Screen Keyboard, 12 key.

After several seconds, the completion popup is displayed. Then all software update procedure is completely finished. Turn power off and remove SD Card.

Touch 'Initialize' button.

Touch 'OK' button.

83

6.2 Settings of NT400XML Only the difference points from standard version are described in this section. 6.2.1. Hide Setup button It is able to hide the Setup button to avoid setting change by malice. Its setting can be changed only by using SetConfig elements. Please refer to the element definition (4.2.15).

enable : xmlSetupStatus=”1” (default)

disable : xmlSetupStatus=”0”

84

6.2.2. Initial Access XML Server setting Add server URL setting menu to the 3rd page of IP Address setting.

03

Touch 'IP Address’ button.

Move to 3rd. page using down arrow.

Enter initial access XML server URL.

[Note] There are following environment variables, those are automatically replaced to real value. $ip (Application IP address) $ext (Extension number) As an example, you can describe Initial Server URL like following to send own extension number and ip address to WebServer. http://192.168.0.203/xmlserver/XMLLogin.aspx?ext=$ext&ip=$ip

85

6.2.3. LCD Calibration setting This is a countermeasure for deleting User Options menu.

86

7. Appendix 7.1. ERROR Codes of NT400XML Only the difference points from standard version are described in this section. Please refer to the NT400 Operating Instruction regarding other error codes. You can view the system error messages (error codes) on the Error Log screen. To access the Error Log screen 1. Press the Setup button (during startup) > Error Log.

Error code Subcode Probable Cause Solution B602 0001 Schema validation error detected or

XML proccessing error detected (Action_ExecuteActionFailed)

Check your XML script

0002 (SubCode_Action_InvalidAction)

0003 (Action_InvalidKey)

0004 (Action_SendRequestFailed)

0101 (HandleServiceFailed)

0102 (InvalidKey)

0103 (SendRequestFailed)

0201 (Manager_ThreadTerminated)

0301 (Parser_InvalidKey)

0302 (Parser_ParseXmlFailed)

0303 (Parser_SendRequestFailed)

0401 (Sender_SendRequestFailed)

0402 (Sender_ThreadTerminated)

0501 (Validator_AddSchemaFailed)

0502 (Validator_ValidateXmlFailed)

ffff (general error detected)

BB02 0001-0015 Http server connection error Check your server environment, setting of NT400 and web server. 0100-0505 Equivalent of HTTP error code.

See HTTP specifications. BB03 port

number The port number is already open/in use.

Change to another port number

87

[Download method of ERROR LOG] You can also get the errorlog files by folowing way. (XML version only) - http://[NT400XML_ApplicationIPaddress]:["Push Port" Number]/NorFlash/ErrorInfo Please note Errorinfo is binary format file, its format is as follows. typedef struct ErrorInfo { USHORT ErrorType; // 0:Critical, 1:Error, 2:Warning USHORT ErrorCode; USHORT SubCode; struct { WORD wYear; UCHAR ucMonth; UCHAR ucDay; UCHAR ucHour; UCHAR ucMinute; UCHAR ucSecond; UCHAR ucDayOfWeek; // don’t care } LogTime; } ErrorInfo[200]; // max.200 7.2. Editing XML Scripts on the PC The PC free software, called ‘XML Notepad 2007’ made by Microsoft®, can check schema error on PC. It is useful for basic editing and checking scripts before actually loading to NT400. Tool name : XML Notepad 2007 (Please obtain it from the Microsoft® website). It is recommended that all NT400XML schema files are copied onto the same folder as the script folder beforehand for easy use. For more detail, please confirm the help of this tool.

88

<end of doc>