[SR-Users] NO VOICE AFTER MSILO

sscc androidsscc at gmail.com
Thu Apr 30 10:13:37 CEST 2015


# ----- msilo params -----
#!ifdef WITH_MSILO

modparam("msilo", "db_url", "mysql://kamailio:abc@localhost/kamailio")

modparam("msilo", "from_address", "sip:registrar at sscc.tk")

modparam("msilo", "contact_hdr", "Contact: registrar at sscc.tk;msilo=yes\r\n")

modparam("msilo", "content_type_hdr", "Content-Type:text/plain\r\n")
modparam("msilo", "offline_message", "User $ru is offline!")

modparam ("msilo", "outbound_proxy", "sip:sscc.tk:6524;transport=tcp")






####### Routing Logic ########


# Main SIP request routing logic
# - processing of any incoming SIP request starts with this route
# - note: this is the same as route { ... }
request_route {

	# per request initial checks
	route(REQINIT);

	# NAT detection
	route(NATDETECT);

	# CANCEL processing
	if (is_method("CANCEL")) {
		if (t_check_trans()) {
			route(RELAY);
		}
		exit;
	}

	# handle requests within SIP dialogs
	route(WITHINDLG);

	### only initial requests (no To tag)
xlog("L_NOTICE","main route enter\n");
	# handle retransmissions
	if(t_precheck_trans()) {
		t_check_trans();
		exit;
	}
	t_check_trans();

	# authentication
	route(AUTH);

	# record routing for dialog forming requests (in case they are routed)
	# - remove preloaded route headers
	remove_hf("Route");
	if (is_method("INVITE|SUBSCRIBE"))
		record_route();

	# account only INVITEs
	if (is_method("INVITE")) {
		setflag(FLT_ACC); # do accounting
	}

	# dispatch requests to foreign domains
	route(SIPOUT);

	### requests for my local domains

	# handle presence related requests
	route(PRESENCE);

	# handle registrations
	route(REGISTRAR);

	if ($rU==$null) {
		# request with no Username in RURI
		sl_send_reply("484","Address Incomplete");
		exit;
	}
# for msilo routing logic (sajjad)
        route(MSILO);
	# dispatch destinations to PSTN
	route(PSTN);

	# user location service
	route(LOCATION);
}

# Wrapper for relaying requests
route[RELAY] {
 xlog("L_NOTICE", "RELAY route enter\n");

	# enable additional event routes for forwarded requests
	# - serial forking, RTP relaying handling, a.s.o.
	if (is_method("INVITE|BYE|SUBSCRIBE|UPDATE")) {
		if(!t_is_set("branch_route")) t_on_branch("MANAGE_BRANCH");
	}
	if (is_method("INVITE|SUBSCRIBE|UPDATE")) {
		if(!t_is_set("onreply_route")) t_on_reply("MANAGE_REPLY");
	}
	if (is_method("INVITE")) {
		if(!t_is_set("failure_route")) t_on_failure("MANAGE_FAILURE");
	}

	if (!t_relay()) {
		sl_reply_error();
	}
	exit;
}

