Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
columnIntroduction
Panel
titleColor
width#F8540470%
titleBGColor
#F0F0F0
titleXML file version 1.0
Image Removed

In our other devices, provisioning must handle multiple binary files (master.bin, sifs_...bin, sit_...bin, sih_...bin, siu_...bin) in order to get the final URL to config file. As provisioning is changed towards downloading xml files, we have created a new provisioning method in Maxwell 3/Basic.

The Provisioning Server URL can be found in the web-interface under: Settings - System - Provisioning and Configuration

How to configure the provisioning URL:

The provisioning server URL can be provided via the following Methods:

  1. DHCP option 114
  2. SIP Multicast
  3. Gigaset Redirect server
  4. Manually via web-interface

Provisioning files on the server:

When the provisioning is started, the device will contact the server to download the provisioning files.Image Added


Provisioning URL

Action:

Comment

http://<Server URL>/device

GET /device

No retry

 

GET /device/provisioning.xml

Master xml file containing information about location of other files for:

  • Firmware update

  • Settings

  • Custom settings

One retry if file is not present.


If provisioning.xml is not present device will try to download.

GET /device/<MAC>.xml


For provisioning, Provisioning Server has to perform 3 steps:
1)
Get provisioning.xml file, so called the starting point for the device, which includes 3 possible types in itself, marked with the <category /> tag: 

  • firmware

  • nvm

  • custom – further steps of the provisioning.

 
Note
titleAdditional information

If the link for provisioning is pointing to a directory or server (PCM will try to download a default file named provisioning.xml (from the current directory), in case of full link pointing to the file, any name can be used. If you want to use encrypted connection, please provide a link starting with https://

file
Panel
titleColor#F85404
titleBGColor#F0F0F0
titleProvisioning.xml

Structure of the provisioning.xml file is shown below:


Code Blockinfo
languageiconxmlfalse
titleprovisioning.xml

<?xml

version="1.0"

encoding="UTF-8"?>


<provisioning

version="1.0"

productID="mx3b">

<category

<!-- URL to the file that contains information about the available Firmware -->
<category type="firmware"

url="http:/my_server/maxwell3/firmware/updates.xml"/>

<category

<!-- URL to the file that contains all settings -->
<category type="nvm"

url="http://my_server/maxwell3

/nvm/updates.xml"/>

<category

<!–URL to the file that contains custom settings like certificates -->
<category type="custom"

url="http://my_server/maxwell3

/custom/updates.xml"/>

</provisioning>

2) Get updates.xml file for each of the category mentioned above, which includes Unique Version Control, productID and MAC address (optional):

Panel
titleColor#F85404
titleBGColor#F0F0F0
titleFirmware file
Info
iconfalse
titleFirmware file
Image Added
  • Unique version control [YYYY-MM-DD_HH:MM:SS] *
  • productID [mx3b]
  • macAddress [optional] **

updates.xml for Firmware category type – provides link to .bin file for downgrading/upgrading device SW version.

updates.xml for NVM category type – provides link to file containing provisioning parameters for the device (list of possible parameters is presented in Appendix A)

updates.xml for Custom category type – provides link to file containing certificates CA.pem

Structure of each file is shown below:

Code Block
languagexml
titleFirmware category type
<?xml

<?xml

version="1.0"

encoding="UTF-8"?>

<firmware

version="1.0"

productID="mx3b">

<file version="2015-01-01_01:01:01" type="latest" url="http://my_server/maxwell3/firmware/v1/GC_mx_3.bin" /> </firmware>

The next Figure 2 is presenting the workflow for the firmware update/downgrade procedure between M3B and the Provisioning server:

Image Removed


<file version="1.11.6" url="/firmware/GC_MAX_1.11.6.bin"/>


</firmware>

<?xml version="1.0" encoding="UTF-8"?>
<provisioning version="1.0" productID="mx3b" macAddress="7c:2f:80:9c:f2:02">

<category type="firmware" url="http://192.168.178.101/device/firmware/updates.xml" />
<category type="nvm" url="/nvm/updates.xml" /> <!-- relative path - use the same server address -->
<!-- You can also use the placeholders like: url="/nvm/%MACD.xml" >

<category type="custom" url="/custom/updates.xml" /> <!-- relative path - use the same server address -->

</provisioning>

Communication with provisioning server after downloading the provisioning.xml:

  1. GET /device/firmware/updates.xml
  2. GET /device/nvm/updates.xml
  3. GET /device/custom/updates.xml

Firmware

The provisioning.xml file points to the Firmware file like in the above example:

<category type="firmware" url="http://192.168.178.101/device/firmware/updates.xml" />

The file must provide additional properties like:

Version [YYYY-MM-DD_HH:MM:SS]
productID [mx3b]
macAddress [optional]

They will be verified before taking any further actions.
If the macAddress is not specified then the corresponding xml file / entry will be applied to all devices. (You need to remove the macAddress and not macAddress="")

<?xml version="1.0" encoding="UTF-8"?>
<firmware version="1.0" productID="mx3b" macAddress="7c:2f:80:9c:f2:02">

