Hello again,

answering to myself, the solution is not really intuitive - instead of using |rtpengine_answer()| directly, one has to use |rtpengine_offer()| with a |force-answer| flag. Doing so makes the |rtpengine| module set the |command| value to |answer| when sending the request via the control interface:

|rtpengine_offer("force-answer to-tag=$sig_local_totag", , $var(new_sdp_answer), $var(orig_sdp_answer));|
|append_to_reply("Contact: $var(contact)\r\n");
append_to_reply("Content-Type: application/sdp\r\n");
t_reply_with_body(200,"OK",$var(||new_sdp_answer||));
exit;|

Pavel

Dne 08.03.2026 v 14:01 Pavel Sindelka napsal(a):

Hello,

https://opensips.org/docs/modules/3.6.x/rtpengine.html#func_rtpengine_answer doesn't mention any restrictions on use of this function, but in reality opensips does not send anything to rtpengine if |rtpengine_answer()| is called on a request route handling the INVITE. Nothing in the log, no UDP exchange on the rtpengine control port, regardless whether |rtpengine_offer()| is called earlier on that route or not. If it is, the information exchange with rtpengine related to |rtpengine_offer()| can be seen both in the log and on the rtpengine control port.

The intended overall workflow is to call |rtpengine_offer()|, handle the mangled SDP offer internally and generate the SDP answer, and get it "mangled back" using |rtpengine_answer()| before using it as the body of a locally generated 200 response to the INVITE. Could it be that as of now, |rtpengine_manage()| not only "combines the functionality ... based on message type and method ..." but the three individual methods have actually become just aliases of |rtpengine_manage()| for backward compatibility? Or is the actual execution of |rtpengine_answer()| suppressed thanks to some undocumented plausibility check?

Is there any way to enforce execution of |rtpengine_answer()| on a request route handling the INVITE?

Thank you for advice.

Pavel


_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to