diff options
Diffstat (limited to 'main/cdr.c')
-rw-r--r-- | main/cdr.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/main/cdr.c b/main/cdr.c index 929ebcef4..183252438 100644 --- a/main/cdr.c +++ b/main/cdr.c @@ -102,11 +102,6 @@ int check_cdr_enabled() return enabled; } -int ast_cdr_log_unanswered(void) -{ - return unanswered; -} - /*! Register a CDR driver. Each registered CDR driver generates a CDR \return 0 on success, -1 on failure */ @@ -985,6 +980,12 @@ static void post_cdr(struct ast_cdr *cdr) struct ast_cdr_beitem *i; for ( ; cdr ; cdr = cdr->next) { + if (!unanswered && cdr->disposition < AST_CDR_ANSWERED && (ast_strlen_zero(cdr->channel) || ast_strlen_zero(cdr->dstchannel))) { + /* For people, who don't want to see unanswered single-channel events */ + ast_set_flag(cdr, AST_CDR_FLAG_POST_DISABLED); + continue; + } + chan = S_OR(cdr->channel, "<unknown>"); check_post(cdr); if (ast_tvzero(cdr->end)) |