Repository navigation
YAML Cookbook
← Documentation home · Getting started · YAML Cookbook · Troubleshooting
Copy-and-paste Home Assistant examples for Kellie's Voice. All snippets use safe placeholders (YOUR_TV_PAIRING_ID, camera.example_driveway, weather.home, etc.). Replace them with your own entity IDs and the pairing ID shown on the TV under Settings → Home Assistant layout → Show this TV's pairing ID.
Where to put each snippet:
-
Developer tools → Actions — paste the
action:block and run it immediately for testing. -
Scripts — create a script (Settings → Automations & scenes → Scripts → Create script → Edit in YAML), paste a complete script starting with
alias:, then expose it to Assist if you want voice control. - Automations — paste into the automation YAML editor.
- Custom sentences / intent_script — advanced; see the timer section and the repository's VOICE_TIMERS.md. These are optional and not required for the direct actions to work.
Current public release: v0.17.0. Camera popups, the Frigate/HA screensaver and Home Assistant actions are available with the matching signed TV app and kellies_voice HACS integration. Some advanced actions and camera behavior depend on supported hardware and opted-in settings.
Where: Developer tools → Actions (or an automation/script).
action: kellies_voice.announce
data:
title: Laundry
text: The washer has finished.
duration_seconds: 10
# Optional: device_id: YOUR_TV_PAIRING_ID # leave out to send to all TVsExpected result: a short text popup appears on the TV(s).
Optional in v0.16.11: Enable Settings → Spoken announcements on the TV and add speak: The washer is finished. to the announcement above. Omit speak to keep the TV alert silent. The speech volume can be adjusted per TV.
Troubleshooting: confirm TV announcements & cameras is ON and the alert receiver is connected (see Resume TV alerts).
Where: Developer tools → Actions.
action: kellies_voice.show_camera
data:
entity_id: camera.example_driveway
title: Driveway snapshot
duration_seconds: 15
# Optional (v0.16.5+):
# show_header: false
# image_fit: fit
# refresh_seconds: 3Optional in v0.16.11: Add speak: Someone is at the door. to show_camera or show_live_camera. The sentence is spoken with the same popup when spoken announcements are enabled on the TV; the default remains quiet.
Expected result: a still image popup. image_fit: fit shows the whole frame; refresh_seconds updates the still periodically (not live video).
Where: Developer tools → Actions. Verified moving video on onn 4K Pro with driveway and doorbell cameras (v0.16.1+). Other cameras/devices need testing.
action: kellies_voice.show_live_camera
data:
entity_id: camera.example_driveway
title: Live driveway
duration_seconds: 30
# Optional (v0.16.7+):
# show_header: false
# image_fit: fit
# refresh_seconds: 3 # refreshes the loading snapshot onlyShort durations (as low as 4 seconds) are allowed, but a slow HLS start may close before moving frames appear. Enabling Home Assistant's Preload camera stream on the camera entity can help startup at the cost of extra resources.
Where: Developer tools → Actions (or an Assist-exposed script).
action: kellies_voice.hide_camera
data:
# Optional: device_id: YOUR_TV_PAIRING_ID # leave out for all TVsCloses a live or snapshot camera popup immediately. Does not affect announcements or the voice overlay.
The repository includes a ready blueprint: custom_components/kellies_voice/blueprints/frigate_person_popup.yaml.
Copy it to config/blueprints/automation/kellies_voice/, reload automations, then create an automation from Kellie's Voice Frigate person popup.
Manual example automation (replace entities):
alias: Person at door — TV snapshot
mode: single
triggers:
- trigger: state
entity_id: binary_sensor.example_door_person_occupancy
to: "on"
actions:
- action: kellies_voice.show_camera
data:
entity_id: camera.example_doorbell
title: Someone is at the door
duration_seconds: 20
- delay:
seconds: 90This shows a still snapshot, not live video.
Where: Developer tools → Actions for testing, or a Script exposed to Assist.
action: kellies_voice.show_forecast
data:
entity_id: weather.home
# Optional: duration_seconds: 20
# Optional: device_id: YOUR_TV_PAIRING_IDRequires a weather entity that supports daily forecasts (Home Assistant 2024.4+). The card is not a camera and does not start the microphone.
Script example (create as a Script and expose to Assist):
alias: Seven day forecast on TV
description: Show the next seven days of weather on Kellie's Voice.
mode: single
sequence:
- action: kellies_voice.show_forecast
data:
entity_id: weather.homeSee also Voice and Timers.
Start (required device_id and duration_seconds):
action: kellies_voice.start_timer
data:
device_id: YOUR_TV_PAIRING_ID
name: Pizza
duration_seconds: 300
speak_alert: true
alert_phrase: Your pizza timer is finished.Cancel and dismiss examples are on the Voice and Timers page.
Honest note on spoken timers: native Home Assistant Assist may reply "this device doesn't support timers" because the generic timer intent is not automatically mapped to Kellie's Voice. Direct actions above work today. Optional custom sentence files or home-specific automations can route speech, but they are extra setup and must be scoped carefully if you have other Assist satellites. Do not claim timers work with no additional configuration.
- Leave
device_idempty (or omit it) on announce / camera / forecast actions to target all configured Kellie's Voice TVs. - Set
device_id: YOUR_TV_PAIRING_IDto target one specific TV. - Timer actions always require a
device_idand are never broadcast.
Use the pairing ID from the TV Settings screen, never a Home Assistant device-registry ID.
action: select.select_option
target:
entity_id: select.your_tv_overlay_style
data:
option: Aurora GlassReplace the entity ID with the one on your Kellie's Voice device page. The four shipped themes are Copper Glass, Compact Charcoal, Night Signal, and Aurora Glass.
The core examples were originally checked against custom_components/kellies_voice/services.yaml for v0.16.9 and the optional speech notes have been updated for v0.16.11. Confirm supported fields against your installed HACS version. Required fields are marked. Placeholders avoid any personal credentials, tokens, or real IPs. Test each action from Developer tools before relying on voice or automations.
🏠 Documentation home · 📦 Latest stable release · 🛠️ Troubleshooting · 💬 Report an issue
Kellie's Voice · Android TV + Home Assistant · Community documentation · Public stable v0.16.11
Start here
- 🏠 Overview
- 🚀 Getting Started
- 📺 TV App & Permissions
- 🎛️ TV Settings & Microphone
- 🏡 Home Assistant Setup
Features
- 🗣️ Voice & Timers
- 🎙️ Okay Nabu & Wake Privacy
- 📷 Cameras & Frigate
- 📣 Announcements & Weather
- 🧩 YAML Cookbook
Help & Community
Get the app
Public guide: v0.16.14 · Okay Nabu is opt-in and OFF by default.