You might want to use the db_extra Parameter in the acc-Module:
http://kamailio.org/docs/modules/4.0.x/modules/acc.html#idp1653488
modparam("acc", "db_extra",
"real_error=$avp(s:real_error)")
(requires a real_error column in the acc-Table)
And in your failure route you could do:
$avp(s:real_error) = $T_reply_code;
// $T_reply_code should be the error-Code from the Transaction, see
//
http://www.kamailio.org/wiki/cookbooks/devel/pseudovariables#t_reply_code
Then you should get that info in your acc-Data....
I never tested this, but it should work. We use something similar to
store information about the Call-Forwardings....
Kind regards,
Carsten
2013/11/27 Klaus Darilion <klaus.mailinglists(a)pernau.at>at>:
I think it is a conceptual question indeed. You
"abuse" the 403 error in
some table (actually "missed_calls" is for missed calls, not for rejected
calls) to log/account a rejected call.
Make it more explicit. If you want to track rejected calls, make a dedicated
table and insert an record into this table at the moment the call is
redirected to the announcement (not afterwards). You can do this by some
manual SQL query, or use acc_db_request(comment, table) [1] and manually
force the accounting in this dedicated table.
regards
klaus
[1]
http://kamailio.org/docs/modules/4.0.x/modules/acc.html#idp1687632
On 26.11.2013 13:36, Oliver Roth wrote:
Hi all
Based on my problem reported with subject „error handling
<http://sip-router.1086192.n5.nabble.com/error-handling-tp123240.html>“
I have some other questions.
I think it is a conceptual question – and I do not see any solution.
I would like to handle Kamailio with carrierroute / carrierfailureroute
module different errors.
Like 404, 403, busy – or whatever sip error occurs.
Some of them need to be sent to a freeswitch playing an announcement
(like “this number is blocked”, “no more credit”, …).
So if an error occur (lets say 403) then the call is routed by
carrierfailurroute to fresswitch playing message for 403.
If I am listening the whole message – I get back error 403 at the end
and the call is logged in missed calls as error 403 sent from the
freeswitch – everything ok.
If I cancel the listening by hanging up – 487 is stored in missed_calls
– cause I terminated the call before getting error 403 back from
freeswitch. èso I loose this important information
How can I get back error 403 – play an announcement and make sure, it
is logged as 403 in database?
Thanks for helping …
Oli
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
--
Carsten Bock
CEO (Geschäftsführer)
ng-voice GmbH
Schomburgstr. 80
D-22767 Hamburg / Germany
http://www.ng-voice.com
mailto:carsten@ng-voice.com
Office +49 40 34927219
Fax +49 40 34927220
Sitz der Gesellschaft: Hamburg
Registergericht: Amtsgericht Hamburg, HRB 120189
Geschäftsführer: Carsten Bock
Ust-ID: DE279344284
Hier finden Sie unsere handelsrechtlichen Pflichtangaben:
http://www.ng-voice.com/imprint/