I have an incoming number that when called uses a misc destination to call an extension number I have created in custom dialplan code. The issue is after a while when calling the incoming number the pbxact will no longer ring. The phone call will just act “dead” and never ring the pbxact. I have tested calling the number a few times, I have also tried not calling it - the result is the same that it seems to just randomly break and can no longer be called. Since the pbx never rings the Asterisk Log Files are never updated or show any sort of error which makes this a bit more difficult to debug. My initial thought is this might be a firewall issue but if you make the pbxact reload settings by hitting “Apply Config” the call will immediately start working again. Does anyone have any thoughts on why this might be happening or any additional debugging ideas?
The most common cause of your symptoms are a SIP trunk that registers to the provider, where the PBX is behind a NAT. The NAT association timeout is shorter than the registration expiry time, so after it times out incoming INVITES are not passed to the PBX. When you Apply Config, Asterisk immediately re-registers which resets the NAT timeout.
To confirm that this is your trouble, after a failure make an outgoing call on the same trunk (it need not be answered), which will also reset the NAT timeout. Then immediately (within 30 seconds) try an incoming call, which should now work.
To fix the problem, try one or more of:
- Set qualify for the trunk.
- Set a short registration expiry.
- Increase the NAT timeout.
- In your firewall, allow SIP packets from the provider’s IPs to your PBX.
If you still have trouble, please post:
ISP? Modem make/model? Router/firewall make/model? SIP provider? Trunk type?
I made an outbound call and like you suggested it I was able to call the DID again. I set qualify on the trunk and it’s been working perfectly now. Thanks a ton Stewart1!
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.