<file version="unique_version_control_string_v3" type="latest" url="http://192.168.178.101/device/firmware/mx3_version3.bin" />
<file version="unique_version_control_string_v3" type="update" url="http://192.168.178.101/device/firmware/mx3_version3.bin" />
<file version="unique_version_control_string_v2" type="update" url="http://192.168.178.101/device/firmware/mx3_version2.bin" />
<file version="unique_version_control_string_v1" type="factory" url="http://192.168.178.101/device/firmware/mx3_version1.bin" /> </firmware>
Panel
titleColor#F85404
titleBGColor#F0F0F0
titleSettings
Info
iconfalse
titleSettings file

                                                                                                                                                                                             

                                                                                                                                                                                      

Figure 1 - Workflow for the firmware upgrade/downgrade

After the successful attempt to upgrade/downgrade the device, on the device screen will appear a progress line with "Firmware update in progress..." title. 
 

Code Block
languagexml
titleNVM category type
<?xml

<?xml

version="1.0"

encoding="UTF-8"?>

<nvm

version="1.0"

productID="mx3b" macAddress="90:1b:0e:56:c7:bc">

<file

<file version="2015-01-01_01:01:01"

url=

"http://my_server/maxwell3/nvm/mx3_version1.xml"/>

<file


<file version="2015-02-02_02:02:02"

url=

"http://my_server/maxwell3/nvm/mx3_version1.xml"

/> </nvm>

The provisioning.xml file must provide additional properties like:

Version [YYYY-MM-DD_HH:MM:SS]
productID [mx3b]
macAddress [optional]

They will be verified before taking any further actions.
If the macAddress is not specified then the corresponding xml file / entry will be applied to all devices. (You need to remove the macAddress and not macAddress="")

Info
titleprovisioning.xml file example
Info
titlefirmware file example

/>

</nvm>

Code Block
languagexml
titleconfiguration.xml
<?xml version="1.0" encoding="UTF-8"?>
	<settings version="1.0" productID="mx3b" macAddress= "7c:2f:80:00:00:00">  
		<!-- SIP -->
		<param name="SIP.LogLevel" value="4" />
		<param name="SIP.TransportProtocol" value="1" />
		<param name="SIP.Port" value="5060" />
		<param name="SIP.Timers.Session" value="3600" />
		<param name="SIP.Timers.FailedRegistration" value="300" />
		<param name="SIP.Timers.Subscription" value="1800" />
		<param name="SIP.PRACK" value="1" />
		<param name="SIP.RTP.Port" value="8000" />
		<param name="SIP.RTP.UseRandomPorts" value="0" />
		<param name="SIP.RTP.UseSymmetricPorts" value="0­" />
		<param name="SIP.RTP.UseRTCP" value="0" />
		<param name="SIP.RTP.Duration" value="20" />
		<param name="SIP.Security.AcceptNonSRTPCalls" value="1" />
		<param name="SIP.AvailableCodecs" value="0" />
		<param name="SIP.ActiveCodecs" value="0" />
		<param name="SIP.DefaultAccount" value="0" />
		<param name="SIP.Account.0.AccountName" value="IP1" />
		<param name="SIP.Account.0.Active" value="1" />
		<param name="SIP.Account.0.Provider" value="Provider" />
		<param name="SIP.Account.0.AuthName" value=" AuthName " />
		<param name="SIP.Account.0.AuthPassword" value="Pass" />
		<param name="SIP.Account.0.DisplayName" value="DisplayName" />
		<param name="SIP.Account.0.Username" value="Username " />
		<param name="SIP.Account.0.Domain" value="sip.domain.com" />
		<param name="SIP.Account.0.CLIPSource" value="2" />
		<param name="SIP.Account.0.CLIR" value="0" />
		<param name="SIP.Account.0.ProxyServer.Address" value="sip.proxy.com"/>
		<param name="SIP.Account.0.ProxyServer.Port" value="5060" />
		<param name="SIP.Account.0.RegistrationServer.Address" value="sip.registration.com"/>
		<param name="SIP.Account.0.RegistrationServer.Port" value="5060"/>
		<param name="SIP.Account.0.RegistrationServer.RefreshTimer" value="180"/>
		<param name="SIP.Account.0.STUN.Enabled" value="1" />
		<param name="SIP.Account.0.STUN.Address" value="sip.stun.com"/>
		<param name="SIP.Account.0.STUN.Port" value="3478" />
		<param name="SIP.Account.0.STUN.RefreshTimer" value="240" />
		<param name="SIP.Account.0.STUN.NATRefreshTimer" value="20" />
		<param name="SIP.Account.0.OutboundProxy.Mode" value="2" />
		<param name="SIP.Account.0.OutboundProxy.Address" value="sip.proxy.com"/>
		<param name="SIP.Account.0.OutboundProxy.Port" value="5060" />
		<param name="SIP.Account.0.DTMFTransmission" value="1" />
		<param name="SIP.Account.0.AutoNegOfDTMFTransmission" value="1"/>
	</settings>

As it can be seen from the example above, several <file version="...."> were introduced. However, in the provisioning process only the newest one will be taking into consideration and processed. 


Panel
titleColor#F85404
titleBGColor#F0F0F0
titleCustom settings
Info
iconfalse
titleCustom

<?xml version="1.0" encoding="UTF-8"?>

<scenario version="2015-01-01_01:01:01" productID="mx3b">

<step type="certificate" url="http://server.address.com/certificates/certificate.pem" flags="FORCE_ACCEPT" />

</scenario>

Panel
titleColor#F85404
titleBGColor#F0F0F0
titleParameter list

Here you can find the complete auto provisioning parameter list for the Maxwell 3/B.

Column
width30%

toc