So, if you make an outbound call, the system works as long as the call comes in within 30 seconds? Audio all works, call terminates in the PBX and is connected to a local phone or service?
I’m still thinking it’s a problem with your router not passing the traffic from your external address to the PBX because, well, that’s almost always what causes this. Do you have all of the SIP addresses set correctly?
If you look back through the forum, you’ll find lots of cases where everything works for about 30 seconds, and the problems are almost always a problem at the router.
This is almost always an indication that the NAT session is expiring. Once you make an outgoing call, a new session is established, which allows incoming calls once again, that again fail after the session is expired and the cycle repeats.
… and if the NAT session is closing and the system stops working after that, the firewall is not allowing the traffic through the router.
Have you got SIP-ALG or some other “SIP Helper” turned on? While this usually results in a different set of headaches, it might be masking the problem you are seeing.
To be clear: incoming calls not making it to the server (which you can check in the /var/log/asterisk/full log) is a firewall problem. While you vehemently argue that “your stuff must be right”, the fact that you are still having problems would indicate that the problem is either in your network NAT-Firewall or in your Integrated Firewall (which you think is turned off).
I’m don’t mean to sound so strident, but this is an extremely common problem and the solution is one of the three things we’ve mentioned a couple of times each now.