/
Endpoints

Endpoints

This page allows for auto configuration of SIP phones and gateways.

Once a SIP device is created for the user or room an Endpoint page entry can be created to facilitate in the devices auto configuration. A list of phone and gateway models that we currently support auto configuration with can be found either in the Manage Templates side bar section or in the template drop-down when setting up the endpoint.

Version 4.3.0.6

New Feature: Added support for Ringdown and Polarity settings.

Note that for auto configuration to function the firewall needs to have DHCP options 66 and or 160 enabled. For information in setting up a DHCP options see the special topics section at the end of this chapter.

Video

 

Visual Overview

This page creates autoconfiguration files that are hosted on the Voiceware server. Using option 66 the phone can be told to retrieve their file and configure themselves. This allows the phone to be plugged in and program itself so that no manual entries on the phone, or via its GUI, are required. This greatly speeds the installation process and reduces errors. It is recommended in every installation.

Manage Template

Template files are how Voiceware supports autoconfigure for different phones. Each file tells Voiceware how to write out a configuration file for the phone. On this page these files can be downloaded, edited, and uploaded. New files can also be created and added to the system. A complete description on how template files work, as well as information on creating a new template files, is available in the Autoconfiguration sub-manual available here Auto Provisioning.

Regen Configs

This link re-writes all configuration files. This can be used to try and fix issues where changes are made to endpoints but don’t seem to be updating on the phone itself.

Line by Line Explanation

Each item in the help page will have an expand along with the information from the help page.

If the endpoint is a phone and that phone is in a hotdesk group check this box.

Use the drop down to select the user this phone will be assigned to. This drop-down is populated with Devices not yet assigned to any phone.

Auto Provision: {$config.userdata.username} & {$config.userdata.firstname} & {$config.userdata.lastname}

This drop down allows for selection of the connection method, this should normally be set to enp2s0.

This drop-down lists all currently supported endpoint models with the auto configuration feature. New auto configuration templates can be download (if available) via the About --> Updates page (see the About page chapter for more information) or uploaded manually from the Manage Templates sidebar link.

This area will fill in automatically once the type of phone is detected by Voiceware or selected in the template field above.

This is a number (i.e. 2.0006) that will be included in some phone auto configuration files. This is needed as some phone models will only update their configuration if they see a file with a newer version number. See the section on existing templates at the end of this chapter for more information about this feature and the phones auto configuration file in general.

Auto Provision: {$config.configVersion}

Enter the phones MAC address here, for most phones it can be found on the back of the endpoint itself. When entering the MAC address do not enter any colons, spaces, or dashes.

Auto Provision: {$config.mac}

Use the drop-down to select what extension number will ring to each of the phones lines. For example a front desk phone might have “Front Desk” assigned to line one and “Restaurant” to line two. A phone must be assigned to a user and have at least one line assignment to function properly. Next to this setting you also have the option to turn off the missed call display. Unchecking this box will prevent the phone from displaying a count of missed calls. Lastly the number of the line key can be assigned using the “Line Key” drop-down. Note that for SLA the line keys must be set to at least 2.

Auto Provision: {$config.regX.name} & {$config.keysX} & {$config.mcdX}

This drop-down allows you to select the type of notification the endpoint provides when a new call arrives while the endpoint is in use. By default this is set as Beep. Select Ring to have the phone base ring when a new call arrives, and select None to disable this feature. It is recommended that for front desk phones this be set to Ring or None.

Auto Provision: {$config.cwt}

If the phone has a voicemail button it can be programmed to dial the number assigned to the Voicemail system using Dial Plans. In most Voiceware installations select 8000 for this value.

Auto Provision: {$config.vmext}

Checking this box will assign a park key to an unused line key. Pressing this key will place the current caller into a parking spot and read back to the user what parking spot the caller was placed into. For more information on parking see the Dial Plan section. Note this feature only works when on a call.

Auto Provision: {$config.parkkey} & {$config.parkext} & {$config.parkstart} & {$config.parkend}

Checking this box will display parking spots and if they are occupied on the endpoints display.

This checkbox creates a fast transfer key in an unused line key position. Pressing this key while on a call will blind transfer the caller to the selected extension. Note this feature only works when on a call.

Auto Provision: {$config.qtext.X.xfer_dest} & {$config.qtext.X.xfer_label}

