Auto-provisioning of IP phones

Link copied to clipboard

This chapter demonstrates how to set up SIP phone auto-provisioning so that you can easily control the parameters and configuration of thousands of IP phones from the PortaBilling web interface, without having to provision each unit individually.

Please refer to the PortaBilling Help for detailed instructions on how to navigate and operate the web interface, as well as for detailed explanations of particular fields.

Setting up auto-provisioning of IP phones

Link copied to clipboard

The following section will assist you in setting up automatic provisioning of IP phones by PortaSwitch, so that every phone will automatically download all the required configuration parameters, such as phone number or password, from the provisioning server. Thus, there is no need for your end users to perform any configuration settings via the IP phone web interface.

Checklist

Link copied to clipboard

Use this checklist to check off the operations you have completed while performing the system setup according to the instructions in this chapter. Please be sure to perform all of the operations in the order designated (all of the boxes should be checked), otherwise, the service will not work.

 Operation

 Done

General configuration

Create a new CPE profile for the required type of IP phone

In the CPE profile, fill in all the required parameters (e.g., SIP proxy address)

CPE inventory

Create a record for your IP phone in the CPE inventory, making sure to enter the correct MAC address

Assigning a phone number to the IP phone

Make sure your SIP service is provisioned according to the instructions given above in this guide

Create a new account with the product you allocated for the SIP service, with an account ID identical to the phone number

Assign this account for provisioning on a certain IP phone

IP phone settings

Connect the IP phone to the Internet

If the phone has not been pre-configured for your provisioning server by the vendor, enter provisioning information into the phone manually

Wait until the configuration files are updated on the provisioning server

Testing

After your phone downloads the configuration from the server and successfully registers on the SIP server for the first time, you will receive a “first login greeting” call

Make a test phone call

Create a CPE profile

Link copied to clipboard
  1. On the navigation menu, select Infrastructure, then select Inventory and click Phones/CPEs.
  2. On the CPEs Inventory panel, select CPE profiles. On the Create a profile panel that opens, specify the basic CPE profile information:
    • Name – type a short descriptive name for this profile (e.g., “Sipura Standard.”)
    • Device model – choose the hardware type of the IP phone. (e.g., “Sipura 2000.”)
    • Managed by – if you plan to use this profile for a certain reseller’s customers, choose the reseller from the select menu; otherwise leave this as Administrator only.
    • Effective from – leave the value in this field as Immediately.

      Add a CPE profile

  3. Click Save.

CPE profile settings

Link copied to clipboard

After clicking Save on the previous page, you are redirected to the Edit CPE Profile panel, where you can edit the generic device settings. These configuration parameters are dependent on the specific model of your IP device. The example below uses a Sipura-2000 device, but most of the settings should be the same for other Sipura/Linksys VoIP products.

Configure the system settings

Field

Description

Enable web server

Enable/disable the built-in web server (for device monitoring).

Enable web admin access

Enable/disable the built-in web server (for device administration and changing configuration parameters).

Admin password

The password for administrator access.

User password

The password for user access.

Configure the system settings

Field

Description

Profile rule

Path to the profile configuration file (e.g.,

[--key $B]http://PB_WEB_SERVER/$A/$MA.cfg

for Sipura/Linksys VoIP products,

[--key $B]http://PB_WEB_SERVER/ 

for Grandstream,

[--key \$B]http://PB_WEB_SERVER/\$A/\$MA.cfg

for Cisco products.)

Replace PB_WEB_SERVER with the actual hostname or IP address of your PortaBilling web server; for instance, the actual value in the field might be (for Sipura/Linksys):

[--key $B]http://demo.portaone.com/$A/$MA.cfg.

The example on the screen assumes provisioning via the HTTP protocol; change http: to tftp: for TFTP provisioning.

When an individual IP phone makes a request for a configuration file, $MA will be automatically replaced by its MAC-address, so leave this as is (if you enter the actual MAC address, you will not be able to reuse the same profile for multiple phones).

GPP A, GPP B, GPP C

Dynamic variables. During config file generation, $i_env will be replaced by a unique environment ID, and $ascii_key by the crypt key from the IP phone.

