Contents

Definition

Auto Provisioning (or Mass Deployment) is a feature implemented in the standard firmware of Snom phones to allow remote administration (configuration and maintenance) of unlimited number of distinct Snom phones. Auto Provisioning is particularly useful for out-of-the-box scenarios in larger phone installations and can be used to provide general and specific configuration parameters ("Settings") to the phones and to manage firmware updates.



Step 1: Get the Setting Server URL

At boot time, a Snom phone automatically tries to find out where to go and retrieve its settings from. You can configure your phone to retrieve its settings using one or more of the following methods:


The parameter provisioning_order defines in which order the phone will attempt from these given provisioning types. The default order is: Snom Redirection Service; SIP PnP; DHCP; TR69


Step 2: Get the setting file(s)

What URL/s to fetch

Once the phone has received the Setting Server URL, it will go to that server to fetch its settings.

If the Setting Server URL does not contain a file name, the phone will try to "guess" the configuration file name(s) by creating their name from its phone type and MAC address. The first file it tries to fetch is <phoneType>.htm, where phoneType is the same string as the vendor identifier which you can find in this table . Apart from phoneType.htm, the phone also tries to fetch <phoneType>-<macAddress>.htm.

Example: if server is set to "http://192.168.137.1", file name is not provided and the phone is a D345 with MAC address 000413A11FA7, the phone will try to fetch the following files:

  • http://192.168.137.1/snomD345.htm
  • http://192.168.137.1/snomD345-000413A11FA7.htm

If the filename in the Setting Server URL does not already contain the placeholder {mac}, the phone will also try to fetch a MAC-specific URL that it creates using the given Setting Server URL.

Examples:

If the provisioned Setting Server URL is: http://example.com/test.xml or http://example.com , the phone will try to fetch the following setting files:

    • http://example.com/ test .xml
    • http://example.com/ test - 000413920A74.xml (000413920A74 is just an example, the phone will replace this with its own MAC address)


If the provisioned Setting Server URL is: http://example.com/ test {mac}.xml, the phone will try to fetch just one setting file:

    • http://example.com/ test 000413920A74.xml (000413920A74 is just an example, the phone will replace this with its own MAC address)

Syntax

Continue to read here more about the syntax of the configuration files.


Step 3: Get the firmware file(s)

What URL/s to fetch

Once the phone has received the Setting Server URL, it will also try to fetch its firmware file(s). A firmware file is used to configure which firmware version the phone should use.

In order for the phone to automatically install the firmware update version according to the firmware file, setting update_policy must be set to "auto_update". To set this setting automatically, you can add it in the setting file from Step 2:

<update_policy perm="RW">auto_update</update_policy>

If the setting file(s) have not set the parameters "firmware_status" or "firmware", the phone will try by default to fetch the firmware file using two specific URLs that it creates using the given Setting Server URL and the phone type.

Examples:

If the provisioned Setting Server URL is http://example.com/test.xml , a D765 phone will try to fetch the following firmware file:

    • http://example.com/snomD765/snomD765-firmware.htm
    • in case file "http://example.com/snomD765/snomD765-firmware.htm" was not found, the phone also tries to fetch: h ttp://example.com/snomD765-firmware.htm

If the setting file(s) have set the "firmware_status" or "firmware" parameters, the phone will only try to fetch the URL configured by these parameters - see Firmware Update via Autoprovisioning for more details on how to use these parameters.


Syntax

Continue to read here more about the syntax of the firmware configuration files.


Examples

See some examples here:

-Provisioning example via DHCP

-Provisioning example via PnP


Related articles: