* Implement time triggers with offset for timestamp sensors
* Fix bad change
* Add testcase for multiple conf_at with offsets
* Fix fixture rename
* Fix testcase - if no offset provided, it should be just the string of the entity id
* Get test to pass
* Simplify code
* Update the messaging and make the offset optional allowing specifying only the entity_id
* Move state tracking one level up
* Implement requesteed changes
* Add repair issue when trying to set up unknown integration
* Add repair issue when trying to set up unknown integration
* Add repair issue when trying to set up unknown integration
* Fix
* Update homeassistant/components/homeassistant/strings.json
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
* Update homeassistant/components/homeassistant/strings.json
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
* Update homeassistant/setup.py
* Fix
---------
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Refactor setup time tracking to exclude time waiting on other operations
We now exclude the import time and th time waiting on
base platforms to setup from the setup times
* tweak
* tweak
* tweak
* tweak
* adjust
* fixes
* fixes
* preen
* preen
* tweak
* tweak
* adjust
* tweak
* reduce
* do not count integrtion platforms against their parent integration
* handle legacy tts platforms
* stt as well
* one more wait
* use the same pattern in all the legacy
* fix tts and stt legacy
* fix
* fix
* reduce
* preen
* entity comp does not wait for platforms
* scene blocks as well
* fix test
* test fixes
* coverage
* coverage
* coverage
* fix test
* Update tests/test_setup.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/test_setup.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/setup.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* strip
* strip WAIT_PLATFORM_INTEGRATION
* strip WAIT_PLATFORM_INTEGRATION
* strip WAIT_PLATFORM_INTEGRATION
* strip WAIT_PLATFORM_INTEGRATION
* remove complexity
* Apply suggestions from code review
* no longer works that way
* fixes
* fixes
* fixes
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Added scene.delete service
Only for scenes created with scene.create
* Refactor after #95984#96390
* Split scene validation in 2
First, check if entity_id is a scene
Second, check if it's a scene created with `scene.create`
* Address feedback
- Move service to `homeassistant` domain
- Register with `platform.async_register_entity_service`
- Raise validation errors instead of just logging messages
* Revert moving the service to the `homeassistant` domain
* Remove unneeded validation
* Use helpers and fix tests
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Fix linting
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Switch async_track_same_state to use async_call_later
There was no need to use async_track_point_in_utc_time here since
we only need a delay
* update trigger tests
* remove some more utcnow patching
* remove some more utcnow patching
* remove some more utcnow patching
* Significantly speed up single entity/response service calls
Since the majority of service calls are single entity, we can
avoid creating tasks in this case. Since the multi-entity
service calls always check the result and raise, we can switch
the asyncio.wait to asyncio.gather
* Significantly speed up single entity/response service calls
Since the majority of service calls are single entity, we can
avoid creating tasks in this case. Since the multi-entity
service calls always check the result and raise, we can switch
the asyncio.wait to asyncio.gather
* revert
* cannot be inside pytest.raises
* one more
* Update homeassistant/helpers/service.py
* Update return signature of service calls
* Add timeout error handling in websocket api for service calls
* Update recorder tests to remove assertion on service call
* Remove timeout behavior and update callers that depend on it today
* Fix tests
* Add missing else
* await coro directly
* Fix more tests
* Update the intent task to use wait instead of timeout
* Remove script service call limits and limit constants
* Update tests that depend on service call limits
* Use wait instead of wait_for and add test
* Update homeassistant/helpers/intent.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Refactor handling of exposed entities for cloud Alexa
* Tweak WS API
* Validate assistant parameter
* Address some review comments
* Refactor handling of exposed entities for cloud Google
* Raise when attempting to expose an unknown entity
* Add tests
* Adjust cloud tests
* Allow getting expose new entities flag
* Test Alexa migration
* Test Google migration
* Add WS command cloud/google_assistant/entities/get
* Fix return value
* Update typing
* Address review comments
* Rename async_get_exposed_entities to async_get_assistant_settings