From ab9e90cb207a8a30d20b5574387910a921e83e9e Mon Sep 17 00:00:00 2001 From: Halit Aksoy Date: Sun, 19 Jan 2025 18:17:37 +0300 Subject: [PATCH] add watch scripts --- scripts/watch-in-signle-line.sh | 1 + scripts/watch-sensor.sh | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 scripts/watch-in-signle-line.sh create mode 100755 scripts/watch-sensor.sh diff --git a/scripts/watch-in-signle-line.sh b/scripts/watch-in-signle-line.sh new file mode 100644 index 0000000..3ff5c77 --- /dev/null +++ b/scripts/watch-in-signle-line.sh @@ -0,0 +1 @@ +curl -s https://mercury.segin.one/sensor | jq -r '"🌡️ \(.temperature)°C 💧 \(.humidity)%"' diff --git a/scripts/watch-sensor.sh b/scripts/watch-sensor.sh new file mode 100755 index 0000000..9b9fe36 --- /dev/null +++ b/scripts/watch-sensor.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +while true; do + # Fetch API response + response=$(curl -s https://mercury.segin.one/sensor) + temperature=$(echo "$response" | jq -r '.temperature') + humidity=$(echo "$response" | jq -r '.humidity') + timestamp=$(echo "$response" | jq -r '.timestamp') + formatted_time=$(date -d @$((timestamp / 1000))) + + # Calculate "seconds ago" + current_time=$(date +%s) + timestamp_seconds=$((timestamp / 1000)) + time_diff=$((current_time - timestamp_seconds)) + + # Format time difference + if [ "$time_diff" -lt 60 ]; then + time_ago="${time_diff} seconds ago" + else + time_ago="$((time_diff / 60)) minutes ago" + fi + + # Clear screen and print results + clear + echo "🌡️ Temperature: ${temperature}°C" + echo "💧 Humidity: ${humidity}%" + echo "🕒 Timestamp: ${formatted_time}" + echo "🕒 Data fetched: ${time_ago}" + sleep 1 +done