# Per SIP request initial checks
route[REQINIT] {
#!ifdef WITH_ANTIFLOOD
	# flood dection from same IP and traffic ban for a while
	# be sure you exclude checking trusted peers, such as pstn gateways
	# - local host excluded (e.g., loop to self)
	if(src_ip!=myself) {
		if($sht(ipban=>$si)!=$null) {
			# ip is already blocked
			#xdbg("request from blocked IP - $rm from $fu (IP:$si:$sp)\n");
                        xlog("L_NOTICE","request from blocked IP - $rm from
$fu (IP:$si:$sp)\n"); 
			exit;
		}
		if (!pike_check_req()) {
			#xlog("L_ALERT","ALERT: pike blocking $rm from $fu (IP:$si:$sp)\n");
                        xlog("L_NOTICE","ALERT: pike blocking $rm from $fu
(IP:$si:$sp)\n");
			$sht(ipban=>$si) = 1;
			exit;
		}
	}
	if($ua =~ "friendly-scanner") {
		sl_send_reply("200", "OK");
		exit;
	}
#!endif

	if (!mf_process_maxfwd_header("10")) {
		sl_send_reply("483","Too Many Hops");
		exit;
	}

	if(is_method("OPTIONS") && uri==myself && $rU==$null) {
		sl_send_reply("200","Keepalive");
		exit;
	}

	if(!sanity_check("1511", "7")) {
		xlog("Malformed SIP message from $si:$sp\n");
		exit;
	}
}

# Handle requests within SIP dialogs
route[WITHINDLG] {
	if (!has_totag()) return;

	# sequential request withing a dialog should
	# take the path determined by record-routing
	if (loose_route()) {
		route(DLGURI);
		if (is_method("BYE")) {
			setflag(FLT_ACC); # do accounting ...
			setflag(FLT_ACCFAILED); # ... even if the transaction fails
		}
		else if ( is_method("ACK") ) {
			# ACK is forwarded statelessy
			route(NATMANAGE);
		}
		else if ( is_method("NOTIFY") ) {
			# Add Record-Route for in-dialog NOTIFY as per RFC 6665.
			record_route();
		}
		route(RELAY);
		exit;
	}

	if (is_method("SUBSCRIBE") && uri == myself) {
		# in-dialog subscribe requests
		route(PRESENCE);
		exit;
	}
	if ( is_method("ACK") ) {
		if ( t_check_trans() ) {
			# no loose-route, but stateful ACK;
			# must be an ACK after a 487
			# or e.g. 404 from upstream server
			route(RELAY);
			exit;
		} else {
			# ACK without matching transaction ... ignore and discard
			exit;
		}
	}
	sl_send_reply("404","Not here");
	exit;
}

# Handle SIP registrations
route[REGISTRAR] {
          xlog("L_NOTICE","registrar route enter\n");
	if (!is_method("REGISTER")) return;

	if(isflagset(FLT_NATS)) {
		setbflag(FLB_NATB);
#!ifdef WITH_NATSIPPING
		# do SIP NAT pinging
		setbflag(FLB_NATSIPPING);
#!endif
	}
	if (!save("location"))
		sl_reply_error();
            xlog("L_NOTICE", "REGISTAR route exit\n");
#BELLOW LINE ADDED BY sscc FOR MSILO
		route(MSILO);
	exit;
}
# msilo routing logic start from here (sscc)
route[MSILO] {
 xlog("L_NOTICE", "MSILO route enter\n");
    if ( !mf_process_maxfwd_header("10") )
    {
        sl_send_reply("483","To Many Hops");
        exit;
    };


    if (uri==myself) {
    xlog("L_NOTICE", "MSILO route uri==myself\n");
        # for testing purposes, simply okay all REGISTERs
        if (method=="REGISTER")
        {
xlog("L_NOTICE","REGISTER received -> dumping messages with MSILO\n");
            save("location");
            log("REGISTER received -> dumping messages with MSILO\n");

         
            # MSILO - dumping user's offline messages
            if (m_dump())
 {
               # log("MSILO: offline messages dumped - if they were\n");
                xlog("L_NOTICE","MSILO: offline messages dumped fu $fu , ru
$ru , du $du, rU $rU\n");
            }else{
               # log("MSILO: no offline messages dumped\n");
               xlog("L_NOTICE","MSILO: no offline messages dumped\n");
            };
            exit;
        };

        # domestic SIP destinations are handled using our USRLOC DB
        
        if(!lookup("location")) 
        {
             xlog("L_NOTICE", "MSILO location not stored\n");
            if (! t_newtran())
            {
               xlog("L_NOTICE", "MSILO (! t_newtran()\n");
                sl_reply_error();
                exit;
            };
            # we do not care about anything else but MESSAGEs
            if (!method=="MESSAGE")
            {
                if (!t_reply("404", "Not found")) 
                {
                    sl_reply_error();
                };
                exit;
            };
            xlog("L_NOTICE","MESSAGE received -> storing using MSILO\n");
            # MSILO - storing as offline message
            if (m_store("$ru"))
            {
                log("MSILO: offline message stored\n");
                if (!t_reply("202", "Accepted")) 
                {
                    sl_reply_error();
                };
            }else{
                xlog("L_NOTICE","MSILO: offline message NOT stored\n");
                if (!t_reply("503", "Service Unavailable")) 
                {
                    sl_reply_error();
                };
            };
            exit;
        };
        # if the downstream UA does not support MESSAGE requests
        # go to failure_route[1]
        t_on_failure("1");
        t_relay();
 xlog("L_NOTICE","MSILO: Error exit\n");
        exit;
    };
 t_relay();
xlog("L_NOTICE","MSILO: route exit\n");
}
    # forward anything else


failure_route[1] {
    # forwarding failed -- check if the request was a MESSAGE 
    if (!method=="MESSAGE")
    {
        exit;
    };
    
    log(1,"MSILO:the downstream UA doesn't support MESSAGEs\n");
    # we have changed the R-URI with the contact address, ignore it now
    if (m_store("$ou"))
    {
        xlog("L_NOTICE","MSILO: offline message stored\n");
        t_reply("202", "Accepted"); 
    }else{
        xlog("L_NOTICE","MSILO: offline message NOT stored\n");
        t_reply("503", "Service Unavailable");
    };
}
# msilo routing logic end here (sscc)


# User location service
route [LOCATION] {

#!ifdef WITH_SPEEDDIAL
	# search for short dialing - 2-digit extension
	if($rU=~"^[0-9][0-9]$")
		if(sd_lookup("speed_dial"))
			route(SIPOUT);
#!endif

#!ifdef WITH_ALIASDB
	# search in DB-based aliases
	if(alias_db_lookup("dbaliases"))
		route(SIPOUT);
#!endif

	$avp(oexten) = $rU;
	if (!lookup("location")) {
		$var(rc) = $rc;
		route(TOVOICEMAIL);
		t_newtran();
		switch ($var(rc)) {
			case -1:
			case -3:
				send_reply("404", "Not Found");
				exit;
			case -2:
				send_reply("405", "Method Not Allowed");
				exit;
		}
	}

	# when routing via usrloc, log the missed calls also
	if (is_method("INVITE")) {
		setflag(FLT_ACCMISSED);
	}

	route(RELAY);
	exit;
  xlog("L_NOTICE", "LOCATION route exit\n");
}

# Presence server processing
route[PRESENCE] {
xlog("L_NOTICE", "PRESENCE route enter\n");
	if(!is_method("PUBLISH|SUBSCRIBE"))
		return;

	if(is_method("SUBSCRIBE") && $hdr(Event)=="message-summary") {
		route(TOVOICEMAIL);
		# returns here if no voicemail server is configured
		sl_send_reply("404", "No voicemail service");
		exit;
	}

#!ifdef WITH_PRESENCE
	if (!t_newtran()) {
		sl_reply_error();
		exit;
	}

	if(is_method("PUBLISH")) {
		handle_publish();
		t_release();
	} else if(is_method("SUBSCRIBE")) {
		handle_subscribe();
		t_release();
	}
	exit;
       xlog("L_NOTICE", "PRESENCE route exit\n");
#!endif
	
	# if presence enabled, this part will not be executed
	if (is_method("PUBLISH") || $rU==$null) {
		sl_send_reply("404", "Not here");
		exit;
	}
	return;
}

# IP authorization and user uthentication
route[AUTH] {
xlog("L_NOTICE", "AUTH route enter\n");
#!ifdef WITH_MSILO
        # do not authenticate ourselves when dumping messages
        if(is_method("MESSAGE") && src_ip==myself)
        {
                return;
        }
#!endif

        # if caller is not local subscriber, then check if it calls
        # a local destination, otherwise deny, not an open relay here
        if (from_uri!=myself && uri!=myself)
        {
                sl_send_reply("403","Not relaying");
                exit;
        }
#!ifdef WITH_AUTH

#!ifdef WITH_IPAUTH
	if((!is_method("REGISTER")) && allow_source_address()) {
		# source IP allowed
		return;
	}
#!endif

	if (is_method("REGISTER") || from_uri==myself)
	{
		# authenticate requests
		if (!auth_check("$fd", "subscriber", "1")) {
			auth_challenge("$fd", "0");
			exit;
		}
		# user authenticated - remove auth header
		if(!is_method("REGISTER|PUBLISH"))
			consume_credentials();
	}
	# if caller is not local subscriber, then check if it calls
	# a local destination, otherwise deny, not an open relay here
	if (from_uri!=myself && uri!=myself) {
		sl_send_reply("403","Not relaying");
		exit;
xlog("L_NOTICE", "AUTH route exit\n");
	}

#!endif
	return;
}

# Caller NAT detection
route[NATDETECT] {
xlog("L_NOTICE", "NAT Detection\n");
#!ifdef WITH_NAT
	force_rport();
	if (nat_uac_test("19")) {
		if (is_method("REGISTER")) {
			fix_nated_register();
		} else {
			if(is_first_hop())
				set_contact_alias();
		}
		setflag(FLT_NATS);
	}
#!endif
	return;
}

# RTPProxy control and singaling updates for NAT traversal
route[NATMANAGE] {
xlog("L_NOTICE", "NAT Managment\n");
#!ifdef WITH_NAT
	if (is_request()) {
		if(has_totag()) {
			if(check_route_param("nat=yes")) {
				setbflag(FLB_NATB);
			}
		}
	}
	if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))
		return;

	rtpproxy_manage("co");
       # rtpproxy_manage();
         xlog("L_NOTICE", "RTPPROXY Managment\n");
	if (is_request()) {
		if (!has_totag()) {
			if(t_is_branch_route()) {
				add_rr_param(";nat=yes");
			}
		}
	}
	if (is_reply()) {
		if(isbflagset(FLB_NATB)) {
			if(is_first_hop())
				set_contact_alias();
		}
	}
#!endif
	return;
xlog("L_NOTICE", "NAT Managment exit\n");
}

# URI update for dialog requests
route[DLGURI] {
#!ifdef WITH_NAT
	if(!isdsturiset()) {
		handle_ruri_alias();
	}
#!endif
	return;
}

# Routing to foreign domains
route[SIPOUT] {
	if (uri==myself) return;

	append_hf("P-hint: outbound\r\n");
	route(RELAY);
	exit;
}

# PSTN GW routing
route[PSTN] {
#!ifdef WITH_PSTN
	# check if PSTN GW IP is defined
	if (strempty($sel(cfg_get.pstn.gw_ip))) {
		xlog("SCRIPT: PSTN rotuing enabled but pstn.gw_ip not defined\n");
		return;
	}

	# route to PSTN dialed numbers starting with '+' or '00'
	#     (international format)
	# - update the condition to match your dialing rules for PSTN routing
	if(!($rU=~"^(\+|00)[1-9][0-9]{3,20}$"))
		return;

	# only local users allowed to call
	if(from_uri!=myself) {
		sl_send_reply("403", "Not Allowed");
		exit;
	}

	if (strempty($sel(cfg_get.pstn.gw_port))) {
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip);
	} else {
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip) + ":"
					+ $sel(cfg_get.pstn.gw_port);
	}

	route(RELAY);
	exit;
