route[3] { # ---------------------------------------------------------- # INVITE Message Handler # ---------------------------------------------------------- if (!allow_trusted()) { if (!proxy_authorize("","subscriber")) { proxy_challenge("","0"); break; } else if (!check_from()) { sl_send_reply("403", "Use From=ID"); break; }; consume_credentials(); }; if (client_nat_test("3")) { setflag(7); force_rport(); fix_nated_contact(); }; lookup("aliases"); if (uri!=myself) { route(4); route(1); break; }; if (avp_db_load("$ruri/username", "s:callfwd")) { setflag(22); avp_pushto("$ruri", "s:callfwd"); route(6); break; }; if (!lookup("location")) { if (uri=~"^sip:0[1-9][0-9]{8}") { # Domestic PSTN #strip(1); #prefix("61"); route(4); route(5); break; }; sl_send_reply("404", "User Not Found"); break; }; if (avp_db_load("$ruri/username", "s:fwdbusy")) { if (!avp_check("s:fwdbusy", "eq/$ruri/i")) { setflag(26); }; }; if (avp_db_load("$ruri/username", "s:fwdnoanswer")) { if (!avp_check("s:fwdnoanswer", "eq/$ruri/i")) { setflag(27); }; }; log(1,"t on fail \n"); t_on_failure("1"); route(4); route(1); }