Náhodné přehrání souboru ze složky v Homeassistant po zmačknutí tlačítka na IKEA ovladači ZHA

Dostal jsem nápad že synkovi udělám takovou blbůstku. Když si zmáčkne jakýkoliv čudlík na IKEA ovladači, začne z reproduktoru hrát nějaké zvířátko.

V configuration.yml mám tedy složku kde jsou soubory co se mají přehrávat jako mp3

sensor:
- platform: folder
  folder: /media/zviratka
  filter: '*.mp3'

Skripty mám v includovaném souboru, to se dělá v configuration.yml následovně

script: !include scripts.yaml

a ten obsahuje skript který přehraje na zařízeni puk

prehraj_random_zviratko:
  alias: "Prehraj random zviratko"
  sequence:
    - variables:
        files: "{{ state_attr('sensor.zviratka', 'file_list') | default('') }}"
        random_file: "{{ files | random }}"
    - service: media_player.play_media
      data:
        entity_id: media_player.puk
        media_content_id: "media-source://media_source{{ random_file }}"
        media_content_type: "audio/mp3"

Automatizace je pak následující, pro jednoduchost jsem nechal jen prostřední on/off čudlík, přidejte si vlastní dle potřeby

alias: Zviratka na cudlik
description: ""
trigger:
  - device_id: a4ded91230fad32164b25ac3eab0b165
    domain: zha
    platform: device
    type: remote_button_short_press
    subtype: turn_on
condition: []
action:
  - service: script.prehraj_random_zviratko
    data: {}
mode: single

Pro úplnost ještě jak vypadají atributy sensor.zviratka, soubory jsou stažené z nějakého volného zdroje. Máte svůj lepší set, třeba i česky pojmenovaný ? Dejte mi vědět 🙂 Další verze by mohla přes TTS říkat třeba název souboru bez MP3 a pak pustit zvuk.

path: /media/zviratka/
filter: *.mp3
number_of_files: 65
bytes: 9366820
file_list: /media/zviratka/mockingbird.mp3, /media/zviratka/AustralianFrogmouth.mp3, /media/zviratka/frogs.mp3, /media/zviratka/chipmunk.mp3, /media/zviratka/schafe.mp3, /media/zviratka/wolf.mp3, /media/zviratka/Pony.mp3, /media/zviratka/Katze_miaut.mp3, /media/zviratka/Schimpanse.mp3, /media/zviratka/owl.mp3, /media/zviratka/Tiger.mp3, /media/zviratka/Leopard.mp3, /media/zviratka/bison.mp3, /media/zviratka/crickets.mp3, /media/zviratka/Puma.mp3, /media/zviratka/RedParot.mp3, /media/zviratka/elk.mp3, /media/zviratka/alligator.mp3, /media/zviratka/owl(1).mp3, /media/zviratka/Steller_Jay.mp3, /media/zviratka/Gorilla.mp3, /media/zviratka/pigeons.mp3, /media/zviratka/rotlori.mp3, /media/zviratka/huehner.mp3, /media/zviratka/osprey.mp3, /media/zviratka/grasshopper.mp3, /media/zviratka/cobra.mp3, /media/zviratka/finch.mp3, /media/zviratka/spatz.mp3, /media/zviratka/truthahn.mp3, /media/zviratka/Gaense.mp3, /media/zviratka/amazonmacaw.mp3, /media/zviratka/rabe.mp3, /media/zviratka/rattlesnake.mp3, /media/zviratka/Bluthund_jault.mp3, /media/zviratka/pferd_whinnert.mp3, /media/zviratka/Ziege.mp3, /media/zviratka/Kapuzineraffe.mp3, /media/zviratka/nachtigal.mp3, /media/zviratka/geier.mp3, /media/zviratka/ochse.mp3, /media/zviratka/Ente_quackt.mp3, /media/zviratka/peacock.mp3, /media/zviratka/kanarienvogel.mp3, /media/zviratka/fox.mp3, /media/zviratka/hahn_kikeriki.mp3, /media/zviratka/Rinder_muh(2).mp3, /media/zviratka/donkey.mp3, /media/zviratka/bee.mp3, /media/zviratka/schaf.mp3, /media/zviratka/Rinder_muh.mp3, /media/zviratka/Elefant.mp3, /media/zviratka/lapwing.mp3, /media/zviratka/coyotes.mp3, /media/zviratka/mosquito.mp3, /media/zviratka/schwein.mp3, /media/zviratka/yellowrumpedwarbler.mp3, /media/zviratka/schwalbe.mp3, /media/zviratka/crow.mp3, /media/zviratka/Lowe.mp3, /media/zviratka/Rhinozerus.mp3, /media/zviratka/cricket.mp3, /media/zviratka/squirrel.mp3, /media/zviratka/moewe.mp3, /media/zviratka/specht.mp3
unit_of_measurement: MB
device_class: data_size
icon: mdi:folder
friendly_name: zviratka

Komentáře

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *