Shell Kommando in Automation als Aktion ausführen?

Hallo zusammen, wie kann ich ein Shell Kommando als Aktion in einer Automation nutzen?
Ich möchte meinen Kiosk-Raspberry herunterfahren wenn keiner zu Hause ist.
Auf dem Dashboard habe ich einen funktionierenden Switch für diese Aktion erstellen können, nur finde ich diesen in der Automation nicht wieder…

Das ist der entsprechende Abschnitt aus meiner Configuration.yaml:

command_line:
  - switch:
      name: Kiosk off
      unique_id: switch.kiosk_off
      command_on: ssh -i /config/ssh_keys/kiosk -o 'StrictHostKeyChecking=no' pi@kiosk.fritz.box sudo poweroff

Hat Jemand ne Idee wie das innerhalb der Automation angewendet wird?

Was heißt du findest in in der Auto nicht? Nutzt du in der Auto den service_switch_on? Kannst du Ihn in den Entwicklerwerkzeugen sehen?

In der Automation unter Aktion folgendes Wählen: Dienst ausführen in den feld gibst du switch ein und wählst Schalter: ausschalten bzw. einschalten und die passende Entität.

Warum haste das nicht mit ein input_button gemacht?

In den Entwicklerwerkzeugen finde ich den Switch nur unter “Zustände”:


In der Automation ist es egal was ich auswähle, der Switch existiert da aus welchem Grund auch immer nicht. :thinking:
Interessanter weise kann ich das Shell Kommando sogar über meinen Amazon Echo ausführen: “Alexa, schalte Kiosk off an”, darauf hin fährt der Raspberry sofort runter.

Lösung über dein Beitrag :slight_smile:

Naja fast.

nicht ausschalten sondern einschalten da er den command_on gestzt hat und nicht den command_off

und wenn ich mir die Doku richtig angucke steht bei beiden Command on und off Requierd.

also musst du vielleicht noch ein command_off hinzufügen.

command_line:
  - switch:
      name: Kiosk off
      unique_id: switch.kiosk_off
      command_on: ssh -i /config/ssh_keys/kiosk -o 'StrictHostKeyChecking=no' pi@kiosk.fritz.box sudo poweroff
      command_off: ssh -i /config/ssh_keys/kiosk -o 'StrictHostKeyChecking=no' pi@kiosk.fritz.box sudo poweroff

und dan benutzt du in der Automation einfach den Dienst switch.toggel

service: switch.toggle
data: {}
target:
  entity_id: switch.kiosk_off

LG
Tobi

Oder er benutzt ein input_button :slight_smile:

Hatte ich eben auch schon überlegt aber ich habe auf die schnelle keine Command Line Butten in HA gefunden.
Der input_button als Helfer hilft nicht viel da es in HA auch kein Dienst gibt um eine Command Line zu senden, außer ich bin grad blind.

Edit:
Shell Command heißt das Zauberwort. Das kommt dem Button doch schon recht nah.
den könnte man dann als Dienst ausführen.

LG

1 „Gefällt mir“