<div dir="ltr">Hi Bogdan,<div><br></div><div>This was indeed the issue. I guess setting a routeid *and* a gw causes it to send out route in two different directions?</div><div><br></div><div>Anyhow, thanks so much for the direction. I'm sure I'll come back with new issues.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jun 11, 2014 at 10:48 PM, Bogdan-Andrei Iancu <span dir="ltr"><<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div><tt>Hi Kurtis,<br>
<br>
Do you use any routeid in the rule definitions ? maybe that's
the looping cause.....Be sure it is set to NULL.<br>
<br>
Regards,<br>
</tt><div class="">
<pre cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.com</a></pre></div><div><div class="h5">
On 12.06.2014 03:14, Kurtis Heimerl wrote:<br>
</div></div></div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">Thanks so much Bogdan, that line is super helpful.
<div><br>
</div>
<div>I can't yet figure out why it's looping though. Here's what
the log now shows:</div>
<div><br>
</div>
<div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
[Script Trace][line 149][me][route 4] -> (INVITE from IP,
ruri=sip:NAME@HOST)</div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
[Script Trace][line 273][me][core if] -> (INVITE from IP,
ruri=sip:NAME@HOST)</div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
[Script Trace][line 270][me][module do_routing] ->
(INVITE from IP, ruri=sip:NAME@HOST)</div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
[Script Trace][line 273][me][core if] -> (INVITE from IP,
ruri=sip:NAME@HOST)</div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
[Script Trace][line 270][me][module do_routing] ->
(INVITE from IP, ruri=sip:NAME@HOST)</div>
</div>
<div>... (repeated dozens of times)</div>
<div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
CRITICAL:core:eval_expr: too many expressions (101)</div>
<div>Jun 11 23:59:32 ip-172-31-27-53 /usr/sbin/opensips[5836]:
WARNING:core:do_action: error in expression (l=273)</div>
</div>
<div><br>
</div>
<div>This seems to indicate an issue with my routing logic.
However, I can't see where I'm infinitely recursing. Here's
the dialplan:</div>
<div><br>
</div>
<div>
<div>route{</div>
<div> script_trace( 1, "$rm from $si, ruri=$ru", "me");</div>
<div><br>
</div>
<div> if (!mf_process_maxfwd_header("70")) {</div>
<div> sl_send_reply("483","Too Many Hops");</div>
<div> exit;</div>
<div> }</div>
<div>
<br>
</div>
<div> #kurtis
</div>
<div> if (is_method("INVITE")) {</div>
<div> setflag(1); # do accounting
</div>
<div> route(4); # Call our dynamic route.
</div>
<div> }</div>
<div><br>
</div>
<div> if (has_totag()) {</div>
</div>
<div>... (default from here)</div>
<div><br>
</div>
<div>
and my custom route 4, which i've tried to poke at to remove
the recursion, but failed. </div>
<div><br>
</div>
<div>
<div>route[4] {</div>
<div> if (!do_routing("0")) {</div>
<div> send_reply("503", "No Rules matching the URI");</div>
<div> }</div>
<div> exit;</div>
<div><br>
</div>
<div>
# route(relay);
</div>
<div>}</div>
</div>
<div><br>
</div>
<div>Any guidance? I can't see how I'm causing it to recurse,
but I've done this in opensips before so I'm not surprised. </div>
<div><br>
</div>
<div>Thanks for all of your help!</div>
<div><br>
</div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Tue, Jun 10, 2014 at 6:08 AM,
Bogdan-Andrei Iancu <span dir="ltr"><<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div><tt>Hi Kurtis,<br>
<br>
On a first look, it seems your script doing doing a
kind of looping (maybe a recursive call of a route or
so) - at least this is what the log errors tell. <br>
<br>
You can try the script_trace() function to understand
how your script is executed:<br>
<a href="http://www.opensips.org/Documentation/Script-CoreFunctions-1-11#toc42" target="_blank">http://www.opensips.org/Documentation/Script-CoreFunctions-1-11#toc42</a><br>
<br>
Regards,<br>
</tt>
<pre cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.com</a></pre>
<div>
<div> On 09.06.2014 01:37, Kurtis Heimerl
wrote:<br>
</div>
</div>
</div>
<blockquote type="cite">
<div>
<div>
<div dir="ltr">Hello mailing list,
<div><br>
</div>
<div>I've been working on setting up OpenSIPS on
an EC2 instance, routing traffic between nexmo
and our gateway, a FS instance on a public IP. I
was kindly directed to an earlier thread on
OpenSIPs and EC2 (<a href="http://lists.opensips.org/pipermail/users/2010-April/012393.html" target="_blank">http://lists.opensips.org/pipermail/users/2010-April/012393.html</a>)
but have come to an issue I think is unrelated. </div>
<div><br>
</div>
<div>Here's the current architecture:</div>
<div>Nexmo -> EC2 NAT -> OpenSIPs -> EC2
NAT -> FS</div>
<div><br>
</div>
<div>I started with a walkthrough on the website (<a href="http://www.unixnews.net/2010/09/dynamic-routing-with-opensips.html" target="_blank">http://www.unixnews.net/2010/09/dynamic-routing-with-opensips.html</a>)
which roughly seems to be working. I've
configured the gateway, the routes, and so on.
When I call my Nexmo number, it successfully
routes to FS and rings but, when answered, never
connects, failing after 30 seconds. This is, as
expected, the OK never reaching Nexmo and the
RTP negotiation never starting. I started poking
around in wireshark and ran into another issue:
OpenSIPs is forwarding 9 invites in rapid
succession (less than a second) rather than just
the one it received! FS *seems* to handle this
correctly (482 Request Merged) but it makes the
SIP trace an enormous mess and completely
unreadable. </div>
<div><br>
</div>
<div>The opensips log is a mess, but isn't
particularly useful: </div>
<div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]:
ERROR:signaling:sig_send_reply_mod: failed to
send reply with tm module</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]: ERROR:tm:add_uac:
maximum number of branches exceeded</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]:
ERROR:tm:t_forward_nonack: failure to add
branches</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]: ERROR:tm:w_t_relay:
t_forward_nonack failed</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]:
ERROR:tm:_reply_light: failed to generate 500
reply when a final 500 was sent out</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]:
ERROR:signaling:sig_send_reply_mod: failed to
send reply with tm module</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]: incoming reply</div>
<div>Jun 8 21:55:51 ip-172-31-27-53
/usr/sbin/opensips[18082]: incoming reply</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]:
CRITICAL:core:eval_expr: too many expressions
(101)</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]:
WARNING:core:do_action: error in expression
(l=272)</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]:
CRITICAL:core:eval_expr: too many expressions
(101)</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]:
WARNING:core:do_action: error in expression
(l=283)</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]:
CRITICAL:core:eval_expr: too many expressions
(101)</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]:
WARNING:core:do_action: error in expression
(l=285)</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18082]: new branch at <a href="mailto:sip%3A18178184971@gadogado.banatao.berkeley.edu" target="_blank">sip:18178184971@gadogado.banatao.berkeley.edu</a></div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18083]: message repeated 5
times: [ incoming reply]</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18083]:
CRITICAL:tm:t_should_relay_response:
pick_branch failed (lowest==-1) for code 482</div>
<div>Jun 8 21:56:55 ip-172-31-27-53
/usr/sbin/opensips[18083]: incoming reply</div>
</div>
<div><br>
</div>
<div>Does anyone have any idea what would cause
OpenSIPs to forward an invite 9 times in less
than a second? Fixing that should allow me to
move onto figuring out why it's not forwarding
the 200 OK back to Nexmo. </div>
<div><br>
</div>
<div>Thanks!</div>
</div>
<br>
<fieldset></fieldset>
<br>
</div>
</div>
<pre>_______________________________________________
Users mailing list
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
</blockquote>
<br>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div></div></div>
</blockquote></div><br></div>