FAQ
The following module was proposed for inclusion in the Module List:

modid: ISP::RADIUS
DSLIP: ampOp
description: Accounting and DB management for FreeRADIUS
userid: STEVEB (Steve Bertrand)
chapterid: 23 (Miscellaneous_Modules)
communities:
Mailing list, initially

similar:

rationale:

Namespace choice:

I have written numerous modules that are quite specific to the
day-to-day operation within the Internet Service Provider industry.

Another project that I plan on uploading to the CPAN in the near
future contains numerous modules that are (currently) under my
internal ISP:: namespace, which contains an entire ISP-type
client/accounting/notes/ledger management system.

My rationale for a new top-level namespace is to provide a location
that is generally industry specific in hopes to spur new ideas from
the service provider crowd, bundle together industry-related
software all-the-while making it available to others outside of the
industry who may find it useful.

Module Rationale:

FreeRADIUS is (and has been) bundled with a few 'accounting'
aggregation and management scripts. To be useful to me, I had to
severely hack them in several different ways.

My module (and related scripts) are strict/warnings compliant, have
(pretty much) complete documentation, tests, and essentially allow
the user to do more with the provided scripts.

The overall purpose is for aggregating the user RADIUS
time/bandwidth used so that it can be searched by day or month. It
also archives the fast-growing accounting database table in order to
keep it manageable. Many ISPs are, or will be doing all of their
billing based on bandwidth consumption. This module tries to aid in
the monthly billing data collection.

The return values of the `get` type methods are formatted in such a
way that they can be passed into most Template systems on the market
(CPAN, as it were) directly, if they support a TMPL_LOOP style
iterator.

The interface is OO, and although in alpha, I do use it in
production. The module API is designed so that all methods require
hashref name-based params, so new parameters can be easily added
without breaking existing installations.

Core configuration items come from a config file, and some options
can be overridden at runtime. Although designed with MySQL in mind,
it successfully operates with SQLite. MySQL replication is possible
via the config file (so long as the DB repl is set up properly
beforehand), and the master can be disabled for writes (for eg
maintenance) while reads are still possible via the slaves (again,
via the config).

Tests have their own pre-populated sqlite3 dataset, and the
installer knows to compile and use this test dataset if one runs the
test files individually, or within a 'make test'.

Feedback/criticism welcome, steve@ibctech.ca

Steve

enteredby: STEVEB (Steve Bertrand)
enteredon: Wed Dec 30 00:20:18 2009 GMT

The resulting entry would be:

ISP::
::RADIUS ampOp Accounting and DB management for FreeRADIUS STEVEB


Thanks for registering,

Search Discussions

  • Brian d foy at Dec 30, 2009 at 10:45 am
    [[ This message was both posted and mailed: see
    the "To," "Cc," and "Newsgroups" headers for details. ]]

    In article <200912300020.nBU0KJN1014067@pause.fiz-chemie.de>, Perl
    Authors Upload Server wrote:
    The following module was proposed for inclusion in the Module List:

    modid: ISP::RADIUS
    DSLIP: ampOp
    description: Accounting and DB management for FreeRADIUS
    userid: STEVEB (Steve Bertrand)
    My rationale for a new top-level namespace is to provide a location
    that is generally industry specific in hopes to spur new ideas from
    the service provider crowd
    Although ISP use RADIUS, wouldn't this also be useful to people using
    RADIUS in an enterprise setting? I don't see the ISP being the
    attraction in the name. If people need to use a RADIUS module, they are
    going to search for RADIUS.

    Since this is also specifically for FreeRADIUS, should the name just be
    FreeRADIUS?

    If you want to build a Task:* or Bundle::* for ISPs, that's a different
    thing. The building blocks, however, can stand on their own.

    --
    brian d foy (one of many PAUSE admins), http://pause.perl.org
    PAUSE instructions: http://pause.perl.org/pause/query?ACTION=pause_04about
    Archives: http://www.xray.mpe.mpg.de/mailing-lists/modules
    Please send all messages back to modules@perl.org with no CC to me.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupmodules @
categoriesperl
postedDec 30, '09 at 12:20a
activeDec 30, '09 at 10:45a
posts2
users2
websitecpan.org...

People

Translate

site design / logo © 2018 Grokbase