Interval is 3600 seconds when running on low battery.

Mon, 06 Jan 2020 14:20:17 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Mon, 06 Jan 2020 14:20:17 +0100
changeset 584
c9101b2eeb6a
parent 583
5d152961762b
child 585
fa6e702d0d24

Interval is 3600 seconds when running on low battery.

www/ispindel/index.php file | annotate | diff | comparison | revisions
--- a/www/ispindel/index.php	Mon Jan 06 11:35:26 2020 +0100
+++ b/www/ispindel/index.php	Mon Jan 06 14:20:17 2020 +0100
@@ -11,9 +11,16 @@
 	$data = json_decode($input, true );
 	$node = 'ispindel-' . sprintf("%06x", floatval($data['ID']));
 
+	$alarm = 0;
+	$interval = $data['interval'];
+        if (floatval($data['battery']) < 3.3) {
+                $alarm += 4;
+		$interval = 3600; // 3600 seconds when the battery is low.
+	}
+
 	$uuid = 'c0ffeeee-cafe-dead-beef-' . sprintf("%06x", 0xffffff - floatval($data['ID'])) . sprintf("%06x", floatval($data['ID']));
 	$topic = 'mbv1.0/ispindels/NBIRTH/' . $node;
-	$payload  = '{"metric":{"uuid":"' . $uuid . '","interval":' . $data['interval'] . ',';
+	$payload  = '{"metric":{"uuid":"' . $uuid . '","interval":' . $interval . ',';
 	$payload .= '"properties":{"hardwaremake":"Wemos","hardwaremodel":"D1 mini","os":"Unknown","os_version":"Unknown","FW":"Unknown"},';
 	$payload .= '"net":{"address":"' . $_SERVER['REMOTE_ADDR'] . '","ifname":"sta","rssi":' . $data['RSSI'] . '}}}';
 	$pub = $publisher . $topic . ' -m \'' . $payload . '\'';
@@ -33,7 +40,7 @@
 
 	$uuid = 'c0ffeeee-cafe-dead-bee0-' . sprintf("%06x", 0xffffff - floatval($data['ID'])) . sprintf("%06x", floatval($data['ID']));
 	$topic = 'mbv1.0/ispindels/DBIRTH/' . $node;
-	$payload  = '{"unit":{"uuid":"' . $uuid .'","alias":"' . $data['name'] . '","alarm":' . $alarm . ',"interval":' . $data['interval'];
+	$payload  = '{"unit":{"uuid":"' . $uuid .'","alias":"' . $data['name'] . '","alarm":' . $alarm . ',"interval":' . $interval;
 	$payload .= ',"angle":' . $data['angle'] . ',"temperature":' . $tempC . ',"battery":' . $data['battery'] . ',"gravity":' . $data['gravity'] . '}}';
 	$pub = $publisher . $topic . ' -m \'' .$payload . '\'';
 	exec($pub);

mercurial