Freeradius Failed messages to MySQL -"Unsupported Acct-Status-Type"

Alan abaker at cliquecom.com
Mon Mar 20 20:59:57 CET 2006


I just can't get failed messages with Acct Status Type of 15 placed in a
MySQL database. The rlm_sql driver outputs an error message referring to an
unsupported status type, but I would like to know if it is possible to write
this information into the database. FreeRadius currently writes to a flat
file. Please help.

~Alan



--------------

Error message from FreeRadius debug: 

rlm_sql (sql): Unsupported Acct-Status-Type = 15


The account type is specified in the RFC and "dictionary.ser" as failed:

## Acct-Status-Type Values ###
VALUE Acct-Status-Type     Start             1         # RFC2866, acc
VALUE Acct-Status-Type     Stop              2         # RFC2866, acc
VALUE Acct-Status-Type     Failed           15         # RFC2866, acc


Missed call log from debug output for response code 603 (Decline) and 486
(Busy) which I would like this information written to the database.


        Acct-Status-Type = Failed
        Service-Type = Sip-Session
        Sip-Response-Code = 603
        Sip-Method = 1
        User-Name = "alan at sip.host.com"
        Calling-Station-Id = "sip:alan at sip.host.com"
        Called-Station-Id = "sip:chidu at sip.host.com"
        Sip-Translated-Request-URI = "sip:chidu at 10.180.2.13:5060"
        Acct-Session-Id = "dc06f80821541776 at YWJha2Vy"
        Sip-To-Tag = "4c4efb52"
        Sip-From-Tag = "ae6a1764"
        Sip-Cseq = "1"
        NAS-Port = 5060
        Acct-Delay-Time = 0
        NAS-IP-Address = 127.0.0.1

Acct-Status-Type = Failed
        Service-Type = Sip-Session
        Sip-Response-Code = 486
        Sip-Method = 1
        User-Name = "alan at sip.host.com"
        Calling-Station-Id = "sip:alan at sip.host.com"
        Called-Station-Id = "sip:chidu at sip.host.com"
        Sip-Translated-Request-URI = "sip:chidu at 10.180.2.13:5060"
        Acct-Session-Id = "3e49f433b443d02f at YWJha2Vy"
        Sip-To-Tag = "1e237c68"
        Sip-From-Tag = "0678bd37"
        Sip-Cseq = "1"
        NAS-Port = 5060
        Acct-Delay-Time = 0
        NAS-IP-Address = 127.0.0.1


Accounting query in "sql.conf":


        accounting_failed_query = "\
          INSERT INTO ${acct_table1} \
(RadAcctId, AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress,
NASPortId, AcctStartTime, AcctStopTime, AcctSessionTime, \
AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId,
AcctTerminateCause, ServiceType, FramedProtocol, \
FramedIPAddress, AcctStartDelay, AcctStopDelay, SipResponseCode, SipMethod,
SipTranslatedRequestURI, SipToTag, SipFromTag, \
SipRPIDHeader, SourceIP, SourcePort, CanonicalURI) \
          VALUES \
(NULL, '%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}',
'%{SQL-User-Name}', SUBSTRING_INDEX('%{SQL-User-Name}', '@',-1), \
'%{NAS-IP-Address}', '%{NAS-Port}', '%S', '%S', '0', '0', '0',
'%{Called-Station-Id}', '%{Calling-Station-Id}', \
'%{Sip-Response-Code}', '%{Service-Type}', '%{Framed-Protocol}',
'%{Framed-IP-Address}', '%{Acct-Delay-Time}', '0', \
'%{Sip-Response-Code}', '%{Sip-Method}', '%{Sip-Translated-Request-URI}',
MD5(RAND()), '%{Sip-From-Tag}', '%{Sip-RPId}', \
'%{Source-IP}', '%{Source-Port}', '%{Canonical-URI}')"








More information about the Freeradius-Users mailing list