<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<div dir="auto">route{
<div dir="auto"> if (!mf_process_maxfwd_header(10)) {</div>
<div dir="auto"> sl_send_reply(483,"Too Many Hops");</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> if (has_totag()) {</div>
<div dir="auto"> # sequential requests within a dialog should</div>
<div dir="auto"> # take the path determined by record-routing</div>
<div dir="auto"> if (loose_route()) {</div>
<div dir="auto"><br>
</div>
<div dir="auto"> if (is_method("BYE")) {</div>
<div dir="auto"> # do accunting, even if the transaction fails</div>
<div dir="auto"> do_accounting("log","failed");</div>
<div dir="auto"> } else if (is_method("INVITE")) {</div>
<div dir="auto"> # even if in most of the cases is useless, do RR for</div>
<div dir="auto"> # re-INVITEs alos, as some buggy clients do change route set</div>
<div dir="auto"> # during the dialog.</div>
<div dir="auto"> record_route();</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # route it out to whatever destination was set by loose_route()</div>
<div dir="auto"> # in $du (destination URI).</div>
<div dir="auto"> route(relay);</div>
<div dir="auto"> } else {</div>
<div dir="auto"><br>
</div>
<div dir="auto"> if ( is_method("ACK") ) {</div>
<div dir="auto"> if ( t_check_trans() ) {</div>
<div dir="auto"> # non loose-route, but stateful ACK; must be an ACK after</div>
<div dir="auto"> # a 487 or e.g. 404 from upstream server</div>
<div dir="auto"> t_relay();</div>
<div dir="auto"> exit;</div>
<div dir="auto"> } else {</div>
<div dir="auto"> # ACK without matching transaction -></div>
<div dir="auto"> # ignore and discard</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"> }</div>
<div dir="auto"> sl_send_reply(404,"Not here");</div>
<div dir="auto"> }</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # CANCEL processing</div>
<div dir="auto"> if (is_method("CANCEL"))</div>
<div dir="auto"> {</div>
<div dir="auto"> if (t_check_trans())</div>
<div dir="auto"> t_relay();</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> t_check_trans();</div>
<div dir="auto"><br>
</div>
<div dir="auto"> if (is_method("REGISTER")) {</div>
<div dir="auto"> mid_registrar_save("location");</div>
<div dir="auto"> switch ($retcode) {</div>
<div dir="auto"> case 1:</div>
<div dir="auto"> xlog("forwarding REGISTER to main registrar ($$ci=$ci)\n");</div>
<div dir="auto"> fix_nated_contact();</div>
<div dir="auto"> add_path_received();</div>
<div dir="auto"> $ru = "sip:bp214.erss.in:443;transport=wss;";</div>
<div dir="auto"> t_relay();</div>
<div dir="auto"> break;</div>
<div dir="auto"> case 2:</div>
<div dir="auto"> xlog("absorbing REGISTER! ($$ci=$ci)\n");</div>
<div dir="auto"> break;</div>
<div dir="auto"> default:</div>
<div dir="auto"> xlog("failed to save registration! ($$ci=$ci)\n");</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # preloaded route checking</div>
<div dir="auto"> if (loose_route()) {</div>
<div dir="auto"> xlog("L_ERR",</div>
<div dir="auto"> "Attempt to route with preloaded Route's [$fu/$tu/$ru/$ci]");</div>
<div dir="auto"> if (!is_method("ACK"))</div>
<div dir="auto"> sl_send_reply(403,"Preload Route denied");</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"># record routing</div>
<div dir="auto"> if (!is_method("REGISTER|MESSAGE"))</div>
<div dir="auto"> record_route();</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # account only INVITEs</div>
<div dir="auto"> if (is_method("INVITE")) {</div>
<div dir="auto"> #sethostport("10.214.0.18:443");</div>
<div dir="auto"> do_accounting("log");</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> if (!is_myself("$ru")) {</div>
<div dir="auto"> append_hf("P-hint: outbound\r\n");</div>
<div dir="auto"> route(relay);</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # requests for my domain</div>
<div dir="auto"> if (is_method("PUBLISH|SUBSCRIBE"))</div>
<div dir="auto"> {</div>
<div dir="auto"> sl_send_reply(503, "Service Unavailable");</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> if ($rU==NULL) {</div>
<div dir="auto"> # request with no Username in RURI</div>
<div dir="auto"> sl_send_reply(484,"Address Incomplete");</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # initial requests from main registrar, need to look them up!</div>
<div dir="auto"> if (is_method("INVITE|MESSAGE") && $si == "10.214.0.18" && $sp == 443) {</div>
<div dir="auto"> xlog("looking up $ru!\n");</div>
<div dir="auto"> if (!mid_registrar_lookup("location")) {</div>
<div dir="auto"> t_reply(404, "Not Found");</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> t_relay();</div>
<div dir="auto"> exit;</div>
<div dir="auto"> }</div>
<div dir="auto"><br>
</div>
<div dir="auto"> # when routing via usrloc, log the missed calls also</div>
<div dir="auto"> do_accounting("log","missed");</div>
<div dir="auto"> route(relay);</div>
<div dir="auto">}</div>
<div dir="auto"><br>
</div>
when I make a call from user A to user B, it throws "480: Temporarily Unavailable". Both User A and User B are registered.<br>
</div>
<div id="ms-outlook-mobile-signature" dir="auto">
<div><br>
</div>
Sent from <a href="https://aka.ms/AAb9ysg">Outlook for Android</a></div>
</body>
</html>