From c092ebacd2e826ae14531e9e3ab273936056570d Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 13:59:15 -0800 Subject: [PATCH 01/11] Update 010_user_exists.xml --- .../resources/switch/conf/dialplan/010_user_exists.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/dialplan/resources/switch/conf/dialplan/010_user_exists.xml b/app/dialplan/resources/switch/conf/dialplan/010_user_exists.xml index 8353c4aafb..2e3ea279df 100644 --- a/app/dialplan/resources/switch/conf/dialplan/010_user_exists.xml +++ b/app/dialplan/resources/switch/conf/dialplan/010_user_exists.xml @@ -12,6 +12,8 @@ + + @@ -19,4 +21,4 @@ - \ No newline at end of file + From 9a1d6505329a9e5c19832b91bffb30faeda2f3ab Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 13:59:43 -0800 Subject: [PATCH 02/11] Update app_config.php --- app/extensions/app_config.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/extensions/app_config.php b/app/extensions/app_config.php index 77a68de9ea..292d76fb3a 100644 --- a/app/extensions/app_config.php +++ b/app/extensions/app_config.php @@ -366,6 +366,14 @@ $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; $apps[$x]['db'][$y]['fields'][$z]['description']['en'] = ""; $z++; + $apps[$x]['db'][$y]['fields'][$z]['name'] = "forward_user_not_registered_destination"; + $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; + $apps[$x]['db'][$y]['fields'][$z]['description']['en'] = ""; + $z++; + $apps[$x]['db'][$y]['fields'][$z]['name'] = "forward_user_not_registered_enabled"; + $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; + $apps[$x]['db'][$y]['fields'][$z]['description']['en'] = ""; + $z++; $apps[$x]['db'][$y]['fields'][$z]['name'] = "follow_me_uuid"; $apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = "uuid"; $apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = "text"; From 203d868429250ea68af1287e568eb729920c8c9c Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:00:13 -0800 Subject: [PATCH 03/11] Update app_languages.php --- app/calls/app_languages.php | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/app/calls/app_languages.php b/app/calls/app_languages.php index d475fee621..555de349e7 100644 --- a/app/calls/app_languages.php +++ b/app/calls/app_languages.php @@ -122,6 +122,17 @@ $text['label-no_answer']['sv-se'] = "Inget Svar "; $text['label-no_answer']['uk'] = "Без відповіді"; $text['label-no_answer']['de-at'] = "Keine Antwort"; +$text['label-not_registered']['en-us'] = "Not Registered"; +$text['label-not_registered']['es-cl'] = ""; +$text['label-not_registered']['pt-pt'] = ""; +$text['label-not_registered']['fr-fr'] = ""; +$text['label-not_registered']['it-it'] = ""; +$text['label-not_registered']['pt-br'] = ""; +$text['label-not_registered']['pl'] = ""; +$text['label-not_registered']['sv-se'] = ""; +$text['label-not_registered']['uk'] = ""; +$text['label-not_registered']['de-at'] = ""; + $text['label-ignore-busy']['en-us'] = "Ignore Busy"; $text['label-ignore-busy']['es-cl'] = ""; $text['label-ignore-busy']['pt-pt'] = ""; @@ -335,6 +346,17 @@ $text['description-no_answer']['sv-se'] = "Om aktiverad, så tar den överhand f $text['description-no_answer']['uk'] = ""; $text['description-no_answer']['de-at'] = "Falls aktiv, wird der Wert 'Mailbox eingeschaltet' in der Nebenstelle überschrieben"; +$text['description-not_registered']['en-us'] = "If endpoint is not reachable, forward to this destination before going to voicemail."; +$text['description-not_registered']['es-cl'] = ""; +$text['description-not_registered']['pt-pt'] = ""; +$text['description-not_registered']['fr-fr'] = ""; +$text['description-not_registered']['it-it'] = ""; +$text['description-not_registered']['pt-br'] = ""; +$text['description-not_registered']['pl'] = ""; +$text['description-not_registered']['sv-se'] = ""; +$text['description-not_registered']['uk'] = ""; +$text['description-not_registered']['de-at'] = ""; + $text['description-cid-number-prefix']['en-us'] = "Set the caller ID number prefix."; $text['description-cid-number-prefix']['es-cl'] = "Configure el prefijo de número de caller ID."; $text['description-cid-number-prefix']['pt-pt'] = "Defina o número do Chamador"; @@ -493,4 +515,4 @@ $text['button-back']['sv-se'] = "Tillbaka "; $text['button-back']['uk'] = "Назад"; $text['button-back']['de-at'] = "Zurück"; -?> \ No newline at end of file +?> From 0f718c8d08fd21866a5a5b92195bc1f4bde46fee Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:00:44 -0800 Subject: [PATCH 04/11] Update call_edit.php --- app/calls/call_edit.php | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/app/calls/call_edit.php b/app/calls/call_edit.php index 2834914f0c..f0ce961c96 100644 --- a/app/calls/call_edit.php +++ b/app/calls/call_edit.php @@ -102,6 +102,8 @@ else { $forward_busy_enabled = $row["forward_busy_enabled"]; $forward_no_answer_destination = $row["forward_no_answer_destination"]; $forward_no_answer_enabled = $row["forward_no_answer_enabled"]; + $forward_user_not_registered_destination = $row["forward_user_not_registered_destination"]; + $forward_user_not_registered_enabled = $row["forward_user_not_registered_enabled"]; $follow_me_uuid = $row["follow_me_uuid"]; $forward_caller_id_uuid = $row["forward_caller_id_uuid"]; break; //limit to 1 row @@ -122,6 +124,8 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { $forward_busy_destination = check_str($_POST["forward_busy_destination"]); $forward_no_answer_enabled = check_str($_POST["forward_no_answer_enabled"]); $forward_no_answer_destination = check_str($_POST["forward_no_answer_destination"]); + $forward_user_not_registered_destination = check_str($_POST["forward_user_not_registered_destination"]); + $forward_user_not_registered_enabled = check_str($_POST["forward_user_not_registered_enabled"]); $forward_caller_id_uuid = check_str($_POST["forward_caller_id_uuid"]); $cid_name_prefix = check_str($_POST["cid_name_prefix"]); $cid_number_prefix = check_str($_POST["cid_number_prefix"]); @@ -371,6 +375,8 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { $sql .= "forward_busy_enabled = '".$forward_busy_enabled."', "; $sql .= "forward_no_answer_destination = '".$forward_no_answer_destination."', "; $sql .= "forward_no_answer_enabled = '".$forward_no_answer_enabled."', "; + $sql .= "forward_user_not_registered_destination = '".$forward_user_not_registered_destination."', "; + $sql .= "forward_user_not_registered_enabled = '".$forward_user_not_registered_enabled."', "; $sql .= "forward_caller_id_uuid = ".(($forward_caller_id_uuid != '') ? "'".$forward_caller_id_uuid."' " : "null "); $sql .= "where domain_uuid = '".$domain_uuid."' "; $sql .= "and extension_uuid = '".$extension_uuid."'"; @@ -596,6 +602,24 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { echo "\n"; echo "\n"; +//CJB + echo "\n"; + echo "\n"; + echo " ".$text['label-not_registered']."\n"; + echo "\n"; + echo "\n"; + $on_click = "document.getElementById('dnd_disabled').checked=true;"; + $on_click .= "document.getElementById('forward_user_not_registered_destination').focus();"; + echo " \n"; + echo " \n"; + unset($on_click); + echo "   "; + echo " \n"; + echo "
".$text['description-not_registered'].".\n"; + echo "\n"; + echo "\n"; +//CJB + echo "
\n"; echo "\n"; @@ -833,4 +857,4 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { //include the footer require_once "resources/footer.php"; -?> \ No newline at end of file +?> From 492ea214459436b2ae2ae12cdc2b14d60a9c4fe1 Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:01:35 -0800 Subject: [PATCH 05/11] Update devices.php --- app/devices/devices.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/devices/devices.php b/app/devices/devices.php index cc466bc5b8..b119f1b06e 100644 --- a/app/devices/devices.php +++ b/app/devices/devices.php @@ -99,7 +99,11 @@ else { //prepare to page the results $rows_per_page = 150; - $param = ""; + if ($_GET['showall'] && permission_exists('device_all')) { + $param = "&showall=true"; + } else { + $param = ""; + } $page = $_GET['page']; if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } list($paging_controls, $rows_per_page, $var3) = paging($num_rows, $param, $rows_per_page); @@ -271,4 +275,4 @@ else { //include the footer require_once "resources/footer.php"; -?> \ No newline at end of file +?> From dca392fcc5b6cb06cb70058f1770173d4f516f4f Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:03:17 -0800 Subject: [PATCH 06/11] Update directory.lua --- .../resources/scripts/directory/directory.lua | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua b/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua index 325a2685e5..88ec1808ca 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua @@ -251,6 +251,9 @@ forward_busy_destination = row.forward_busy_destination; forward_no_answer_enabled = row.forward_no_answer_enabled; forward_no_answer_destination = row.forward_no_answer_destination; + forward_user_not_registered_enabled = row.forward_user_not_registered_enabled; + forward_user_not_registered_destination = row.forward_user_not_registered_destination; + do_not_disturb = row.do_not_disturb; --set the dial_string @@ -477,6 +480,13 @@ if (string.len(forward_no_answer_destination) > 0) then table.insert(xml, [[ ]]); end + if (string.len(forward_user_not_registered_enabled) > 0) then + table.insert(xml, [[ ]]); + end + if (string.len(forward_user_not_registered_destination) > 0) then + table.insert(xml, [[ ]]); + end + if (string.len(do_not_disturb) > 0) then table.insert(xml, [[ ]]); end From 52bd6a10293ca6d416b2af25a0d55d90d8fd624f Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:04:26 -0800 Subject: [PATCH 07/11] Update extension.php --- app/extensions/resources/classes/extension.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/extensions/resources/classes/extension.php b/app/extensions/resources/classes/extension.php index 78f09074ed..63861d9067 100644 --- a/app/extensions/resources/classes/extension.php +++ b/app/extensions/resources/classes/extension.php @@ -382,6 +382,13 @@ if (strlen($row['forward_no_answer_destination']) > 0) { $xml .= " \n"; } + if (strlen($row['forward_user_not_registered_enabled']) > 0) { + $xml .= " \n"; + } + if (strlen($row['forward_user_not_registered_destination']) > 0) { + $xml .= " \n"; + } + if (strlen($row['do_not_disturb']) > 0) { $xml .= " \n"; } From 8d072ae13fb92b7d0b1a7c532fdc57e42da0f1be Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:04:59 -0800 Subject: [PATCH 08/11] Update index.lua --- .../scripts/app/failure_handler/index.lua | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/resources/install/scripts/app/failure_handler/index.lua b/resources/install/scripts/app/failure_handler/index.lua index 72410b3ddf..31883bd231 100644 --- a/resources/install/scripts/app/failure_handler/index.lua +++ b/resources/install/scripts/app/failure_handler/index.lua @@ -188,8 +188,25 @@ end elseif (originate_disposition == "USER_NOT_REGISTERED") then + + --handle USER_NOT_REGISTERED + forward_user_not_registered_enabled = session:getVariable("forward_user_not_registered_enabled"); + if (forward_user_not_registered_enabled == "true") then + forward_user_not_registered_destination = session:getVariable("forward_user_not_registered_destination"); + if (forward_user_not_registered_destination == nil) then + freeswitch.consoleLog("NOTICE", "[failure_handler] forwarding user not registered to hangup\n"); + session:hangup("NO_ANSWER"); + else + freeswitch.consoleLog("NOTICE", "[failure_handler] forwarding user not registerd to: " .. forward_user_not_registered_destination .. "\n"); + session:transfer(forward_user_not_registered_destination, "XML", context); + end + else + --send missed call notification + missed(); + end + --send missed call notification - missed(); + --missed(); --handle USER_NOT_REGISTERED if (debug["info"] ) then From de8d05bad448cda4a3267e6171db96d3412bd8c2 Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:07:58 -0800 Subject: [PATCH 09/11] Update app_languages.php --- app/xml_cdr/app_languages.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/app/xml_cdr/app_languages.php b/app/xml_cdr/app_languages.php index 6e7dad1774..4041b12921 100644 --- a/app/xml_cdr/app_languages.php +++ b/app/xml_cdr/app_languages.php @@ -615,6 +615,17 @@ $text['label-network_addr']['uk'] = ""; $text['label-network_addr']['de-at'] = "Netzwerk Adresse"; $text['label-network_addr']['he'] = "כתובת רשת"; +$text['label-mos_score']['en-us'] = "MOS Score"; +$text['label-mos_score']['es-cl'] = ""; +$text['label-mos_score']['pt-pt'] = ""; +$text['label-mos_score']['fr-fr'] = ""; +$text['label-mos_score']['pt-br'] = ""; +$text['label-mos_score']['pl'] = ""; +$text['label-mos_score']['sv-se'] = ""; +$text['label-mos_score']['uk'] = ""; +$text['label-mos_score']['de-at'] = ""; +$text['label-mos_score']['he'] = ""; + $text['label-name']['en-us'] = "Name"; $text['label-name']['es-cl'] = "Nombre"; $text['label-name']['pt-pt'] = "Nome"; @@ -1362,4 +1373,4 @@ $text['button-advanced_search']['uk'] = ""; $text['button-advanced_search']['de-at'] = "Erweiterte Suche"; $text['button-advanced_search']['he'] = "חיפוש מתקדם"; -?> \ No newline at end of file +?> From 9d437340b6dcca8b0e47557e47cc779e5c65f0b6 Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:08:33 -0800 Subject: [PATCH 10/11] Update xml_cdr_inc.php --- app/xml_cdr/xml_cdr_inc.php | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/app/xml_cdr/xml_cdr_inc.php b/app/xml_cdr/xml_cdr_inc.php index 911c94f92c..2fc5daf1f8 100644 --- a/app/xml_cdr/xml_cdr_inc.php +++ b/app/xml_cdr/xml_cdr_inc.php @@ -74,8 +74,36 @@ else { $bridge_uuid = check_str($_REQUEST["network_addr"]); $order_by = check_str($_REQUEST["order_by"]); $order = check_str($_REQUEST["order"]); + if (strlen(check_str($_REQUEST["mos_comparison"])) > 0) { + switch(check_str($_REQUEST["mos_comparison"])) { + case 'less': + $mos_comparison = "<"; + break; + case 'greater': + $mos_comparison = ">"; + break; + case 'lessorequal': + $mos_comparison = "<="; + break; + case 'greaterorequal': + $mos_comparison = ">="; + break; + case 'equal': + $mos_comparison = "<"; + break; + case 'notequal': + $mos_comparison = "<>"; + break; + } + } else { + $mos_comparison = ''; + } + //$mos_comparison = check_str($_REQUEST["mos_comparison"]); + $mos_score = check_str($_REQUEST["mos_score"]); } + + //build the sql where string if ($missed == true) { $sql_where_ands[] = "billsec = '0'"; @@ -126,6 +154,7 @@ else { if (strlen($write_codec) > 0) { $sql_where_ands[] = "write_codec like '%".$write_codec."%'"; } if (strlen($remote_media_ip) > 0) { $sql_where_ands[] = "remote_media_ip like '%".$remote_media_ip."%'"; } if (strlen($network_addr) > 0) { $sql_where_ands[] = "network_addr like '%".$network_addr."%'"; } + if (strlen($mos_comparison) > 0 && strlen($mos_score) > 0 ) { $sql_where_ands[] = "rtp_audio_in_mos " . $mos_comparison . " ".$mos_score.""; } //if not admin or superadmin, only show own calls if (!permission_exists('xml_cdr_domain')) { @@ -201,6 +230,9 @@ else { $param .= "&remote_media_ip=".$remote_media_ip; $param .= "&network_addr=".$network_addr; $param .= "&bridge_uuid=".$bridge_uuid; + $param .= "&mos_comparison=".$mos_comparison; + $param .= "&mos_score=".$mos_score; + if ($_GET['showall'] && permission_exists('xml_cdr_all')) { $param .= "&showall=" . $_GET['showall']; } @@ -297,6 +329,7 @@ else { else { $sql .= " limit ".$rows_per_page." offset ".$offset." "; } + $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->execute(); $result = $prep_statement->fetchAll(PDO::FETCH_ASSOC); From 4072e8bbfebd1aa388c6a32813a2d800c19a8946 Mon Sep 17 00:00:00 2001 From: blackc2004 Date: Wed, 9 Dec 2015 14:09:12 -0800 Subject: [PATCH 11/11] Update xml_cdr_search.php --- app/xml_cdr/xml_cdr_search.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/app/xml_cdr/xml_cdr_search.php b/app/xml_cdr/xml_cdr_search.php index e61e247ed8..50c6e809f8 100644 --- a/app/xml_cdr/xml_cdr_search.php +++ b/app/xml_cdr/xml_cdr_search.php @@ -53,7 +53,7 @@ echo " if ($('#caller_id_number').is(':visible')) { $('#caller_id_number').foc echo " }"; echo " }"; echo ""; - + echo "
\n"; echo "\n"; @@ -203,6 +203,20 @@ echo " "; echo " "; echo " "; echo " "; +echo " "; +echo " "; +echo " "; +echo " "; echo " "; echo " "; echo "
".$text['label-network_addr']."
".$text['label-mos_score'].""; +echo " \n"; +echo "

";