Version 0.9.1
#!/bin/ksh
####### Funktionen #######
#
function wLog {
log="/var/log/smartHome/rxv779.log"
date=$(date "+%Y-%m-%d_%H:%M:%S.%N")
echo "$date $USER $1 $2 $3 $4 $5 $6 $7 $8 $9" >> "$log"
}
function setPower {
t="$1"
xml="<YAMAHA_AV cmd=\"PUT\"><Main_Zone><Power_Control><Power>${t}</Power></Power_Control></Main_Zone></YAMAHA_AV>"
curl -X POST -d "$xml" "http://192.168.178.21/YamahaRemoteControl/ctrl"
}
function setInput {
i="$1"
xml="<YAMAHA_AV cmd=\"PUT\"><Main_Zone><Input><Input_Sel>${i}</Input_Sel></Input></Main_Zone></YAMAHA_AV>"
curl -X POST -d "$xml" "http://192.168.178.21/YamahaRemoteControl/ctrl"
}
function setAudioType {
a="$1"
xml="<YAMAHA_AV cmd=\"PUT\"><Main_Zone><Surround><Program_Sel><Current><Straight>Off</Straight><Sound_Program>${a}</Sound_Program></Current></Program_Sel></Surround></Main_Zone></YAMAHA_AV>"
curl -X POST -d "$xml" "http://192.168.178.21/YamahaRemoteControl/ctrl"
}
function setVolume {
v="$1"
xml="<YAMAHA_AV cmd=\"PUT\"><Main_Zone><Volume><Lvl><Val>${v}</Val><Exp>1</Exp><Unit>dB</Unit></Lvl></Volume></Main_Zone></YAMAHA_AV>"
curl -X POST -d "$xml" "http://192.168.178.21/YamahaRemoteControl/ctrl"
}
#
####### Funktionen #######
mode=${1:?"No Mode!"}
value=${2:?"No Values!"}
case "$mode" in
"power")
if [[ "$value" = "Off" ]]; then
value="Standby";
fi
setPower "$value"
wLog "power" "$value"
;;
"input")
setInput "$value"
wLog "input" "$value"
;;
"audio_type")
setAudioType "$value"
wLog "audio_type" "$value"
;;
"volume")
setVolume "$value"
wLog "volume" "$value"
;;
*)
echo "Unknown mode $1 $2 $3 $4 $5 $6 $7 $8 $9 $10"
wLog "unknown_mode" $1 $2 $3 $4 $5 $6 $7 $8 $9 $10
;;
esac