Files
docker-mods-uptime-kuma-tim…/root/usr/local/bin/wol_rffmpeg/wol
T
2023-08-11 14:04:44 +02:00

60 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/bash
mac="${RFFMPEG_HOST_MAC%\"}"
mac="${mac#\"}"
if [ -z $WOL_WAIT ]
then
WOL_WAIT=30
fi
ping -c1 -W1 $RFFMPEG_HOST >/dev/null 2>&1 && host=up || host=down
if [ $RFFMPEG_WOL == "native" ] && [ ! -z $RFFMPEG_HOST ] && [ ! -z $RFFMPEG_HOST_MAC ] && [ ! -z $WOL_WAIT ] && [ $host == "down" ];
then
echo WOL enabled
echo "$RFFMPEG_HOST" is down, sending wakeup to "$mac"
WOL_OPTIONS=""
if [ ! -z $WOL_NATIVE_HOST ]; then
WOL_OPTIONS="$WOL_OPTIONS -i $WOL_NATIVE_HOST"
fi
if [ ! -z $WOL_NATIVE_PORT ]; then
WOL_OPTIONS="$WOL_OPTIONS -p $WOL_NATIVE_PORT"
fi
# Alpine
if [ -f /sbin/apk ]; then
wol $WOL_OPTIONS $mac
fi
# Ubuntu
if [ -f /usr/bin/apt ]; then
wakeonlan $WOL_OPTIONS $mac
fi
#wakeonlan -i $RFFMPEG_HOST $mac
echo "waiting $WOL_WAIT seconds for $RFFMPEG_HOST to wake"
sleep $WOL_WAIT
fi
if [ $RFFMPEG_WOL == "api" ] && [ ! -z $RFFMPEG_HOST ] && [ ! -z $RFFMPEG_HOST_MAC ] && [ $host == "down" ] && [ ! -z $WOL_WAIT ] && [ ! -z $WOL_API ] && [ ! -z $WOL_API_PORT ];
then
echo WOL enabled
echo "$RFFMPEG_HOST" is down, sending wakeup via WOL_API: curl -X POST $WOL_API:$WOL_API_PORT/wol/"$mac"
curl -X POST $WOL_API:$WOL_API_PORT/wol/$mac
echo "waiting $WOL_WAIT seconds for $RFFMPEG_HOST to wake"
sleep $WOL_WAIT
fi
if [ ${0##*/} == "ffmpeg" ]
then
#echo ${0##*/}
/usr/local/bin/ffmpeg "$@"
fi
if [ ${0##*/} == "ffprobe" ];
then
#echo ${0##*/}
/usr/local/bin/ffprobe "$@"
fi
exit