From c0e1b1a6b5fbee52766312dcf65516877fd4392b Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Wed, 3 Jul 2024 14:35:13 -0600 Subject: [PATCH] Changed the order of missed_call conditions Move billsec condition near the end but before voicemail. If a call center call was missed but answered by an extension with the exit action then the call wasn't technically missed. --- app/xml_cdr/resources/classes/xml_cdr.php | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/xml_cdr/resources/classes/xml_cdr.php b/app/xml_cdr/resources/classes/xml_cdr.php index 777406397c..b103e5326c 100644 --- a/app/xml_cdr/resources/classes/xml_cdr.php +++ b/app/xml_cdr/resources/classes/xml_cdr.php @@ -486,10 +486,6 @@ if (!class_exists('xml_cdr')) { && $xml->variables->hangup_cause == 'ORIGINATOR_CANCEL') { $missed_call = 'true'; } - if (isset($xml->variables->billsec) && $xml->variables->billsec > 0) { - //answered call - $missed_call = 'false'; - } if (isset($xml->variables->cc_side) && $xml->variables->cc_side == 'agent') { //call center $missed_call = 'false'; @@ -506,6 +502,15 @@ if (!class_exists('xml_cdr')) { //ring group or multi destination bridge statement $missed_call = 'false'; } + if (isset($xml->variables->cc_side) && $xml->variables->cc_side == 'member' + && isset($xml->variables->cc_cause) && $xml->variables->cc_cause == 'cancel') { + //call center + $missed_call = 'true'; + } + if (isset($xml->variables->billsec) && $xml->variables->billsec > 0) { + //answered call + $missed_call = 'false'; + } if (isset($xml->variables->destination_number) && substr($xml->variables->destination_number, 0, 3) == '*99') { //voicemail $missed_call = 'true'; @@ -514,11 +519,6 @@ if (!class_exists('xml_cdr')) { //voicemail $missed_call = 'true'; } - if (isset($xml->variables->cc_side) && $xml->variables->cc_side == 'member' - && isset($xml->variables->cc_cause) && $xml->variables->cc_cause == 'cancel') { - //call center - $missed_call = 'true'; - } //read the bridge statement variables if (isset($xml->variables->last_app)) {