[OpenSIPS-Users] rtp_relay_engage() Handling

Răzvan Crainea razvan at opensips.org
Wed Oct 2 06:37:30 UTC 2024


Hi, Aron!

This might fix your use case and drop/reject the request. However, 
others might one to continue the processing and send it further - the 
challenge here is to make the behavior more flexible, ideally trigger a 
route in the script that can be used to decide what to do next - for 
example choose a new RTPProxy/RTPengine set, decline the request, or 
engage a different engine.
Also, to be consistent, what shall be done with the replies, in case the 
server does not respond, or responds with an error?
These are the question I currently have in mind, and I would like to 
brainstorm their solutions.

Best regards,
Razvan

On 10/2/24 4:12 AM, Podrigal, Aron wrote:
> I was thinking of maybe implementing a way that a callback in 
> function can set a flag
> 
> msg->msg_flags |= FL_TM_CB_ERROR;
> 
> 
> 
> // t_fwd.c
> 
> /* run the specific callbacks for this transaction */
> run_trans_callbacks( TMCB_REQUEST_FWDED, t, request,0,
>         -request->REQ_METHOD);
> _tm_branch_index =0;
> 
> if (request->msg_flags & FL_TM_CB_ERROR) {
>      return -1;
> }
> 
> // t_reply.c
> 
> if (has_tran_tmcbs(t,TMCB_RESPONSE_FWDED) ) {
>      run_trans_callbacks( TMCB_RESPONSE_FWDED, t, t->uas.request,
>         relayed_msg, msg_status );
> }
> 
> if (relayed_msg->msg_flags & FL_TM_CB_ERROR) {
>      goto error02;
> }
> 
> 
> 
> On Tue, Oct 1, 2024 at 3:47 AM Răzvan Crainea <razvan at opensips.org 
> <mailto:razvan at opensips.org>> wrote:
> 
>     Hi, Aron!
> 
>     As Bogdan intuited, there is no way of rejecting the relay if RTPEngine
>     did not succeed. Please open a ticket on this, so we can do some
>     brainstorming the best way to tackle this.
> 
>     Best regards,
>     Răzvan
> 
>     On 9/23/24 9:41 AM, Bogdan-Andrei Iancu wrote:
>      > Hi Aron,
>      >
>      > AFAIK, no, but I will let Razvan to update here next week - he knows
>      > better. Again, small chances to be able to stop (as everything is
>     done
>      > via callbacks), but maybe to brain storm for some ideas.
>      >
>      > Regards,
>      >
>      > Bogdan-Andrei Iancu
>      >
>      > OpenSIPS Founder and Developer
>      > https://www.opensips-solutions.com
>     <https://www.opensips-solutions.com>
>      > https://www.siphub.com <https://www.siphub.com>
>      >
>      > On 18.09.2024 04:21, Podrigal, Aron wrote:
>      >> Hi All,
>      >>
>      >> I am trying to use rtp_relay_engage(). However, what happens
>     when / if
>      >> there was a failure, since the internal method being used is by
>      >> hooking into TM with a callback on TMCB_REQUEST_FWDED, even
>     though the
>      >> offer / rtpengine was down, the message is being relayed with the
>      >> initial SDP.
>      >>
>      >> Is there a way to stop / cancel the relay if there was an error?
>      >>
>      >> --
>      >>
>      >> -
>      >> Aron Podrigal
>      >>
>      >>
>      >> _______________________________________________
>      >> Users mailing list
>      >> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>      >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>     <http://lists.opensips.org/cgi-bin/mailman/listinfo/users>
>      >
>      >
>      > _______________________________________________
>      > Users mailing list
>      > Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>      > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>     <http://lists.opensips.org/cgi-bin/mailman/listinfo/users>
> 
>     -- 
>     Răzvan Crainea
>     OpenSIPS Core Developer
>     http://www.opensips-solutions.com <http://www.opensips-solutions.com>
> 
>     _______________________________________________
>     Users mailing list
>     Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>     http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>     <http://lists.opensips.org/cgi-bin/mailman/listinfo/users>
> 
> 
> 
> -- 
> 
> -
> Aron Podrigal
> 
> 
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users

-- 
Răzvan Crainea
OpenSIPS Core Developer
   http://www.opensips-solutions.com



More information about the Users mailing list