Hello,
I'm using kamailio 3.0 with mediaproxy and I want to cancel calls if I have no mediaproxy relay connected to my mediaproxy dispatcher.
In my request route I'm checking if "use_media_proxy()" is returning me a positive result and it's working fine :
use_media_proxy(); if($rc < 0) { sl_send_reply("480","Temporarily Unavailable"); exit; }
But I'm also want check in my onreply_route If I still have an active relay because I need to rewrite the sdp in the 200/OK reply. My problem is that I don't know how to end the transaction, I have tried :
if (is_method("INVITE") && status == "200") { #!ifdef WITH_MEDIA_PROXY use_media_proxy(); if($rc < 0) { xlog("L_ERR", "invite reply error $rc \n"); dlg_bye("all"); } #!endif }
and also :
if (is_method("INVITE") && status == "200") { #!ifdef WITH_MEDIA_PROXY use_media_proxy(); if($rc < 0) { xlog("L_ERR", "invite reply error $rc \n"); drop(); } #!endif }
In both case I'm seeing in my log file that use_media_proxy() returned me -1, but the reply is routed to the caller ...
Any idea on how I can cancel my call in the onreply_route ? Also, I don't know if it's a good thing to make a second call to "use_media_proxy" in the onreply_route, mediaproxy module couldn't reply me with a different relay address if I have multiple mediaproxy relay?
Regards,