All Circuits are Busy

Hello,

I’m running FreePBX 15.0.16.77 with a Yealink phone connected. Basically everything works fine, but sometimes when I try to make a call I only get “All Circuits are Busy”. If I simply wait for some minutes and try it again, it works again as usual. When the problem occurs, there are definitely no other calls in parallel which could make all lines busy.

Do you have any idea what the problem could be or where I could start with the analysis?

The short log from the call is available here:
https://pastebin.freepbx.org/view/e635f128

In the log you can find the following line which is the only ERROR which can be found in all my logs:
res_pjsip_header_funcs.c: No headers had been previously added to this session.

What does this error tell me? Could this be the root cause?

Thanks,

Thomas

[2020-11-18 17:20:53] VERBOSE[7064][C-00000012] app_dial.c: Called PJSIP/01******12@T-Online_07******1
[2020-11-18 17:20:53] VERBOSE[7064][C-00000012] app_dial.c: Everyone is busy/congested at this time (1:0/0/1)
[2020-11-18 17:20:53] VERBOSE[7064][C-00000012] pbx.c: Executing [s@macro-dialout-trunk:35] NoOp("PJSIP/2001-00000022", "Dial failed for some reason with DIALSTATUS = CHANUNAVAIL and HANGUPCAUSE = 21") in new stack

So T-Online rejected the call. We need a SIP trace for more info.
At the Asterisk command prompt, type
pjsip set logger on
wait for a failure (or make some test calls in an attempt to provoke one) and paste a new log.
With luck there will be a Warning header or other clue as to why the call was rejected.
Possibly, there was something wrong with the outbound INVITE e.g. improperly formatted caller ID, though it is strange that simply waiting would correct that.
It’s also possible that because of a codec or similar issue, the call would fail or not, depending on which upstream carrier the provider chose for the call.

1 Like

I have activated the pjsip logger. The results can be found in the following log. In this log I catched exactly a moment where a call was working successfully (at the time 9:30), then at 9:41 and 9:42 there where two failed calls with “All circuits are busy” and on 9:44 there is a call which worked again successfully). Between those calls nothing was changed on the FreePBX server.

In the log I can see some “403 Forbidden” errors. Any ideas why they occur?

The log:
https://pastebin.freepbx.org/view/7775f212

In case you need some more log data, here is an additional log file which was logged over around 24 hours (so it is a bit huge):
https://pastebin.freepbx.org/view/7a0fa3a2

Thanks a lot in advance for further comments/ideas on the problem,

Thomas

For example, line 313:
Via: SIP/2.0/UDP ***.***.**.72:5060;received=217.234.54.93;rport=23266;branch=z9hG4bKPjefa82b23-52ce-4d0f-a4a1-f0482d5352ca
It appears that your router/firewall is rewriting the source port and when this changed the 403 occurred. I am guessing that if it doesn’t match your registration, the call is rejected.

If the router has a way to disable source port rewriting or enable ‘consistent NAT’, turn that on. Also, if it has a SIP ALG, try turning that off. If you’re not sure, post router/firewall make and model.

1 Like

I updated my router config to use static port mappings for FreePBX. Since this change I don’t see the “403 Forbidden” error anymore and the generated logs are less.

I will monitor the next days if the calls will now work without problems.

Thanks a lot so far for your help @Stewart1

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