[SR-Users] NO VOICE AFTER MSILO

SamyGo govoiper at gmail.com
Thu Apr 30 18:14:43 CEST 2015


They should be unrelated, RTPPROXY called on INVITES and MSILO on
REGISTER|MESSAGE, why should INVITE's flow change using that msilo route ?


On Thu, Apr 30, 2015 at 4:13 AM, sscc <androidsscc at gmail.com> wrote:

> # ----- 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.
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20150430/066a66b8/attachment.html>


More information about the sr-users mailing list