Overview
Zero Touch Provisioning, together with EndPointManager, is a great tool implemented by Sangoma, allowing you to save a considerable amount of work and headaches.
Looking at Auto-provisioning Pre-requirements and hints, it's clear that this method best fits with dynamic settings/services like UPnP and DHCP servers.
But what to do if no UPnP and no DHCP are available? Or better, how to deploy an Auto provisioned system when phones can only use static IP? Is this possible? The answer is Yes!
Tested Environment
As this requirement came up right now, the tests were executed using the latest available platform. On older systems, things may look a bit different in the Web GUI.
PBX Version: 15.0.17.34
PBX Distro: 12.7.8-2104-1.sng7
Asterisk Version: 18.3.0
Module Specific:
Module: endpoint
Version: 15.0.39.59
Assumptions
In this case, we are imaging there is no way to use any dynamic method of assigning an IP address to the EPM provisioned phones (no DHCP servers nor UPnP). The only way is to set the Static IP Address through the phone keypad and display before using the Zero Touch Provisioning or any other Auto Provisioning method.
Configure the System
On the Phone side: Setting Static IP
The first thing to do on a brand new Sangoma S-Phone or a Factory Reset phone is to input the Static IP address using the phone keypad.
Go to Menu / Settings / Advanced Settings / Network / Wan Port / IPv4 / S
Select IP Static Mode
Click on Enter to proceed.
Define IP Address
Type In all the required info like IP, Netmask, Gateway, and DNS and hit Save button.
Confirm Settings
The phone will reboot and will store all the info and the setting you've input.
On the EPM Side: Setting Static IP
You must do all these settings before creating any EPM Phone/Extensions Association. In this last case, if you already created a template association, you'll need to edit some configuration files manually.
Create a new Template for Static IP Phones
From the Web GUI, go to Modules / Settings / Endpoint Manager
On the right Appearing Menu, click and under Brand section choose Sangoma
Select S series Phones by clicking it
Create a new Template by clicking the New Template button
Define the name of the New created Template ( in this example "sangoma_static_clients") and fill/set all the needed items as per your config plan:
It's strongly suggested to set "GUI Override" under Options as GUI, so that you're settings will be kept on restart/reboot:
When done, click Apply
Things we need to edit on the created Template
From the EPM right Menu, select Basefile Edit
and select in the next screen the template we've just created for Static IP Phones ( in this example "sangoma_static_clients")
The page will present you with a large variety of files that can be edited: in our example, we'll work with an s705 Sangoma Phone
Click on "Edit Template" button
Here the page will present you with all the default settings for that specific Phone Model and Template
P-Codes will define the behavior of your phone when Auto-provisioned
<P23279>__guiOverride__</P23279> # Web Setting High Priority, derivates from the Setting we made just one step ahead.
Go finding the lines showing P-Codes from P9 to P29 and remove all of them, one by one, hitting the related vale and then confirming with the Delete Entry button
When done, go at the bottom of the page and you'll see something similar to this
Find and edit <P8> value setting it to 1
And going down at the end of the config file, before the REMOVED FROM CONFIG lines you'll see the changed value
Hit the Apply button when done.
Now go to "Edit Default Pre-logging"
Find and edit <P8> value setting it to 1 like you did in the previous step
Hit the Apply button when done.
These edits will tell the System not to override those values when Auto-Provisioning your phone either using Zero Touch Provisioning or any of the other automated provisioning methods provided to you by Sangoma.
Next Steps
Proceed with the regular Endpoint Manager configuration and/or Zero Touch Provisioning
Side Notes
We had to do this because Zero Touch Provisioning and all the other Auto-Provisioning methods are intended to be used in an automated and dynamic environment.
Static IP configuration is one of the non-preferred methods here when using an automatic configuration of s-Phones.