Hallo Edomi-Forum,
ich möchte mich in die Reihe der Danksagungen mit hohem Respekt vor dieser Entwicklungsleistung von gaert als Schöpfer von Edomi einreihen, aber auch den vielen Forennutzern und Administratoren mit ihren interessante Beiträgen, Tipps und Lösungskonzepten danken.
Ich hänge aktuell an der Ausführung eines Skripts, welches ich mit der HTTP/UDP/SHELL-Funktion gerne ausführen lassen würde. Das ganze läuft auf einem Raspberry 4b mit Ubuntu 18.04 und Edomi 2.02. Das Skript ist auf Shell-Ebene (Kommandozeile) mit dem User „ubuntu“ und den Rechten -rwxrwxr-x im z. B. /home/ubuntu oder /tmp Verzeichnis ausführbar und tut was es soll.
In Edomi ist der HTTP/UDP/SHELL-Befehl in einer Ausgangsbox, die bei entsprechendem Trigger die hinterlegten Befehle ausführt. Die neben der HTTP/UDP/SHELL-Funktion hinterlegten Befehle werden ausgeführt, so dass der Trigger und die Ausgangsbox für die Funktion auch funktionieren.
Sehr freuen würde ich mich über einen Hinweis, wie die Eingabe in der HTTP/UDP/SHELL-Funktion Typ SHELL inkl Pfad aussehen muss, wenn ein Skript „pi-shutdown.sh“ im z. B. Verzeichnis /tmp ausgeführt werden soll. Nur der Skriptname mit Endung oder ein vorangestellter Pfad haben bislang nicht funktioniert.

Was soll das Ganze machen? Der Edomi-Pi soll beim Einschalten des RGB-Duschlichts einen Pi mit piCorePlayer einschalten, der mit Booten eine voreingestellte Playlisten (Radio) spielt. Mit Ausschalten des Duschlichtes läuft ein Edomi-Verzögerer, der die Spannungsversorgung des piCorePlayers zwecks Standbyverlustreduktion unterbricht. Von Edomi soll nun vor der Spannungsabschaltung (daher Verzögerer) der piCorePlayer mittels pcp sd heruntergefahren werden. Dieser Befehl befindet sich in dem Skript:
1 #!/bin/bash
2 ssh tc@[IP-piCorePlayer] pcp sd
, welches auf dem Edomi-Pi liegt. Der Edomi-Pi kommuniziert passwortlos mit dem piCorePlayer aufgrund ausgetauschter SSH-Keys.
Das Skript kann bereits auf dem Edomi-Pi auf Kommandozeilenebene ausgeführt werden, so dass nach meiner bisherigen Fehlersuche meine Konfiguration in der HTTP/UPD/SHELL-Funktion die Ursache sein müsste. (Irrtum vorbehalten.)
ich möchte mich in die Reihe der Danksagungen mit hohem Respekt vor dieser Entwicklungsleistung von gaert als Schöpfer von Edomi einreihen, aber auch den vielen Forennutzern und Administratoren mit ihren interessante Beiträgen, Tipps und Lösungskonzepten danken.
Ich hänge aktuell an der Ausführung eines Skripts, welches ich mit der HTTP/UDP/SHELL-Funktion gerne ausführen lassen würde. Das ganze läuft auf einem Raspberry 4b mit Ubuntu 18.04 und Edomi 2.02. Das Skript ist auf Shell-Ebene (Kommandozeile) mit dem User „ubuntu“ und den Rechten -rwxrwxr-x im z. B. /home/ubuntu oder /tmp Verzeichnis ausführbar und tut was es soll.
In Edomi ist der HTTP/UDP/SHELL-Befehl in einer Ausgangsbox, die bei entsprechendem Trigger die hinterlegten Befehle ausführt. Die neben der HTTP/UDP/SHELL-Funktion hinterlegten Befehle werden ausgeführt, so dass der Trigger und die Ausgangsbox für die Funktion auch funktionieren.
Sehr freuen würde ich mich über einen Hinweis, wie die Eingabe in der HTTP/UDP/SHELL-Funktion Typ SHELL inkl Pfad aussehen muss, wenn ein Skript „pi-shutdown.sh“ im z. B. Verzeichnis /tmp ausgeführt werden soll. Nur der Skriptname mit Endung oder ein vorangestellter Pfad haben bislang nicht funktioniert.
Was soll das Ganze machen? Der Edomi-Pi soll beim Einschalten des RGB-Duschlichts einen Pi mit piCorePlayer einschalten, der mit Booten eine voreingestellte Playlisten (Radio) spielt. Mit Ausschalten des Duschlichtes läuft ein Edomi-Verzögerer, der die Spannungsversorgung des piCorePlayers zwecks Standbyverlustreduktion unterbricht. Von Edomi soll nun vor der Spannungsabschaltung (daher Verzögerer) der piCorePlayer mittels pcp sd heruntergefahren werden. Dieser Befehl befindet sich in dem Skript:
1 #!/bin/bash
2 ssh tc@[IP-piCorePlayer] pcp sd
, welches auf dem Edomi-Pi liegt. Der Edomi-Pi kommuniziert passwortlos mit dem piCorePlayer aufgrund ausgetauschter SSH-Keys.
Das Skript kann bereits auf dem Edomi-Pi auf Kommandozeilenebene ausgeführt werden, so dass nach meiner bisherigen Fehlersuche meine Konfiguration in der HTTP/UPD/SHELL-Funktion die Ursache sein müsste. (Irrtum vorbehalten.)
Kommentar