Checking this box will allow the entry of an IP address or FQDN. This is only used if the phones are behind a firewall and the server cannot determine its own outward facing IP address. This is commonly used in a hosted system setup. See the Option 66 section at the end of this chapter.

Auto Provision: {$config.myip}

This digitmap is set by default using the digitmap listed in the Settings section. If it needs to be changed for this phone it can be done here.

Auto Provision: {$config.digitmap}

This section allows the addition of simple BLF/Transfer keys to other users and system features (i.e. IVR, Conference Bridge, etc…).

Auto Provision: {$config.digitmap}

Here a new transfer key can be created. Upon checking the box a label, extension and adjustment options will appear. The Label is what is displayed on the phones display itself. The Extension is the number dialed, note this number can be an external number taking care to add a 9 at the beginning of the number if needed. There is also a BLF check box that will enable Busy Lamp Field functionality for the extension in question. Lastly the adjustment buttons can be used to add another custom speed dial or adjust the position the keys display in.

Auto Provision: {$config.sdext.X.sd_dest} and/or {$config.sdext.X.blf} & {$config.sdext.X.sd_label}

Checking this box will present several different options for customization of this phone. These settings appear in the Settings page for universal control. Changes made here will affect this phone only.

Will enable a display on the endpoint that indicates if the endpoint is logged into or idle.

Here the admin password for the phones GUI can be seen/changed.

Auto Provision: {$config.admin_pwd_set} & {$config.admin_pwd}

Here the level of debug information sent to the syslog servers can be set. Normally syslog servers are not used in a Voiceware installation so this setting is normally pointless.

Auto Provision: {$config.syslog_level}

This setting will an enable or disable the phones web GUI.

Auto Provision: {$config.http_iface}

If desired the PC out port on configured phones can be disabled here.

Auto Provision: {$config.pc_port}

The ability to place a phone in do not disturb can be controlled here on a global level. This setting might be useful if front desk phones get placed in DND accidentally.

Auto Provision: {$config.dnd}

Like above this enables or disables the ability to place a phone in forward mode.

Auto Provision: {$config.call_fwd}

Normally a phone will play an alert tone when a voicemail is left and a reminder tone every so often afterword’s. This feature can be disabled here.

Auto Provision: {$config.vm_sa}

A blinking light is normally enabled when a new voicemail is available. This light can be disabled using this setting. Note: if both this setting and the one above are set to “Off” the only way a user would be alerted that they have a voicemail is by the stuttered dial tone present when the user picks up the phone.

Auto Provision: {$config.vm_la}

These three settings control what is known as “sticky” volume control. Enabling this feature for any of the three speech methods will retain memory of the volume level between calls. For example if a user takes a call and sets the volume very low the next call they make/receive will be at the same low volume.

Auto Provision: {$config.stickyvol_head} & {$config.stickyvol_spkr} & {$config.stickyvol_hand}

If enabled a tone will be played to remind the user that a call is waiting on hold by playing a tone every so often (see below).

Auto Provision: {$config.hold_remind}

This setting controls how soon a phone will begin reminding the user that a call has been placed on hold.

Auto Provision: {$config.hold_remind_start}

Once the user has been reminded that they have a call on hold the tone will play again once an interval, the time of which is set here.

Auto Provision: {$config.hold_remind_per}

An override for the location the phone will attempt to get DNS info from. This allows a different DNS server to be set, the default is the router offering up DHCP.

Auto Provision: {$config.dns_ip_set} & {$config.dns_ip}

If a syslog server is being used its IP address can be placed here and uploaded to all configured phones.

Auto Provision: {$config.syslog_server_set} & {$config.syslog_server}

If a Vlan is in use its ID can be entered here.

Auto Provision: {$config.vlan_id_set} & {$config.vlan_id}

This is rarely needed but might be required depending on the local network configuration. For more information see Cisco Discovery Protocol and/or Link Layer Discovery Protocol .

Sidebar

View Endpoints:

This link will display the unconfigured and configured phones list.

Add Endpoint:

This is the same as the “Add Phone” button at the bottom of the page.

Bulk Add Endpoints:

This screen allows the bulk upload of MAC addresses via a CSV file (containing only the MAC addresses). This can speed an installation and reduce errors of hand entering MAC addresses.

Upload Firmware:

This is used to upload new firmware available to phones and should only be used under direction of a Phonesuite factory technician.

