Hi Greensha,
For starters, you may have to run the usecallmanger patch for that, see:
Dialplan Extensions
However, here’s what I have found for paging info for FreePBX and these phones using chan_pjsip. Good luck!
For starters:
Paging works perfectly on my employer’s system with the 88xx phones - using the actual Cisco UCM version 10.5 code and the free “up to 50 devices per paging group” module that Cisco briefly had available in the10.x era (it’s a 3rd party commercial module that handed out a “teaser” free module then withdrew it once they realized it was useful without having to pay for the commercial version, lol)
However, it REQUIRES multicasting to work on the network. The Enterprise Cisco phone firmware does not seem to support Unicast paging - which I’m not 100% sure about since to me, unicast paging should work basically like Intercoming a bunch of phones - and intercoming does work on these phones. Anyway, wonder of wonders (naturally!) we have a Cisco Catalyst 2xxx and 3xxx switch fabric - and Cisco has multicasting disabled on that switch line, (at least, for routing), you have to buy a license for at least 1 of the switches in the fabric. I was able to find a used Catalyst with that license on it for cheap so after crossing my fingers and swapping the switch in, we got it running with the UCM. So I know for sure, that Multicast paging does work with the Enterprise firmware with the UCM. The next step is getting it working with Asterisk.
So first, you need to make sure that whatever switch you are using to plug in your phones that it supports multicasting. When I researched this a few years ago, it appeared that ONLY the Cisco Catalyst line was like this - all other enterprise switches I looked at just automatically included multicasting support. Only Ci$co would have thought to charge extra for what everyone else includes, naturally. Anyway, that’s step #1 (Let me know if you are running Catalysts and I’ll post configs on those)
Now, looking at FreePBX and Asterisk for Multicast Paging - step #2:
I can’t find any “official” FreePBX documentation for paging but I did find a few posts on it, that explain the difference between unicast paging and multicast paging:
Enable Paging on Grandstream GXP2160 with FREEPBX - Collaboration - Spiceworks Community
Multicast Paging Woes : r/freepbx
These strongly hint that Multicast paging does work in Asterisk - if it’s properly configured. (I DON’T know if the Grandstream phones only support Multicast, Unicast, or both kinds of paging nor what type you are using) The FreePBX interface apparently does not have a lot of configuration for unicast or multicast paging, so very likely, to get either of them to work with the Cisco phones you will have to go direct to the configuration files in Asterisk and modify them. FreePBX contains callouts for special config files that the GUI does not mess with, that are processed both prior and after the GUI-generated configuration files are processed by Asterisk. You may have to do what configuration you can do in the FreePBX GUI, view the result, then add in what the GUI does not supply.
I did run across an interesting source here for FreePBX:
GitHub - FreePBX/paging: Module of FreePBX (Paging) :: Allows creation of paging groups to make announcements using the speaker built into most SIP phones. Also creates an Intercom feature code that can be used as a prefix to talk directly to one person, as well as optional feature codes to block/allow intercom calls to all users as well as blocking specific users or only allowing specific users.
This is old, and I don’t know if it got folded into the main FreePBX distro, or whether it’s multicast or unicast paging.
So that means going to the Asterisk documentation and looking up Multicast paging. And this is what I found.
Multicast paging apparently first got added to Asterisk back in the 1.8 days per the following:
Asterisk Paging and Intercom System - All in One
Asterisk MulticastRTP channels - VoIP-Info
Asterisk cmd Page - VoIP-Info
It appears that originally this was named chan_multicast. There’s a vestige of that name in an early, now obsolete, Asterisk fork:
asterisk-opus/channels/chan_multicast_rtp.c at master · rillian/asterisk-opus · GitHub
There’s also mention in an early code review that apparently added unicast paging to chan_multicast here:
[asterisk-dev] [Code Review] 3981: chan_rtp: Add unicast RTP support to chan_multicast_rtp.
At some point in time, though, it appears chan_multicast got folded into chan_rtp, as it’s mentioned here:
Overview - Asterisk Documentation
Current RTP state of Asterisk - Asterisk Documentation
asterisk/res/res_rtp_multicast.c at master · asterisk/asterisk · GitHub
It SEEMS to still be actively developed, here’s a recent patch for example:
chan_rtp.c: MulticastRTP missing refcount without codec option · asterisk/asterisk@5216a11 · GitHub
I’m assuming that nowadays, whether or not a phone is setup for multicast paging or unicast paging is under the control of the FreePBX endpoint manager, according to the model of phone used. You didn’t say if you used Endpointmanager to provision your Grandstream phones. And, when a phone is provisioned for it, it Just Works with the FreePBX paging - meaning, the FreePBX end user really doesn’t need to understand anything about what’s going on under the hood with paging in FreePBX - it Just Works.
But with the Cisco phones running Enterprise firmware, well you DO need to know what’s going on under the hood - there’s an interesting and possibly useful explanation of this here:
Overhead and “Underchin” Paging (a.k.a. Public Address)
another example here:
Asterisk - Conferencing MulticastRTP and SIP channel together AFTER commands on run on the SIP channel
That talks a lot about the configuration needed for phones other than Cisco - one of those is the Linksys SPA phone - and I know that the SPA phones were used as the reference phones when Cisco was originally developing the 3PCC firmware for the Cisco phones. So, it may be that for the Cisco 8851 to Just Work with FreePBX paging, like your Grandstream, that you might have to buy the MPP firmware license, replace the Enterprise firmware on the phone with 3PCC, and then use the webinterface on the 3PCC firmware on the phone to set up paging outside of usecallmanager patch. Here’s a mention of setting auto-answer on the 79xx series:
Cisco 7940-7960 auto-answer config - VoIP-Info
Unfortunately, this requires the ability to telnet into the phone - which Cisco removed in the 7941 and later phones. But at least, it does show that “back in the day” someone DID do it successfully.
Hopefully there’s enough here to piece together what’s needed to get multicast paging working with these phones. I personally have NOT setup paging on my usecallmanager patched FreePBX 17 system - but if you want to post what you did in FreePBX to get your Grandstream phones working in a paging group, I’ll try duplicating it on my system and add in the XML configs mentioned on the usecallmanager patch website, and see if it works.