* Add ElevenLabs text-to-speech integration
* Remove commented out code
* Use model_id instead of model_name for elevenlabs api
* Apply suggestions from code review
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
* Use async client instead of sync
* Add ElevenLabs code owner
* Apply suggestions from code review
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Set entity title to voice
* Rename to elevenlabs
* Apply suggestions from code review
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Allow multiple voices and options flow
* Sort default voice at beginning
* Rework config flow to include default model and reloading on options flow
* Add error to strings
* Add ElevenLabsData and suggestions from code review
* Shorten options and config flow
* Fix comments
* Fix comments
* Add wip
* Fix
* Cleanup
* Bump elevenlabs version
* Add data description
* Fix
---------
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Michael Hansen <mike@rhasspy.org>
Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
* Add an integration for Bryant Evolution HVAC systems.
* Update newly created tests so that they pass.
* Improve compliance with home assistant guidelines.
* Added tests
* remove xxx
* Minor test cleanups
* Add a test for reading HVAC actions.
* Update homeassistant/components/bryant_evolution/__init__.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Address reviewer comments.
* Address additional reviewer comments.
* Use translation for exception error messages.
* Simplify config flow.
* Continue addressing comments
* Use mocking rather than DI to provide a for-test client in tests.
* Fix a failure in test_config_flow.py
* Track host->filename in strings.json.
* Use config entry ID for climate entity unique id
* Guard against fan mode returning None in async_update.
* Move unavailable-client check from climate.py to init.py.
* Improve test coverage
* Bump evolutionhttp version
* Address comments
* update comment
* only have one _can_reach_device fn
* Auto-detect which systems and zones are attached.
* Add support for reconfiguration
* Fix a few review comments
* Introduce multiple devices
* Track evolutionhttp library change that returns additional per-zone information during enumeration
* Move construction of devices to init
* Avoid triplicate writing
* rework tests to use mocks
* Correct attribute name to unbreak test
* Pull magic tuple of system-zone into a constant
* Address some test comments
* Create test_init.py
* simplify test_reconfigure
* Replace disable_auto_entity_update with mocks.
* Update tests/components/bryant_evolution/test_climate.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_climate.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/bryant_evolution/config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* fix test errors
* do not access runtime_data in tests
* use snapshot_platform and type fixtures
---------
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Initial import 0.0.2
* Fixes to URL, and removed commits
* Initial import 0.0.2
* Fixes to URL, and removed commits
* Added first test for iotty
* First release
* Reviewers request #1
- Removed clutter
- Added support for new naming convention for IottySmartSwitch entity
* Removed commmented code
* Some modifications
* Modified REST EP for iotty CloudApi
* Initial import 0.0.2
* Fixes to URL, and removed commits
* Added first test for iotty
* First release
* Rebased and resolved conflicts
* Reviewers request #1
- Removed clutter
- Added support for new naming convention for IottySmartSwitch entity
* Removed commmented code
* Some modifications
* Modified REST EP for iotty CloudApi
* Removed empty entries in manifest.json
* Added test_config_flow
* Fix as requested by @edenhaus
* Added test_init
* Removed comments, added one assert
* Added TEST_CONFIG_FLOW
* Added test for STORE_ENTITY
* Increased code coverage
* Full coverage for api.py
* Added tests for switch component
* Converted INFO logs onto DEBUG logs
* Removed .gitignore from commits
* Modifications to SWITCH.PY
* Initial import 0.0.2
* Fixes to URL, and removed commits
* Added first test for iotty
* First release
* Rebased and resolved conflicts
* Fixed conflicts
* Reviewers request #1
- Removed clutter
- Added support for new naming convention for IottySmartSwitch entity
* Removed commmented code
* Some modifications
* Modified REST EP for iotty CloudApi
* Removed empty entries in manifest.json
* Added test_config_flow
* Some modifications
* Fix as requested by @edenhaus
* Added test_init
* Removed comments, added one assert
* Added TEST_CONFIG_FLOW
* Added test for STORE_ENTITY
* Increased code coverage
* Full coverage for api.py
* Added tests for switch component
* Converted INFO logs onto DEBUG logs
* Removed .gitignore from commits
* Modifications to SWITCH.PY
* Fixed tests for SWITCH
* First working implementation of Coordinator
* Increased code coverage
* Full code coverage
* Missing a line in testing
* Update homeassistant/components/iotty/__init__.py
Co-authored-by: Robert Resch <robert@resch.dev>
* Update homeassistant/components/iotty/__init__.py
Co-authored-by: Robert Resch <robert@resch.dev>
* Modified coordinator as per request by edenhaus
* use coordinator entities for switches
* move platforms to constants
* fix whitespace with ruff-format
* correct iotty entry in application_credentials list
* minor style improvements
* refactor function name
* handle new and deleted devices
* improve code for adding devices after first initialization
* use typed config entry instead of adding known devices to hass.data
* improve iotty entity removal
* test listeners update cycle
* handle iotty as devices and not only as entities
* fix test typing for mock config entry
* test with fewer mocks for an integration test style opposed to the previous unit test style
* remove useless tests and add more integration style tests
* check if device_to_remove is None
* integration style tests for turning switches on and off
* remove redundant coordinator tests
* check device status after issuing command in tests
* remove unused fixtures
* add strict typing for iotty
* additional asserts and named snapshots in tests
* fix mypy issues after enabling strict typing
* upgrade iottycloud version to 0.1.3
* move coordinator to runtime_data
* remove entity name
* fix typing issues
* coding style fixes
* improve tests coding style and assertion targets
* test edge cases when apis are not working
* improve tests comments and assertions
---------
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Shapour Nemati <shapour.nemati@iotty.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: shapournemati-iotty <130070037+shapournemati-iotty@users.noreply.github.com>
* Init Autarco integration
* Add integration code with tests
* Update every 5 minutes
* Process all feedback from Joost
* Bump lib to v2.0.0
* Add more then one site if present
* Fix issue with entity translation
* Update the test for sensor entities
* Fix round two based on feedback from Joost
* Add autarco to strict typing
* Update tests/components/autarco/test_config_flow.py
* Update tests/components/autarco/test_config_flow.py
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* feat: Add madvr envy
* fix: await and pass entry directly
* fix: add attributes and unique id for sensors
* fix: reflect power state well, improve state detection
* fix: don't connect on init, add options, add reload on change, keep on during test
* fix: cancel tasks on unload
* fix: test connection via library
* fix: wait for boot time
* docs: add readme and license
* fix: broken pipe in lib
* fix: detect out of band power off
* fix: improve extra attributes
* fix: fix unloading, add config flow test, limit to one platform
* fix: use conf, refresh coordinator, other comments
* fix: remove event data
* fix: fix tests passing, remove wake on lan
* fix: dont allow to proceed unless connection works
* chore: update dep
* fix: update config flow, add constants
* fix: write state, use runtime data instead
* fix: remove await
* fix: move unloading and stuff to coordinator/init
* fix: pass in config entry with correct type
* fix: move queue and tasks to library
* fix: config flow error flow, tests, name, and update lib
* fix: update lib, leave connection open on setup
* fix: update lib
* fix: address comments, remove wol from lib
* fix: remove unneeded options
* fix: remove fields
* fix: simplify code, address comments
* fix: move error to lib
* fix: fix test
* fix: stronger types
* fix: update lib
* fix: missing text from options flow
* chore: remove options flow
* chore: remove import
* chore: update comments
* fix: get mac from device, persist
* fix: add mac stuff to test
* fix: startup import errors
* chore: stale comment
* fix: get mac from persisted config
* chore: update lib
* fix: persist mac in a better way
* feat: use mac as unique ID for entry
* fix: use unique ID from mac, add proper device
* fix: will not be set in init potentially
* fix: access mac
* fix: optimize, move error to lib
* feat: add coordinator test, use conf
* fix: use one mock, add init test
* fix: not async
* feat: add remote test
* fix: types
* fix: patch client, expand remote tests
* fix: use snapshot test
* fix: update branding
* fix: add description, fix type check
* fix: update tests
* fix: test
* fix: update test
* fix: camelcase
* Fix
* feat: strict typing
* fix: strict typing in lib
* fix: type will never be None
* fix: reference to mac, all tests passing
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Add APsystems local API integration
* Fix session usage in config_flow in apsystems local api
* Remove skip check option for apsystems_loca api
* Update APsystems API dependency and increased test coverage to 100%
* Utilize EntityDescriptions for APsystems Local integration
* Ensure coverage entries are sorted (#114424)
* Ensure coverage entries are sorted
* Use autofix
* Adjust
* Add comment to coverage file
* test CI
* revert CI test
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Use patch instead of Http Mocks for APsystems API tests
* Fix linter waring for apsystemsapi
* Fix apsystemsapi test
* Fix CODEOWNERS for apsystemsapi
* Address small PR review changes for apsystems_local
* Remove wrong lines in coveragerc
* Add serial number for apsystems_local
* Remove option of custom refresh interval fro apsystems_local
* Remove function override and fix stale comments
* Use native device id and name storage instead of custom one for apsystems_local
* Use runtime_data for apsystems_local
* Don't store entry data in runtime data
* Move from apsystems_local to apsystems domain
---------
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Initial monzo implementation
* Tests and fixes
* Extracted api to pypi package
* Add app confirmation step
* Corrected data path for accounts
* Removed useless check
* Improved tests
* Exclude partially tested files from coverage check
* Use has_entity_name naming
* Bumped monzopy to 1.0.10
* Remove commented out code
* Remove reauth from initial PR
* Remove useless code
* Correct comment
* Remove reauth tests
* Remove device triggers from intial PR
* Set attr outside constructor
* Remove f-strings where no longer needed in entity.py
* Rename field to make clearer it's a Callable
* Correct native_unit_of_measurement
* Remove pot transfer service from intial PR
* Remove reauth string
* Remove empty fields in manifest.json
* Freeze SensorEntityDescription and remove Mixin
Also use list comprehensions for producing sensor lists
* Use consts in application_credentials.py
* Revert "Remove useless code"
Apparently this wasn't useless
This reverts commit c6b7109e47202f866c766ea4c16ce3eb0588795b.
* Ruff and pylint style fixes
* Bumped monzopy to 1.1.0
Adds support for joint/business/etc account pots
* Update test snapshot
* Rename AsyncConfigEntryAuth
* Use dataclasses instead of dictionaries
* Move OAuth constants to application_credentials.py
* Remove remaining constants and dependencies for services from this PR
* Remove empty manifest entry
* Fix comment
* Set device entry_type to service
* ACC_SENSORS -> ACCOUNT_SENSORS
* Make value_fn of sensors return StateType
* Rename OAuthMonzoAPI again
* Fix tests
* Patch API instead of integration for unavailable test
* Move pot constant to sensor.py
* Improve type safety in async_get_monzo_api_data()
* Update async_oauth_create_entry() docstring
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Adding a new "Ambient Weather Network" integration.
* Rebase and update code coverage.
* Addressed some reviewer comments.
* Remove mnemonics and replace with station names.
* Remove climate-utils
* Remove support for virtual stations.
* Rebase
* Address feedback
* Remove redundant errors
* Reviewer feedback
* Add icons.json
* More icons
* Reviewer feedback
* Fix test
* Make sensor tests more robust
* Make coordinator more robust
* Change update coordinator to raise UpdateFailed
* Recover from no station found error
* Dynamically set device name
* Address feedback
* Disable some sensors by default
* Reviewer feedback
* Change from hub to service
* Rebase
* Address reviewer feedback
* Reviewer feedback
* Manually rerun ruff on all files
* Integration for Energenie Power-Strips (EGPS)
* cleanups reocommended by reviewer
* Adds missing exception handling when trying to send a command to an unreachable device.
* fix: incorrect handling of already opened devices in pyegps api. bump to pyegps=0.2.4
* Add blank line after file docstring, and other cosmetics
* change asyncio.to_thread to async_add_executer_job
* raises HomeAssistantError EgpsException in switch services.
* switch test parameterized by entity name
* reoved unused device registry
* add translation_key and update_before_add
* bump pyegps dependency to version to 0.2.5
* combined get_device patches and put into conftest.py
* changed switch entity to use _attr_is_on and cleanups
* further cleanup
* Apply suggestions from code review
* refactor: rename egps to energenie_power_sockets
* updated test snapshot
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Add bangolufsen integration
* add untested files to .coveragerc
* Simplify integration to media_player platform
* Remove missing files from .coveragerc
* Add beolink_set_relative_volume custom service
Tweaks
* Remove custom services
Remove grouping as it was dependent on custom services
* Update API to 3.2.1.150.0
Reduce and optimize code with feedback from joostlek
Tweaks
* Updated testing
* Remove unused options schema
* Fix bugfix setting wrong state
* Fix wrong initial state
* Bump API
* Fix Beosound Level not reconnecting properly
* Remove unused constant
* Fix wrong variable checked to determine source
* Update integration with feedback from emontnemery
* Update integration with feedback from emontnemery
* Remove unused code
* Move API client into dataclass
Fix not all config_flow exceptions caught
Tweaks
* Add Bang & Olufsen brand
* Revert "Add Bang & Olufsen brand"
This reverts commit 57b2722078.
* Remove volume options from setup
Simplify device checks
rename integration to bang_olufsen
update tests to pass
Update API
* Remove _device from base
Add _device to websocket
* Move SW version device update to websocket
Sort websocket variables
* Add WebSocket connection test
* Remove unused constants
* Remove confirmation form
Make discovered devices get added to Home Assistant immediately
Fix device not being available on mdns discovery
Change config flow aborts to forms with error
* Update tests for new config_flow
Add missing api_exception test
* Restrict manual and discovered IP addresses to IPv4
* Re-add confirmation step for zeroconf discovery
Improve error messages
Move exception mapping dict to module level
* Enable remote control WebSocket listener
* Update tests