<div dir="ltr">Hi, <div><br></div><div>Thanks for coming back to me on this query. I did not want to do serial forking.  Let me try to explain my query in better detail. </div><div><br></div><div>So, i have desktop phones and mobile phones registered to same AOR, what i wanted to do was, </div><div><br></div><div>If we have mobile phone devices registered we send invites to them instantly but desktop devices need to be rung after some delay from phone devices.</div><div>But if no phone device was registered, we simply do parallel forking to desktop devices. </div><div><br></div><div>Ryan.  </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 24 Jul 2020 at 15:14, Liviu Chircu <<a href="mailto:liviu@opensips.org">liviu@opensips.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 13.07.2020 16:02, ryan embgrets wrote:<br>
><br>
> So, I set a branch flag on those registrations before calling the save <br>
> function, and then try to use async sleep in the branch route after <br>
> lookup.<br>
><br>
> But I see sleep applies on the whole call(all branches are sent with <br>
> delay) no matter if it was called on a single branch.<br>
<br>
Hey, Ryan!<br>
<br>
Did you solve your problem in the meantime?  I think you are confusing <br>
parallel forking with serial forking.  Implicitly, the OpenSIPS request <br>
branching engine performs **parallel** forking.  In other words, no <br>
matter how you prepare your branches (be it using append_branch(), <br>
lookup(), mid_registrar_lookup(), etc.), they will all be sent out <br>
concurrently, hence the effect you are noticing ("the sleep applies on <br>
the whole call").<br>
<br>
To change the behavior to a **serial** forking one, try calling <br>
serialize_branches() [1] after building your branch set.  IIRC, there's <br>
a caveat in there, which also requires you to call next_branches() <br>
afterwards.  Just read the docs carefully and you should be fine.<br>
<br>
Best regards,<br>
<br>
[1]: <a href="https://opensips.org/Documentation/Script-CoreFunctions-3-2#toc44" rel="noreferrer" target="_blank">https://opensips.org/Documentation/Script-CoreFunctions-3-2#toc44</a><br>
<br>
-- <br>
Liviu Chircu<br>
<a href="http://www.twitter.com/liviuchircu" rel="noreferrer" target="_blank">www.twitter.com/liviuchircu</a> | <a href="http://www.opensips-solutions.com" rel="noreferrer" target="_blank">www.opensips-solutions.com</a><br>
OpenSIPS Summit 2020 Distributed<br>
   <a href="http://www.opensips.org/events" rel="noreferrer" target="_blank">www.opensips.org/events</a><br>
<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" rel="noreferrer" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
</blockquote></div>