Radius Call Log Plug-in README (C) 2002-2007, Brekeke Software, Inc. All rights reserved. Date: April 20, 2007 1. Introduction ~~~~~~~~~~~~~~~~~~~~~~ Radius Call Log plug-in is a sample program for learning how to develop a Brekeke PBX Call Log plug-in. You can use it as it is, also you can modify the plug-in as you like. This plug-in is developed partially based on draft-schulzrinne-sipping-radius-accounting-00.txt. 2. Contents ~~~~~~~~~~~~~~~~~~~~~~ radius_calllog.zip includes the following contents. com (directory) ... Source files of Radius Call Log plug-in net (directory) ... Source file of Java Radius Client obtained from http://www.java-radius-client.fr.fm/.(partially modified) radiuscalllog.jar ... a jar file which include compressed com and net directories. radius.properties ... a property file README_e.txt ... README (English) README_j.txt ... README (Japanese) 3. Installation ~~~~~~~~~~~~~~~~~~~~~~ 1)Put radiuscalllog.jar file into Brekeke_pbx_install_dir\webapps\pbx\WEB-INF\lib directory. 2)Put radius.properties file into Brekeke_pbx_install_dir\webapps\pbx\WEB-INF\work\pbx directory and set the following parameters. radius.authport = 1812 radius.acctport = 1813 radius.radiushost = Radius_server_IP_address radius.sharedsecret = Shared_secret radius.enablelog = true or false 3)Open the file Brekeke_pbx_install_dir\webapps\pbx\WEB-INF\work\pbx\setting.properties and add the following line. com.brekeke.pbx.Setting.LOGWRITER=com.somebody.radius.accounting.RadiusCallLog 4)Restart Brekeke PBX machine. 4. Radius Call Log behavior ~~~~~~~~~~~~~~~~~~~~~~ This Radius Call Log plug-in sends the call log to your Radius Server only when the call matches with one of the ARS rule. Whenever a call (which matches with an ARS rule) ends, this plug-in sends 2 Radius Request packets to your Radius Server. The first packet includes timestamp of talk start time, caller, callee. The second packets includes timestamp of talk end time and duration of call. 5. Modification of the Radius Call Log Plug-in ~~~~~~~~~~~~~~~~~~~~~~ Source files are included in this package. Please modify it as you like. 6. Test with FreeRadius Server ~~~~~~~~~~~~~~~~~~~~~~ 1)Download the latest FreeRadius from http://www.freeradius.org/getting.html. 2)Extract the file and execute the followings. ./configure make make install 3)Open the file /usr/local/etc/raddb/clients.conf and add a radius client info, i.e. Brekeke PBX's information. Example: client 192.168.0.100 { secret = shortname = 192.168.0.100 } should be the same string text as the string you set for the property radius.sharedsecret in the radius.properties file. 4)Open the file /usr/local/etc/raddb/radiusd.conf. Please find the section "accounting{" in the file and comment out the line "detail". Detailed Call Log information will be stored in /usr/local/var/log/radius/radacct/IP_address_of_radius_client directory by default. You can check there what information was sent from the plug-in. 5)Start your Radius server /usr/local/sbin/radiusd -X 6)Test by calling which an ARS rule will be applied and check if Radius packets are sent to your Radius Server.