The XML Minibrowser is a feature of the standard software delivered with Snom phones. It allows processing Snom XML objects stored on standard web servers (http(s)) or directly uploaded to the phone.
The feature can be used for various applications, such as creating custom user interfaces.
The following XML Objects are available:
|Main Tag Name||Description|
|IPPhoneText||Print a text|
|IPPhoneImage||Show a base64 encoded image|
|IPPhoneImageFile||Show an image fetched via an URL|
|IPPhoneInput||Request for an input from the user|
|IPPhoneDirectory||Shows a phone book|
|IPPhoneMenu||Show a Menu calling other applications|
|IPPhoneBatch||Combine several main tags in one XML data|
To understand how Snom Minibrowser works, knowledge of the following areas are required :
- Snom phones
- Basic XML elements (tag and attributes) and XML structure
- URI (fragment and query) and URL-encoding
With the previous knowledge, a programmer can start developing minibrowser program by following a few simple steps :
- Learn minibrowser basic structure in given XML schema. (see here)
- Understand the minibrowser tags and attributes documented here
- Create some simple minibrowser applications or test the sample ones from the Examples section
- Learn about minibrowser callback and fragment function
- The XML header is recommended to make sure the XML parser recognizes the encoding
- Minibrowser can only load one one object at a time. see IPPhoneBatch for instruction to write multiple object in one file.
- Minibrowser can also load files with php and cgi extension, if these are generating a valid Minibrowser XML file. Don't forget to set the header of the file to the XML type content.
- To write XML file using character other than English alphabet, check if the editor encoded the file in utf-8 and that the phone's PUI language supports the characters.
- It is recommended to use an XML Editor with capability of validating XML file with XSD (XML Schema Definition).
- To enable validation in the XML Editor you have to include the schema declaration in the main object.
- You don't have to include another schema declaration in main element when using IPPhoneBatch, except if you want to use a different schema.
Example of how to include an XML schema from the upper directory
Some special instruction and hints (This may change by different firmware version or new XML parser behavior)
- Minibrowser XML parser is not case sensitive, so you can write the opening tag and closing tag with the different character case. The XML Editor might check the character case.
- All Attributes are written and start in lower-case character and underscore is used to replace white space.
- Some examples are provided with light content, to make it short and understandable at first glance.
- Due to XSD limitation there is some behavior that may not described here.