With your patch there is a small bug when re-constructing the multipart payload:
[...] --Genaker-boundary Content-Type: application/sdp v=0 [...] a=fmtp:TBCP queuing=0; tb_priority=1; timestamp=0; tb_granted=0; poc_sess_priority=1; poc_lock=0 *a=nortpproxy:yes--Genaker-boundary* Content-Type: application/resource-lists+xml <?xml version="1.0" encoding="UTF-8"?> <resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> [...] --Genaker-boundary-- Observe the line "a=nortpproxy:yes--Genaker-boundary" : there are CRLFs missing. And there two CRLF before "a=nortpproxy:yes". I guess you're adding the CRLF in the incorrect order. We're progressing ;-) -pascal On Mon, Jun 22, 2009 at 11:36 AM, Daniel-Constantin Mierla < mico...@gmail.com> wrote: > Hello Pascal, > > I have just committed support for multipart bodies in sip router, if works > then I will backport to 1.5. > > > http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=1f41271e1c1b879217835b8b3fdbdc2680138f25 > > > Can you test it? Unfortunately I cannot do it these days properly due to > traveling. Patch should work pretty straightforward with 1.5 though, if you > want to test it directly there. > > Cheers, > Daniel > > On 06/22/2009 11:30 AM, Pascal Maugeri wrote: > >> I tried to install mediaproxy but it looks tricky to install (many >> dependencies, including kernel specific configurations) :-( >> and I would like to stick to rtpproxy for performance reason. >> >> Do you believe the same workaround using textops/filter_body can be used >> using rtpproxy ? I think yes as these are two different things as said Juha. >> >> Regards, >> Pascal >> >> >> On Fri, Jun 19, 2009 at 9:26 PM, Pascal Maugeri >> <pascal.maug...@gmail.com<mailto: >> pascal.maug...@gmail.com>> wrote: >> >> >> >> On Fri, Jun 19, 2009 at 9:13 PM, Juha Heinanen <j...@tutpro.com >> <mailto:j...@tutpro.com>> wrote: >> >> Pascal Maugeri writes: >> >> > So if I understand well (please correct me if I'm wrong) >> the "plan" is: >> > >> > 1º) I install MediaProxy and use Kamailio MEDIAPROXY module >> instead of >> > rtpproxy/NATHelper >> > >> > 2º) filter the app/sdp part with >> > >> > if (has_body("multipart/mixed")) { >> > if (filter_body("application/sdp") { >> > remove_hf("Content-Type"); >> > >> > append_hf("Content-Type: application/sdp\r\n"); >> > } else { >> > >> > xlog("Body part application/sdp not found\n"); >> > } >> > } >> >> you don't need to call filter_body if you use mediaproxy. >> >> > 3º) then engage the media proxy with >> > >> > if (method==INVITE && !has_totag()) { >> > >> > # We can also use a specific media relay if we need to >> > #$avp(s:media_relay) = "1.2.3.4"; >> > engage_media_proxy(); >> > } >> >> i have never used engage_media_proxy() functions, because it >> makes some >> assumptions that are not generally true. i use >> use_media_proxy() instead. >> >> > 4º) finally put the body part(s) that have been removed in >> 1º) and relay the >> > INVITE to my next hop. >> > I believe I can save the body part(s) in 1º) and put >> them back using >> > set_body(txt, content_type). >> >> you don't need to do anything like that if you use >> use_media_proxy() >> function, because it does not remove anything. >> >> >> Thanks Juha ! I can't wait for monday to test it :-) >> >> Have a nice week-end >> Pascal >> >> >> >> -- juha >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Kamailio (OpenSER) - Users mailing list >> Users@lists.kamailio.org >> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users >> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users >> > > -- > Daniel-Constantin Mierla > http://www.asipto.com/ > >
_______________________________________________ Kamailio (OpenSER) - Users mailing list Users@lists.kamailio.org http://lists.kamailio.org/cgi-bin/mailman/listinfo/users http://lists.openser-project.org/cgi-bin/mailman/listinfo/users