Skip to content

Basics#

Minimum API level

API version 7.0 or higher

Scope#

This document is describing the xml Templates for IP relays with http command set in the following PBX systems:

  • COMpact 4000

  • COMpact 5000/5000R

  • COMpact 5200/5200R

  • COMpact 5500R

  • COMmander 6000/6000R/6000RX

The document is meant for developers wanting to create or alter provisioning files for non supported devices.

Standard provisioning#

A device to be provisioned is identified by its unique MAC-address. During the subscriber configuration, this MAC-address is either entered or selected from a list of unused but known MAC-addresses while entering the subscriber extension number.

You need to select a file which is sent to the subscriber whenever it requests provisioning data. The PBX will notify the subscriber when relevant data is changes so it can then request new provisioning data.

Auerswald / FONtevo devices will use the new configuration immediately. Devices from various other manufacturers may need to reboot to use the new configuration.

Zero-touch provisioning#

This is a method where a device does not have to be configured, before it is connected to the PBX.

The only device identifier required in the PBX is the MAC-Address of the device. You only have to configure a subscriber in the PBX and assign that subscriber number to the MAC-address of the device.

A zero-touch-capable device will use a multicast-based mechanism to find the provisioning server (the PBX). The device will then request its configuration data. Thus you can simply put the device on the user's desk, configure the PBX and all necessary steps for the device provisioning are done automatically.

Template files#

The provisioning mechanism implemented in the Auerswald/FONtevo PBX is capable of supporting template files from a wide range of telephone manufactures.

Warning

The mechanism supports only text-based formats. Binary formats of any kind are NOT supported.

For some manufacturers, we have included basic template files which can be altered to better suit the needs of you or your customers. If you encounter omissions or bugs, please send an email to Auerswald or Fontevo

Variables#

Templates contain specially formatted placeholders / variables to insert subscriber / pbx dependant data. Before sending they are replaced with their actual values.

Syntax: $(variablename)

SIP configuration#

variable type notes
$(sip.server) string IP Address of the SIP-Servers (xxx.xxx.xxx.xxx)
$(sip.port) integer SIP server port 0..65535
$(sip.username) string Telephone account name
$(sip.displayname) string Display name
$(sip.userpassword) string Telephone account password

Provisioning#

variable type notes
$(prov.secureserver) string provisioning server IP address xxx.xxx.xxx.xxx
$(prov.port) integer provisioning server port number (usually 4433)
$(prov.path) string Path(directory) of the provisioning data files
example
$(prov.secureserver):$(prov.port)/$(prov.path)  -->  xxx.xxx.xxx.xxx:4433/provdata

LDAP#

variable type notes
$(ldap.enable) char 1: LDAP is used; 0: LDAP not used
$(ldap.server) string LDAP server IP address xxx.xxx.xxx.xxx
$(ldap.port) integer LDAP server port 0..65535 usually 389
$(ldap.base) string Name of the base organisational unit
$(ldap.username) string LDAP User name, e.g.: "telephoneNumber=..., dc=auerserwald"
$(ldap.username:server) string LDAP Server name, e.g.: "cn= ..., dc=auerserwald"
$(ldap.password) string LDAP User password
$(ldap.password:server) string LDAP Server password

NTP#

variable type notes
$(time.ntp_enable) char 1: NTP-Server used; 0: not used
$(time.server) string NTP Server IP address xxx.xxx.xxx.xxx
$(time.port) integer Port number of server 0..65535
$(time.timezone:hours) integer 0..4 in hours (only for Europe)
$(time.timezone:seconds) integer 0..14400 secounds (only for Europe)
$(time.timezonename.town) string e.g.: Berlin
$(time.timezonename.country) string e.g.: Germany

Call forwarding#

variable type notes
$(CF.always.destination) string CFU destination number
$(CF.busy.destination) string CFB destination number

UI-Language settings#

variable notes
$(ui.language:inttxt) German, English, French
$(ui.language:iso-localeTxt) de_DE, ...
$(ui.language:iculocale) "language"_"location": fr_CH, ...
$(ui.language:iculocaleLan) "language" : de, en, fr, ...
$(ui.language:iculocaleLoc) "location" : DE, AT, CH, FR, GB, ...
$(ui.language:nativtxt) Deutsch, English, Francais, ...
$(ui.language:polycomtxt) German_Germany, English, ...
$(ui.language:iso639-1) de, fr, en, ...

General information#

variable type notes
$(pbx.name) string configured name of the PBX
$(pbx.pbxprefix) string exchange line access code
$(pbx.certificate) string pbx certifcate in the form:
------BEGIN CERTIFICATE-----
Hexadecimal representation of the certificate
-----END CERTIFICATE-----

Location information#

variable type notes
$(pbx.loc.intprefix) string internation prefix (for example 00)
$(pbx.loc.intcode) string internation code (for example 49)
$(pbx.loc.natprefix) char area prefix (for example 0)
$(pbx.loc.natcode) string area code (for example 5306)
$(pbx.loc.country:engtxt) string Country at location, e.g.: Germany, England, France...
$(pbx.loc.country:inttext) string Country at location, e.g.: Deutschland, England, France...

Language at the configured location of the PBX (type: string):

variable notes
$(pbx.loc.language:inttxt) German, English, French, ...
$(pbx.loc.language:iso-localeTxt) de_DE, ...
$(pbx.loc.language:iculocale) "language"_"location": fr_CH, ...
$(pbx.loc.language:iculocaleLan) "language" : de, en, fr, ...
$(pbx.loc.language:iculocaleLoc) "location" : DE, AT, CH, FR, GB, ...
$(pbx.loc.language:nativtxt) Deutsch, English, Francais, ...
$(pbx.loc.language:polycomtxt) German_Germany, English, ...
$(pbx.loc.language:iso639-1) de, fr, en, ...
$(pbx.loc.language:localetxt) de_DE, fr_FR, en_GB, ...

Miscellaneous#

variable type notes
$(device.mac_address) string MAC adress from the device
$(device.password) string password of the device (currently WS500 only)