From 50782f759e370a52030f93db65ae6960745afe7b Mon Sep 17 00:00:00 2001
From: Jan-Philipp Litza <janphilipp@litza.de>
Date: Thu, 16 Jan 2014 22:24:57 +0100
Subject: [PATCH] alfred: make traffic counters absolute

After a lenghty discussion, we settled on absolute vs. relative values.
Main reasons:

* stateless implementation on node possible
* convertable to relative values by differentiaion on receiver
* missed transmissions only decrease granularity, whereas relative
  values would introduce wrong numbers on integration if values are
  missed
---
 .../files/lib/gluon/alfred/announce.sh        | 26 +++----------------
 1 file changed, 3 insertions(+), 23 deletions(-)

diff --git a/package/gluon-alfred/files/lib/gluon/alfred/announce.sh b/package/gluon-alfred/files/lib/gluon/alfred/announce.sh
index 0d716c596..c4f88c61b 100755
--- a/package/gluon-alfred/files/lib/gluon/alfred/announce.sh
+++ b/package/gluon-alfred/files/lib/gluon/alfred/announce.sh
@@ -15,28 +15,9 @@ fi
 # set defaults
 [ -z "$ALFRED_DATA_TYPE" ] && ALFRED_DATA_TYPE=158
 [ -z "$NET_IF" ] && NET_IF=br-client
-[ -z "$TRAFFIC_FILE" ] && TRAFFIC_FILE=/var/run/traffic
 
 set -e
 
-get_traffic() {
-	if [ -f "$TRAFFIC_FILE" ]; then
-		OLD_TIME="$(cut -d' ' -f1 "$TRAFFIC_FILE")"
-		OLD_RX="$(cut -d' ' -f2 "$TRAFFIC_FILE")"
-		OLD_TX="$(cut -d' ' -f3 "$TRAFFIC_FILE")"
-	else
-		OLD_TIME=0
-		OLD_RX=0
-		OLD_TX=0
-	fi
-	NEW_TIME="$(cut -d' ' -f1 /proc/uptime)"
-	NEW_RX="$(cat /sys/class/net/bat0/statistics/rx_bytes)"
-	NEW_TX="$(cat /sys/class/net/bat0/statistics/tx_bytes)"
-	echo "$NEW_TIME $NEW_RX $NEW_TX" > "$TRAFFIC_FILE"
-	echo "$OLD_TIME $OLD_RX $OLD_TX $NEW_TIME $NEW_RX $NEW_TX" |\
-		awk '{tdiff=$4-$1; print ($5-$2)/tdiff " " ($6-$3)/tdiff;}'
-}
-
 json_init
 json_add_string "hostname" "$(uci get 'system.@system[0].hostname')"
 
@@ -83,11 +64,10 @@ json_close_object # network
 
 json_add_object "statistics"
 	json_add_int "uptime" "$(cut -d' ' -f1 /proc/uptime)"
-	TRAFFIC="$(get_traffic)"
 	json_add_object "traffic"
-		json_add_double "rx" "$(echo $TRAFFIC | cut -d' ' -f1)"
-		json_add_double "tx" "$(echo $TRAFFIC | cut -d' ' -f2)"
-	json_close_object
+		json_add_double "rx" "$(cat /sys/class/net/bat0/statistics/rx_bytes)"
+		json_add_double "tx" "$(cat /sys/class/net/bat0/statistics/tx_bytes)"
+	json_close_object # traffic
 json_close_object # statistics
 
 json_dump | tr -d '\n' | alfred -s "$ALFRED_DATA_TYPE"
-- 
GitLab