About

Provides RADIUS authentication, also useful for connecting to billing packages such as Jerasoft.

Features

Implemented

Authorization: Directory lookup for sip registrations(hash only, no passwords) Dialplan app for authorization

Accounting: Per leg accounting regular expression based limiting for accounting on nearly any channel variable

Misc: Ability to specify channel variable, plus alternate channel variable to use for field values

Missing

There are four good ways to have the feature added:

Example freeradius config

Radius users entry ( cleartext password or HA1 hash required for digest authentication )

bob Cleartext-Password := "zanzibar", Realm == "biloxi.com"
        Reply-Message = "Welcome to FreeSWITCH!",
        Freeswitch-AVPair = "alias=315",
        Freeswitch-AVPair += "international=yes",
        Freeswitch-AVPair += "natuser=no",
        Freeswitch-AVPair += "vm_pass=1234"

Dialplan Use Examples

To schedule hangup when time runs out:

<action application="set" data="execute_on_answer=sched_hangup +${h323-credit-time} allotted_timeout" />


To tell user the number of minutes:

<action application="pre_answer" />
<action application="playback" data="/usr/local/freeswitch/sounds/en/us/callie/voicemail/8000/vm-you_have.wav"/>
<action application="set" data="h323-credit-time-minutes=${expr(floor(${h323-credit-time}/60))}"/>
<action application="say" data="en number pronounced ${h323-credit-time-minutes}"/>
<action application="playback" data="/usr/local/freeswitch/sounds/en/us/callie/time/8000/minutes.wav"/>

 

To tell the user their account balance / funds remaining:

<action application="pre_answer" />
<action application="playback" data="/usr/local/freeswitch/sounds/en/us/callie/ivr/8000/ivr-account_balance_is.wav"/>
<action application="say" data="en currency pronounced ${h323-credit-amount}"/>