Manage Templates:

This link allows access to the phones template manager screen. Here new templates can be uploaded and existing templates downloaded. It is possible to download a template, make changes to it (including its name) and then upload it. This allows for special one-off changes to be made on a per installation bases. New template files (if available) can be downloaded from the About à Updates section. Finally, a full explanation of the formatting of the files along with a list of available data tags is available in the special topics section below.

Regenerate Config Files:

This will regenerate all phone configuration files. This is normally only needed if the Voiceware server changes IP addresses or if major changes to the phones are made.

Reboot Endpoints:

Clicking this will reboot all connected and configured Polycom phones if a recent configuration change requires a reboot, this should be done with caution because the phones will not work during the reboot and it takes about 5 minutes to completely come back online. Note that this will update the phones firmware version to a version that has been tested and is known to work with Voiceware (if the current version is older then what is available on Voiceware). Also note that if a phone is in use the reboot will be postponed until the phone is no longer in use.

View Devices:

This link will display the “Devices” page, same as clicking “Devices” at the top of the page.

Add Device:

The same as clicking “Add Device” from the device page.

Logout:

Here the current user can log out to allow a different user to log in.

Most SIP Phones have an option where upon boot up they will search for a configuration file from an onsite server. If they find a configuration file for them (normally identified by MAC address) or are told what the ID number of their file is (as such is the way with Cetis phones) they will download this file and attempt to import it as their configuration.

Voiceware has several data options or flags for use in a phones configuration file. The basic method for creating a new phone auto configuration file is to:

  1. Download the base template file from either the phone manufactures website or from the configured phone itself

  2. Insert the appropriate data flags (see below) into the correct areas of the file

  3. Name the file with the correct naming format (again see below)

  4. Upload and test the new file

Having the phones auto config also requires that Voiceware be the DHCP server on the network that the SIP phones are on. How to do this is described in its own section below.

The template files should be an empty config file, with the extension .tpl, named after a device/model. (ex. Vtech-V725.tpl will appear in the interface as Vtech-V725)

At the top of the template, specify the file format as such:

{*fileformat-[MAC].ext*}  

The field MUST be the first line in the template file.  It is freeform, and the capitalization of the MAC part lets me know whether the mac address should be capitalized or not, as such, the VSP725 wants its filename as MODEL_MAC.cfg, so it looks like this:

{*VSP725_[MAC].cfg*} which writes out to VSP725_0A1B2C3D4E5F.cfg.

{*VSP725_[mac].cfg*} would write out VSP725_0a1b2c3d4e5f.cfg.

Another alternative is to use the "[id]".  Cetis phones want a numeric configuration ID.  This will be the phone's ID in the phones page, and has a filename of

{*[id].3300IP.txt*}

Which writes out (for my example): 28.3300IP.txt since it was phone ID 28.  We cannot use extensions here because we may not have one, or may have one that changes.  The phone's ID is static.

NOTE ABOUT OPTIONS:

Some options need to be converted from one style to another.  This can be handled as such:

If, for example, $config.dnd needs to say "true" or "false" in the config template, but it says 1 or 0 by default, change it like so (in the template):

{if $config.dnd == 1}true{else}false{/if}

Available options:

Data Tag

Data Type

Description

{$config.phone_id}

int

ID of the phone

{$config.mac}

string

MAC address of phone "001122334455"

{$config.http_iface}

string

Enable the web interface on phone (1 yes 0 no)

{$config.pc_port}

int

Enable (0) or disable (-1) PC Port on phone

{$config.dnd}

int

Enable (1) or disable (0) DND

{$config.call_fwd}

int

Enable (1) or disable (0) Call Forwarding

{$config.vm_sa}

string

voicemail notification sound "chord" or "silence"

{$config.vm_la}

string

voicemail enabled  "contact" or "disabled"

{$config.stickyvol_head}

string

sticky volume on headset "1" or "0"

{$config.stickyvol_spkr}

string

sticky volume on speaker "1" or "0"

{$config.stickyvol_hand}

string

sticky volume on handset "1" or "0"

{$config.hold_remind}

string

enable hold reminder beep "1" or "0"

{$config.hold_remind_per}

string

how often in seconds to remind of hold

{$config.hold_remind_start}

string

how long in seconds before first reminder

{$config.regX.id}

int

device ID for regX (X = line key)

{$config.regX.name}