GPP A corresponds to $A variable in the Profile Rule field, GPP B to $B, etc. Please refer to the Appendices section for other variables used in CPE profile configuration.

There is no need to change any of the values for dynamic variables.

 

Configure the Line 1 settings

In the Line 1 and Line 2 tabs, you can specify parameters for both phone ports of your IP phone.

Field

Description

Proxy

SIP server for registration and placing outgoing calls.

Use outbound proxy

If set to “no”, the SIP server defined by the Proxy parameter will be used for all registrations and outgoing calls.

Outbound proxy

SIP Server for placing outgoing calls (if different from the SIP registration server).

Register

Whether or not the IP phone should register with the SIP server; this is required to receive incoming calls.

Register expires

Registration lifetime in seconds (the Expires value in a REGISTER request). The IP phone will periodically renew registration shortly before the current registration expires.

Display name

The subscriber’s display name, which appears in the caller-id for his outgoing calls; by default First Name + M Name + Last Name.

User ID

The phone number assigned to this port. The dynamic variable $id will be automatically replaced by the account’s ID (phone number).

Auth ID

Authentication ID (if different from the phone number).

Use auth ID

If set to “yes”, the combination Auth ID and Password will be used for SIP authentication. Otherwise, User ID and Password are used.

Preferred codec

Select a preferred codec for all calls. However, the actual codec used in a call will still depend on the outcome of the codec negotiation protocol. Possible values: G711u, G711a, G726-16, G726-24, G726-32, G726-40, G729a, G723.

Use pref codec Only

Only use the preferred codec for all calls. The call will fail if the other endpoint does not support this codec.

DTMF tx method

Method for transmitting DTMF signals to the far end: Inband = Send DTMF using audio path; INFO = Use the SIP INFO method, AVT = Send DTMF as AVT events; Auto = Use Inband or AVT based on outcome of codec negotiation.

Dial plan

Per-line dial plan script; see the product manual for a detailed description of the syntax.

Create IP device entry

Link copied to clipboard
  1. On the navigation menu, select Infrastructure, then select Inventory and click Phones/CPEs.
  2. On the CPEs Inventory panel, select Phones/CPEs list. On the Create CPE panel that opens, specify the basic CPE device information:
    • Device ID – type a unique ID for the IP phone (e.g., JB SPA-2000).
    • Device model – select Sipura 2000 from the drop-down list.
    • MAC address – type the hardware ID of the IP phone (typically printed on the back of the device), 6 hexadecimal numbers, separated by colons. Make sure you enter the full value of the MAC address, including the colons!
    • Managed by – select Administrator only from the drop-down list.
    • CPE profile – select the IP device profile you previously created (e.g., Sipura Standard).

      Add an IP phone

  3. Click Save.

Provisioning an account on an IP device

Link copied to clipboard
  1. On the Account panel, click General info, then select Additional info and open Auto-provisioning panel.

    Add the CPE profile for the account

  2. On the Auto-provisioning panel configure the following options:
    • Use a slider to enable the Auto-provisioning option.
    • Option – select CPE from the drop-down list.
    • Device model – select Sipura 2000 from the drop-down list.
    • IP device – select JB SPA-2000 from the drop-down list.
    • CPE port – choose a specific port from the drop-down list, if the device has multiple phone ports.
  3. Click Save.
The IP device dialog box shows a list of phones that have not been used before in other accounts, or phones with available (unused) ports.

After the automated script creates a new configuration file, it will place it on the provisioning server. The file generation process runs every hour (or every time you update a specific IP device profile).

All device configuration files are stored in /porta_var/<Server_IP>/tftp on the PortaBilling web server, in subdirectories with a name identical to the environment ID (i_env): 1, 2, 3, and so on.

IP phone device configuration

Link copied to clipboard

 

Configuration of other IP phone models from a particular vendor is similar to the following ones.

Sipura SPA 100

Link copied to clipboard

