Description
Touchless Provisioning is a method of setting up devices to automatically provision the phone without the need to enter the provisioning settings in the phone's user interface. It provides much faster phone provisioning without the need to go to every phone’s interface and enter provisioning details, which is a time-consuming process when you buy for example 100 new phones. With touchless provisioning feature, you will be able to provision those 100 phones with just a few clicks.
How to configure Touchless Provisioning on PBXware?
In order to use the Touchless Provisioning feature, it must be enabled in the license.
After the feature has been enabled in the license, first thing which needs to be done on Multi-Tenant systems in order to configure Touchless Provisioning is to enable Touchless Provisioning mode.
To do that, navigate to:
Settings → Tenants → Select Master-Tenant → Show Advanced Options → General Settings section → Touchless Provisioning Mode
and set option ‘Touchless Provisioning Mode’ which defines how Touchless Provisioning will be configured.
By default, this option is set to ‘Not Selected’ and in this case you will not be able to see the Touchless provisioning menu on PBXware.
Other two available options are: Master and Per tenant.
Master: Touchless Provisioning Configuration page will only be visible on the Master Tenant. Set this mode if you want one configuration to be used for all tenants.
Per Tenant: Touchless Provisioning Configuration page will be visible on every slave tenant. Set this mode if you want to be able to configure every tenant separately.
Also, it is possible to set an option called Touchless Provisioning Credentials Expiry (available from PBXware v6.6.1).
This option sets a time period in hours or days, after which the Touchless Provisioning credentials will expire. (E.g. If the user sets TLP Credentials Expiry to '1 hour', this means that after the Registration request is sent, the user has one hour to reset the device to factory settings and pick up the configuration.)
NOTE: On Contact Centre edition there is no option for Touchless Provisioning mode as you basically have only one tenant.
Under:
Settings → Servers → General settings → option ‘Touchless Provisioning Credentials Expiry’
can be found, and it is the same as for Multi Tenant.
If Touchless provisioning mode is set to ‘Per tenant’, when you navigate to
Tenant in question → Settings
Touchless Provisioning menu will be shown and there will be two submenus: Devices and Configuration.
NOTE: In version 6.7.1 we introduced a small change in how Touchless Provisioning devices are being displayed on Master Tenant. In earlier versions, devices from all tenants were automatically displayed on the Devices page, and now you are able to display devices from a specific tenant, by selecting the tenant from the drop-down list. With this change in place, you will need to select a tenant first, before devices are displayed.
Devices page is available on both, tenant and master tenant, regardless of the Touchless Provisioning mode option. When viewing from Master tenant, there will be a column which shows which tenant that device belongs to.
Devices page will show all devices which can be provisioned over Touchless Provisioning.
What are the requirements to provision the phone with Touchless Provisioning?
As previously said, Touchless Provisioning is a feature that is designed to allow a quicker, more efficient and easier way to provision the phone devices. After it is enabled in the licence, and configured on the PBXware there are a few steps that need to be done in order to use the feature.
Based on which option is selected for the Touchless Provisioning Mode under the settings of the Master-Tenant, the option Touchless Provision will appear on different places. In our case, value selected is “Master”, meaning Touchless Provisioning provider set on the Master-Tenant will be used for all the tenants. You could also set the value to “Per tenant”, meaning each tenant will have the option to setup their own Touchless Provisioning provider.
Navigate to:
Master-Tenant → Settings → Touchless Provisioning → Configuration
Configuration page is visible either on Master Tenant or per tenant. If visible only on Master Tenant, then the same configuration will be applied on all tenants. If visible per Tenant, then every tenant needs to be configured separately. The page shows a list of all available providers whose phones can be provisioned with the Touchless Provisioning service.
You can not add or remove providers. You can only edit the providers that are currently supported.
Currently, supported providers are: Yealink and Snom.
Instructions on how to configure Snom can be found on this link.
As we can see, available providers are Yealink and Snom. Also, under the Status column, we see that the status of both is “Disabled”, meaning that both providers for Touchless Provisioning are not currently being used.
Here, were are going to describe the instruction on how to use the Yealink provider for Touchless Provisioning.
To change the status of Yealink provider, click on the “Edit” button on the right-hand side.
Selecting the API Version will determine which Yealink RPS portal will be used.
API Version options that can be chosen are:
API Version V1 is for the previous Yealink RPS portal.
API Version V2 is for the new Yealink YMCS portal.
By choosing API Version V2, a Yealink YMCS portal is selected and the new field Region will be displayed.
Region selection depends on the type of Yealink YMCS portal used and based on that the values that can be chosen are:
EU
US
AU
In this example, we are going to use API Version V1.
Click on the “Enable” button and hit “Save”.
After that, you will encounter an error – saying “AccessKeySecret must not be empty”. The errror is because there are no credentials entered in the fields.
To get these credentials, users need to have a Yealink RPS account. RPS stands for Redirection and Provisioning Service. Yealink RPS Server is the server from which the phones will try to fetch the configuration from. This account is free and can be acquired by contacting the Yealink support.
Once users have the Yealink RPS account, they can proceed with the following steps to get the credentials:
1.) Go to https://ymcs.yealink.com/ and enter the username and password provided from Yealink Support.
2.) Once logged in, click on the “System” then select “Integration” from the drop-down menu and select “API”.
3.) Under the RPS API, there are two values that we need in order to setup the integration with the PBXware. Those values are “AccessKeyID” and “AccessKeySecret”.
Click on the “Edit” on the right-hand side in order to acquire new credentials.
4.) After acquiring new credentials, copy/paste them on the Configuration menu on the PBXware GUI, then click on “Save”.
After that, click on “Test” button. If everything is set correctly, you will see a success pop-up message.
Now, Yealink RPS server is ready to be used for Touchless Provisioning.
How to prepare and register extensions for Touchless Provisioning?
In order for the extension to have the ability to be provisioned by using Touchless Provision, there are 3 things that need to be set:
UAD Location must be set to “Remote”.
UAD device must be a supported device from Yealink or Snom.
Auto-Provision must be set to “Yes” and the MAC address of device must be entered and the DHCP should be set to “Yes” – it is not necessary but it makes the process easier.
If either one of those 3 things is not set, Touchless Provision will not work.
After creating and preparing extensions, now we can use the RPS server for Touchless Provisioning.
Navigate to:
Settings → Touchless Provisioning → Devices
Here will be list of all extensions that could be provisioned using Touchless Provisioning.
Select an extension, or a group of extensions, or all of them and click on the “Register” button. This will send out a request(s) to the RPS server for registering devices.
You will see a pop-up that the registration request have been sent out.
After reloading the page, you will see that the device has been registered if the registration went successfully by seeing “Registered” under the “Status” column.
If the registration was not successful, you will see a reason why under the “Last Message” column.
If the device was registered successfully, it will appear on the RPS server GUI. On the RPS server GUI, navigate to:
RPS → Device
and you should be able to see your device. In our case, it is the device with “805ec09eef90” MAC address.
You could also deregister a device, by selecting a device (or a group of devices) and clicking on the “Deregister” button. That will send out the deregistering requests to the RPS server.
Realod the page and you will see that the status of the device has been changed. Status on the PBXware for the device will change to “None” and the device will no longer be registered on the RPS server.
We will again register a device with the “805ec09eef90” MAC address.
After that, reload the RPS portal page and the device should appear on the GUI.
By clicking on the “Edit” button on the right-hand side, a window with the server details will appear.
Unique Server URL – represents the URL which phones will contact in order to fetch the configuration details.
Username and password – are randomly generated for each phone device. This is done as a security precaution. They are not the username and password of the server that is set on the PBXware. They are simply being used as an authentication for contacting the RPS server.
Next step is to reset the phone to factory defaults.
When the phone is factory reset, it will contact the provisioning server and automatically pull all the data needed for provisioning and will be provisioned to the assigned extension.
You have to factory reset the phone. Just rebooting the phone will not cause the phone to fetch the configuration from the RPS server.
Once the phone is provisioned, it will be removed from the provider's redirection service.
If we are going to use API Version V2, on the PBXware GUI there will be another field “Region” that needs to be populated. Region selection depends on the type of the Yealink YMCS portal used and the values that can be chosen are:
EU
US
AU
PBXware GUI will look like this:
Available protocols are HTTP and HTTPS, same as for the API Version V1.
Bear in mind if a user does not have a valid certificate, HTTPS can not be used for Touchless Provisioning.
Again, you need to enter the “AccessKeyId” and “AccessKeySecret”.
To get these credentials, users need to have a Yealink RPS account. RPS stands for Redirection and Provisioning Service. Yealink RPS Server is the server from which the phones will try to fetch the configuration from. This account is free and can be acquired by contacting the Yealink support.
Once users have the Yealink RPS account, they can proceed with the following steps to get the credentials:
1.) Go to https://ymcs.yealink.com/ and enter the username and password provided from Yealink Support.
2.) Once logged in, click on the “System” then select “Integration” from the drop-down menu and select “API”.
3.) Under the RPS API, there are two values that we need in order to setup the integration with the PBXware. Those values are “AccessKeyID” and “AccessKeySecret”.
Click on the “Edit” on the right-hand side in order to acquire new credentials.
4.) After acquiring new credentials, copy/paste them on the Configuration menu on the PBXware GUI, then click on “Save”.
After that, click on “Test” button. If everything is set correctly, you will see a success pop-up message.
As for the configuration of an extension, you will need to do the same steps as for the API Version V1 with one small addition.
The addition is that you need to set the value for the serial number of the device you are going to use for touchless provisioning.
To do that, you will need to navigate to:
Extension in question → Show Advanced Options → Auto Provisioning section → option ‘SN’
SN – stands for serial number.
Each device has its’ own unique serial number.
After setting the value for the SN, all the steps of registering a device on the RPS portal for API Version V2 are exactly the same as for the API Version V1.