diff options
-rw-r--r-- | CHANGES | 2 | ||||
-rw-r--r-- | include/asterisk/cdr.h | 1 | ||||
-rw-r--r-- | main/cdr.c | 6 | ||||
-rw-r--r-- | main/pbx.c | 2 |
4 files changed, 11 insertions, 0 deletions
@@ -478,6 +478,8 @@ Call Detail Records (but a record will still be inserted, based on what columns remain). Note that the other two features from cdr_adaptive_odbc (alias and filter) are not currently supported. + * The ResetCDR application now has an 'e' option that re-enables a CDR if it + has been disabled using the NoCDR application. Miscellaneous New Modules ------------------------- diff --git a/include/asterisk/cdr.h b/include/asterisk/cdr.h index 96a5dc497..e8727ab4c 100644 --- a/include/asterisk/cdr.h +++ b/include/asterisk/cdr.h @@ -29,6 +29,7 @@ #define AST_CDR_FLAG_LOCKED (1 << 2) #define AST_CDR_FLAG_CHILD (1 << 3) #define AST_CDR_FLAG_POST_DISABLED (1 << 4) +#define AST_CDR_FLAG_POST_ENABLE (1 << 5) /*! \name CDR Flags */ /*@{ */ diff --git a/main/cdr.c b/main/cdr.c index 488eeee1c..00d66afec 100644 --- a/main/cdr.c +++ b/main/cdr.c @@ -1025,6 +1025,12 @@ void ast_cdr_reset(struct ast_cdr *cdr, struct ast_flags *_flags) ast_set_flag(cdr, AST_CDR_FLAG_POSTED); } + /* enable CDR only */ + if (ast_test_flag(&flags, AST_CDR_FLAG_POST_ENABLE)) { + ast_clear_flag(cdr, AST_CDR_FLAG_POST_DISABLED); + continue; + } + /* clear variables */ if (!ast_test_flag(&flags, AST_CDR_FLAG_KEEP_VARS)) { ast_cdr_free_vars(cdr, 0); diff --git a/main/pbx.c b/main/pbx.c index e59ee9ea8..d790dddf1 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -589,6 +589,7 @@ static struct pbx_builtin { " w -- Store the current CDR record before resetting it.\n" " a -- Store any stacked records.\n" " v -- Save CDR variables.\n" + " e -- Enable CDR only (negate effects of NoCDR).\n" }, { "Ringing", pbx_builtin_ringing, @@ -6846,6 +6847,7 @@ AST_APP_OPTIONS(resetcdr_opts, { AST_APP_OPTION('w', AST_CDR_FLAG_POSTED), AST_APP_OPTION('a', AST_CDR_FLAG_LOCKED), AST_APP_OPTION('v', AST_CDR_FLAG_KEEP_VARS), + AST_APP_OPTION('e', AST_CDR_FLAG_POST_ENABLE), }); /*! |