<div dir="ltr"><div>Hi,</div><div><br></div><div>I'm trying to understand the ACC module, using this minimal configuration below.</div><div>My question is: why is there no cdr created?</div><div>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.</div><div>Hope my question is clear. Thanks</div><div><br></div><div><br></div><div>debug_mode=no<br><br>log_level=3<br>xlog_level=3<br>log_stdout=yes<br>log_stderror=yes<br>log_facility=LOG_LOCAL0<br><br>auto_aliases=no<br><br>server_signature=yes<br><br>socket=udp:<a href="http://0.0.0.0:5060">0.0.0.0:5060</a><br>socket=tcp:<a href="http://0.0.0.0:5060">0.0.0.0:5060</a><br><br>tcp_connect_timeout=300<br><br>mpath="/usr/lib64/opensips/modules/"<br><br>loadmodule "signaling.so"<br><br>loadmodule "sl.so"<br><br>loadmodule "tm.so"<br>modparam("tm", "fr_inv_timeout", 120)<br>modparam("tm", "fr_timeout", 30)<br>modparam("tm", "onreply_avp_mode", 1)<br>modparam("tm", "restart_fr_on_each_reply", 0)<br><br>loadmodule "rr.so"<br>modparam("rr", "append_fromtag", 1)<br><br>loadmodule "acc.so"<br>modparam("acc", "early_media", 1)<br>modparam("acc", "report_cancels", 1)<br>modparam("acc", "detect_direction", 1)<br><br>loadmodule "dialog.so"<br>modparam("dialog", "default_timeout", 14400) # 4 hours<br>modparam("dialog", "dlg_match_mode", 1)<br>modparam("dialog", "enable_stats", 0)<br>modparam("dialog", "profiles_with_value", "caller")<br><br>loadmodule "sipmsgops.so"<br><br>loadmodule "proto_udp.so"<br>loadmodule "proto_tcp.so"<br><br>route {<br>  if (has_totag()) {<br>    if (loose_route()) {<br>      if ($DLG_status != NULL && !validate_dialog()) {<br>        exit;<br>      }<br>    } else {<br>      if (is_method("ACK")) {<br>        if (t_check_trans()) {<br>          t_relay();<br>        }<br>        exit;<br>      }<br>      sl_send_reply(404, "Not Found");<br>      exit;<br>    }<br>    t_relay();<br>    exit;<br>  }<br>  t_check_trans();<br>  if (is_myself($si)) {<br>    send_reply(406, "Not Acceptable");<br>    exit;<br>  }<br>  if (is_method("INVITE")) {<br>    if (!create_dialog("B")) {<br>      send_reply(500, "Internal Server Error");<br>      exit;<br>    }<br>  }<br>  if (loose_route()) {<br>    if (!is_method("ACK")) {<br>      sl_send_reply(403, "Preload Route denied");<br>    }<br>    exit;<br>  }<br>  if ($rU == NULL) {<br>    send_reply(484, "Address Incomplete");<br>    exit;<br>  }<br>  route(relay);<br>}<br><br>route[relay] {<br>  if (is_method("INVITE")) {<br>    do_accounting("log", "cdr|missed|failed");<br>    sl_send_reply(488, "Not Acceptable Here");<br>    exit;<br>  }<br>  if (!t_relay()) {<br>    send_reply(500, "Internal Error");<br>  }<br>  exit;<br></div><div>}<br></div></div>