[Kamailio-Users] prepaid system

Daniel-Constantin Mierla miconda at gmail.com
Wed Dec 31 10:44:48 CET 2008


On 12/30/08 14:23, Luciano Afranllie wrote:
> [...]
> I don't know if this has been discussed earlier but it would be nice
> to point some key requirements for a system supporting prepaid users
> and possible solutions to those requirements.
> I think several of us is doing the same things so, we can benefit from
> other experience and may be we can find a pattern (of course not
> perfect and "fit all") for this problem using open source
> alternatives.
> I am talking about something like this:
> - How to store and retrieve user category (postpaid, prepaid, etc).
> LDAP, Radius, SER groups?
this is usually up to what you are more familiar to. If you go for 
sql-db system, then you should have in consideration the 
load_credentials feature provided by auth_db module. With that you can 
load attributes per user at authentication, saving one extra db query.

As I am designed now my systems, I have dropped a lot of modules that 
were hiding behind sql queries, by using config file operations (via 
avp_db_query() and now, with trunk, via the new sqlops module). In this 
way I am not stuck to a predefined db structure and can use tricks that 
make the sql operation faster based on server side features. sqlops 
module makes possible to load caller and callee profiles in one query 
for each and keep them for entire route processing in memory, therefore, 
very fast access.
> - Callflows
Usually there are two scenarios
1) caller ----- proxy ----- b2bua ----- proxy ----- callee
2) caller ----- proxy ----- b2bua ----- pstn ----- callee

First is when you do prepaid for voip-to-voip and you deal with NAT, 
also when you have kind of sbc for the second proxy. The second is the 
typical case for calls terminated to pstn.

> - What IVR to use for user notifications (no credit, etc) and user
> balance check?
> Asterisk, SEMS, etc?
I use most of them. I go by default to Asterisk or FreeSWITCH, depending 
if it a more PBX-like service or carrier. SEMS is something I used a lot 
in the past.
> - How to enforce call tear down when credit is exhausted?
> What B2BUA to use?
B2BUA, all listed above are good options in certain conditions. The most 
important aspect is to understand scaling vs features requirements.

> - How to manage recharges?
Voucher cards + IVR is an option. Payment gateways (for credit cards) + 
their API.


Daniel-Constantin Mierla

More information about the Users mailing list