string

device name for regX ("testdev")

{$config.regX.accountcode}

string

accountcode for regX (if set)

{$config.regX.username}

string

SIP username for regX ("testdev")

{$config.regX.secret}

string

SIP password for regX ("E8o6e%aGu$eteVir")

{$config.regX.qualify}

string

whether or not keepalives are sent "yes" or "no"

{$config.regX.allow}

string

codecs allowed for regX "ulaw,alaw,gsm"

{$config.regX.disallow}

string

disabled codecs for reg

{$config.regX.port}

string

SIP port to register to "5060"

{$config.regX.language}

string

two character language code (if set)

{$config.regX.sip_calllimit}

string

maximum simultaneous calls for regX

{$config.regX.sip_dtmfmode}

string

DTMF mode to use with regX "rfc2833/info/inband"

{$config.regX.sip_speakerphone}

bool

answer all calls on speakerphone on regX

{$config.regX.friendly_name}

string

plain English name for regX

{$config.regX.sla_group}

string

the sla group regX belongs to (empty if no SLA)

{$config.keysX}

int

how many line keys for X (same X as regX)

{$config.mcdX}

bool

display missed calls for X (same X as regX)

{$config.digitmap}

string

dialing digit map

{$config.vmext}

string

voicemail extension to call when vm button pressed "8000"

{$config.cwt}

string

call waiting tone "beep" or "ring" or "silent"

{$config.timeoffset}

int

time offset from GMT in seconds (-25200)

{$config.myip}

string

IP of server  ex. "192.168.2.191"

{$config.dst}

int

Enable (1) or Disable (0) DST support

{$config.parkkey}

bool

Add a park key to phone (true/false)

{$config.parkext}

string

extension to use for park key (if enabled) "700"

{$config.qtext.X.xfer_dest}

string

quick transfer key X destination. (X starts at 0)

{$config.qtext.X.xfer_label}

string

quick transfer key X label 

{$config.sdext.X.sd_dest}

string

custom speed dial X destination (X starts at 0)

{$config.sdext.X.sd_label}

string

custom speed dial X label

{$config.sdext.X.blf}

bool

Subscribe to BLF for speed dial X

{$config.admin_pwd_set}

int

enable / disable interface admin password setting (1/0)

{$config.admin_pwd}

string

interface admin password to use if admin_pwd_set is 1 "567"

{$config.vlan_id_set}

string

enable / disable setting of VLAN "0"/"1"

{$config.vlan_id}

string

VLAN ID to use on network if vlan_id_set is 1

{$config.dns_ip_set}

string

enable / disable setting of DNS IP

{$config.dns_ip}

string

IP address of DNS server to use if dns_ip_set is 1

{$config.syslog_server_set}

string

Enable / Disable setting of syslog server host

{$config.syslog_server}

string

IP or hostname of syslog server (if syslog_server_set)

{$config.syslog_level}

string

Level of logging to syslog (if syslog_server_set)

If a phone is also assigned to a user the additional options become available.

Data Tag

Data Type

Description

{$config.userdata.username}

string

username

{$config.userdata.firstname}

string

User's first name

{$config.userdata.lastname}

string

User's last name

{$config.userdata.pin}

string

User's voicemail PIN

{$config.userdata.outbound_id}

string

User's outbound ID (if set)

{$config.userdata.lang}

string

User's language (2-char - "en")

{$config.userdata.timezone}

string

User's Timezone (America/Dawson_Creek)

For the phone auto configuration feature to work either the onsite router must be configured for Option 66 or Voiceware must be the DHCP server for the network that the SIP phones are on. It is highly recommended that option 66 be used because the local router should also be the DHCP server and configuring DHCP in Voiceware requires manual editing of Linux configuration files.

Option 66

Option 66 (or 160, see below) is a DHCP option that will be sent to any device asking for an IP address. This option is used my many phones to ask for the local server IP address where the phone should look for a configuration file. Option 66 should use the “text” type and local IP of the Voiceware server for onsite systems (i.e. 192.168.1.222) or the public IP for a hosted system (i.e. 12.34.56.78/p). An example of how this might work is as follows:

Phone                                                                        DHCP Server                             Voiceware Server

Can I have an IP address?                            

                                                                       

Sure, your IP is 192.168.1.56
Also option 66 is 192.168.1.222

Ah, is there a config file for my MAC

