Everyone is busy/congested at this time

Hello All,
So I’m using FreePBX 14.0.13.23. I’ve had an issue going on for some time now, but cant figure out why. I can receive calls made to my system by a cellphone. As far as I can tell I’m having trouble with landlines and cable provided home type phones.

Calls from cellphones go directly to the IVR as calls should. Those from landlines get nothing. No ring, no ivr, just blankness.

Using SSH with command rasterisk -rvv I can see both types of calls come into the system. Cellphone calls look like
Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Spawn extension (app-announcement-1, s, 5) exited non-zero on ‘SIP/Flowroute-00000003’

But landline calls look like
Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] ERROR[10291][C-00000005]: res_pjsip_header_funcs.c:461 func_read_header: This function requires a PJSIP channel.
[2020-01-14 19:33:19] WARNING[10291][C-00000005]: app_dial.c:2525 dial_exec_full: Unable to create channel of type ‘SIP’ (cause 20 - Subscriber absent)

Everyone is busy/congested at this time (1:0/0/1)

This is consistent.

Any and all help is welcome and encouraged and will be greatly appreciated!

Thank You,
John

So a while back I got rid of our static ip and made the change to public ip in astrisk sip settings. Just out of curiosity I changed back to static ip. All inbound calls are working now. If I change back to public the landline calls stop working. Change again to static ip and all work.

What’s going on here?

Thanks again,
John

I cannot think of any reason why an incoming call from a mobile phone would be treated any differently from an incoming call from a landline phone.

Have you tried Chan_SIP?

On older FreePBX versions, Asterisk SIP Settings has an IP Configuration setting with “Public IP” as one of the options. This setting is used when the Asterisk server NIC has a public IP (the ifconfig command would show a public IPv4 address). Selecting this choice when Asterisk is behind a NAT router is simply wrong. IMO it would only be of academic interest to determine why it resulted in your particular symptoms.

As long as I’ve used freepbx I’ve used chan sip. But since those errors said require pjsip channel, I switched to pjsip and had the same result. whats even stranger yet is that switching from public ip to static ip seems to have resolved the issue. at least thus far.

When communicating with endpoints not on its local network, Asterisk emulates being on a public IP by substituting the (router’s) public IP address in SIP and SDP packets.

Options for IP Configuration:
Public IP: Asterisk is not behind a NAT.

Static IP: Asterisk is behind a NAT that has a static public IP on its WAN interface. This address is manually configured by the administrator in the External IP field.

Dynamic IP: Asterisk is behind a NAT that has a dynamic public IP on its WAN interface. The administrator sets up a dynamic DNS name to track the address changes and configures the name in the Dynamic Host field.

1 Like

I agree with Stewart. All of this used to be explained in the Wiki page that I wrote here:

https://wiki.freepbx.org/display/F2/Asterisk+SIP+Settings

You can still find the information here, however, but for some reason, it now says that James Finstrom wrote it:

https://wiki.freepbx.org/display/FPG/Old+SIP+Settings

You can get a general description of what each option does by placing your mouse on the question mark to the right of the option, and a tooltip will appear that explains the option.

There are several options that you may wish to consider changing from the default:

NAT: This setting is used to indicate whether the other systems you connect with are behind a router that provides Network Address Translation (“NAT”). If is it set to “Yes,” Asterisk will ignore the from address specified by the remote system and instead send response packets to the address that the packets actually came from. In most cases, it is safe to set this to “Yes.”

This setting is overriden on a per extension basis using the NAT field (which defaults to “No” for extensions) and can be overriden on a per trunk basis by including “nat=” in the Trunks’ PEER details. Contrary to popular belief, this setting is NOT used to indicate whether your system is behind a NAT.

IP Configuration: This field is used to tell Asterisk whether your PBX has public IP or is behind a NAT router.

If your system has its own public IP address, select “Public IP.”

If your system is behind a router that provides “NAT,” and your router has a static (non-changing) IP address assigned by your ISP, then select “Static IP.” Then fill-in the “External IP” field with your Static IP address and the Local Networks field with the IP/Subnet of all of your internal networks.

If your system is behind a router that provides “NAT,” and your router has a dynamic (changing) IP address, and you have signed up for a dynamic host service that allow you to have a unchanging domain name (DynDNS, afraid.org, or noip), then click “Dynamic IP.” Then fill-in the “Dynamic Host” field with your domain name and the Local Networks field with the IP/Subnet of all of your internal networks.

If you have more than one internal IP range/subnet, click “Add Local Network Field” at the bottom. This field is commonly used when you have a VPN that connects two subnets together.

Setting this field is critical to the proper operation of your system. When Asterisk sends out a call, it needs to supply a “From” address so that the remote system knows how to respond. If Asterisk is contacting a device that is on your local network, like another phone, Asterisk needs to supply it’s internal, local IP address as the from header portion of the messsages. On the other hand, if Asterisk is attempting to reach a remote system over the internet, Asterisk needs to supply the remote system with your Public IP address in the From portion of the messages. If Asterisk sends a message out over the internet and uses your local IP address as the from address, the remote system may not be able to respond to your requests.

In many cases, a remote system on the internet may have it’s own “NAT” setting (see above) set to “Yes.” If that’s the case, it will ignore the from portion of your messages and simply response to the place where the messages came from. This may give you the belief that the IP Configuration is set correctly, because some or most of your calls will appear to work. However, if these settings are wrong, you can still encounter trouble, particularly when transferring or forwarding calls, and you may experience issues with one-way audio.

For the small office/home office user, the most common configuration is:

IP Configuration: Dynamic IP

Dynamic Host: (Your Domain Name from DynDNS, Afraid, or NOIP)

2 Likes

Thank you all very much. I’ll be setting up the dynamic dns soon.

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