Skip to content

Add identity recognition protocol support#50

Open
josephabbey wants to merge 3 commits intoOHF-Voice:mainfrom
josephabbey:identity
Open

Add identity recognition protocol support#50
josephabbey wants to merge 3 commits intoOHF-Voice:mainfrom
josephabbey:identity

Conversation

@josephabbey
Copy link
Copy Markdown

@josephabbey josephabbey commented Mar 21, 2026

This PR introduces a new service to the protocol: identity.

This service should run at the same time as asr and provide the context of who is talking to the intent parser and handler. This will allow for per user aliases (e.g. "My bedside light"), and tentatively permission handling.

My current thoughts on the concurrency is: Home Assistant will call this service asynchronously next to the asr and this will be handled outside of the standard pipeline order.

- Add identity events and info schema
- Document identity recognition support
- Cover new event and info types in tests
- Support enroll and delete request/response events
- Update docs, changelog, and event tests
@josephabbey josephabbey marked this pull request as ready for review March 21, 2026 18:48
@josephabbey
Copy link
Copy Markdown
Author

This is still in it's initial stages, but I would like some input on what others think about the flow for enrolling new identities. My second commit there adds support for enrolling via wyoming, but it may be better for enrolling to happen via a web gui that is provided by the App. The benefit to including it in wyoming is that HomeAssistant can provide an interface to enroll voices per user.

@josephabbey
Copy link
Copy Markdown
Author

I'll also need to make some better thought out tests.

- Add `identity` pipeline stage and state
- Carry `identity_name` through run-pipeline events
- Update docs and tests for new stage ordering
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant