NEW OSS EPM for FreePBX 16 & iPBX 2027

Ward - Just playing around with 2027-U this weekend, looking to upgrade my ancient PBX.

I've downloaded the ossepm16.tgz archive and extracted it as detailed back on page two. However, I'm not seeing any phones showing up even though the _ep_phone_modules directory appears fully populated. Do I need to copy some/all of these into the endpointman directory (sort of a manual update)?

Alternatively, where can I point the "Package Server" to now that provision.lol is gone? (It looks like you were offering to set up a sub-domain to handle this, no?)

EDIT: I managed to manually install the Grandstream package (from Sourceforge, again from instructions on page two). Those devices now show up, but nothing else
check OUI Manager and see if it contains your phones OUIs if you are using newer phones.
to get my Yealink T4xU phones to show up in OSS EPM I had to manually add their OUIs to OUI Manager.
 
see below.

Thanks Ward

One step closer now that is solved.

EDIT - Not a "new" phone issue. Ancient Polycom SP501 that my wife refuses to give up for her office phone.
 
Last edited by a moderator:
Try this for better results....

1. Open OSS EndPoint Manager under FreePBX Settings
2. On right pull-down, choose EndPoint Manager Settings
3. For Package Server, enter: https://ossepm.incrediblepbx.com/
4. Adjust other fields as desired. Then click in another field to save your entries
5. On right pull-down, choose Template Manager
6. Click link to download the latest templates
7. On right pull-down, choose Package Manager
8. Click Check for Updates
9. Click Install buttons for desired packages

phone-packages4.png
 
