I'm looking to implement a prepaid card type service - I plan on using
Session-Timeout to disconnect the users.


actually this is not a way prepaid cards works. In this case you are giving the same time for the user at any time he connects to the NAS. But you have to make a mechanism which disables the access for the specific person after some time period. You can try to use sqlcounter module for these purposes.

How does freeradius keep
track of the time elapsed while connected? I am holding all the info
in SQL - I guess when a user connects it counts down until 0 then
sends the signal to the NAS to disconnect - if the user reconnects it
is back to the original value.


it depends on your NAS server - whether it supports or not such a user disconnection. For example, MikroTik does.

How can I have a counter that doesn't expire - say the user 'topped
up' by 30 days worth on the 9th of the month - it wouldn't expire
until 30 days from then (so couldn't use monthly counters?)


write your own script, put it in crontab. In the DB add specific column where the deadline should be set for the customer. That script should check this column - whether it's valid or not.

Edgars

- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to