Przycisk uruchamiajacy skrypt

Witam,

Potrzebuję zrobić w Home Assistancie przycisk na dashbordzie który będzie wywoływać skrypt. Jestem nieco jeszcze zielony w te klocki dlatego każda pomoc mile widziana.

Próbowałem w configuration.yaml dodać taki kod:
image

ale nie za bardzo widzę jak to podpiąć do guzika.

Najprościej stworzyć pomocnika:
Ustawienia/Ustawienia oraz usługi/ i u góry po prawej pomocnicy i utwórz pomocnika i szukasz przełącznik.
Następnie przez automatyzacje przypiszesz do przełącznika skrypty.

Hej - dzieku za odpowiedź.
Próbowałem stworzyć pomocnika, ale nie bardzo mam jak podpiąć switch bo nie mam go na liście. Stworzyłem w configuration.yaml takie wpisy zamiast poprzednich:


Tylko teraz nie wiem - czy

switch:
  - platform: command_line
    switches:

powinna być raz, czy dla każdego switcha osobno?

drugie pytanie - jestem w automatyzacji i jak tu przypisać skrypt do przełącznika ?

Platforma (dowolna) stanowiąca “główną sekcję” w YAML powinna być tylko raz, więc gdyby ten kod był poprawny, to mógłbyś mieć

switch:

tylko raz

ALE
problem jest następujący - korzystasz także z jakiegoś przestarzałego tutoriala, obecnie platforma commad_line wygląda jak postawiona na głowie, względem archaicznej konfiguracji, którą próbujesz uruchomić - dużo przez ostatnie lata się zmieniło, więc jeśli zaglądasz do tutoriala, czy starego wątku to patrz też do dokumentacji

Dzięki za tę wskazówkę. Przerobiłem na takie coś:
image
Teraz jest poprawnie ?

Jeśli chcesz stosować BB-code zamiast natywnego MarkDown, to znaczniki otwierający [code] i zamykający [/code] muszą być w osobnych liniach, zalecam jednak stosować natywną metodę MarkDown, czyli osobne linie z trzema odwrotnymi apostrofami (znak spod “klawisza tyldy” - zobacz na edycję poprzedniego posta)
Nie wklejaj screenshotów, tekst jest dużo bardziej mile widziany, ale tak, wydaje się to wyglądać poprawnie, tzn. screenshoty są OK jako uzupełnienie, ale wszelkie YAMLe, logi itp. wklejaj jako kod.

Po zmianach wewnątrz configuration.yaml, trzeba zrestartować HA, ale zanim to zrobisz warto przeprowadzić walidację YAMLa
Narzędzia deweloperskie → YAML → SPRAWDŹ KONFIGURACJĘ

(aby mieć w ogóle to menu, to w ustawieniach swojego użytkownika HA musisz mieć wybrany Tryb Zaawansowany)

Dopiero się uczę tego forum - ostatni raz jak korzystałem z Elektrody to tak się kodowało :slight_smile: No ale człowiek się uczy całe życie to i tego się nauczę :slight_smile:

edit - kurcze - faktycznie - i o ile łatwiejsze w użyciu :slight_smile:

No dobrze - przeładowałem HA - mogę prosić o wskazówki co dalej ?

Jestem w Automatyzacjach - system prosi o wybranie Wyzwalacza, Warunku i Akcji.

Czy jakaś dobra dusza podpowie co trzeba tu wybrać? Niestety nic z tych list mi nie pasuje do mojego planu.

Chciałeś przycisk, ale zrobiłeś przełączniki (sprawdź czy już masz ich encje - powinny się pojawić po restarcie), jakkolwiek one już powinny być dostępne w interfejsie - nie musisz ich wywoływać, po prostu umieść je na karcie.

Heh - tak - to prawda - zrobilem przełączniki bo taki znalazłem tutorial - jak mogę to skonwertować na przyciski?

Teraz mam ciekawszy jeszcze jeden problem - mam skrypty ktore dzialaja jak je wywolam z terminala, ale nie reaguja jak klikne w encje.

Takie jest ustawienie buttona na dashu:

show_name: true
show_icon: true
type: button
tap_action:
  action: toggle
entity: switch.otworz_garaz
show_state: false
icon: mdi:garage-alert-variant
icon_height: 70px
hold_action:
  action: none

a to jest kod w configuration.yaml:

command_line:
  - switch:
      name: Włącz Projektor (HDMI2)
      command_on: "./root/config/scripts/projon2"
#      command_off: cd .
  - switch:
      name: Włącz Projektor (AndroidTV)
      command_on: "./root/config/scripts/projon"
#      command_off: cd .
  - switch:
      name: Wyłącz Projektor
      command_on: "./root/config/scripts/projoff"
#      command_off: cd .
  - switch:
      name: Otworz Garaż
      command_on: "./root/config/scripts/garageup"
#      command_off: cd .
  - switch:
      name: Zamknij Garaż
      command_on: "./root/config/scripts/garagedn"
#      command_off: cd .