Jump to: navigation, search

Difference between revisions of "Koneki/Simulators/OMA-DM/User Guide"

m (Step 3 : Device configuration page)
m (Device tree)
Line 122: Line 122:
 
You can recognize into the tree the informations that you filled in the [http://wiki.eclipse.org/Koneki/Simulators/OMA-DM/User_Guide#The_Configuration_tag Configuration tag]. Below is the correspondence between information in the Configuration tag and leafs into the OMA-DM tree :  
 
You can recognize into the tree the informations that you filled in the [http://wiki.eclipse.org/Koneki/Simulators/OMA-DM/User_Guide#The_Configuration_tag Configuration tag]. Below is the correspondence between information in the Configuration tag and leafs into the OMA-DM tree :  
  
*Server URI : ./DMAcc/AppAuth/ServerID
+
*Server URI : ./DMAcc/AppAddr/Default/Addr
 
*Server login : ./DMAcc/AppAuth/Default/AuthName  
 
*Server login : ./DMAcc/AppAuth/Default/AuthName  
 
*Server password : ./DMAcc/AppAuth/Default/AuthSecret  
 
*Server password : ./DMAcc/AppAuth/Default/AuthSecret  
 
*Device ID : ./DevInfo/DevId
 
*Device ID : ./DevInfo/DevId
  
The node "./DMAcc/AppAuth/Default" is an optional node. The leafs "AuthName" and "AuthSeret" can be stored anywhere in the node "./DMAcc/AppAuth". You can edit all informations about nodes and leafs in the next section : [http://wiki.eclipse.org/Koneki/Simulators/OMA-DM/User_Guide#Node_properties Node properties].
+
The node "./DMAcc/AppAuth/Default" and "./DMAcc/AppAddr/Default" are optional nodes. The leafs "AuthName", "Addr" and "AuthSeret" can be stored anywhere in the node "./DMAcc/AppAuth". You can edit all informations about nodes and leafs in the next section : [http://wiki.eclipse.org/Koneki/Simulators/OMA-DM/User_Guide#Node_properties Node properties].
 
If you change data of nodes which are listed above, the new values will be directly updated in the Configuration tag.
 
If you change data of nodes which are listed above, the new values will be directly updated in the Configuration tag.
  

Revision as of 08:22, 6 February 2012

Overview

The OMA-DM simulator provides a way to simulate communications between a client living in the Eclipse workbench, and an OMA-DM server. The simulator supports a large part of the current OMA-DM Protocol version 1.2. In a nutshell, the OMA-DM protocol allows a client to synchronize the contents of a data tree with a server. More details about the OMA-DM protocol are available in the Concepts section.

Getting started

Create a new OMA-DM simulator

Step 1 : Select wizard page

To create a new OMA-DM simulator you just have to select “OMA DM Simulator” in “File” → “New” → “Other” → “OMA Dm Simulator”.

Click on the "Next" button.

Step 2 : OMA DM simulation file page

Chose the location and the name of the future simulator file.

Click on the "Next" button.

Step 3 : Device configuration page

This page allows to fill some basic informations in the OMA-DM tree.

Explications

  • Server URI : the URI of the OMA-DM server you want to use. It must have this form : http://myserver:portNumber/subdirectories
  • Server login : the user name for the authentication on the OMA-DM server
  • Server password : the user password for the authentication on the OMA-DM server
  • Device ID : the id of the device which is simulate

Click on the "Next" button.

Step 4 : Device informations page

In this page you can fill basic information about the device. Whereas other informations, the Device Id must not be empty.

Explications

  • Device id : it's the same ID than the device ID in the previous step
  • Manufacturer Nane : the manufacturer's name of the device
  • Model Name : the model's name of the device
  • Language : the current language of the application

Click on the "Next" button.

Step 5 : Device details page

In this page you can fill other information about the device.

Explications

  • Device Type : The device ID type. The default type is "FREE". Two others type are recognized ; "IMEI" and "MAC". All other words will be translate in "FREE"
  • OEM Name : the OEM's name of the device
  • Firmware Revision : the number of the current firmware version
  • Software Revision : the number of the current software version
  • Hardware Revision : the number of the current hardware version

Click on the "Finish" button.

Step 6 : Use the simulator

Now a new OMA-DM simulator has been created where you indicated on the Step 2. So, you just have to use it !

Concepts

Description of the OMA-DM protocol

The OMA-DM Protocol is based on the HTTP protocol. It exchanges xml messages between the client device and the OMA-DM server through HTTP requests. The complete specifications of the OMA-DM protocol and the tree nodes are available here : www.openmobilealliance.org/Technical/current_releases.aspx

Data representation

Data are represent by a tree nodes. This tree is store twice. Once on the client device and once on the OMA-DM server. The synchronization of these two trees is made during the exchanges between the client device and the server.

There are two types of nodes in the tree : nodes and leaf.

Each node and leaf contains four informations

  • Name : the name of the node
  • Data : the data of the node
  • Type : the type of the node (MIME type for leaf node and empty or Management Object Identifier for interior node)
  • Format : the standard OMA DM format of the node


For the leaf type, all informations have to be fill. For the node type, Type an Data information are empty. Name is the name of the node. The value of Format is "node".

The OMA-DM tree must contain some specific nodes and leafs. Some other nodes are just optional. The complete description of the basic tree is available in the OMA-DM specifications. After the specific nodes, the tree can contain other nodes and leafs which are specific for the client device.

OMA-DM commands

The protocol provides some commands which could be send by the server and execute on the client device. Below is the list of commands which are supported by the simulator :

  • Add : insert a new node in the tree
  • Delete : delete a node in the tree
  • Get : ask the data of one node
  • Replace : change the data of one node
  • Copy : copy the value of one node to another
  • Exec : Invokes an executable on the client device; It's mainly use by FUMO : Firmware Update Managed Object


The result of the execution of one command is send by the client device to the OMA-DM server. Once, the server receive the result, it can choose to send a new command to the client device.

Tasks

Once you have created a new OMA-DM simulator, you can simulate some connections to one OMA-DM server.

Simulate one connection by the client device to one OMA-DM server

The simulator is divided in three tags : Configuration, Simulation and Dashboard.

The Configuration tag

The first tag is Configuration. It allows to fill basic informations to identify the OMA-DM server and authenticate the client device on the server. These informations are similar with the Device Configuration page of the wizard. (See Step 3 : Device configuration page  in the Getting Started section to have more informations.)

The Simulation tag

Simulation tag is divided in three sections : Device tree, Node properties and Node management.

Device tree

This section allows to edit the OMA-DM tree. By default, the simulator create one basic tree with non optional nodes. This section is the most important section of this tag. With this section, you can insert or delete nodes and leafs directly into all the tree.

You can recognize into the tree the informations that you filled in the Configuration tag. Below is the correspondence between information in the Configuration tag and leafs into the OMA-DM tree :

  • Server URI : ./DMAcc/AppAddr/Default/Addr
  • Server login : ./DMAcc/AppAuth/Default/AuthName
  • Server password : ./DMAcc/AppAuth/Default/AuthSecret
  • Device ID : ./DevInfo/DevId

The node "./DMAcc/AppAuth/Default" and "./DMAcc/AppAddr/Default" are optional nodes. The leafs "AuthName", "Addr" and "AuthSeret" can be stored anywhere in the node "./DMAcc/AppAuth". You can edit all informations about nodes and leafs in the next section : Node properties. If you change data of nodes which are listed above, the new values will be directly updated in the Configuration tag.

Node properties

In this section you can change all informations about the current node or leaf which is selected in the Device tree. You can edit all informations which are described in the Data representation section.

Node management

This section allows you to choose how execute all OMA-DM commands. There are four modes to execute one command. By default the root of the tree has all commands set in automatic mode. And all other nodes have commands set in inherit mode. There are two other modes : manual and constant. Below is the explication of all management modes :

  • Automatic mode : the simulator perform the command like a real device
  • Constant mode : the simulator return the status code selected
  • Inherited mode : the node management of the parent node is used
  • Manual mode : the simulator demand to the user the status code which must be returned
The Dashboard tag

The Dashboard tag is also divided in three sections : Device tree, Node properties and session management.

Device tree

This section is similar with the Device tree section in the Simulation tag. But here, you just can to select one node. You can't edit the tree.

Node properties

This section is similar with the Node properties section in the Simulation tag. But, here, you just can edit Data information of the selected node. You can't edit other information.

Session management

This section is the most important section of this tag. With this section, you can create a new connection between the simulator and one OMA-DM server. When you click on the connect button the simulator create a connection. Then, the simulator and the OMA-DM server will exchange xml messages through HTTP requests. During these exchanges, if the OMA-DM server have to execute some commands, it will send instructions on simulator. Then, the simulator will execute each instructions. The execution of instructions depends on the node management which is associated with the concerned node.

In the table of this section, you can see all messages which are exchange between the simulator and the server.