blob: a3fae805af1c1e75156fd8148c74afe336862b16 [file] [log] [blame]
Brian Waters13d96012017-12-08 16:53:31 -06001#######################
2# This file contains the description of configuration and general information about the
3# "App_Acct" extension.
4
5# This extension provides a simple Diameter Accounting server.
6# The extension does receive the Accounting-Request message, then
7# saves the contents of the AVP in a database, as configured here.
8# The data is not processed at all. The intent is that a dedicated
9# application will then pull from this database and process the data (consolidate
10# sessions, ...)
11
12# In order to enable this extension, the main freeDiameter configuration file
13# must contain the following declaration:
14# LoadExtension = "extensions/app_acct.fdx" : "/path/to/app_acct.conf" ;
15#######################
16
17#################
18## Part I: AVP ##
19#################
20
21# Configure here the AVPs that must be stored in the database.
22# The format is:
23# "AVP-dictionary-name" = {
24# field = "db-field-name";
25# required;
26# multi=N;
27# };
28# Where:
29# AVP-dictionary-name:
30# The name of the AVP, such as "Session-Id". Only this field is mandatory.
31# field="...":
32# The name of the field in the database where is AVP contents will be saved.
33# The default is that the field is named as the AVP-dictionary-name.
34# required:
35# By default, if the AVP is not in the Diameter message, it is not passed in
36# the INSERT statement (will get NULL). If Required is specified for the AVP,
37# an error is returned in the Diameter answer, and the data is discarded.
38# multi=N:
39# If an AVP may appear several times in a request, you may specify a number of
40# occurrences to save in the database. The Nth first occurrences of the AVP
41# will be saved in fields "db-field-name1", "db-field-name2", ... "db-field-nameN"
42#
43# In case the default behavior for an AVP is fine, you can use the short syntax:
44# "AVP-dictionary-name";
45#
46# Note that at the moment, GROUPED AVP are not supported. Also, only the top-level AVPs are
47# searched. This behavior can be changed quite easily if needed.
48
49# You may look at contrib/app_acct_tools/app_acct.conf and database.sql files
50# for an example of setup.
51
52
53#######################
54## Part II: Database ##
55#######################
56
57# You must specify the connection information to the database here.
58# Please note that if the connection is terminated, it will trig the shutdown of the freeDiameter daemon
59# For this reason, you should as much as possible use a local database.
60
61# ConnInfo:
62# The connection string to the database. See http://www.postgresql.org/docs/8.4/static/libpq-connect.html
63# Example: ConnInfo = "host=localhost port=5432 dbname=acct user=acct password=freediameter";
64
65# Table:
66# 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.
67# Example: Table = "incoming";
68
69# Timestamp_field:
70# Optionally, you can specify a name of a field that will receive the value 'now' when a new record is inserted.
71# Default: no timestamp is inserted.
72# Example: Timestamp_field = "recorded_on";
73
74# Server_name_field:
75# Optionally, you can specify a field which will receive the Diameter Identity of the local server for each record saved.
76# This is useful especially if you have several Accounting servers and want to check Load-Balancing behavior or so,
77# after aggregating all the data.
78# Default: no server name inserted.
79# Example: Server_name_field = "recorded_serv";
80
81
82