Oct
19

Upgrading Trixbox or Elastix Endpoint Manager

The Endpoint Manager that ships with current Elastix or Trixbox PBXes is a little outdated and lacks support for many modern VoIP Phones currently being deployed. Thankfully there is an actively maintained FreePBX Module which uses the latest configurations and firmwares provided provisioner.net. So you should find support for just about any modern VoIP hardware you might be using.

Download this tarball: endpointmanager-v2.9.2.4.tar or if you want to check for a newer version you can  visit the Endpoint Manager GitHub Repository to obtain the module. When I grabbed the tarball from Github I had to rename the file, and rename one of the archives internal folders before FreePBX would allow me to upload it. The version I have directly linked above has already been renamed and is ready to upload.

Next, login to Elastix/Trixbox and navigate to the FreePBX configuration area. You will need to click the “Unembedded freePBX” link if using Elastix to access the full range of FreePBX web panel options. IGNORE the Endpoint Configurator menu link on the Elastix or Trixbox menu bar. This is for the outdated configuration system.

Unembedded freePBX

In the new FreePBX window click the Tools Tab and select Module Admin. Click Upload Module and then once uploaded enable it and find the button to process the changes and install the module.

Enable Module

You should now have an End Point Manager section under the Tools menu of FreePBX. The first thing to do is enter the End Point Configuration menu to enable some handset types.

Enable any handset types you need to auto provision. FreePBX will download a number of files (firmwares, profiles etc) and unpack them to the correct location ready to be served up via TFTP when the phones boot.

Its worth noting at this point that I was Applying Configuration Changes whenever the orange bar appeared at the top of FreePBX as shown below. You might not need to do this until the point your going to reboot your handsets, but I was clicking it any time there were changes to apply before proceeding to the next step.

When you are done enabling device types click on the End Point Device List from the left hand menu. Enter the subnet your phones are in (e.g. 192.168.0.0/24 or 10.10.1.0/23 etc) and click Go! Endpoint Manager will sweep that subnet to discover supported devices.

subnetsearch

In a few moments you should have a list of all devices discovered, and you can click the checkbox by the Mac Address to select the phones you wish to configure, assign each to an existing FreePBX Extension and then click Add Selected Phones to save the provisioning configurations.

At this point you should click the “Apply Configuration Changes” orange  bar at the top of the FreePBX screen if it is present, and then reboot your phones, they should TFTP boot, grab firmware and config via TFTP and register with your Elastix server within a few minutes of being rebooted.

It is worth noting that I had to ensure that my DHCP tftp server option included the tftp:// prefix when provisioning Polycom phones. The entry in /etc/dhcpd.conf that worked for me is:

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

Oct
16

NetworkManager and /etc/network/interfaces

Ever wondered how to manage interfaces declared in /etc/network/interfaces with NetworkManager? I recently updated an Ubuntu desktop remotely, and to my horror she hadn’t re-appeared after 5000 pings, that’s longer than a disk check.

When I got back in front of the machine I could see she had rebooted just fine, but I had to login locally for NetworkManager to start up the interface. Not ideal.

So I checked /etc/network/interfaces and find these lines commented out:

# eth0 auto
# iface eth0 inet dhcp

Uncomment; job done. The interface will now come up at boot time. Unfortunately NetworkManager ignores any interfaces declared there, which means I can’t easily use my saved VPN connexions, etc.

Checked /etc/NetworkManager/NetworkManager.conf and it was empty. On RTFM NetworkManager.conf man page its clear you can have a lot of control over how your interfaces are managed.

So, sudo vi /etc/NetworkManager/NetworkManager.conf and added the following lines:

[main]
plugins=ifupdown
[ifupdown]
managed=true

The interface comes up at boot, so I can reliably reboot remotely but still have access to the nice NM features!

Older posts «

» Newer posts