diff --git a/usr/local/bin/custom/poe.sh b/usr/local/bin/custom/poe.sh index 77d1326..4c05e1b 100644 --- a/usr/local/bin/custom/poe.sh +++ b/usr/local/bin/custom/poe.sh @@ -85,6 +85,27 @@ expect eof EOF } +function manual_restart() { + local target_mac="$1" + python3 /srv/poe_manager/generate_ips.py | while IFS=: read -r rpi_ip dev_name switch_ip switch_hostname switch_port switch_user switch_pass mac; do + if [[ "$mac" != "$target_mac" ]]; then + continue + fi + echo "$(date '+%Y-%m-%d %H:%M:%S') Manueller Neustart von $dev_name gestartet." >> "$LOGFILE" + if [ -n "$switch_port" ] && [ "$switch_port" != "None" ]; then + disable_poe "$switch_ip" "$switch_port" "$switch_user" "$switch_pass" + echo "$(date '+%Y-%m-%d %H:%M:%S') $dev_name PoE deaktiviert." >> "$LOGFILE" + sleep 2 + enable_poe "$switch_ip" "$switch_port" "$switch_user" "$switch_pass" + echo "$(date '+%Y-%m-%d %H:%M:%S') $dev_name PoE aktiviert." >> "$LOGFILE" + echo "$(date '+%Y-%m-%d %H:%M:%S') Manueller Neustart von $dev_name abgeschlossen." >> "$LOGFILE" + else + echo "$(date '+%Y-%m-%d %H:%M:%S') $dev_name besitzt keinen PoE-Port." >> "$LOGFILE" + fi + exit 0 + done +} + echo "" > "$LOGFILE" while true; do