So management had me use our old Cisco 7960 phones for the majority of our users. They work fine - flashed them to SIP & they take right off. Today (2 months after installing them) a user vented on me about how much the new phone system sucks; turns out that her biggest gripe is that when she calls another extension internally, the text name associated with the extension does not come up on her phone, only the extension. Caller ID works calls coming in from our SIP trunk. (To me, this doesn’t seem like it’s all that big of a deal, but it’s extremely annoying to her.) I’ve been unable to find any setting to control this and wonder if it’s a limitation of the Cisco phone, though they showed the name when used with SCCP & CUCM. Anyone have any ideas?
My Chan-SCCP-B implementations have full caller ID for both internal and external numbers. I just installed a new one last weekend, including a FreePBX management module. Search for chan-sccp-b on GitHub (or look for some of my other posts) as well as the SCCP Manager from PhantomVI.
The SIP image for these phones uses every bit of the CPU to deliver an 80% experience. Moving back to SCCP could make your life easier, although that process will not be painless or easy. Once there, however, I think your users will be happier with the experience.
I remember trying to get SCCP working when I first got the system, but never did figure out how to do so. (Would have saved a LOT of time/effort had I been able to simply use the SCCP phones already in place rather than flash new phones & then run around like crazy swapping phones when we migrated.) Do you know if it works with the PBXact system/hardware? If so, are there any HOWTOs or detailed directions on how to do so? Finally, would there be any issues with installing it on the system and running both in parallel? (We do have a bunch of Sangoma phones in our system as well, which only work with SIP AFAIK.)
*edit - Running SCCP would allow me to edit the softkeys on the phone as well, right? *
I wrote an entire installation process for the SCCP Wiki on GitHub. Search “FreePBX Chan-SCCP-B @GitHub” and you should get to the FreePBX installation instructions on about 1 click.
There is a GUI module for SCCP phones now that works with versions after FreePBX 1.8.
The GUI module includes custom softkey mapping - you can’t edit the ‘default’ list, but you can create as many as you want.
I had a little trouble when I installed the Manager over the weekend - there were a lot of “duplicate definitions” in an Include file that was getting added twice, but I think that might be fixed. If you run into trouble, let me know through a DM and I’ll walk you through the fix. There was also a change that I decided to make to the Makefile for the Chan-SCCP module, but that’s minor. Let me know through DM if you run into any problems. They aren’t Sangoma modules, but they’re not much harder to install than anything else in Linux.
Is there any way to fix this flaw without changing the protocol the phones use?
Thanks for the links @cynjut - I’ve got a couple questions if you don’t mind. They’re probably going to be specific to the PBXact 100 appliance/distro I bought/use.
In the dashboard, the GUI reports that it’s running PBXact 184.108.40.206 yet the /usr/src directory has freepbx-220.127.116.11 in it and /usr/src/freepbx is symbolically linked to this directory. Searching online, I found the following page has what seems to be the source code for 18.104.22.168 in it. In order to build the chan_sccp module, should I download/extract the source code that matches what’s reported in the dashboard or use what was installed with the system? (It seems odd to me that updating the system wouldn’t copy the related source code with the update.)
If I install this module, should I be concerned about building/installing/configuring it during the day while calls are being processed or would it be better to work on it after we’re closed?
Are there any special considerations for building/installing/using it on a system with HA active?
Shouldn’t be required. The Asterisk “asterisk-devel” package has everything the module needs to be built. I don’t have the source for FreePBX or Asterisk loaded and I’ve built a half dozen systems in the past year. I even updated the Build instructions to say this. See https://github.com/chan-sccp/chan-sccp/wiki/FreePBX_Installation for more info.
You will probably need to restart asterisk to get the module to catch, but you can use the “module load chan_sccp.so” command to load it “on the fly”. Still, I’d be more confident with a reboot of the server and getting it loaded on the final reboot. Loading the module by hand the first time (to test the module) is a good idea (and I’ve done that a couple of times).
As far as HA is concerned - you’ll need to build it and then install it on both instances. I don’t know of anything that allows for the sharing (etc.) of the module across platforms.
Any idea what’s wrong? Followed the steps on the last page you linked & ./configure reported no errors, but the initial build reports:
<snip many lines> forward_declarations.h:65: note: previous declaration of ‘boolean_t’ was here forward_declarations.h:89: error: redefinition of typedef ‘sk_func’ forward_declarations.h:89: note: previous declaration of ‘sk_func’ was here forward_declarations.h:90: error: redefinition of typedef ‘sccp_sched_cb’ forward_declarations.h:90: note: previous declaration of ‘sccp_sched_cb’ was here cc1: warning: unrecognized command line option "-Wno-format-truncation" make: *** [libsccp_la-sccp_xml.lo] Error 1 make: Leaving directory `/usr/src/chan-sccp/src' make: *** [all-recursive] Error 1 make: Leaving directory `/usr/src/chan-sccp/src' make: *** [all] Error 2 make: Leaving directory `/usr/src/chan-sccp/src' make: *** [all-recursive] Error 1
There’s nothing to indicate what the problem is other than error numbers…
I found that was a problem too. I went into the source files that errored and commented the line that redefines the include with a // like this:
// #include <forward_declarations.h>
Edit the two files that errored. That cleared the duplicate declarations. Sorry - I thought he’d fixed that already.
Thank you for your help getting that error resolved. I had to edit the sccp_webservice.h and sccp_xml.h files, commenting out the include in both of them. After that, it compiled & installed perfectly!
I’m on to the sccp_manager module so that I can configure SCCP extensions in the GUI. I ran the SQL file to add the tables/triggers to the asterisk database, executed the git clone & amportal chown commands - everything was going well, up until I ran the amportal a ma install sccp_manager command… got the following:
# amportal a ma install sccp_manager Please wait... !!!!amportal is depreciated. Please use fwconsole!!!! forwarding all commands to 'fwconsole' <li>Checking for Sccp_manager database tables..</li><li>Checking Asterisk Version : </li><li>Sccp model Compatible code : 0</li><br><font color='red'>Chan Sccp not Found. Install it before continuing !</font>
I thought that perhaps this was due to the chan_sccp module not being loaded in asterisk, so I did as you suggested earlier - connected to asterisk and did a module load chan_sccp.so to load it manually. It came back with an error that chan_skinny was loaded, so I did module unload chan_skinny.so. My hunch is that asterisk is smart enough to automatically unload chan_skinny when I tried loading chan_sccp as this reported that chan_skinny was not loaded. Repeating the module load chan_sccp.so reported that chan_sccp.so was loaded and running, but the above still is the result when I try installing the sccp_manager module.
My hunch is that it’s unable to find the chan_scco.so module because my system is running in HA & it’s not following one of the symbolic links correctly, but this is only a hunch. Have you seen this before or have any ideas on how to circumvent the error?
edit - I’ve also tried updating the command to fwconsole ma install sccp_manager , but get the same message.
Once you get the module loaded, you can use the Module Admin page to enable the module. You should be good to go after that.
I need to get with PhantomVI and have him update his instructions. While ‘amportal’ will work sometimes, it is not a straight one-for-one replacement. Once the files are in the module directory tree, the MA page from the GUI should make the rest of the links work.
Note - you can still use the chan_sccp.so without the manager. The installation documentation should give you everything you need to know to build the base sccp.conf file, which BTW the SCCP Manager will read to populate the database once you get the manager running. Setting up the phones in the files is dead simple and with the SCCP module loaded, you should have SCCP Extension types ready to use - at least, I think that’s correct. If it isn’t, you can create them using the documentation I wrote and hand create the extensions. Use the Bulk Handler for that step if you end up doing that.
The dial string for the phones is SCCP/ext (where ext is the extension number on the Line entry on the phone). Once installed and working, they respond to the normal LOCAL/ext syntax so programs and features will still work reasonably reliably.
I do not have a Module Admin item in my menu… I have ‘Asterisk Modules’, but nothing else related to modules that I’ve been able to find. Could it be that the PBXact distro has this option hidden while FreePBX does not???
Even when using the fwconsole ma install sccp_manager command, it still spits out that chan_sccp isn’t found and to install it, even though it’s installed. I did poke around and saw an install.php file in the sccp_manager directory and found the conditional statement where it tests… I could easily disable the check, but don’t know if this will work or cause other issues down the line.
After I get done fixing a different server whose database decided to get corrupted, I’ll dig into how to make this work through the CLI and begin testing. I’d much rather have a GUI, but will take what I can get at this point.
Thank you again for all your help @cynjut - you’re awesome.
Module Admin is down about four items from the bottom of the same menu as the Asterisk Module manager, which (by the way) you need to use too.
In Asterisk Module manager, you can turn off the chan_skinny.so driver (if it’s enabled) and turn on the chan_sccp.so module in the “turning on” screen.
Once you get into the Module Admin, you need to check the “locally managed” button to make sure the module gets set up.