[OpenSIPS-Users] ACC module for rejected calls

Alberto alberto.rinaudo at gmail.com
Mon Apr 3 22:03:30 UTC 2023


Thanks
I tried both sl_send_reply and send_reply, but I didn't see t_reply.
That was it.

On Mon, 3 Apr 2023 at 22:40, Daniel Zanutti <daniel.zanutti at gmail.com>
wrote:

> Hi Alberto
>
> You are correct, this is the line you need.
>
> I think you need a created transaction. Since you are responding in
> stateless, you may be missing the cdr.
> Try changing this and let me know if solves:
>
> sl_send_reply(488, "Not Acceptable Here");  ->  t_reply(488, "Not
> Acceptable Here");
>
> Regards
>
>
>
> On Mon, Apr 3, 2023 at 6:09 PM Alberto <alberto.rinaudo at gmail.com> wrote:
>
>> 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 at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20230403/356737f8/attachment-0001.html>


More information about the Users mailing list