From 756fe434489fbcc7919dac9c092fed1e8c1a82fe Mon Sep 17 00:00:00 2001
From: IZ7BOJ <38103662+IZ7BOJ@users.noreply.github.com>
Date: Thu, 19 Mar 2020 12:47:29 +0100
Subject: [PATCH] Update functions.php
minor bug fix. Sorry, I would have taken more time to test ;-)
---
include/functions.php | 85 ++++++++++++++++++++++++++-----------------
1 file changed, 52 insertions(+), 33 deletions(-)
diff --git a/include/functions.php b/include/functions.php
index 68e1d8e..023dcc1 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -363,46 +363,65 @@ function getHeardList($logLines, $onlyLast) {
$rssi = $rssiVal;
}
}
- $ber = substr($loss, 5);
- $loss = "";
- } else {
- if (startsWith($loss,"RSSI:")) { //for short RF packets and "X" button requests, BER sometimes in not showed. RSSI is in BER position
- $loss="";
- $ber = "";
- $rssiString = substr($lineTokens[3], 6);
+ $ber = substr($loss, 5);
+ $loss = "";
+ } else if (startsWith($loss,"RSSI:")) { //for short RF packets and "X" button requests, BER sometimes in not showed. RSSI is in BER position
+ $loss="";
+ $ber = "";
+ $rssiString = substr($lineTokens[3], 6);
+ if (constant("RSSI") == "min") $rssiVal = preg_replace('/(-\d+)\/-\d+\/-\d+ dBm/', "\\1", $rssiString);
+ else if (constant("RSSI") == "max") $rssiVal = preg_replace('/-\d+\/(-\d+)\/-\d+ dBm/', "\\1", $rssiString);
+ else if (constant("RSSI") == "avg") $rssiVal = preg_replace('/-\d+\/-\d+\/(-\d+) dBm/', "\\1", $rssiString);
+ else if (constant("RSSI") == "all") $rssiVal = $rssiString;
+ else $rssiVal = preg_replace('/-\d+\/-\d+\/(-\d+) dBm/', "\\1", $rssiString);
+ if (constant("RSSI") != "all") {
+ if ($rssiVal > "-53") $rssi = "
S9 +40dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-63") $rssi = " S9 +30dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-73") $rssi = " S9 +20dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-83") $rssi = " S9 +10dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-93") $rssi = " S9 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-99") $rssi = " S8 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-105") $rssi = " S7 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-111") $rssi = " S6 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-117") $rssi = " S5 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-123") $rssi = " S4 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-129") $rssi = " S3 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-135") $rssi = " S2 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-141") $rssi = " S1 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ } else {
+ $rssi = $rssiVal;
+ }
} else {
$loss = strtok($loss, " ");
if (array_key_exists(4,$lineTokens)) {
$ber = substr($lineTokens[4], 5);
- }
- $rssiString = substr($lineTokens[5], 6);
+ }
if (array_key_exists(5,$lineTokens) && substr($lineTokens[5], 6) != "-0/-0/-0 dBm") {
- $rssiString = substr($lineTokens[5], 6);
+ $rssiString = substr($lineTokens[5], 6);
+ if (constant("RSSI") == "min") $rssiVal = preg_replace('/(-\d+)\/-\d+\/-\d+ dBm/', "\\1", $rssiString);
+ else if (constant("RSSI") == "max") $rssiVal = preg_replace('/-\d+\/(-\d+)\/-\d+ dBm/', "\\1", $rssiString);
+ else if (constant("RSSI") == "avg") $rssiVal = preg_replace('/-\d+\/-\d+\/(-\d+) dBm/', "\\1", $rssiString);
+ else if (constant("RSSI") == "all") $rssiVal = $rssiString;
+ else $rssiVal = preg_replace('/-\d+\/-\d+\/(-\d+) dBm/', "\\1", $rssiString);
+ if (constant("RSSI") != "all") {
+ if ($rssiVal > "-53") $rssi = " S9 +40dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-63") $rssi = " S9 +30dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-73") $rssi = " S9 +20dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-83") $rssi = " S9 +10dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-93") $rssi = " S9 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-99") $rssi = " S8 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-105") $rssi = " S7 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-111") $rssi = " S6 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-117") $rssi = " S5 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-123") $rssi = " S4 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-129") $rssi = " S3 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-135") $rssi = " S2 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ else if ($rssiVal > "-141") $rssi = " S1 ($rssiVal dBm)(min/max/avg)
$rssiString
";
+ } else {
+ $rssi = $rssiVal;
+ }
}
}
- if (constant("RSSI") == "min") $rssiVal = preg_replace('/(-\d+)\/-\d+\/-\d+ dBm/', "\\1", $rssiString);
- else if (constant("RSSI") == "max") $rssiVal = preg_replace('/-\d+\/(-\d+)\/-\d+ dBm/', "\\1", $rssiString);
- else if (constant("RSSI") == "avg") $rssiVal = preg_replace('/-\d+\/-\d+\/(-\d+) dBm/', "\\1", $rssiString);
- else if (constant("RSSI") == "all") $rssiVal = $rssiString;
- else $rssiVal = preg_replace('/-\d+\/-\d+\/(-\d+) dBm/', "\\1", $rssiString);
- if (constant("RSSI") != "all") {
- if ($rssiVal > "-53") $rssi = " S9 +40dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-63") $rssi = " S9 +30dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-73") $rssi = " S9 +20dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-83") $rssi = " S9 +10dB ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-93") $rssi = " S9 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-99") $rssi = " S8 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-105") $rssi = " S7 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-111") $rssi = " S6 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-117") $rssi = " S5 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-123") $rssi = " S4 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-129") $rssi = " S3 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-135") $rssi = " S2 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- else if ($rssiVal > "-141") $rssi = " S1 ($rssiVal dBm)(min/max/avg)
$rssiString
";
- } else {
- $rssi = $rssiVal;
- }
- }
if (strpos($logLine,"ended RF data") || strpos($logLine,"ended network")) {
switch (substr($logLine, 27, strpos($logLine,",") - 27)) {