From 75bf20352750207b90db5b9fe80dc74d283662a4 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Tue, 21 Mar 2017 08:33:00 +0100 Subject: [PATCH] draw numeric values using tredd --- mqtt-trend.pl | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 mqtt-trend.pl diff --git a/mqtt-trend.pl b/mqtt-trend.pl new file mode 100755 index 0000000..e256a45 --- /dev/null +++ b/mqtt-trend.pl @@ -0,0 +1,47 @@ +#!/usr/bin/perl +use warnings; +use strict; + +my $trend = { + hist_spec => { + 'fade/LDR' => '300x1', + '__default' => '100x1', + } +}; + +sub DESTROY { + warn "DESTROY"; + system "killall mosquitto_sub trend"; +} +system "killall mosquitto_sub trend"; +system "i3-msg layout splitv"; +#system "i3-msg border none"; + +my $border = 2; + +open(my $in, '-|', 'mosquitto_sub -h rpi2 -t stat/# -t fade/# -v'); +while(<$in>) { + s/\s+$//sg; + + my ($t,$v) = split(/\s/,$_,2); + warn "$t\t$v\n"; + + if ( ! exists $trend->{$t} && $v =~ m/^\d+/ ) { + my $hist = $trend->{hist_spec}->{$t} || $trend->{hist_spec}->{__default}; + my $label = $t; + $label =~ s/^.+\///; + open($trend->{$t}, '|-', "trend -L $label -v - $hist"); + $border = 2; + } + + if ( $trend->{$t} ) { + select $trend->{$t}; + $| = 1; + print "$v\n"; + } else { + warn "CLOSED $!\n"; + } + + system "i3-msg border 1pixel" if $border-- > 0; +} + -- 2.20.1