RADIUS Preauthentication
When “$radius.preauth” is defined in DialPlan, Brekeke SIP Server will send a RADIUS Pre-Authentication Access-Request to a RADIUS server.
If RADIUS server supports Preauthentication, RADIUS server’s response packet will contain a return-code, credit amount, credit time, and currency. These return values can be obtained by variables below.
Syntax:
$radius.preauth $radius.preauth( Username, Caller-ID, Called-ID, Password )
Returns:
true – if the preauthentication succeeded.
false – If the preauthentication failed
Variables:
These variables are set in $radius.preauth.
&preauth.result - the same value as the return value. &preauth.h323-return-code - H323-return-code value (if exists) &preauth.h323-credit-time - H323-credit-time value (if exists) &preauth.h323-credit-amount - H323-credit-amount value (if exists) &preauth.h323-currency - H323-currency value (if exists)
Example
Ex1: Send RADIUS Pre-Authentication Access-Request
———————————
[Matching Patterns]
$request = ^INVITE
$radius.preauth(“1000”, “1000”, “1001”, “password1000”) = (.+)
[Deploy Patterns]
$continue = true
———————————
Ex2: Get RADIUS balance information and set related SIP header
--------------------------------- [Matching Patterns] $request = ^INVITE &preauth.h323-credit-amount = (.+) &preauth.h323-currency = (.+) [Deploy Patterns] _Balance = %1%2 $continue = true ---------------------------------
Ex3: Get RADIUS talking time informaiton and set talking timeout
Brekeke SIP Server will disconnect call when timeout happens
--------------------------------- [Matching Patterns] $request = ^INVITE &preauth.h323-credit-time = (.+) [Deploy Patterns] &net.sip.timeout.talking = %1 &net.sip.timeout.expand.talking = false $continue = true ---------------------------------
Ex4: check if RADIUS pre-authentication request is accepted
--------------------------------- [Matching Patterns] $request = ^INVITE &preauth.result = true ---------------------------------
See Also:
$radius.preauth
RADIUS PreAuthentication Request: Attributes