J. Nick Koston
e2b69fc470
Significantly improve performance of conversation default_agent listening for new states ( #93577 )
...
Use the async_track_state_added_domain helper instead of tracking
all state changes and rejecting them as it is already optimized
for this job
2023-05-25 23:04:38 -04:00
Michael Hansen
74560ab139
Skip unexposed entities in intent handlers ( #92415 )
...
* Filter intent handler entities by exposure
* Add test for skipping unexposed entities
2023-05-03 12:18:31 -04:00
Erik Montnemery
0126cfa9d9
Allow exposing any entity to the default conversation agent ( #92398 )
...
* Allow exposing any entity to the default conversation agent
* Tweak
* Fix race, update tests
* Update tests
2023-05-03 09:45:54 -04:00
Erik Montnemery
4860a8d1e8
Don't use storage collection helper in ExposedEntities ( #92396 )
...
* Don't use storage collection helper in ExposedEntities
* Fix tests
2023-05-03 12:39:22 +02:00
Erik Montnemery
e3c16e634b
Allow exposing entities not in the entity registry to assistants ( #92363 )
2023-05-02 22:08:09 +02:00
Erik Montnemery
f8f7de5d5a
Remove homeassistant from conversation dependencies ( #92170 )
...
* Remove homeassistant from conversation dependencies
* Fix tests
2023-04-28 18:17:48 +02:00
Erik Montnemery
ebd9cd096a
Keep expose setting in sync for assist ( #92158 )
...
* Keep expose setting in sync for assist
* Fix initialization, add test
* Fix tests
* Add AgentManager.async_setup
* Fix typo
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-28 15:59:21 +02:00
Michael Hansen
929bfd3dfc
Bump intents to 2023.4.26 ( #92070 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-26 22:31:35 +02:00
Erik Montnemery
18f7b92438
Fall back to domain for conversation agents without title ( #92014 )
2023-04-25 22:14:44 +02:00
Erik Montnemery
b601fb17d3
Create a default assist pipeline on start ( #91947 )
...
* Create a default assist pipeline on start
* Minor adjustments
* Address review comments
* Remove tts.async_get_agent
* Fix bugs, improve test coverage
2023-04-24 14:00:52 -04:00
Paulus Schoutsen
d4fb2cdcf7
Conversation list command to support match-all languages agents ( #91844 )
...
* Conversation list command to support match-all languages agnets
* Reuse var
2023-04-22 12:43:09 -04:00
Erik Montnemery
0429b321b8
Include matching languages in WS conversation/agent/list ( #91730 )
...
* Include matching languages in WS conversation/agent/list
* Allow specifying country
2023-04-20 08:58:43 -04:00
Erik Montnemery
6d619579b4
Add WS API for listing languages supported by a full assist pipeline ( #91669 )
...
* Add WS API for listing languages supported by a full assist pipeline
* Address review comments, change logic
2023-04-20 08:55:17 -04:00
Erik Montnemery
eabbe8969d
Adjust typing of AbstractConversationAgent.supported_languages ( #91648 )
...
* Adjust typing of AbstractConversationAgent.supported_languages
* Update test
2023-04-19 10:53:49 -04:00
Erik Montnemery
5e9bbeb4ad
Refactor conversation agent WS API for listing agents ( #91590 )
...
* Refactor conversation agent WS API for listing agents
* Add conversation/agent/info back
2023-04-19 10:53:24 -04:00
Erik Montnemery
dc3c47986b
Add property `supported_languages` to `AbstractConversationAgent` ( #91588 )
...
* Add property supported_languages to AbstractConversationAgent
* Fix test
* Use MATCH_ALL for openai supported languages
2023-04-18 15:11:04 -05:00
Erik Montnemery
5f7d98f15b
Improve comment in conversation ( #91595 )
2023-04-18 09:27:14 -04:00
Michael Hansen
2819ad9a16
Bump intents dependency ( #91556 )
2023-04-17 22:13:31 +02:00
rlippmann
f5911bcad6
Add slots to dataclasses in default_config ( #91410 )
...
* add dataclass slots to default config items
* remove slots from sun mixing
2023-04-14 14:22:39 -04:00
Paulus Schoutsen
c9d81bd217
Pipelines to default to Home Assistant agent ( #91321 )
...
* Pipelines to default to Home Assistant agent
* Tests fix
2023-04-13 00:34:19 -04:00
Erik Montnemery
2c9e9d0fde
Allow UI configuration of entities exposed to voice_assistant ( #91233 )
...
* Allow UI configuration of entities exposed to voice_assistant
* Invalidate cache when settings change
* Add tests
* Expose entities to conversation by default
* Update tests
2023-04-11 22:39:40 -04:00
Erik Montnemery
3c8397a7b9
Flush conversation name cache when an entity is renamed ( #91214 )
2023-04-11 08:33:08 -04:00
Paulus Schoutsen
ad26317b75
Conversation: allow getting agent info ( #90540 )
...
* Conversation: allow getting agent info
* Add unset agenet back
2023-03-31 14:36:39 -04:00
Paulus Schoutsen
81c39e42f4
Bump home-assistant-intents to 2023.3.29 ( #90459 )
2023-03-29 11:25:08 -05:00
epenet
0e4c32efe2
Adjust registry access in conversation ( #88879 )
2023-02-28 21:56:18 -05:00
Michael Hansen
e0bdb3ecc3
Update intent sentences package ( #88933 )
...
* Actually use translated state names in response
* Change test result now that locks are excluded from HassTurnOn
* Bump home-assistant-intents and hassil versions
2023-02-28 21:07:18 -05:00
Michael Hansen
a71487a42b
Make a copy of matching states so translated state names can be used ( #88683 )
2023-02-23 20:50:23 -05:00
Michael Hansen
d5f1713498
Include binary_sensor in default Assist exposed domains ( #88682 )
2023-02-23 19:40:10 -05:00
Michael Hansen
59f2b2ad51
Bump intents package version; hassil==1.0.5; home-assistant-intents==2023.2.22 ( #88605 )
...
* Bump hassil and intents versions
* Adjust tests to handle abbreviated responses
2023-02-22 09:36:42 -06:00
Michael Hansen
5bf3a0b7af
Load custom sentences for language variations (en-us, etc.) ( #88498 )
2023-02-20 12:28:04 -05:00
Marc Mueller
f3c6558db4
Improve conversation typing ( #88440 )
2023-02-19 21:27:30 -05:00
Michael Hansen
325674ec44
Only expose default cloud domains in Assist default agent ( #88274 )
...
* Only expose default cloud domains in default agent
* Copy exposed domain list to conversation
* Implement requested changes
* Add test for exposed devices/areas
2023-02-17 16:19:22 -05:00
epenet
ba23816a0c
Inverse json import logic ( #88099 )
...
* Fix helpers and util
* Adjust components
* Move back errors
* Add report
* mypy
* mypy
* Assert deprecation messages
* Move test_json_loads_object
* Adjust tests
* Fix rebase
* Adjust pylint plugin
* Fix plugin
* Adjust references
* Adjust backup tests
2023-02-16 11:37:57 +01:00
Michael Hansen
8cd5106c15
Add HassGetState intent for queries ( #87808 )
...
* Use names instead of entity ids for list
* Add HassGetState for Assist queries
* Add unknown area to test
* Clean up and test device classes
2023-02-09 23:39:46 -05:00
Erik Montnemery
87420e949d
Sort manifests 2 ( #87023 )
2023-02-08 20:16:39 +01:00
epenet
a202588fd2
Add return type to json_loads ( #85672 )
...
* Add JSON type definitions
* Sample use
* Keep mutable for a follo-up PR (avoid dead code)
* Use list/dict
* Remove JsonObjectType
* Remove reference to Union
* Cleanup
* Improve rest
* Rename json_dict => json_data
* Add docstring
* Add type hint to json_loads
* Add cast
* Move type alias to json helpers
* Cleanup
* Create and use json_loads_object
* Make error more explicit and add tests
* Use JsonObjectType in conversation
* Remove quotes
2023-02-07 17:21:55 +01:00
Franck Nijhof
939eef3b28
Remove translations from Core ( #87543 )
...
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-02-06 15:06:43 +01:00
Paulus Schoutsen
fc38b4327f
Add support for multiple conversation agents ( #87337 )
...
* Add support for multiple conversation agents
* Lock initializing default agent
* Allow unsetting agent when never set
2023-02-03 23:35:29 -05:00
Paulus Schoutsen
f32f46aff5
Fix Assist skipping entities that are hidden or have entity category ( #87096 )
...
Skipping entities that are hidden or have entity category
2023-02-01 10:48:04 -06:00
Michael Hansen
68450734f1
Bump home-assistant-intents to 2023.1.31 ( #87034 )
2023-01-31 10:23:03 -06:00
Michael Hansen
be69c81db5
Prioritize entity names over area names in Assist matching ( #86982 )
...
* Refactor async_match_states
* Check entity name after state, before aliases
* Give entity name matches priority over area names
* Don't force result to have area
* Add area alias in tests
* Move name/area list creation back
* Clean up PR
* More clean up
2023-01-30 23:46:25 -05:00
Michael Hansen
28affe91be
Set synesthesiam as codeowner of conversation ( #86958 )
2023-01-30 23:02:25 +01:00
Michael Hansen
f7fdaadde0
Performance improvements for Assist ( #86966 )
...
* Move hassil recognize into executor
* Bump hassil to 0.2.6
* Disable template parsing in name/area lists
* Don't iterate over hass.config.components directly
2023-01-30 12:25:22 -06:00
J. Nick Koston
691a234090
Cache the names and area lists in the default agent ( #86874 )
...
* Cache the names and area lists in the default agent
fixes #86803
* add coverage to make sure the entity cache busts
* add areas test
* cover the last line
2023-01-29 07:16:29 -05:00
Michael Hansen
adeaf746ec
Use device area id in intent matching ( #86678 )
...
* Use device area id when matching
* Normalize whitespace in response
* Add extra test entity
2023-01-26 09:48:49 -06:00
Michael Hansen
c5c68cd429
Bump home-assistant-intents 2023.1.25 ( #86626 )
...
* Bump home-assistant-intents 2022.1.25
* Use correct year in home-assistant-intents package
2023-01-25 10:50:15 -06:00
Paulus Schoutsen
6c8efe3a3b
Conversation cleanup ( #86592 )
...
* Require config entry when setting Conversation agent, add new unset agent method
* Remove onboarding from conversation agent
* Type attribution
* Wrap async_process params in ConversationInput object
2023-01-24 21:47:49 -06:00
Michael Hansen
ea95abcb30
Use intent responses from home-assistant-intents ( #86484 )
...
* Use intent responses from home_assistant_intents
* Use error responses from home_assistant_intents
* Remove speech checks for intent tests (set by conversation now)
* Bump hassil and home-assistant-intents versions
* Use Home Assistant JSON reader when loading intents
* Remove speech checks for light tests (done in agent)
* Add more tests for code coverage
* Add test for reloading on new component
* Add test for non-default response
2023-01-23 22:38:41 -05:00
Michael Hansen
255611238b
Conversation config ( #86326 )
...
* Restore conversation config
* Fall back to en for en_US, etc.
* Simplify config passing around
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-01-20 21:39:49 -05:00
Michael Hansen
5aca996f22
HassTurnOn/Off intents to also handle cover entities ( #86206 )
...
* Move entity/area resolution to async_match_states
* Special case for covers in HassTurnOn/Off
* Enable light color/brightness on areas
* Remove async_register from default agent
* Remove CONFIG_SCHEMA from conversation component
* Fix intent tests
* Fix light test
* Move entity/area resolution to async_match_states
* Special case for covers in HassTurnOn/Off
* Enable light color/brightness on areas
* Remove async_register from default agent
* Remove CONFIG_SCHEMA from conversation component
* Fix intent tests
* Fix light test
* Fix humidifier intent handlers
* Remove DATA_CONFIG for conversation
* Copy ServiceIntentHandler code to light
* Add proper errors to humidifier intent handlers
2023-01-19 17:15:01 -06:00