Polycom Phones UC Provisioning Module

I setup a few FreePBX deployments 3 years ago on version 2.7. In order to quickly provision the Polycom phones I created a few PHP scripts and used FreePBX device description field to store the phone MAC address. While this worked it wasn’t ideal and didn’t allow configuration of settings for individual phones.

Recently I updated these systems to FreePBX 2.11 and decided I needed a more flexible way to configure these phones. I tested the OSS endpoint manager and read the manual on the commercial endpoint manager. The OSS module to me felt outdated and the layout doesn’t match the FreePBX 2.10+ style. The commercial module looks great, but doesn’t support FreePBX device and user mode. For my deployments I have users with multiple phones so this wasn’t an option.

I decided to base my module around the layout of the Digium phones module. I was aiming for easy configuration without having to read the Polycom admin guide and edit XML files.

Screenshots and a link to download the module are available at
Polycom Phones 2.11.0.2 UC Provisioner for FreePBX 2.11

What are the exchange and AD settings for? Does Polycom now have a UC connector for Exchange directory?

We need to move this to the user contributed directory.

Looks good.

The corporate directory feature no longer requires a license key in the Polycom UC software. The AD settings are for the corporate directory. You only need to supply a user with domain user permission. The Exchange settings are a separate feature for calendar integration. On the phone you supply your credentials under Settings -> Basic -> Login Credentials. On the VVX series phones a calendar icon will appear on the bottom right of the home screen allowing you to view your calendar. You will also see reminder notifications popup before appointments. One nice feature is it will search the body for phone numbers and provide a soft key to quickly dial the number.

rsw686, I don’t have any Polycom phones so I can’t try it out, but it looks great. As an amateur coder I am always interested in new stuff, but we have to be mindful of license terms and that is the first thing I went looking for. I finally found “GPLv2+” in module.xml but I suggest that you state the terms more explicitly in your blog posts and in a LICENSE file within the tarball complete with a liability disclaimer. If you based your work on GPL code of others as hinted, there may be additional notes to add acknowledging those efforts as well.

Thanks for sharing.

I will update the tarball to clarify the license terms. As far as it being based around the Digium phones module I meant the layout and ease of use not the actual code. I like how they displayed the phones in a table format and when editing a phone the options were in dropdowns. The OSS endpoint manager requires editing of XML files for advanced configuration.

The Polycom phone module determines which FreePBX modules are enabled, their feature codes, and builds the configuration around that. For example if you install the Parking module a Park softkey will appear on the phone and you will have the option to add parking slot BLF keys to the phone.

Nice job rsw686!

I’ve installed the module with the latest .tgz and am stuck at adding the phones. I think I’m missing out on the ‘phone’ part. I’m trying to get the vvx310 to get provisioned but can’t get them to connect. On the phone I’ve tried tftp/ftp/http, should I use a specific port or login to get the phone connected? The only goal is to get the Asterisk phonebook in the phone’s directory. Could someone help me out a bit?

I’ve also added the phone’s mac address manually to the module, it shows up, but doesn’t show me when the last config date is. It feels like I’m missing out on something small :frowning: