I’ve set up my homeassistant on HA Yellow + Home Assistant Cloud.
Some Voice Assistant intents seem to work just fine; I can turn lights on and off and add items to my shopping list.
However, the HassStartTimer intent does not seem to work. I have exposed my timer entity to the voice assistant and am trying sentence structures described in the intent’s source file, with no success.
I have also tried not using voice and just typing the sentences into the Assist dialog – no luck here either.
Can someone help me figure out what I’m doing wrong?
Support has been added in the latest release (esphome 2024.06). Now timers should work not only on wyoming satellite, but also on esphome based devices.
and yes, it is not possible to set a timer in the main dialog box, because there is no associated device for this task. Perhaps in the future they will expand the functionality.
Yeah, bad thing that documentation is lagging behind on ESPHome site, so I succeeded with timers on ESPHome satellites only today.
However, I find it useless on ESP32-S3-BOX, as there’s no media_player, so I can’t play beeps on speaker…
thx for the info yall. I made some progress – created a modified version of the internal intent with require_context section removed. Now when I try to trigger voice assistant with my phone or web gui, I get “Sorry, timers are not supported on this device.”
Surely it couldn’t be too difficult to make timers work from companion app if the only problem is not being able to designate an area?
modified timers.yaml file below:
---
language: "en"
intents:
HassStartTimer:
data:
- sentences:
- "<timer_duration> timer"
- "timer for <timer_duration>"
- "<timer_duration> timer for {timer_name:name}"
- "timer for <timer_duration> (named|called) {timer_name:name}"
- "<timer_set>[ a] <timer_duration> timer"
- "<timer_set>[ a] timer for <timer_duration>"
- "<timer_set>[ a] <timer_duration> timer (named|called|for) {timer_name:name}"
- "<timer_set>[ a] timer (named|called) {timer_name:name} for <timer_duration>"
- "<timer_set>[ a] timer for <timer_duration> (named|called) {timer_name:name}"
- sentences:
- "{timer_command:conversation_command} in <timer_duration>"
- "in <timer_duration> {timer_command:conversation_command}"
response: command