#######################
# This file contains the description of configuration and general information about the
# "App_Acct" extension.

# This extension provides a simple Diameter Accounting server.
#  The extension does receive the Accounting-Request message, then
# saves the contents of the AVP in a database, as configured here.
#  The data is not processed at all. The intent is that a dedicated
# application will then pull from this database and process the data (consolidate 
# sessions, ...)

# In order to enable this extension, the main freeDiameter configuration file
# must contain the following declaration:
# LoadExtension = "extensions/app_acct.fdx" : "/path/to/app_acct.conf" ;
#######################

#################
## Part I: AVP ##
#################

# Configure here the AVPs that must be stored in the database.
# The format is:
#	  "AVP-dictionary-name" = {
#		field = "db-field-name";
#		required;
#		multi=N;
#	  };
# Where:
#  AVP-dictionary-name:
# 	The name of the AVP, such as "Session-Id". Only this field is mandatory.
#  field="...":
#	The name of the field in the database where is AVP contents will be saved.
#	The default is that the field is named as the AVP-dictionary-name.
#  required:
#	By default, if the AVP is not in the Diameter message, it is not passed in 
#	the INSERT statement (will get NULL). If Required is specified for the AVP,
#	an error is returned in the Diameter answer, and the data is discarded.
#  multi=N:
#	If an AVP may appear several times in a request, you may specify a number of
#	occurrences to save in the database. The Nth first occurrences of the AVP 
#	will be saved in fields "db-field-name1", "db-field-name2", ... "db-field-nameN"
#
# In case the default behavior for an AVP is fine, you can use the short syntax:
#  "AVP-dictionary-name";
#
# Note that at the moment, GROUPED AVP are not supported. Also, only the top-level AVPs are
# searched. This behavior can be changed quite easily if needed.

# You may look at contrib/app_acct_tools/app_acct.conf and database.sql files
# for an example of setup.


#######################
## Part II: Database ##
#######################

# You must specify the connection information to the database here.
# Please note that if the connection is terminated, it will trig the shutdown of the freeDiameter daemon
# For this reason, you should as much as possible use a local database.

# ConnInfo:
# The connection string to the database. See http://www.postgresql.org/docs/8.4/static/libpq-connect.html
# Example: ConnInfo = "host=localhost port=5432 dbname=acct user=acct password=freediameter";

# Table:
# The name of the table to use. The fields and types in this table must be created accordingly to the Part I configuration in this file.
# Example: Table = "incoming";

# Timestamp_field:
# Optionally, you can specify a name of a field that will receive the value 'now' when a new record is inserted.
# Default: no timestamp is inserted.
# Example: Timestamp_field = "recorded_on";

# Server_name_field:
# Optionally, you can specify a field which will receive the Diameter Identity of the local server for each record saved.
# This is useful especially if you have several Accounting servers and want to check Load-Balancing behavior or so,
# after aggregating all the data.
# Default: no server name inserted.
# Example: Server_name_field = "recorded_serv";



