Hello everybody!

 

I have a such problem with ACC module.

Calls was accounted but only INVITE and BYE requests has appeared in acc table. ACK is absent.

Kamailio 3.0 was installed from GIT.

 

Thank you for any help

 

loadmodule "db_mysql.so"

loadmodule "mi_fifo.so"

loadmodule "tm.so"

loadmodule "sl.so"

loadmodule "tmx.so"

loadmodule "rr.so"

loadmodule "pv.so"

loadmodule "textops.so"

loadmodule "siputils.so"

loadmodule "xlog.so"

loadmodule "acc.so"

loadmodule "avpops.so"

loadmodule "siptrace.so"

loadmodule "dialplan.so"

loadmodule "lcr.so"

loadmodule "sqlops.so"

loadmodule "carrierroute.so"

loadmodule "drouting.so"

loadmodule "kex.so"

 

# ----- acc params -----

modparam("acc", "early_media", 0)

modparam("acc", "report_ack", 1)

modparam("acc", "report_cancels", 1)

modparam("acc", "detect_direction", 1)

modparam("acc", "db_flag", 1)

modparam("acc", "db_missed_flag", 2)

modparam("acc", "failed_transaction_flag", 29)

modparam("acc", "db_table_acc", "acc")

modparam("acc", "db_table_missed_calls", "missed_calls")

modparam("acc", "acc_method_column", "method")

modparam("acc", "acc_from_tag_column", "from_tag")

modparam("acc", "acc_to_tag_column", "to_tag")

modparam("acc", "acc_callid_column", "callid")

modparam("acc", "acc_sip_code_column", "sip_code")

modparam("acc", "acc_sip_reason_column", "sip_reason")

modparam("acc", "acc_time_column", "time")

modparam("acc", "db_url", "xxxxxxxxxxxxxxxxxxxxxxxx")

modparam("acc", "db_extra",

            "src_user=$avp(i:2);src_domain=$si;dst_ouser=$avp(i:1);dst_user=$rU;dst_domain=$rd")

 

route {

sip_trace();

 setflag(30);

  if (has_totag()) {

   if (loose_route()) {

      if (is_method("BYE")) {

       setflag(1);

       setflag(29);

      }

      if (is_method("ACK")) {

      xlog("L_NOTICE", "ACK detected"); # I see this line in syslog

       setflag(1);

       setflag(29);

      }

      route("relay");

      exit;

    } else {

       if ( is_method("ACK") ) {

         if ( t_check_trans() ) {

          setflag(1);

          route("relay");

          exit;

         } else {

           exit;

         }

       }

      }

    }