If your IP phone/ATA was pre-configured by the vendor to retrieve a configuration from your provisioning server, you need only connect the phone to the Internet. Otherwise, you must enter information regarding the provisioning server into the IP phone manually:

  1. Connect the Sipura device to the LAN, and find the IP address assigned to it by DHCP: connect an analog phone to phone port 1 and then dial **** on the phone, so that you enter the configuration menu. Dial 110# and listen to the IP address announced.
  2. On the PC connected to the same LAN as the Sipura device, open a new web browser window and enter the URL http://<IP>, where <IP> is the IP address which was announced to you by the IVR.
  3. Click on Admin login, then go to Advanced view and the Provisioning tab.Configure Sipura SPA 100Configure advanced viewimage015Configure provisioning settings
  4. Enter the provisioning information.
    • In the Profile Rule field, enter:
      [--key $B]http://PB_WEB_SERVER/$A/$MA.cfg (for Sipura/Linksys VoIP products),
      
      [--key $B]http://PB_WEB_SERVER/cfg$MA (for Grandstream)

      Replace PB_WEB_SERVER with the actual hostname or IP address of your PortaBilling web server; for instance, the actual value in the field might be:

      [--key $B]http://demo.portaone.com/$A/$MA.cfg.
    • In the GPP A field, enter the numeric ID of the environment (i_env).
    • If you plan to use encryption for the configuration files, enter the secret key in the GPP B field.
  5. Apply the changes by clicking Submit All Changes at the bottom of the page. After reboot, the device will request the configuration file from the server via the http protocol, and all profile parameters will be applied.
  1. Launch your web browser.
  2. Enter the Yealink device’s IP address in the browser’s Address field. For example: http://192.168.1.175.
  3. Click on Admin login.
  4. Then go to the Upgrade tab and select Advanced view:Configure Yealink SIP T28PConfigure upgrate advanced settings
  5. In the URL field type in the full address of the provisioning server. This may be the actual hostname or IP address of your PortaBilling web server, and env_id – the numeric ID of the environment. For example: http://demo.portaone.com/1/.
  6. Click on the Auto provision button if you want to auto provision the device immediately (mind that Check new config should not be disabled).
  7. Click on the Confirm button to save changes.

Polycom SoundPoint IP 550

Link copied to clipboard

In order to use auto-provisioning with Polycom devices, you need to specify the provisioning server using device controls.

  1. Press the Menu and select Settings by scrolling down.
  2. Then choose Advanced, enter the Password (by default it is set to 456), and then press the Enter button.
  3. Go to Admin Settings, choose Network Configuration.
  4. Scroll down and select the Server Menu.
  5. Here specify:
    • Server Type (e.g., http)
    • Server Address in the following format:
      PB_WEB_SERVER/env_id/

    Replace PB_WEB_SERVER with the actual hostname or IP address of your PortaBilling web server and env_id with the numeric ID of the PortaBilling environment. For instance, the actual value in the field might be: 1.2.3.4/1/ or demo.portaone.com/1/

  6. Press Ok to save the configuration.

Linksys SPA-941

Link copied to clipboard
  1. Launch your web browser.
  2. Enter Linksys device’s IP address in the browser’s Address field. For example: http://192.168.1.179.
  3. Click on Admin login, then choose the Advanced view and go to the Provisioning tab.Configure Linksys SPA 941Configure advanced viewConfigure provisioning settings
  4. Enter the provisioning information.
    • In the Profile Rule field, enter:
      [--key $B]http://PB_SERVER/$A/$MA.cfg

      Replace PB_SERVER with the actual hostname or IP address of your PortaBilling web server. For instance, the actual value in the field might be:

      [--key $B]http://demo.portaone.com/$A/$MA.cfg.
    • In the GPP A field, enter the numeric ID of the environment (i_env).
    • If you plan to use encryption for the configuration files, enter the secret key in the GPP B field.
  5. Apply the changes by clicking Submit All Changes at the bottom of the page. After the system reboots, the device will request the configuration file from the server via the http protocol, and all profile parameters will be applied.

Telefield IPX500

Link copied to clipboard

These instructions show you how to configure automatic provisioning for Telefield IPX500 phones. When provisioning a Telefield IPX500 IP device, PortaBilling generates an automated script that contains, among other things, the following information:

  • a link to the configuration file that contains the device configuration parameters;
  • the Telefield firmware information.

