sortof working cdrs through local files

This commit is contained in:
2024-09-13 15:09:27 +02:00
parent dadf9e8b2e
commit a00e060436

View File

@@ -18,7 +18,7 @@ loadmodule "siputils"
loadmodule "sanity" loadmodule "sanity"
loadmodule "acc.so" loadmodule "acc.so"
loadmodule "dialog.so" loadmodule "dialog.so"
loadmodule "db_flatstore.so"
# Lines to configure: # Lines to configure:
# uac reg_contact_addr # uac reg_contact_addr
@@ -52,20 +52,27 @@ modparam("uac","auth_realm_avp","$avp(arealm)")
# TM settings # TM settings
modparam("tm", "auto_inv_100_reason", "Trying") modparam("tm", "auto_inv_100_reason", "Trying")
# CDR STUFF # CDR STUFF
modparam("dialog", "default_timeout", 43200 ) #!define FLD_DLG 4
modparam("dialog", "db_mode", 0 ) # no database writes #!define FLT_ACC 5
modparam("dialog", "dlg_flag", 3 ) #!define FLT_ACCMISSED 6
modparam("dialog", "hash_size", 4096 ) #!define FLT_ACCFAILED 7
#!define FLT_ACCDB 7
modparam("dialog", "dlg_flag", FLD_DLG)
modparam("acc", "log_flag", 2) modparam("acc", "db_url", "flatstore:/var/log/cdrs")
modparam("acc", "early_media", 0)
modparam("acc", "report_ack", 0)
modparam("acc", "report_cancels", 0)
modparam("acc", "detect_direction", 0)
modparam("acc", "db_flag", FLT_ACCDB)
modparam("acc", "log_flag", FLT_ACC)
modparam("acc", "log_missed_flag", FLT_ACCMISSED)
modparam("acc","cdr_extra","src_user=$fU;src_domain=$fd;src_ip=$si;dst_user=$rU;dst_ouser=$tU;dst_domain=$rd;sip_code=$rs;sip_reason=$rr;callid=$dlg(callid);dst_ip=$Ri")
modparam("acc", "failed_transaction_flag", FLT_ACCFAILED)
modparam("acc", "cdr_enable", 1) modparam("acc", "cdr_enable", 1)
modparam("acc", "cdr_log_enable", 0)
modparam("acc", "cdr_start_on_confirmed", 1) modparam("acc", "cdr_start_on_confirmed", 1)
modparam("acc", "cdr_facility", "LOG_DAEMON") modparam("acc", "cdr_facility", "LOG_LOCAL0")
#modparam("acc", "cdr_extra", "c1=$dlg_var(caller);c2=$dlg_var(callee)")
modparam("acc", "cdr_extra","src_user=$fU;src_domain=$fd;src_ip=$si;""dst_ouser=$tU;dst_user=$rU;dst_domain=$rd")
modparam("acc", "cdr_start_id", "st")
modparam("acc", "cdr_end_id", "et")
modparam("acc", "cdr_duration_id", "duration")
/* Main SIP request routing logic /* Main SIP request routing logic
* - processing of any incoming SIP request starts with this route * - processing of any incoming SIP request starts with this route
@@ -134,7 +141,10 @@ route[RELAY] {
if (is_method("INVITE")) { if (is_method("INVITE")) {
rtpengine_manage("replace-origin replace-session-connection force-relay"); rtpengine_manage("replace-origin replace-session-connection force-relay");
} }
# Start writing CDRs
setflag(FLD_DLG);
setflag(FLT_ACC);
setflag(FLT_ACCDB);
# update $du to set the destination address for proxying based on caller IP # update $du to set the destination address for proxying based on caller IP
if ($siz==$avp(sip1) || $siz==$avp(sip2)) { if ($siz==$avp(sip1) || $siz==$avp(sip2)) {
xlog("Incomming call from SIP provider"); xlog("Incomming call from SIP provider");