#!/bin/sh R=$1 T1=$2 case "$R" in bathroom_radiator) T2=$( expr $T1 + 2 ) ;; *) T2=$( expr $T1 + 1 ) ;; esac H=127.0.0.1 for tries in 1 2 3 4 5 6 7 8 9 10 11 12; do V1=$( mosquitto_sub -h 10.32.139.1 -t stat/$R/var1 --retained-only -W 1 | sed -e 's/\..*//' ) V2=$( mosquitto_sub -h 10.32.139.1 -t stat/$R/var2 --retained-only -W 1 | sed -e 's/\..*//' ) if [ $T1 -ne $V1 ]; then mosquitto_pub -h $H -t cmnd/$R/var1 -m $T1 sleep 1 fi if [ $T2 -ne $V2 ]; then mosquitto_pub -h $H -t cmnd/$R/var2 -m $T2 sleep 1 fi if [ \( $T1 -eq $V1 \) -a \( $T2 -eq $V2 \) ]; then echo Success exit 0 fi sleep 3 done echo Failed