Hi,

I'm trying to understand the ACC module, using this minimal configuration
below.
My question is: why is there no cdr created?
I would have assumed that `do_accounting("log", "cdr|missed|failed");`
always saves cdrs, but it doesn't when the call is rejected from inside the
configuration script.
Hope my question is clear. Thanks


debug_mode=no

log_level=3
xlog_level=3
log_stdout=yes
log_stderror=yes
log_facility=LOG_LOCAL0

auto_aliases=no

server_signature=yes

socket=udp:0.0.0.0:5060
socket=tcp:0.0.0.0:5060

tcp_connect_timeout=300

mpath="/usr/lib64/opensips/modules/"

loadmodule "signaling.so"

loadmodule "sl.so"

loadmodule "tm.so"
modparam("tm", "fr_inv_timeout", 120)
modparam("tm", "fr_timeout", 30)
modparam("tm", "onreply_avp_mode", 1)
modparam("tm", "restart_fr_on_each_reply", 0)

loadmodule "rr.so"
modparam("rr", "append_fromtag", 1)

loadmodule "acc.so"
modparam("acc", "early_media", 1)
modparam("acc", "report_cancels", 1)
modparam("acc", "detect_direction", 1)

loadmodule "dialog.so"
modparam("dialog", "default_timeout", 14400) # 4 hours
modparam("dialog", "dlg_match_mode", 1)
modparam("dialog", "enable_stats", 0)
modparam("dialog", "profiles_with_value", "caller")

loadmodule "sipmsgops.so"

loadmodule "proto_udp.so"
loadmodule "proto_tcp.so"

route {
  if (has_totag()) {
    if (loose_route()) {
      if ($DLG_status != NULL && !validate_dialog()) {
        exit;
      }
    } else {
      if (is_method("ACK")) {
        if (t_check_trans()) {
          t_relay();
        }
        exit;
      }
      sl_send_reply(404, "Not Found");
      exit;
    }
    t_relay();
    exit;
  }
  t_check_trans();
  if (is_myself($si)) {
    send_reply(406, "Not Acceptable");
    exit;
  }
  if (is_method("INVITE")) {
    if (!create_dialog("B")) {
      send_reply(500, "Internal Server Error");
      exit;
    }
  }
  if (loose_route()) {
    if (!is_method("ACK")) {
      sl_send_reply(403, "Preload Route denied");
    }
    exit;
  }
  if ($rU == NULL) {
    send_reply(484, "Address Incomplete");
    exit;
  }
  route(relay);
}

route[relay] {
  if (is_method("INVITE")) {
    do_accounting("log", "cdr|missed|failed");
    sl_send_reply(488, "Not Acceptable Here");
    exit;
  }
  if (!t_relay()) {
    send_reply(500, "Internal Error");
  }
  exit;
}
_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to