[OpenSIPS-Users] Calling engage_media_proxy per branch

Thomas Gelf thomas at gelf.net
Sat May 30 14:50:21 CEST 2009


Dan Pascu wrote:
> On Saturday 30 May 2009, Thomas Gelf wrote:
>>> engage_media_proxy doesn't terminate the media session until the dialog is 
>>> destroyed.
>> Hmmm... but it issues update commands (= use_media_proxy?) at each
>> Re-INVITE, does it? 
> 
> It calls the equivalent of use_media_proxy for the initial INVITE, on any 
> positive reply it gets (1xx and 2xx) and on the ACK, but only if there is a 
> SDP body. Then it calls the equivalent of use_media_proxy on every request, 
> reply, ACK within the dialog in the same manner. It calls the equivalent of 
> end_media_session when the dialog is terminated (either explicitly or expires)

Thank you for clarification! Now I'm pretty sure to be able to handle
Mediaproxy sessions "manually" the same way as engage_media_proxy does,
without any impact and strange issues. Just with the difference that
I'll try to do it branch-aware. And hoping that one far day once Bogdan
added more branch-awareness to core and someone grants you enough spare
time this work will automagically being done by engage_media_proxy ;-)

>> And probably the dispatcher ignores them as long as there is no change to 
>> active streams, correct? 
> 
> The relay will check the streams, the dispatcher has no idea what the message 
> contains, it only knows to which relay to forward it. In addition, even if the 
> streams do not change, the relay still has to return the IP/ports to allow the 
> SDP to be modified, otherwise it won't work. So you have to do it on reINVITES 
> anyway, even if they carry the same information.

Once again: thank you! Slowly a picture is growing / being finished in
my head, allowing me to better understand the involved components. And:
I could also have discovered this by myself - as media-dispatcher debug
lines in the log are confirming what you wrote.

>> My intention was to make suggestions to improve the engage-function,
>> as I've been really excited once I discovered it. Later I realized,
>> that there is not everything as smooth as suggested. At least for me -
>> but I thinnk others will face similar challenges.
> 
> I think you misread my point. I'm not opposed to such enhancements. It's just 
> that in my use cases I have no use for them, so I'm not motivated to spend 
> time to implement them. Patches are welcome though ;) (however, the changes 
> need to be done in dialog and tm not in mediaproxy, so it's a larger issue to 
> discuss here than enabling a mediaproxy function to work in a branch route).

See above ;-) In the meantime thanks to your precise answers I'll manage
it to get the whole thing doing it's job the way I like it. And I'm not
giving up the wishful thinking of Bogdan enhancing the core, preparing
what you would need to enhance your module - one far day.

Independently from that: thank you for your great work - and for the
time you dedicated to answer my questions, teaching me some new detail
I wasn't aware of!

Best regards,
Thomas Gelf




More information about the Users mailing list