Last edited:
Good day!
Can You help to fix error with OSS EPM&Freepbx16 ?
I have error after install on page Extension Mapping in file /var/www/html/admin/modules/endpointman/includes/rain.tpl.class.inc:
"Methods with the same name as their class will not be constructors in a future version of PHP; RainTPL has a deprecated constructor."
After correcting code from this
class RainTPL{
function RainTPL( $tpl_dir = null, $tpl_compile_dir = null, $base_dir = null ){
to this
class RainTPL{
function _construct( $tpl_dir = null, $tpl_compile_dir = null, $base_dir = null ){
I get the following error on page Extension Mapping:
Template devices_manager not found
same as in post #70 from terazavi
 
Last edited:
So I've gotten back to working with this and have a problem that doesn't seem to be covered so far in this thread.

I've created an extension for the phone (Polycom SP501), and I'm running in to an error when trying to map the phone to the extension when I click "Add"

epm0.PNG

epm1.PNG

When I reload the page, it shows the extension created but the template is "N/A".

epm2.PNG

Not surprising, I'm not seeing any configuration files for the phone in the /tftpboot directory like on the old PBX.

On the old PBX, the template was created as "custom-MACADDR".

epm3.PNG
 
Last edited:
So a small but significant update.

I tried setting up a Grandstream GXP2000 and it created the endpoint without the copy error shown above and I see a cfg(macaddr) file in the /tftpboot directory.

Guess I will dig into the directory structure to see if something jumps out at me...

Edit:

So more oddities...

There are several files that begin with a $ character, Ubuntu is displaying them wrapped in single quotes.

epm4.PNG

My old PBX (CentOS converted to Scientific Linux) does not...

epm6.PNG

I can only "cat" the file contents if I put an escape (cat \$mac-phone.cfg), so I'm guessing the single quotes are some display option in Ubuntu, but I'm also guessing that the "$" at the start of the filename is somehow messing things up.

Can anybody try setting up a Polycom SP501 endpoint and see if the problem is reproducible?

I'm running IPBX2027 on Ubuntu 20.

Edit #2

So it appears it is a problem with the SP501 (possibly all the "splm" legacy models).

I created an endpoint using the "current" model SP550 ("spipm" model) and it worked with no errors, including making the cfg files in the /tftpboot directory. It also rebooted the phone and it appears to be working based on very minimal testing (correct extension shown for line one, a call out worked).

Just my luck, the model I actually need has some oddball bug in the configuration.

More digging ahead.

Edit #3

I found the copy error! SoundPointIPLocalization in the public $copy_files = array is a directory.

epm7.PNG

I had one more error, it was having trouble copying a contacts/directory.xml backup file (that didn't exist) so I "made" the file that was missing by copying the contacts/directory.xml file into the backup directory.

Not sure who/how to get these changes merged back in to the master files so this doesn't catch the next guy using an ancient Polycom phone.

:D

Final Edit:

Deleted the extension mapping and cleaned up the /tftpboot directory. Went back and made the extension mapping with no errors at all - huzzah!
 
Last edited:
So another "new" problem that I have half figured out already.

Using the Polycom 501 with chan_sip, it reboots when an updated configuration is generated (and reboot is checked).

Using chan_pjsip the phone works fine, but does not reboot when requested in OSS-EPM.

I did some digging and found that I can reboot the phone using the asterisk CLI and the command

pjsip send notify reboot-polycom endpoint ext_num

reboot-polycom appears to be an alias for Event=>check-sync, I found a reference to it in sip_notify_additional.conf

Best guess, OSS-EPM only has the "sip notify" commands baked in to the module. I found something that looks probable in functions.inc.php, but I know almost nothing about PHP or the inner workings of asterisk to properly decipher/modify this (if this is even the right section).

Does anyone have any ideas if it would be possible to integrate the "pjsip send notify" commands into OSS-EPM alongside the existing "sip notify" commands?

Code:
    switch ($engine) {
        case "asterisk":
            if (isset($core_conf) && is_a($core_conf, "core_conf") && (method_exists($core_conf, 'addSipNotify'))) {
                $core_conf->addSipNotify('polycom-check-cfg', array('Event' => 'check-sync', 'Content-Length' => '0'));
                $core_conf->addSipNotify('polycom-reboot', array('Event' => 'check-sync', 'Content-Length' => '0'));
                $core_conf->addSipNotify('sipura-check-cfg', array('Event' => 'resync', 'Content-Length' => '0'));
                $core_conf->addSipNotify('grandstream-check-cfg', array('Event' => 'sys-control'));
                $core_conf->addSipNotify('cisco-check-cfg', array('Event' => 'check-sync', 'Content-Length' => '0'));
                $core_conf->addSipNotify('reboot-snom', array('Event' => 'reboot', 'Content-Length' => '0'));
                $core_conf->addSipNotify('aastra-check-cfg', array('Event' => 'check-sync', 'Content-Length' => '0'));
                $core_conf->addSipNotify('linksys-cold-restart', array('Event' => 'reboot_now', 'Content-Length' => '0'));
                $core_conf->addSipNotify('linksys-warm-restart', array('Event' => 'restart_now', 'Content-Length' => '0'));
                $core_conf->addSipNotify('spa-reboot', array('Event' => 'reboot', 'Content-Length' => '0'));
                $core_conf->addSipNotify('reboot-yealink', array('Event' => 'check-sync\;reboot=true', 'Content-Length' => '0'));
                            $core_conf->addSipNotify('reboot-gigaset', array('Event' => 'check-sync;reboot=true', 'Content-Length' => '0'));
                                $core_conf->addSipNotify('panasonic-check-cfg', array('Event' => 'check-sync', 'Content-Length' => '0'));
                                $core_conf->addSipNotify('snom-check-cfg', array('Event' => 'check-sync', 'Content-Length' => '0'));
            }
            break;
 
Hi, im using this Addon on the latest plain installed FreePBX. But if i do so, i get some PHP-Errors for example if i create a new Extension. If i remove the Module (fwconsole ma uninstall endpointman) everthing works again.
I read something that this Module is written in PHP7.4, is that correct? Thanks!
Im very new to FreePBX in generell and only want to test a free EndpointManager.
 
Im using:
PBX Version: 16.0.40.7
PBX Distro: 12.7.8-2306-1.sng7
Asterisk Version: 18.20.2
And if i install the module as written on new tutorial to install OSS EPM im not able to add or edit extensions. It gives me a PHP deprecated function error. If i uninstall the module extensions work again.
 
I am using: Incredible PBX 2027-D 16.0.40.4 on a raspberry Pi 4b.
I have Sangoma S705 phones.

I uninstalled the OSS endpoint manager and then re-installed it using Ward's tutorial. Of course, when I go to select the "Sangoma" Brand in the package manager, it is not there.

Can someone give me a few pointers as to how to create a Brand record for "Sangoma" so that I can add a phone template for the S705 phones?

Are the brand and templates hand built directly in JSON, XML and PHP and checked into the repository or are there some tools that can help build them?
 
I am using: Incredible PBX 2027-D 16.0.40.4 on a raspberry Pi 4b.
I have Sangoma S705 phones.

I uninstalled the OSS endpoint manager and then re-installed it using Ward's tutorial. Of course, when I go to select the "Sangoma" Brand in the package manager, it is not there.

Can someone give me a few pointers as to how to create a Brand record for "Sangoma" so that I can add a phone template for the S705 phones?

Are the brand and templates hand built directly in JSON, XML and PHP and checked into the repository or are there some tools that can help build the
@billsimon is the best place to start. His brand repo is on GitHub.
 
I don't own Sangoma phones but I understand they have a provisioning module for FreePBX just for their phones. You can check with the Sangoma support desk or search the FreePBX forums to find out more.
 
I don't own Sangoma phones but I understand they have a provisioning module for FreePBX just for their phones. You can check with the Sangoma support desk or search the FreePBX forums to find out more.
They have the commercial Endpoint Manager, which is free for use when using Sangoma or Digium phones. I.e. you don't have to pay to license it. In fact, most commercial modules revolving around phones (Phone Apps, etc) are free to use with Sangoma/Digium phones without having to pay for licensing.
 
Ah, but the commercial modules will not run on the raspberry pi platform. I specifically tried using the commercial Endpoint Manager and it would not run. It needs ionCube to decrypt the PHP before it can run. I tried installing ionCube but it requires setting zend_extensions in PHP.ini and something else is already using it. I stopped looking at that point.
 

Members online

Forum statistics

Threads
26,688
Messages
174,412
Members
20,259
Latest member
Fadeek86
Get 3CX - Absolutely Free!

Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.
Back
Top