Ok, so my inbound calls are working fine on the audio side… but when I call out… the person can hear me but I can’t hear them… so no inbound audio on an outbound call until I put them on hold and take them off… then the audio works fine for some reason…
On this particular Grandstream phone I have other accounts registered to other servers and I don’t have the same issue… Looked at the firewall settings and the ports are indeed open on this particular server… The audio works fine on inbound calls after all…
Don’t know what else to look at… any help greatly appreciated.
If this is a new installation, you should be using chan_pjsip, not chan_sip.
You haven’t identified the version.
There is no documented nat=auto option.
canreinvite has been renamed, although I think the obsolete name still works.
canreinvite and directmedia are the same, so it does not make sense to include both.
Best practice is to use type=peer for everything unless multiple peers share an IP address.
Best practice is not to use insecure=port unless using TCP, or you actually have problems with varying remote port numbers.
What else to look at is the sip protocol traces, in particular the SDP, and the RTP trace, to see the addresses actually used. Also, I seem to remember this complaint coming up before, so googling the forum would be a good idea.
No inbound audio until i put the call on hold and then pick it back up… then the audio is fine both ways… Incoming calls don’t have this issue at all… really can’t make heads or tails or it…
Because this is a NAT issue. I take it the phones are remote to the PBX or this is happening with calls over the trunks from the PSTN. The SDP of the initial INVITE/200 OK probably has internal IP details in it and when the call is put on hold and taken off a hold it forces new INVITES/200 OK along with SDP which at this point now has the right details in it.
So are all the phones remote and this is happening with all calls? Or are the phones local, Asterisk is behind NAT and this happens with calls over the PSTN?
Since you’re using Chan_SIP you would set nat=force_rport,comedia on the peers and that will tell Asterisk the peer is behind NAT. Do that with a few devices and the trunk peer and see what happens.