I have your config

Brand

DHCP Option

Type

Value

Vtech

66

Text

http://<ip>/p

Polycom

160

Text

http://<ip>/p

Yealink

66

Text

http://<ip>/p

Cetis*

66

Text

<ip>

Snom

Not Used

 

 

Yeastar

Not Used

 

 

*Cetis phones use only TFTP to auto-configure and thus will not work on hosted systems. If using Cetis guest room phones for a hosted system setup the phones on the hosted system as normal (including checking the “Override Server IP” check box, see below). After all phones are setup the configuration files will need to be manually moved to the local failover Voiceware server (Cetis configs are in /data/tftpboot and all end with “3300IP.txt” (i.e. 53. 3300IP.txt). These files should be moved into the same directory and have the permissions www-data www-data. Also note that Cetis requires a version number in the Config Version box. This version number is required to start at 2.0004 for the phones to pull new configuration. Do not format the number as 2.1 or 2.004 as it will not work and will not configure.

For hosted systems it is important for hosted systems that the “Override Server IP” box is checked in the Phone setup screen and that the Hosted IP address is entered here. This is because Voiceware assumes that it and the phones are on the same local network. This is not true in a hosted environment and thus the configuration file must have the correct Public IP address for the hosted system. Otherwise the phones will be told to find the Voiceware server at the local IP of the hosted network (i.e. 10.24.355.12) and not the hosted Public IP (i.e. 12.34.56.78).

Voiceware as a DHCP server

To get started edit the file /etc/dhcp/dhcpd.conf

Add the below information after the line “log-facility local7;” at about line 28:

 # DHCP configuration added by [name] [date]

 subnet 192.168.1.0 netmask 255.255.255.0 {

authoritative;

option domain-name "dhcp.local";

option domain-name-servers 192.168.1.1;

option tftp-server-name "tftp://192.168.1.1";

option time-offset -25200;

option routers 192.168.1.1;

option ntp-servers 192.168.1.1;

server-name "tftp://192.168.1.1";

next-server 192.168.1.1;


pool {

        range 192.168.1.50 192.168.1.100;

}

}

Note that the actual IP addresses (here 192.168.1.1) and the DHCP range can be changed for the actual installation. Also note that the “time-offset” should be set according to your local time zone. Once this information has been added reboot the Voiceware server with the command “sudo reboot”.

 In situations where the Voiceware DHCP server is used option 66 is not needed. Also it’s important to ensure that the DHCP server in any routers on the same network be disabled.

 

 

If a Polycom phone needs to be configured using the old method of setup (without option 66 / 160) follow these steps:

  1. While the phone is powering up, press and hold down, all at the same time, the 1, 3, 5, and 7 keys for a Polycom 300 series or 4, 6, 8, and * for a 550 / 650. After a pause the phone display will show "Enter password." enter the default password of "456" and press the soft key under the display marked "OK." This will ensure the phone is reset to factory defaults (not needed on new phones).

  2. The phone will display a message about resetting the configuration. After a pause the phone will reboot and display some soft key options. Push the button under "Setup." For the password press "456" and OK. The phone should display "DHCP Client."

  3. Push the down arrow key once so the display reads "DHCP Menu." Press the "Select" soft key. You will see the "Boot Server" menu.

  4. Press the "Edit" soft key and then press the right arrow until the "Static" option appears. Press "OK."

  5. Press the down button twice so that "BootSrv Type" appears. Press the "Edit" soft key and then press the right arrow so that "IP Address" displays. Press "OK."

  6. Press the "Exit" soft key once. The display should now read "IP Gateway."

  7. Press the down arrow key once; the display should show "Server Menu." Press the "Select" soft key. "Server Type:FTP" will display.

  8. Press the "Edit" soft key and then press the right arrow until "Trivial FTP" displays as the Server Type. Press "OK." the "Server Address" option should now display.

  9. Press the "Edit" soft key to enter the local static address of the Voiceware server. You will need to put the phone's keyboard into IP entry mode by pressing the soft key marked "a->1A" until it displays "1->Aa." Then key in the IP address using the * key for the "dot." You can use the left arrow key like a backspace key to erase mistakes. When the correct address is entered press "OK." Do not include leading zeroes in the address components.

  10. Press "Exit." Press "Exit" again. Press "Select" to "Save & Reboot" the phone.

 

Related content