rendered paste bodyloadmodule "lcr.so" # (obviously)
route[6] {
t_on_reply( "6" );
t_on_failure( "6" );
xlog( "L_NOTICE", "*INVITE ROUTE INITIALIZED\n" );
xlog( "L_NOTICE", " -pre-lookup request is $ru\n" );
if( uri =~ "^sip:011" ) {
xlog( "L_NOTICE", "Stripping INTL Prefix\n" );
strip(3);
}
if( uri =~ "^sip:\+" ) {
xlog( "L_NOTICE", "already looks e.164'ish\n" );
} else {
xlog( "L_NOTICE", "e.164'izing uri\n" );
prefix( "+" );
}
xlog( "L_NOTICE", " -uri now is $ru" );
if( enum_query( "e164.org" ) ) {
xlog( "L_NOTICE", "**** YAY, ENUM MATCHED ONE ****$ru\n" );
route( 1 );
exit;
}
strip(1);
if( !load_gws() ) {
xlog( "L_NOTICE", " -Unable To Find A Route\n" );
sl_send_reply( "503", "No Route To Destination - gws" );
exit;
} else {
xlog( "L_NOTICE", " -Loaded Gateways\n" );
}
if( !next_gw() ) {
xlog( "L_NOTICE", " -Unable To Progress To First Route\n" );
sl_send_reply( "503", "No Route To Destination" );
exit;
} else {
xlog( "L_NOTICE", " -Following First Route to $ru\n" );
}
failure_route[6] {
t_on_failure( "6" );
t_on_reply( "6" );
xlog( "L_NOTICE", "*INVITE FAILURE ROUTE INITIALIZED\n" );
if( !next_gw() ) {
xlog( "L_NOTICE", " -No More GateWays To Try\n" );
return(-1);
}
xlog( "L_NOTICE", " -Trying Next GateWay\n" );
if( !t_relay() ) {
xlog( "L_NOTICE", "Unable To Relay\n" );
}
exit;
}