#!endif

	return;
}

# XMLRPC routing
#!ifdef WITH_XMLRPC
route[XMLRPC] {
	# allow XMLRPC from localhost
	if ((method=="POST" || method=="GET")
			&& (src_ip==127.0.0.1)) {
		# close connection only for xmlrpclib user agents (there is a bug in
		# xmlrpclib: it waits for EOF before interpreting the response).
		if ($hdr(User-Agent) =~ "xmlrpclib")
			set_reply_close();
		set_reply_no_connect();
		dispatch_rpc();
		exit;
	}
	send_reply("403", "Forbidden");
	exit;
}
#!endif

# Routing to voicemail server
route[TOVOICEMAIL] {
#!ifdef WITH_VOICEMAIL
	if(!is_method("INVITE|SUBSCRIBE"))
		return;

	# check if VoiceMail server IP is defined
	if (strempty($sel(cfg_get.voicemail.srv_ip))) {
		xlog("SCRIPT: VoiceMail rotuing enabled but IP not defined\n");
		return;
	}
	if(is_method("INVITE")) {
		if($avp(oexten)==$null)
			return;
		$ru = "sip:" + $avp(oexten) + "@" + $sel(cfg_get.voicemail.srv_ip)
				+ ":" + $sel(cfg_get.voicemail.srv_port);
	} else {
		if($rU==$null)
			return;
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.voicemail.srv_ip)
				+ ":" + $sel(cfg_get.voicemail.srv_port);
	}
	route(RELAY);
	exit;
