Files
builder/devices/t31_lite_xiaomi-mjsxj03hl-jxq03/general/overlay/usr/sbin/autoled.sh
2024-02-14 15:10:47 +03:00

63 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
#
# Automatic LED control for Xiaomi MJSXJ03HL
streamerProcess="majestic"
serviceProcess="sysupgrade"
pollingInterval=1
show_help() {
echo "Usage: $0 [-p process] [-s process] [-i value] [-h]
-p process Monitored streamer process (default = ${streamerProcess}).
-s process Monitored service process (default = ${serviceProcess}).
-i value Polling interval in seconds (default = ${pollingInterval}).
-h Show this help."
exit 0
}
# override config values with command line arguments
while getopts H:L:i:h flag; do
case ${flag} in
p)
streamerProcess=${OPTARG}
;;
s)
serviceProcess=${OPTARG}
;;
i)
pollingInterval=${OPTARG}
;;
h | *)
show_help
;;
esac
done
echo "Streamer process: ${streamerProcess}"
echo "Service process: ${serviceProcess}"
echo "Polling interval: ${pollingInterval} sec"
led_state=0
/usr/sbin/led_control.sh -o 0 -b 0
while true; do
if killall -q -0 $serviceProcess; then
if [ $led_state -ne 3 ]; then
echo "$serviceProcess is running, turn white LED on"
/usr/sbin/led_control.sh -o 1 -b 1
led_state=3
fi
else
if [ $led_state -ne 1 ] && ! killall -q -0 $streamerProcess; then
echo "$streamerProcess is not running, turn orange LED on"
/usr/sbin/led_control.sh -o 1 -b 0
led_state=1
elif [ $led_state -ne 2 ] && killall -q -0 $streamerProcess; then
echo "$streamerProcess is running, turn blue LED on"
/usr/sbin/led_control.sh -o 0 -b 1
led_state=2
fi
fi
sleep $pollingInterval
done