<div dir="ltr"><div dir="ltr"><div>If I arm both t_on_failure() and t_on_reply(), do a t_relay(), and a
 302 comes back, I have access to the reply in the onreply_route, then 
the failure_route.  From a SIP perspective, a 302 is a failure since 
it's not 2xx-series, no?  I don't do a drop() in the onreply_route.  It 
just naturally follows its course to the failure_route.</div><div><br></div><div>David,
 in your case, since you're trying to drop any 302 that doesn't have an 
Identity header, I'd check for its presence in the onreply_route and set
 a flag if there accordingly.  And, capture its value in an AVP if you 
need.  Next, in the failure_route, if (t_check_status("302") && 
!isflagset("302_HAS_ID_HEADER")) drop; or something similar.  You 
could easily expand that block to route-advance to your next carrier, 
send_reply(499, "Something Else"), or whatever you makes sense for your 
application.<font color="#888888"><br></font></div><font color="#888888"><div><br></div><div><br></div><div>- Jeff</div></font></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jun 2, 2021 at 10:19 AM Johan De Clercq <<a href="mailto:Johan@democon.be">Johan@democon.be</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"><div dir="ltr"><div>that's because 302 is not an error. <br></div><div>So I guess that drop() is the only way. <br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Op wo 2 jun. 2021 om 15:42 schreef David Villasmil <<a href="mailto:david.villasmil.work@gmail.com" target="_blank">david.villasmil.work@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Thanks Ben,</div><div dir="auto"><br></div><div dir="auto">That’s a good point. But only way I’ve found to jump over from oneply to failure_route is by doing a drop(). If there’s another way, I’d love to know about it!</div><div dir="auto"><br></div><div dir="auto">David</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 2 Jun 2021 at 08:29, Ben Newlin <<a href="mailto:Ben.Newlin@genesys.com" target="_blank">Ben.Newlin@genesys.com</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">





<div lang="EN-US">
<div>
<p class="MsoNormal">You still don’t need to call drop() as long as you are handling the request in failure_route. The 302 will not be sent back upstream as long as failure_route either creates a new branch request or sends back a different reply code. Only
 if failure_route exits without doing either of these things would the downstream 302 be sent back upstream as-is.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">In fact, as far as I know drop() has no functionality for responses >= 200.</p></div></div><div lang="EN-US"><div><p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span style="color:black">Ben Newlin </span><u></u><u></u></p>
<p class="MsoNormal"><br>
</p></div></div></blockquote></div></div></blockquote></div></blockquote></div></div>