Changes for Home assistant support#368
Open
mretallack wants to merge 1 commit into
Open
Conversation
Contributor
Author
Contributor
Author
|
The main area to review are the rule, especially the "where is person xxx". It can sometimes trigger the navigation skill. |
mretallack
commented
Mar 26, 2026
Stypox
requested changes
May 1, 2026
Contributor
Author
|
@Stypox Thanks for the review, I have done the actions, Hopefully this is better, I have also tested on my phone. |
Add a Home Assistant skill that allows voice control of HA entities. Supports querying entity state, turning entities on/off, and selecting media sources on media players. - HomeAssistantSkill with fuzzy entity name matching - Entity mapping configuration via settings UI - Media source selection with number variation handling - Help command listing available voice commands - Comprehensive test coverage (fuzzy matching, number variations, source selection integration) Co-authored-by: Mark <mark@retallack.org.uk>
fdd3cbb to
331d508
Compare
Contributor
Author
|
@Stypox I gave rebased this branch to clean up the commits, hopefully the history looks a bit better |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

[HomeAssistant] - Voice Control Integration
Status: Ready for Merge
This PR isHome Assistant integration with Dicio. It is now ready for production but requires review, it has been been tested for the past 2 months.
Note: This implementation was developed with assistance from AWS Kiro AI to accelerate the initial development and explore the feasibility of Home Assistant integration.
Overview
Adds a new skill that allows users to control and query Home Assistant entities using voice commands. Users can turn devices on/off, check status, and query person locations through natural language.
Features Implemented
Voice Commands
Entity Control:
"Turn living room light on","Switch bedroom lamp off""Get status of garage door","Check front door""Where is the person Mark","What is Sarah location"Supported Entity Types
Configuration
Technical Implementation
Files Added/Modified
Core Implementation:
app/src/main/kotlin/org/stypox/dicio/skills/homeassistant/HomeAssistantInfo.kt- Skill registrationHomeAssistantSkill.kt- Main skill logicHomeAssistantOutput.kt- Output handlingHomeAssistantApi.kt- REST API clientHomeAssistantSettings.kt- Settings UISentence Definitions:
app/src/main/sentences/skill_definitions.yml- Added sentence IDsapp/src/main/sentences/en/home_assistant.yml- English patternsProto/DataStore:
app/src/main/proto/skill_settings_home_assistant.proto- Settings schemaTests:
app/src/test/kotlin/org/stypox/dicio/skills/homeassistant/HomeAssistantSkillTest.kt- 19 comprehensive testsDocumentation:
SETUP.md- Complete setup guide for usersResources:
Architecture
Testing
✅ All 19 unit tests passing:
Tests cover:
Known Issues / TODO
Before Merge:
Pattern Conflicts:
"where is the person <name>"instead of"where is <name>"Limitations:
Future Enhancements
Potential improvements for future iterations:
How to Test
Screenshots
TODO: Add screenshots of settings UI and example interactions
Related Issues
Link to any related issues or discussions
Checklist
Feedback and suggestions are welcome!