Co umí:
Pokud vám hraje přehrávač a někdo zavolá na Váš telefon přehrávač přejde do pause a po ukončení hovoru se opět spustí play.
To samé udělá když budete volat někomu vy.
A to vše pokud budete v zóně (doma)
Co budete potřebovat:
Instalovanou app HA v telefonu (zkouším na androidu)
Zonu (jednu máte už při instalaci HA)
Osobu kterou hlídá HA
Integrovaný přehrávač médií v HA
Pokud používáte jednu z posledních instalací HA jistě jste si všimli že je tam položka
šablony (správa šablon)
Když si otevřete File editor je tam složka blueprints a pod ní další složka automation.
Otevřete složu automation a v uvidíte default plány které dodává HA při instalaci.
Na stejné úrovni vytvořte složku např. TelefonMediaPauza tu otevřete a v ní vytvořte soubor např. tel_media_pause.yaml.
Kliknutím na něj se otevře prázdný soubor na pravé ploše.
Níže kopírujte soubor a vložte do HA a nezapomeňte uložit (červená disketa v horní liště). Uvidíte i červený ! ,toho si nevšímejte ,není to chyba.
Přejděte do nastavení - šablony a tam už by jste plán měli vidět.
Klikněte na vytvořit automatizaci a od teď by to mělo být inuitivní.
Položka stav telefonu je senzor který se vytvoří po instalaci app do telefonu.
Kód: Vybrat vše
blueprint:
name: Pauza přehrávače médií při volání.
description: Pauza přehrávače médií, když telefon zazvoní nebo volá.Pouze když člověk
je doma a hraje přehrávač médií.
domain: automation
input:
phone_state:
name: Stav telefonu
description: Vyberte snímač stavu telefonu.
selector:
entity:
integration: mobile_app
domain: sensor
person:
name: Osoba
description: Vyberte osobu, která musí být ve vybrané zóně.
selector:
entity:
domain: person
zone:
name: Zóna
description: Vyberte zónu, ve které se osoba musí nacházet.
default: zone.home
selector:
entity:
domain: zone
media_player:
name: Přehrávač médií
description: Vyberte přehrávač médií, který je třeba pozastavit.
selector:
entity:
domain: media_player
trigger:
- platform: state
entity_id: !input 'phone_state'
to: ringing
- platform: state
entity_id: !input 'phone_state'
to: offhook
variables:
zone: !input 'zone'
zone_name: '{{ zone[5:] }}'
entity: !input 'person'
condition:
- '{{is_state(entity, zone_name)}}'
- condition: state
entity_id: !input 'media_player'
state: playing
action:
- service: media_player.media_pause
entity_id: !input 'media_player'
- wait_for_trigger:
- platform: state
entity_id: !input 'phone_state'
to: idle
timeout:
seconds: 1800
- service: media_player.media_play
entity_id: !input 'media_player'