Hi Steven,
If you want, I can provide you an example config based on ims_charging and ims_ocs without IMS. Even though, we do not use ims_ocs anymore in new deployments, we still have it running in production.
Thanks, Carsten
Stephen Bucklin steve@telcoelectronics.uk schrieb am Sa., 25. Mai 2019, 01:31:
Alex, Thanks so much for that. A lot to play with in the morning. I did set up an rtimer that called a route that then did checks if the number of dialogs > 1. I think I will keep playing with the time slices as the user may divert, conference etc so keeping the charging real time is my goal. There is also the potential of data usage at the same time. The credit is calculated on set up for the dialled path (mo and term costs) if each call and the charging calculator will then "reserve" money for 30 seconds and allow connection. Every 30 seconds it would request another 30 using a uuid passed in set up. I am hoping this will minimise Balance inconsistency for multiple calls + sms + data, with the actual accounting being done upon completion. I did not even think of jsonrpc, that will keep me reading tomorrow! Thanks, Steve
On Sat, 25 May 2019 at 00:17, Alex Balashov abalashov@evaristesys.com wrote:
Well, the generic answer to the question of how to periodically do something in the background is 'rtimer':
https://kamailio.org/docs/modules/5.2.x/modules/rtimer.html
This can be combined with putting dialogs in an `htable` (perhaps using the dialog module's start/end event_routes) and walking over the entries in a background rtimer route:
https://kamailio.org/docs/modules/5.2.x/modules/htable.html#htable.f.sht_ite...
Alternately, one can use jsonrpc_exec()
https://kamailio.org/docs/modules/5.2.x/modules/jsonrpcs.html#jsonrpcs.f.jso...
to run 'dlg.list':
https://kamailio.org/docs/modules/5.2.x/modules/dialog.html#dlg.r.list
... and iterate over the output with the help of the 'jansson' module (JSON parser):
https://kamailio.org/docs/modules/5.2.x/modules/jansson.html
But honestly, I'd ask yourself whether this extra layer of complexity is truly worth it. For a lot of prepaid setups, live balance decrementing isn't worth the bother.
An alternate and simpler approach is to just let the call be initiated if the balance is > 0 at the time the call is made, then deduct from the balance when the call ends.
Yeah, it means someone's free to make a 4 hour call without the prepaid credit to support it, and worse yet, possibly a number of 4 hour calls initiated simultaneously. But most calls aren't like that, and from a business perspective, is it really worth the headache of live decrementing and all the moving parts involved?
Maybe it is, but I would at least ask the question.
-- Alex
On Fri, May 24, 2019 at 06:18:19PM +0100, Steve Bucklin wrote:
Hello all (again),
I am looking at a 'good' method to start a call with "chunks" of time allocated. I wish the initial call to check a credit, and if credit is
good,
allow a small amount of time (say 30 seconds). I have enabled DIALOG and have looked at CNXCC, but am confused!
When the initial 30 seconds runs out, I want to authorise another 30 seconds, etc, etc, etc. I have started to play and set a dialog timer
that
expires to a route, and then can 'return' allowing the call to continue
BUT was not able to reset the dialog timer to trip again after another
30
seconds.
I tried to 'set_max_time' on cnxcc, but this did not seem to trip the
event
route upon timeout?
Does anyone have a pointer to any examples? I also am unsure of how to update the timer and keep a call in play!
Steve
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Alex Balashov | Principal | Evariste Systems LLC
Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users