#!endif

	return;
}

# Manage outgoing branches
branch_route[MANAGE_BRANCH] {
	xdbg("new branch [$T_branch_idx] to $ru\n");
	route(NATMANAGE);
}

# Manage incoming replies
onreply_route[MANAGE_REPLY] {
	xdbg("incoming reply\n");
	if(status=~"[12][0-9][0-9]")
		route(NATMANAGE);
}

# Manage failure routing cases
failure_route[MANAGE_FAILURE] {
	route(NATMANAGE);

	if (t_is_canceled()) {
		exit;
	}

#!ifdef WITH_BLOCK3XX
	# block call redirect based on 3xx replies.
	if (t_check_status("3[0-9][0-9]")) {
		t_reply("404","Not found");
		exit;
	}
#!endif

#!ifdef WITH_VOICEMAIL
	# serial forking
	# - route to voicemail on busy or no answer (timeout)
	if (t_check_status("486|408")) {
		$du = $null;
		route(TOVOICEMAIL);
		exit;
	}
#!endif
}






below is the call flow log without msilo

Apr 27 13:01:42 ssc-desktop ./kamailio[17894]: NOTICE: <script>: NAT
Detection
Apr 27 13:01:42 ssc-desktop ./kamailio[17894]: NOTICE: <script>: main route
enter
Apr 27 13:01:42 ssc-desktop ./kamailio[17894]: NOTICE: <script>: AUTH route
enter
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: NAT
Detection
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: main route
enter
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: AUTH route
enter
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: PRESENCE
route enter
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: registrar
route enter
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: RELAY route
enter
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: call Manage
Branch
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: call Manage
Reply
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>:  call
Manage Failure
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: calling
natmanage for dealling Manage Branch 
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 13:01:43 ssc-desktop ./kamailio[17894]: NOTICE: <script>: RTPPROXY
Managment (has totag)
Apr 27 13:01:45 ssc-desktop ./kamailio[17891]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:45 ssc-desktop ./kamailio[17891]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:46 ssc-desktop ./kamailio[17891]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:46 ssc-desktop ./kamailio[17891]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:48 ssc-desktop ./kamailio[17891]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:48 ssc-desktop ./kamailio[17891]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:48 ssc-desktop ./kamailio[17891]: NOTICE: acc [acc.c:318]:
acc_log_request(): ACC: transaction answered:
timestamp=1430121708;method=INVITE;from_tag=u3gklhI94;to_tag=iWWipu9;call_id=XxV-GFBd3v;code=200;reason=Ok;src_user=h002;src_domain=sscc.tk;src_ip=x.x.x.x;dst_ouser=h001;dst_user=h001;dst_domain=x.x.x.x
Apr 27 13:01:49 ssc-desktop ./kamailio[17891]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:49 ssc-desktop ./kamailio[17891]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:49 ssc-desktop ./kamailio[17891]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:49 ssc-desktop ./kamailio[17891]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Detection
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Dialog
route enter
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Ack method
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RELAY route
enter
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Detection
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Dialog
route enter
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Ack method
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RELAY route
enter
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Detection
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Dialog
route enter
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Ack method
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 13:01:50 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RELAY route
enter
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Detection
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Dialog
route enter
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: Bye method
dealing
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RELAY route
enter
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: call Manage
Branch
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: calling
natmanage for dealling Manage Branch 
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: NAT
Managment
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 13:01:54 ssc-desktop ./kamailio[17892]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 13:01:55 ssc-desktop ./kamailio[17891]: NOTICE: acc [acc.c:318]:
acc_log_request(): ACC: transaction answered:
timestamp=1430121715;method=BYE;from_tag=u3gklhI94;to_tag=iWWipu9;call_id=XxV-GFBd3v;code=200;reason=Ok;src_user=h002;src_domain=sscc.tk;src_ip=x.x.x.x;dst_ouser=h001;dst_user=h001;dst_domain=x.x.x.x.x


