toggle-aircon 869 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #!/bin/bash
  2. if [[ "$0" =~ toggle-hallfan ]] ; then
  3. PORT="18"
  4. UNIT="02"
  5. fi
  6. toggle_port () {
  7. PORT=$1
  8. UNIT=$2
  9. TMPFILE="/tmp/apc-${UNIT}-port-${PORT}-state"
  10. PASSWORD="t33cHm3"
  11. CURRENT=""
  12. if [ -f $TMPFILE ] ; then
  13. CURRENT=$(/bin/cat $TMPFILE)
  14. else
  15. echo "1" > $TMPFILE
  16. fi
  17. DESIRED_STATE="1"
  18. if [ $CURRENT == "1" ] ; then
  19. DESIRED_STATE="2"
  20. fi
  21. if [[ $CURRENT != $DESIRED_STATE ]]; then
  22. echo "change needed - setting $DESIRED_STATE on $UNIT:$PORT"
  23. snmpset -v1 -c ${PASSWORD} apc-pdu-${UNIT}.dezendorf.net 1.3.6.1.4.1.318.1.1.4.4.2.1.3.${PORT} i $DESIRED_STATE
  24. echo $DESIRED_STATE > $TMPFILE
  25. fi
  26. }
  27. if [[ "$0" =~ toggle-aircon ]] ; then
  28. toggle_port "15" "01"
  29. fi
  30. if [[ "$0" =~ toggle-hallfan ]] ; then
  31. toggle_port "18" "02"
  32. fi
  33. if [[ "$0" =~ toggle-tv ]] ; then
  34. toggle_port "19" "01"
  35. toggle_port "14" "01"
  36. fi