All phones show as offline; outbound calls work, but inbound calls go straight to voicemail

Over the weekend, I turned off the server and the phones to perform a rack swap. When the phones and server were turned back on, outbound calls can be made, but inbound calls go straight to voicemail. The server is a FreePBX 60 system and the phones are Sangoma 505 and 3 of those have extenders.

The graph on the dashboard shows that all the users are offline, but show as online when they make an outbound call:

UsersOffline

After seeing that, I checked the Chan_PJSip Endpoints section under Reports → Asterisk Info → chan_pjsip Info and confirmed that all the extensions show as unavailable. So since none of the phones in the ring group are available, the external calls go straight to voicemail. Trying to call from one phone to another also goes to that extension’s voicemail.

I’ve tried restarting the phones and the server, nothing changes. There are no new firewall rules since this started and I can ping the phones while logged in via ssh. Checking the asterisk log, the only thing that jumps out at me is this:

[2020-01-13 15:14:57] NOTICE[18819] res_pjsip_exten_state.c: Endpoint ‘117’ state subscription failed: Extension ‘*97’ does not exist in context ‘from-internal’ or has no associated hint
[2020-01-13 15:14:57] NOTICE[18819] res_pjsip_exten_state.c: Endpoint ‘117’ state subscription failed: Extension ‘*88’ does not exist in context ‘from-internal’ or has no associated hint

I get a similar message for each extension, but, I’m not sure if it is relevant.

Those log messages may not be relevant, according to this: Sangoma Phone - PJSIP Registration Issue - #2 by lgaetz

Subscriptions are for BLFs and have nothing to do with registrations.

After leaving my phone off for a while and plugging it back in, these messages show up in the log:

[2020-01-13 15:37:49] VERBOSE[18819] res_pjsip/pjsip_options.c: Contact 117/sip:[email protected]:5060 has been deleted

[2020-01-13 15:37:55] VERBOSE[23893] res_pjsip_registrar.c: Added contact ‘sip:[email protected]:5060’ to AOR ‘117’ with expiration of 900 seconds

[2020-01-13 15:37:56] NOTICE[23893] res_pjsip_exten_state.c: Endpoint ‘117’ state subscription failed: Extension ‘*97’ does not exist in context ‘from-internal’ or has no associated hint

[2020-01-13 15:37:56] NOTICE[23893] res_pjsip_exten_state.c: Endpoint ‘117’ state subscription failed: Extension ‘*88’ does not exist in context ‘from-internal’ or has no associated hint

[2020-01-13 15:37:58] VERBOSE[23893] res_pjsip/pjsip_options.c: Contact 117/sip:[email protected]:5060 is now Unreachable. RTT: 0.000 msec

I checked that the phone has that IP address and am able to ping it from the ssh shell:

PING 10.0.10.21 (10.0.10.21) 56(84) bytes of data.
64 bytes from 10.0.10.21: icmp_seq=1 ttl=63 time=0.588 ms
64 bytes from 10.0.10.21: icmp_seq=2 ttl=63 time=0.807 ms
64 bytes from 10.0.10.21: icmp_seq=3 ttl=63 time=0.968 ms
64 bytes from 10.0.10.21: icmp_seq=4 ttl=63 time=0.562 ms
^C
— 10.0.10.21 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 0.562/0.731/0.968/0.167 ms

Maybe there’s an issue accessing port 5060?

This has also popped up in the dashboard. I didn’t change anything manually there and I have restarted asterisk before and this went away, but now it is back. I’m also not sure if it is relevant.
image

Just after I posted this, I got another message there that Allow Transports Reload was on, but recommended to be off. I turned it off and both of those messages went away, but my phones still aren’t connecting.

It isn’t really the solution I was looking for, but switching the extensions from pjsip to sip seems to solve the “my users aren’t getting calls” problem, but not the “why did this break” problem. Going to switch the phones over for now and I’ll see if I can figure out why pjsip broke. Anyone have any troubleshooting suggestons?

I also use MicroSIP as a softphone and can confirm the same issue occurs: I can make calls from the MicroSIP client, but not to it; it shows as offline.

Under Reports -> Asterisk Info -> Chan_PjSip Info it says No objects found under Chan_PjSip Channel(s) and Chan_PjSip Registrations instead of just giving an empty table with no records like it did on Chan_Sip Info (before moving phones to it) and under IAX Info

image

Anyone know if that’s normal or if that might be a symptom of what’s going on here?

I had similar problem in the past. I fixed mine by setting Allow Transports Reload to “No”

Settings >> Asterisk SIP Settings >> Chan PJSIP Settings >> Allow Transports Reload “No”

It’s likely that Asterisk needs a restart after changing that parameter.

fwconsole restart

I made sure the Allow Transports Reload is set to no and then ran fwconsole restart from the command line, but my pjsip microsip client still doesn’t receive calls. That same Invalid Websocket Transport for Zulu message is also coming up again.

image

Are these transports supposed to be set like this? I haven’t manually changed anything here. I’m not sure why it is suddenly complaining about WS and WSS.

image

Do you think this is related to my pjsip endpoints not functioning correctly?

Can you describe your setup, network, etc?

Here’s a diagram I used during troubleshooting while I setup these phones about a year ago:

It took some additional configuration to get it to work with AT&T’s system as described here: ATT IP Flex VoIP Nearly Working - #11 by KELSIT

These phones have been using chan_pjsip for nearly a year now and since then I’ve ran updates at least once a month. They started to have this problem after I ran updates, shut everything down, swapped out the server rack, and turned everything back on. I’ve confirmed that the server is connected to the correct interfaces and IP address settings are the same.

The phones are functioning correctly again after converting the extensions from chan_pjsip to chan_sip, but that doesn’t explain why they broke in the first place. I’ve also been told (and have confirmed) that the parking module no longer tells what slot the call was parked in, despite it showing in the logs. I’m not sure if that’s related, but I’d rather fix the pjsip issue first.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.