below is the call flow log with msilo

Apr 27 12:55:03 ssc-desktop ./kamailio[17739]: NOTICE: <script>: NAT
Detection
Apr 27 12:55:03 ssc-desktop ./kamailio[17739]: NOTICE: <script>: main route
enter
Apr 27 12:55:03 ssc-desktop ./kamailio[17739]: NOTICE: <script>: AUTH route
enter
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: NAT
Detection
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: main route
enter
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: AUTH route
enter
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: PRESENCE
route enter
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: registrar
route enter
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: MSILO route
enter
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: MSILO route
uri==myself
Apr 27 12:55:04 ssc-desktop ./kamailio[17739]: NOTICE: <script>: MSILO: 
exit
Apr 27 12:55:13 ssc-desktop ./kamailio[17734]: NOTICE: acc [acc.c:318]:
acc_log_request(): ACC: transaction answered:
timestamp=1430121313;method=INVITE;from_tag=odZKvrDkM;to_tag=QLMaHnC;call_id=WNZGU6uIoN;code=200;reason=Ok;src_user=h001;src_domain=sscc.tk;src_ip=x.x.x.x;dst_ouser=h002;dst_user=h002;dst_domain=x.x.x.x
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: NAT
Detection
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: Dialog
route enter
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: Ack method
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: NAT
Managment
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RELAY route
enter
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: NAT
Detection
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: Dialog
route enter
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: Ack method
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: NAT
Managment
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 12:55:15 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RELAY route
enter
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: NAT
Detection
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: Dialog
route enter
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: Ack method
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: NAT
Managment
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 12:55:19 ssc-desktop ./kamailio[17735]: NOTICE: <script>: RELAY route
enter
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: NAT
Detection
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: Dialog
route enter
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: Bye method
dealing
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: RELAY route
enter
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: call Manage
Branch
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: calling
natmanage for dealling Manage Branch 
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: NAT
Managment
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: RTPPROXY
Managment
Apr 27 12:55:27 ssc-desktop ./kamailio[17737]: NOTICE: <script>: RTPPROXY
Managment (is request)
Apr 27 12:55:27 ssc-desktop ./kamailio[17739]: NOTICE: acc [acc.c:318]:
acc_log_request(): ACC: transaction answered:
timestamp=1430121327;method=BYE;from_tag=odZKvrDkM;to_tag=QLMaHnC;call_id=WNZGU6uIoN;code=200;reason=Ok;src_user=h001;src_domain=sscc.tk;src_ip=x.x.x.x;dst_ouser=h002;dst_user=h002;dst_domain=x.x.x.x




--
View this message in context: http://sip-router.1086192.n5.nabble.com/NO-VOICE-AFTER-MSILO-tp137430p137437.html
Sent from the Users mailing list archive at Nabble.com.



More information about the sr-users mailing list