I have two peers on public IPs with properly configured firewalls. All direct media settings (directmedia=yes, directrtpsetup=yes, or both) work same way - by re-INVITE’ing both parties after OK with SDP from B party. It works, audio is OK, but why directrtpsetup=yes doesn’t work as it should? Asterisk 11.9.0
Please explain how it should work and how it actually works, with logs that demonstrate the latter.
Note I’m not aware that directrtpsetup has ever been removed from experimental status, but directmedia certainly works.
Typical reasons for not getting direct media are codec conflicts and and enabling features that require Asterisk to monitor the call or detect DTMF digits, so you need to provide sip.conf features.conf and extensions.conf.
I’ve expected that with directrtpsetup=yes initial INVITE will contain other peer IP for media and vice versa.
sip.conf:
[peer1]
type=peer
host=1.2.3.4
insecure=invite,port
qualify=yes
context=from_peer1
disallow=all
allow=alaw
allow=g729
nat=no
directmedia=yes
directrtpsetup=yes
t38pt_udptl=yes
second peer settings are same (excluding peer name, IP and context)
And here’s Wireshark screenshot with re-INVITE: