[OpenSIPS-Users] Forking sip MESSAGE to multiple endpoints

Bogdan-Andrei Iancu bogdan at opensips.org
Fri Nov 16 12:25:36 EST 2018


Hi Aron,

The standard SIP forking (as per RFC3261) says only one destination 
should get the reply. Nevertheless, there is the RFC3841 defining 
"Content-Disposition: no-cancel" to prevent the proxy to send Cancel 
upon first 200 OK.
We added support for it in OpenSIPS, starting 2.4 - see flag 0x10 - 
http://www.opensips.org/html/docs/modules/2.4.x/tm.html#func_t_relay
but it works only for INVITEs :D

Regards,

Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
   http://www.opensips-solutions.com
OpenSIPS Bootcamp 2018
   http://opensips.org/training/OpenSIPS_Bootcamp_2018/

On 11/14/2018 07:38 PM, Podrigal, Aron wrote:
> Hi.
>
> I want to fork a MESSAGE request to multiple endpoints and handle the 
> delivery status for each on reply.
>
> currently I append_branch() for each additional destination. But the 
> problem is, that if any branch received a 200 reply, any other branch 
> which did not relay the request yet (ie socket connection wasn't 
> established) or TM timer is triggered, then those branches are 
> canceled without triggering onreply route or failure route.
>
> How could I implement it, so that I can handle the timeout or failure 
> for each endpoint?
>
> Maybe t_replicate? Or is there an event raised for a canceled branch 
> which I can subscribe to?
>
>
> Thanks
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20181116/797122bf/attachment.html>


More information about the Users mailing list