[asterisk-commits] rmudgett: branch 1.8 r350555 - in /branches/1.8: cel/ configs/ main/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Jan 13 11:12:54 CST 2012
Author: rmudgett
Date: Fri Jan 13 11:12:51 2012
New Revision: 350555
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=350555
Log:
Add missing CEL logging fields to various CEL backends.
* Add missing eventextra to cel_psql.c and cel_odbc.c.
* Add missing PeerAccount and EventExtra to cel_manager.c.
* Add missing userdeftype support for cel_custom.conf.sample and
cel_sqlite3_custom.conf.sample.
(closes issue ASTERISK-17190)
Reported by: Bryant Zimmerman
Modified:
branches/1.8/cel/cel_manager.c
branches/1.8/cel/cel_odbc.c
branches/1.8/cel/cel_pgsql.c
branches/1.8/configs/cel.conf.sample
branches/1.8/configs/cel_custom.conf.sample
branches/1.8/configs/cel_odbc.conf.sample
branches/1.8/configs/cel_pgsql.conf.sample
branches/1.8/configs/cel_sqlite3_custom.conf.sample
branches/1.8/main/cel.c
Modified: branches/1.8/cel/cel_manager.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/cel/cel_manager.c?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/cel/cel_manager.c (original)
+++ branches/1.8/cel/cel_manager.c Fri Jan 13 11:12:51 2012
@@ -61,11 +61,11 @@
.version = AST_CEL_EVENT_RECORD_VERSION,
};
- if (ast_cel_fill_record(event, &record)) {
+ if (!enablecel) {
return;
}
- if (!enablecel) {
+ if (ast_cel_fill_record(event, &record)) {
return;
}
@@ -90,13 +90,29 @@
"UniqueID: %s\r\n"
"LinkedID: %s\r\n"
"Userfield: %s\r\n"
- "Peer: %s\r\n",
- record.event_name, record.account_code, record.caller_id_num,
- record.caller_id_name, record.caller_id_ani, record.caller_id_rdnis,
- record.caller_id_dnid, record.extension, record.context, record.channel_name,
- record.application_name, record.application_data, start_time,
- ast_cel_get_ama_flag_name(record.amaflag), record.unique_id, record.linked_id,
- record.user_field, record.peer);
+ "Peer: %s\r\n"
+ "PeerAccount: %s\r\n"
+ "EventExtra: %s\r\n",
+ record.event_name,
+ record.account_code,
+ record.caller_id_num,
+ record.caller_id_name,
+ record.caller_id_ani,
+ record.caller_id_rdnis,
+ record.caller_id_dnid,
+ record.extension,
+ record.context,
+ record.channel_name,
+ record.application_name,
+ record.application_data,
+ start_time,
+ ast_cel_get_ama_flag_name(record.amaflag),
+ record.unique_id,
+ record.linked_id,
+ record.user_field,
+ record.peer,
+ record.peer_account,
+ record.extra);
}
static int load_config(int reload)
Modified: branches/1.8/cel/cel_odbc.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/cel/cel_odbc.c?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/cel/cel_odbc.c (original)
+++ branches/1.8/cel/cel_odbc.c Fri Jan 13 11:12:51 2012
@@ -438,6 +438,8 @@
ast_copy_string(colbuf, record.peer, sizeof(colbuf));
} else if (strcmp(entry->celname, "amaflags") == 0) {
snprintf(colbuf, sizeof(colbuf), "%d", record.amaflag);
+ } else if (strcmp(entry->celname, "eventextra") == 0) {
+ ast_copy_string(colbuf, record.extra, sizeof(colbuf));
} else {
colbuf[0] = 0;
}
Modified: branches/1.8/cel/cel_pgsql.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/cel/cel_pgsql.c?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/cel/cel_pgsql.c (original)
+++ branches/1.8/cel/cel_pgsql.c Fri Jan 13 11:12:51 2012
@@ -234,6 +234,8 @@
value = record.user_field;
} else if (strcmp(cur->name, "peer") == 0) {
value = record.peer;
+ } else if (strcmp(cur->name, "eventextra") == 0) {
+ value = record.extra;
} else {
value = NULL;
}
Modified: branches/1.8/configs/cel.conf.sample
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/configs/cel.conf.sample?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/configs/cel.conf.sample (original)
+++ branches/1.8/configs/cel.conf.sample Fri Jan 13 11:12:51 2012
@@ -56,13 +56,17 @@
; PARK_END -- Unpark event
; BRIDGE_START -- The time a bridge is started
; BRIDGE_END -- The time a bridge is ended
-; 3WAY_START -- When a 3-way conference starts (usually via attended xfer)
+; BRIDGE_UPDATE -- This is a replacement channel (Masquerade)
+; 3WAY_START -- When a 3-way conference starts (usually via attended transfer)
; 3WAY_END -- When one or all exit a 3-way conference
; BLINDTRANSFER -- When a blind transfer is initiated
; ATTENDEDTRANSFER -- When an attended transfer is initiated
; TRANSFER -- Generic transfer initiated; not used yet...?
+; PICKUP -- This channel picked up the peer channel
+; FORWARD -- This channel is being forwarded somewhere else
; HOOKFLASH -- So far, when a hookflash event occurs on a DAHDI
; interface
+; LINKEDID_END -- The last channel with the given linkedid is retired
; USER_DEFINED -- Triggered from the dialplan, and has a name given by the
; user
;
Modified: branches/1.8/configs/cel_custom.conf.sample
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/configs/cel_custom.conf.sample?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/configs/cel_custom.conf.sample (original)
+++ branches/1.8/configs/cel_custom.conf.sample Fri Jan 13 11:12:51 2012
@@ -22,10 +22,13 @@
; details from the CEL event. There are also a few variables created by this
; module that can be used in a mapping:
;
-; eventtype - The name of the CEL event.
-; eventtime - The timestamp of the CEL event.
-; eventextra - Extra data included with this CEL event, typically along with
-; an event of type USER_DEFINED from CELGenUserEvent().
+; eventtype - The name of the CEL event.
+; eventtime - The timestamp of the CEL event.
+; userdeftype - User defined event type name from CELGenUserEvent().
+; eventextra - Extra data included with this CEL event, typically along with
+; an event of type USER_DEFINED from CELGenUserEvent().
+; BRIDGEPEER - Bridged peer channel name at the time of the CEL event.
+; CHANNEL(peer) could also be used.
;
[mappings]
-;Master.csv => ${CSV_QUOTE(${eventtype})},${CSV_QUOTE(${eventtime})},${CSV_QUOTE(${CALLERID(name)})},${CSV_QUOTE(${CALLERID(num)})},${CSV_QUOTE(${CALLERID(ANI)})},${CSV_QUOTE(${CALLERID(RDNIS)})},${CSV_QUOTE(${CALLERID(DNID)})},${CSV_QUOTE(${CHANNEL(exten)})},${CSV_QUOTE(${CHANNEL(context)})},${CSV_QUOTE(${CHANNEL(channame)})},${CSV_QUOTE(${CHANNEL(appname)})},${CSV_QUOTE(${CHANNEL(appdata)})},${CSV_QUOTE(${CHANNEL(amaflags)})},${CSV_QUOTE(${CHANNEL(accountcode)})},${CSV_QUOTE(${CHANNEL(uniqueid)})},${CSV_QUOTE(${CHANNEL(linkedid)})},${CSV_QUOTE(${CHANNEL(peer)})},${CSV_QUOTE(${CHANNEL(userfield)})},${CSV_QUOTE(${eventextra})}
+;Master.csv => ${CSV_QUOTE(${eventtype})},${CSV_QUOTE(${eventtime})},${CSV_QUOTE(${CALLERID(name)})},${CSV_QUOTE(${CALLERID(num)})},${CSV_QUOTE(${CALLERID(ANI)})},${CSV_QUOTE(${CALLERID(RDNIS)})},${CSV_QUOTE(${CALLERID(DNID)})},${CSV_QUOTE(${CHANNEL(exten)})},${CSV_QUOTE(${CHANNEL(context)})},${CSV_QUOTE(${CHANNEL(channame)})},${CSV_QUOTE(${CHANNEL(appname)})},${CSV_QUOTE(${CHANNEL(appdata)})},${CSV_QUOTE(${CHANNEL(amaflags)})},${CSV_QUOTE(${CHANNEL(accountcode)})},${CSV_QUOTE(${CHANNEL(uniqueid)})},${CSV_QUOTE(${CHANNEL(linkedid)})},${CSV_QUOTE(${BRIDGEPEER})},${CSV_QUOTE(${CHANNEL(userfield)})},${CSV_QUOTE(${userdeftype})},${CSV_QUOTE(${eventextra})}
Modified: branches/1.8/configs/cel_odbc.conf.sample
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/configs/cel_odbc.conf.sample?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/configs/cel_odbc.conf.sample (original)
+++ branches/1.8/configs/cel_odbc.conf.sample Fri Jan 13 11:12:51 2012
@@ -47,6 +47,7 @@
; CEL_FORWARD = 25
; eventtime (timeval, includes microseconds)
; userdeftype (set only if eventtype == USER_DEFINED)
+; eventextra
; cid_name
; cid_num
; cid_ani
Modified: branches/1.8/configs/cel_pgsql.conf.sample
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/configs/cel_pgsql.conf.sample?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/configs/cel_pgsql.conf.sample (original)
+++ branches/1.8/configs/cel_pgsql.conf.sample Fri Jan 13 11:12:51 2012
@@ -34,6 +34,7 @@
; CEL_FORWARD = 25
; eventtime (timeval, includes microseconds)
; userdeftype (set only if eventtype == USER_DEFINED)
+; eventextra
; cid_name
; cid_num
; cid_ani
@@ -48,7 +49,7 @@
; peeraccount
; uniqueid
; linkedid
-; amaflag (an int)
+; amaflags (an int)
; userfield
; peer
Modified: branches/1.8/configs/cel_sqlite3_custom.conf.sample
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/configs/cel_sqlite3_custom.conf.sample?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/configs/cel_sqlite3_custom.conf.sample (original)
+++ branches/1.8/configs/cel_sqlite3_custom.conf.sample Fri Jan 13 11:12:51 2012
@@ -5,7 +5,19 @@
;
; Mappings for sqlite3 config file
;
+; Within a mapping, use the CALLERID() and CHANNEL() functions to retrieve
+; details from the CEL event. There are also a few variables created by this
+; module that can be used in a mapping:
+;
+; eventtype - The name of the CEL event.
+; eventtime - The timestamp of the CEL event.
+; userdeftype - User defined event type name from CELGenUserEvent().
+; eventextra - Extra data included with this CEL event, typically along with
+; an event of type USER_DEFINED from CELGenUserEvent().
+; BRIDGEPEER - Bridged peer channel name at the time of the CEL event.
+; CHANNEL(peer) could also be used.
+;
;[master] ; currently, only file "master.db" is supported, with only one table at a time.
;table => cel
-;columns => eventtype, eventtime, cidname, cidnum, cidani, cidrdnis, ciddnid, context, exten, channame, appname, appdata, amaflags, accountcode, uniqueid, userfield, peer
-;values => '${eventtype}','${eventtime}','${CALLERID(name)}','${CALLERID(num)}','${CALLERID(ANI)}','${CALLERID(RDNIS)}','${CALLERID(DNID)}','${CHANNEL(context)}','${CHANNEL(exten)}','${CHANNEL(channame)}','${CHANNEL(appname)}','${CHANNEL(appdata)}','${CHANNEL(amaflags)}','${CHANNEL(accountcode)}','${CHANNEL(uniqueid)}','${CHANNEL(userfield)}','${CHANNEL(peer)}'
+;columns => eventtype, eventtime, cidname, cidnum, cidani, cidrdnis, ciddnid, context, exten, channame, appname, appdata, amaflags, accountcode, uniqueid, userfield, peer, userdeftype, eventextra
+;values => '${eventtype}','${eventtime}','${CALLERID(name)}','${CALLERID(num)}','${CALLERID(ANI)}','${CALLERID(RDNIS)}','${CALLERID(DNID)}','${CHANNEL(context)}','${CHANNEL(exten)}','${CHANNEL(channame)}','${CHANNEL(appname)}','${CHANNEL(appdata)}','${CHANNEL(amaflags)}','${CHANNEL(accountcode)}','${CHANNEL(uniqueid)}','${CHANNEL(userfield)}','${BRIDGEPEER}','${userdeftype}','${eventextra}'
Modified: branches/1.8/main/cel.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/main/cel.c?view=diff&rev=350555&r1=350554&r2=350555
==============================================================================
--- branches/1.8/main/cel.c (original)
+++ branches/1.8/main/cel.c Fri Jan 13 11:12:51 2012
@@ -47,7 +47,7 @@
static unsigned char cel_enabled;
/*! \brief CEL is off by default */
-static const unsigned char CEL_ENALBED_DEFAULT = 0;
+#define CEL_ENABLED_DEFAULT 0
/*!
* \brief which events we want to track
@@ -65,12 +65,12 @@
/*!
* \brief Track no events by default.
*/
-static const int64_t CEL_DEFAULT_EVENTS = 0;
+#define CEL_DEFAULT_EVENTS 0
/*!
* \brief Number of buckets for the appset container
*/
-static const int NUM_APP_BUCKETS = 97;
+#define NUM_APP_BUCKETS 97
/*!
* \brief Container of Asterisk application names
@@ -298,7 +298,7 @@
ast_mutex_lock(&reload_lock);
/* Reset all settings before reloading configuration */
- cel_enabled = CEL_ENALBED_DEFAULT;
+ cel_enabled = CEL_ENABLED_DEFAULT;
eventset = CEL_DEFAULT_EVENTS;
*cel_dateformat = '\0';
ao2_callback(appset, OBJ_UNLINK | OBJ_NODATA | OBJ_MULTIPLE, NULL, NULL);
@@ -439,6 +439,9 @@
AST_LIST_INSERT_HEAD(headp, newvariable, entries);
}
+ if ((newvariable = ast_var_assign("userdeftype", record.user_defined_name))) {
+ AST_LIST_INSERT_HEAD(headp, newvariable, entries);
+ }
if ((newvariable = ast_var_assign("eventextra", record.extra))) {
AST_LIST_INSERT_HEAD(headp, newvariable, entries);
}
More information about the asterisk-commits
mailing list