You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Feature request] hardware mute and intercom control for physical buttons #991
Context: I run Kiosk Satellite on an Amazon Echo Dot 2nd gen (custom ROM) with my own plugin that drives the LED ring. The device has physical buttons: a mute button that toggles a hardware latch which cuts the microphones, and other buttons that I'd like to use for the intercom. The pieces below would let a plugin and the Gestures page cover these devices completely.
1. Plugin SDK: allow setting the wake word mute
Plugins can already read the mute state (getWakeWordState, wakeword.state → muted), but there is no way to set it. I'd like a host.control command, for example:
Command
Arguments and behavior
setWakeWordMuted
{muted: boolean}. Mute or unmute wake word detection, the same user-facing mute that the Home Assistant mute switch controls. Returns the resulting state
Use case: The Echo Dot's mute button cuts the microphones in hardware. My plugin can read that latch, but to keep KS in sync it currently has to fire gesture triggers that call a Home Assistant service to toggle the kiosk's own mute switch. That round trip fails while Home Assistant is unreachable and adds latency. With a direct command, the plugin could keep KS muted while the hardware is muted, without depending on HA.
I understand internal voice suppression is excluded on purpose. This request is only for the user-facing mute that is already exposed as a switch in Home Assistant.
2. Gestures: add "Accept intercom call" and "Decline intercom call"
Please add two gesture actions:
Accept intercom call: answers the currently ringing incoming intercom call.
Decline intercom call: rejects the currently ringing incoming intercom call.
Both should do nothing when no call is ringing.
Use case: Combined with plugin gesture triggers, these would let physical buttons (or claps, corner taps, etc.) answer and reject calls on devices without a usable touchscreen.
3. Hangup button: also accept a ringing intercom call
Today the hangup button ends an active intercom call. Please extend it so that pressing it while an incoming call is ringing accepts the call. Ideally this is configurable, for example:
All three are in and will ship in the next release.
1. Wake word mute for plugins
Plugins with host.control can call setWakeWordMuted with {muted: boolean}. It's the same mute as the Voice Satellite Mute switch in Home Assistant and it returns the muted state it set. With Voice Satellite running in the app, Kiosk Satellite sets it directly, so it works while Home Assistant is unreachable. getWakeWordState now also includes muted, so your plugin can read the current state on startup without waiting for a wakeword.state event.
2. Accept intercom call and Decline intercom call gestures
Both are on the Gestures page. They answer or decline the call ringing on the kiosk and do nothing when nothing is ringing, so you can map them to your plugin triggers.
3. Hang up button while ringing
Under Intercom > Talk, a new Hang up button while ringing setting shows once Hang up call when pressing this button is set to a button. It has three choices:
Accept answers the ringing call. The next press hangs up, so one button handles the whole call.
Decline declines the ringing call.
Ignore is the default and keeps the current behavior.
Activity
jxlarrea commentedon Oct 14, 2026
All three are in and will ship in the next release.
1. Wake word mute for plugins
Plugins with
host.controlcan callsetWakeWordMutedwith{muted: boolean}. It's the same mute as the Voice Satellite Mute switch in Home Assistant and it returns the muted state it set. With Voice Satellite running in the app, Kiosk Satellite sets it directly, so it works while Home Assistant is unreachable.getWakeWordStatenow also includesmuted, so your plugin can read the current state on startup without waiting for awakeword.stateevent.2. Accept intercom call and Decline intercom call gestures
Both are on the Gestures page. They answer or decline the call ringing on the kiosk and do nothing when nothing is ringing, so you can map them to your plugin triggers.
3. Hang up button while ringing
Under Intercom > Talk, a new Hang up button while ringing setting shows once Hang up call when pressing this button is set to a button. It has three choices:
Let plugins mute the wake word with setWakeWordMuted, add Accept inte…