Category:HowTo:PUI Menu

From Snom User Wiki

Jump to: navigation, search

Author: Alexander Feldt

Contents

Preconditions

This feature is available on snom IP phones from firmware 8.4.18 onwards.
For snom 300 and snom 320 this feature is only available from version 8.7.3.7.

Step 1

Download the default menu XML description from the phone using one of the following links (depending on the firmware version the phone is running):


Step 2

Edit the XML menu description file using a XML editor in order to make simple changes to the menu. Possible Editors are:

   Docbook: http://www.oasis-open.org/docbook
   TEI: http://www.tei-c.org
   Oxgarage: http://www.tei-c.org/oxgarage
   Saxon: http://www.saxonica.com
   Sade (Scalable Architecture for Digital Editions): http://www.bbaw.de/telota/software/sade
   XFT: http://xtf.cdlib.org
   XML Copy Editor: http://xml-copy-editor.sourceforge.net
   Textgrid Lab: http://www.textgridlab.org
   Oxygen XML Editor: http://www.oxygenxml.com
   Forschungsverbund Textgrid: http://www.textgrid.de
   Subversion-Repository Textgrid Lab: https://develop.sub.uni-goettingen.de/repos/textgrid
   Wörterbuchnetz der Universität Trier: http://woerterbuchnetz.de
   Eclipse: http://www.eclipse.org


If you want to create new menu structures or apply bigger changes you will need a XML schema to validate the syntax.

Save your changes with the original file name, i.e. as "state_settings.xml"

Step 3

Upload the file onto the phone by means of XML Auto Provisioning. Read this chapter or check the example below.

After reboot you should see the differnt changes made to the menu structure.

Example: Delete menu entry "Timezone" from the "Preferences" menu

Before


Delete the line marked red/bold

<?xml version="1.0" encoding="UTF-8"?>
<SnomIPPhoneMenu>
<Title>$(lang:menu100_settings)</Title>
 <Menu name="$(lang:preferences_settings)">
   <MenuItem name="$(lang:menu100_timezone)"><Action>timezone</Action></MenuItem>
   <MenuItem name="$(lang:menu100_dialtone)"><Action>dialtone</Action></MenuItem>
   <MenuItem name="$(lang:menu_gen_ringtone)"><Action>ringtone</Action></MenuItem>
   <MenuItem name="$(lang:language)"><Action>language</Action></MenuItem>
   <Menu name="$(lang:display_settings)">
     <MenuItem name="$(lang:use_backlight) $(lang:backlight_when_active)"><Action>backlight_active</Action></MenuItem>
     <MenuItem name="$(lang:use_backlight) $(lang:backlight_when_idle)"><Action>backlight_idle</Action></MenuItem>
     <MenuItem name="$(lang:menu_gen_contrast)"><Action>contrast</Action></MenuItem>
     <MenuItem name="$(lang:use_backlight)"><Action>use_backlight</Action></MenuItem>
   </Menu>
   <MenuItem name="$(lang:menu_equalizer)"><Action>equalizer</Action></MenuItem>
 </Menu>
...

Save the changed menu file and upload it onto the phone (via Auto Provisioning or manual redirection of the setting server)

Save the file with its original name, e.g.

state_settings.xml

Create another XML file, e.g. menu.xml

<?xml version="1.0" encoding="utf-8" ?> 
 <uploads>
  <file url="http://yourwebserver/state_settings.xml" type="gui_xml_state_settings" />
</uploads>

and copy it onto your Web (HTTP) Server, i.e. http://yourwebserver/menu.xml:

Copy the URL (http://yourwebserver/menu.xml) and paste it into the Setting URL field and press Save


A reboot is required --> Press Reboot and confirm.

Check the result of your changes

The menu entry "Timezone" has disappeared from the "Preferences" menu:


Troubleshooting

Check the Log page for the following messages

[5] 24/12/2001 00:00:48: Setting server was already set: http://yourwebserver/menu.xml
[5] 24/12/2001 00:00:48: Fetching URL: http://yourwebserver/menu.xml
...
[5] 24/12/2001 00:00:49: read_xml_settings: found uploads XML header
[5] 24/12/2001 00:00:49: read_xml_settings: found one byte encoding: 1
[5] 24/12/2001 00:00:49: read_upload_list: Found data upload type >gui_xml_state_settings< !
[5] 24/12/2001 00:00:49: Conf setup: found xml style settings
...
[5] 24/12/2001 00:00:49: Fetching URL: http://yourwebserver/state_settings.xml

This category currently contains no pages or media.

Personal tools
Interoperability