Therefore, to provision a Telefield IPX500 phone, complete the following steps:

  1. Specify the path to PortaBilling on the IP phone web interface.
  2. Configure the Telefield firmware update on the configuration server.

Specify the path to the provisioning server on the IP phone web interface

Link copied to clipboard
  1. Launch your web browser.
  2. Enter the Telefield phone IP address in the browser address field and log in with the phone credentials.
  3. Go to the Service tab and select Advanced Upgrade in the left-hand menu.Configure Telefield IPX500
  4. Enter the provisioning information in the URL field: https://PB_WEB_SERVER/ipx.html?i_env=ENV_ID&protocol=PROTOCOL, where
    • PB_WEB_SERVER is the hostname or IP address of your PortaBilling web server;
    • ENV_ID is the PortaBilling environment ID; and
    • PROTOCOL is either an http or tftp protocol.

      The actual value in the field might be: https://demo.portaone.com/ipx.html?i_env=3&protocol=http.

  5. Click Save.
    Once the information is submitted, the URL field will appear blank. However, Telefield will have received and stored this URL.

Get the newest firmware information from the Telefield RDS server

Link copied to clipboard

The Telefield RDS server stores the original Telefield firmware. You need to specify the application and ROM server information on the configuration server.

  1. Go to the Telefield RDS server using the https://115.28.151.223/download/bash.sh link.
  2. Find the following values:
    • APP_SERVER_URI
    • APP_VERSION
    • ROM_SERVER_URI
    • ROM_VERSION.

Use these values for the next stage.

Specify firmware information on the configuration server

Link copied to clipboard
  1. On the configuration server web interface, go to the Configurations tab.
  2. Clone the current configuration.
  3. In the Configuration Tree, select Web Cluster.
  4. In the Environments panel, select the required environment.
  5. In the Groups panel, select UA_Profiles.
  6. Use the firmware information from the Telefield RDS server to fill  in the following fields:
    • Telefield_IPX500_APP_SERVER_URI – Specify the URI of the application server for IPX500.
    • Telefield_IPX500_APP_VERSION – Specify the application version.
    • Telefield_IPX500_ROM_SERVER_URI – Specify the URI of the ROM server for IPX500.
    • Telefield_IPX500_ROM_VERSION – Specify the ROM version.Configure Telefield IPX500 on the Configuration server
  7. Click Save.
  8. Click Check/Apply to apply this configuration.

The next time the IP phone sends a provisioning request, it will receive all essential information for the Telefield firmware update. The IP phone then downloads the firmware from the specified links and installs it.

Fanvil C600

Link copied to clipboard
  1. Launch your web browser.
  2. Enter the Fanvil device’s IP address in the browser’s Address field. For example: http://192.168.1.175.
  3. Click on Admin login.
  4. Then go to the Maintenance → Auto Provision → Phone Flash Settings.Auto provision Fanvil C600
  5. Here specify:
    • Server Address (in the following format: PB_WEB_SERVER/env_id/)
    • Protocol Type (e.g., http).
    • Update Mode (Update After Reboot or Update at Time Interval).
  6. If you plan to use encryption for the configuration files, enter the secret key in the Config Encryption Key field.
  7. Click Apply to save changes.
  8. Reboot phone (if Update After Reboot mode is used).

Note that auto-provisioning may take several minutes.

Fanvil X3S, Fanvil X4G, Fanvil X5S and Fanvil X6

Link copied to clipboard
  1. Launch your web browser.
  2. Enter the Fanvil device’s IP address in the browser’s Address field. For example: http://192.168.1.175.
  3. Click on Admin login. (e.g., X4G)Auto provision Fanvil IP phones
  4. Then go to the System → Auto Provision → Static Provisioning Server
  5. Here specify:
    • Server Address (in the following format: PB_WEB_SERVER/env_id/)
    • Protocol Type (e.g., http).
    • Update Mode (Update After Reboot or Update at Time Interval).
  6. If you plan to use encryption for the configuration files, enter the secret key in the Config Encryption Key field.
  7. Click Apply to save changes.
  8. Reboot phone (if Update After Reboot mode is used).

