From c8cf3ad389ffbcf96e3079fc776a27da737f79b7 Mon Sep 17 00:00:00 2001 From: Frederic LE FOLL Date: Thu, 5 Sep 2019 18:09:28 +0200 Subject: [PATCH] ChanIsAvail() generates a CDR when unanswered=yes in cdr.conf. ChanIsAvail() creates a temporary channel with ast_request() to test resource availability. It should not generate a CDR when it hangs up this temporary channel. This patch disables CDR generation for the temporary channel with ast_cdr_set_property(). ASTERISK-28527 Change-Id: I7b0555c6909c7d322e452dde97c9ea5b111552d1 --- apps/app_chanisavail.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/app_chanisavail.c b/apps/app_chanisavail.c index 70325b3fa0..446bce1b01 100644 --- a/apps/app_chanisavail.c +++ b/apps/app_chanisavail.c @@ -178,6 +178,9 @@ static int chanavail_exec(struct ast_channel *chan, const char *data) snprintf(tmp, sizeof(tmp), "%d", status); ast_str_append(&tmp_availcause, 0, "%s%s", ast_str_strlen(tmp_availcause) ? "&" : "", tmp); + /* Disable CDR for this temporary channel. */ + ast_cdr_set_property(ast_channel_name(tempchan), AST_CDR_FLAG_DISABLE_ALL); + ast_hangup(tempchan); tempchan = NULL; -- 2.47.2