I would love to see a new type of codec negotiation in asterisk for SDP based media negotioation(well, for SIP)
UA1 ----------------- channel A --------------------- Channel B ----------------UA2
U1 sends INVITE to CHANNEL A (no bridged channel)
CHANNEL A saves SDP (if directmedia=no rewrite contact IP and ports in SDP)
outgoing channel will be created
channel B takes SDP from CHANNEL A to build outgoing SDP to UA2 (if directmedia=no rewrite contact IP and ports in SDP)
UA2 sends 200 OK to CHANNEL B
CHANNEL B saves SDP (if directmedia=no rewrite contact IP and ports in SDP)
CHANNEL A uses SDP from CHANNEL B to create his 200 OK for UA1 (if directmedia=no rewrite contact IP and ports in SDP)
(Every Channel has to make sure that it rewrites SDP if directmedia=no.
the RTP ans RTCP could be forwarded per iptables for better performance.)
If neither of both channels saves SDP’s (i.e. if it isn’t a SIP Channel or this behaviour is deactivated per configuration) then asterisk should process as usual.
-All codecs would be supported.
-Asterisk will not transcode if both channels uses this option
-This isn’t restricted to SIP. In theory every SDP based protocol can use this.
Would something like this be possible ? What do you think ? Does anybody need this ?
ciao t0n1