Htek IP Phones

Link copied to clipboard
  1. Launch your web browser.
  2. Enter the Htek device’s IP address in the browser’s Address field. For example: http://192.168.1.175.
  3. Click on Admin login.Auto provision Htek IP phones
  4. Then go to the Managment → Auto Provision → Firmware Upgrade.
  5. Here specify:
    • Config Server Path (in the following format: PB_WEB_SERVER/env_id/)
    • Upgrade Mode (e.g., http).
  6. If you plan to use encryption for the configuration files, set Yes for Authenticate Cfg File and enter the secret key in the Set Common AES Key field.
  7. Click SaveSet to save changes.
  8. Click Autoprovision Now.

Advanced provisioning tips

Link copied to clipboard

In order to understand provisioning in depth, you have to know something about the internal processes of configuration file generation.

Auto-provisioning is a built-in function of an IP phone, allowing the device to download its configuration from an external server via the HTTP or TFTP protocols. Different IP phones use a different set of configuration parameters and a different format for the configuration file. In addition, many IP phone manufacturers require the configuration file to be processed by some proprietary utility (profile compiler) before it can be supplied to the IP phone.

PortaBilling initially processes each account with an associated IP phone and creates a parameter-value plain-text file located in /home/porta-admin/profile. This file then becomes the source for the manufacturer’s configuration compiler. The result of the compilation (i.e., the file to be downloaded by the IP phone) is placed in /porta_var/<Server_IP>/tftp. All provision configuration files are stored with a $env-subfolder. Any IP phone can access its configuration file just by sending a request to the http-port of the PortaBilling web server.

For phones that do not support http provisioning, you may use the TFTP protocol. The main disadvantage of TFTP is that it has a higher chance of being blocked by a firewall.

Partial CPE profile configuration

Link copied to clipboard
Since some IP phones only allow partial auto-provisioning, check the IP phone’s configuration requirements before using this functionality.

Some IP phones support partial auto-provisioning, i.e., the device takes some settings from the configuration file and then uses its own default settings to complete the configuration.

Also, some IP phones can be customized by end users.  Thus, end users may wish to configure particular options (e.g., soft keys) according to their preferences.

For example, when creating a CPE profile for Audio Codes 405HD, you can remove such personal settings as programmable keys from the list of options to be auto-provisioned. Then, if end users configure the programmable keys for their IP phones, those changes remain after the IP phone configuration update.

To enable partial CPE profile configuration, follow the next steps:

  1. On the Configuration server go to the Configurations tab.
  2. Clone the existing configuration.Allow partial CPE profile configuration
  3. In the Configuration Tree, select Web Cluster.
  4. In the Environments panel, select the Environment name. This allows you to enable the functionality only for the selected environment only.
    To enable partial CPE profiles configuration for all environments select Global from the Environments panel.
  5. In the Groups panel, select UA_Profiles.
  6. In the AlloPartialProfileConfiguration option, specify Yes.
  7. Click the Save button and then the Verify button.
  8. Verify the new configuration and click the Check/Apply button.

After the configuration has been applied, go to the administrator web interface.

To create a new CPE profile, follow the steps described in the Create a CPE Profile section of the current handbook.

To configure the existing profile, follow the steps described in the CPE Profile Settings section of the current handbook.

Note that when partial CPE profiles configuration is enabled on the Configuration server, additional controls appear near each configuration option. The controls are enabled by default, therefore to disable the provisioning of particular options, clear them.

Adjust the CPE profile

To apply changes to previously generated CPE profiles and remove unwanted options do the following:

  1. On the CPE profiles page select the profile you need.Select the existing profile
  2. On the Edit CPE profile page click Regenerate.Сlick Regenerate
  3. Click Save.

You can also apply changes to previously generated CPE profiles and remove unwanted options via the API.

This functionality is unavailable for Cisco ATA 186 devices (02.xx and 03.xx versions).

On this page

Release
What's new
Admin manuals
Handbooks
Developers documentation
UI help