We make extensive use of the Paging Pro module for overhead paging; our speakers are Axis devices that accept SIP calls. It was all working as of when we left for holiday break on December 21; today it isn’t.
A bit about our setup:
There are a number of different paging groups, corresponding to different zones
Every group is set “Force Valet: Yes” (because there would be echo problems if not)
I’m certain that the Axis speakers are answering calls and playing audio correctly, because we also have custom configuration (extensions_custom.conf) that cause pre-recorded messages to be played. Those are still working perfectly. It’s just manual voice pages via Paging Pro that are not.
The end-user reaches the recording prompt (via an IVR), they record their message, and hang up. Then the system is supposed to play that message to the devices in the page group, but that doesn’t seem to happen. I’ve verified that the recording is being saved to disk (“/var/spool/asterisk/tmp/PAGE_RECORDING-4992-1735846408530.sln”, for example), and that there is indeed audio in the file.
I notice that the log contains “pbx.c: Spawn extension (pagingpro-play-message, s, 7) exited non-zero on ‘Local/4992@ext-paging-00000069;1’”, which I imagine is part of the problem. I… just don’t know how to troubleshoot this any farther.
Does anyone have any suggestions? Thanks in advance.
Also, I tried going to the Sangoma portal to open a ticket since this is a commercial module, but my account seems not to be set up right, and I don’t have access to any deployments. And it says that I’m a reseller (and I’m not, though I was previously considering it). So… that’s fun.
Are you saying that you think this is a bug in FreePBX? I could create a ticket there, but I’m not sure that’s the most appropriate place, given that this used to work.
I don’t see any attempts to dial your endpoint. This log entry exists because a lead channel was created to enter the confbridge to playback the recording. When that local channel for the lead hangs up/exits that output is generated.
Nothing in your log shows the page group member being tried. If the pro version is some what the same as the standard version (the pro AGI script is encoded) then the AGI script will looked for registrations and device statuses. Depending on the type of page being done, it can ignore devices that are in certain states.
When I run “pjsip show endpoint X” on an endpoint that should receive the call, near the top I see “Not in use”, and on the contact line (there’s only ever one for these devices), I see “Avail”. So… presumably the device should be able to answer the call, as far as Asterisk is concerned?
Also, I am able to manually call the endpoint (and it works), and I’m able to use non-pagepro functionality to play back recordings to the endpoint. Are there other things I should test in that regard?
I did manage to get a ticket open with Sangoma support yesterday, and I sent them a packet capture this morning, per their request.
The problem for me is that the pro version of the AGI script is obfuscated. You log shows you calling in to the page group, the dynamic confbridge being created, the lead channel created and put into the confbridge, your announcement plays back, the lead channel leaves the confbridge and the confbridge is destroyed.
The issue I’m seeing here is that there is no indication your endpoint was Dial()'d let alone added to the confbridge. I’m not sure what a packet capture is going to do in this case.