#!/bin/bash

###############################################################################
#
# Monitor ausschalten, wenn DPMS (Display Power Management Signaling) vorhanden
# Dies ist der VESA-Stromspar-Standard für Grafikkarten und Monitore
#
# Wenn Consumer-TV's eingesetzt werden, dann ist es am zielführendsten, wenn
# das Display mittels HDMI-CEC gesteuert wird. Setzt HDMI-CEC-Adapter voraus!
# 
# xrandr wird vorzugsweise bei Screens eingesetzt, welche ausschalten, sobald
# kein Videosignal mehr anliegt
# 
# snmp wird für GDS-Displays verwendet
#
# mqtt ist für Stehlen Zermatt
# 
###############################################################################

DISPCTL=$( cat /home/snowtv/bin/dispctl.txt )

# Prüfen, welches Ein-/Ausschaltverfahren für das Display verwendet wird
if [ "$DISPCTL" == "dpms" ];
then
	DISPLAY=:0 xset dpms force off
	echo "$(date)  INFO: no airtime, trigger Display off" | tee -a /var/log/stv.log

elif [ "$DISPCTL" == "hdmi-cec" ];
then
	echo 'standby 0' | cec-client -s
	echo "$(date)  INFO: no airtime, trigger Display off" | tee -a /var/log/stv.log

elif [ "$DISPCTL" == "xrandr" ];
then
	DISPLAY=:0.0 xrandr --output HDMI-1 --off --output HDMI-2 --off --output DP-1 --off
	echo "$(date)  INFO: no airtime, trigger Display off" | tee -a /var/log/stv.log

elif [ "$DISPCTL" == "snmp" ];
then
	snmpset localhost 1.3.6.1.4.1.33762.4.1.7.1.0 i 0
	echo "$(date)  INFO: no airtime, trigger Display off" | tee -a /var/log/stv.log

elif [ "$DISPCTL" == "mqtt" ];
then
	mosquitto_pub -h 127.0.0.1 -t command/standby -m STANDBY	
	echo "$(date)  INFO: no airtime, trigger Display off" | tee -a /var/log/stv.log
fi
exit 0
