* Add first status sensor and coordinator
* New snapshot
* Add comment
* Add test for forbidden status endpoint
* Changed comment
* Fixed translation
* Minor changes and code optimization
* Add common translation; minor tweaks
* Moved translation from common to integration
* Use device class transation
* WIP
* Test api push
* Use constants
* Use callbacks registered with mock
* Add comment
* Adress review comments
* Empty commit
* Fix tests
* Updates after review
* Add user picture
* FYTA integration: Add separate entities for both default and user plant images (#12)
* Refactor FYTA integration to provide both default and user plant images as separate entities
* Refactor FYTA tests by removing unused CONF_USER_IMAGE option and related test cases
* Update FytaPlantImageEntity to set entity name based on image type
* Refactor FYTA image tests to accommodate separate plant and user image entities, updating assertions and snapshots accordingly.
* Enhance FYTA image handling by introducing FytaImageEntityDescription for better separation of plant and user images, and update image URL retrieval logic. Additionally, add localized strings for image entities in strings.json.
* Correct typo
* Update FYTA image snapshots to reflect changes in translation keys for plant and user images.
* Update homeassistant/components/fyta/image.py
* Update homeassistant/components/fyta/image.py
---------
Co-authored-by: dontinelli <73341522+dontinelli@users.noreply.github.com>
* Update QS + ruff
* Revert MINOR_VERSION increase and remove obsolete migration test
* Update snapshot
* Resolve comments
* Update snapshot
* Fix
---------
Co-authored-by: Alexander <chimera88@gmx.de>
* add support for air purifier
* add unit tests for air purifier
* fix aqi translation
* fix aqi translation
* add air purifier table
* fix air purifier
* remove init and add options for aqi level
* feat: Wind direction icons
* optimize funciton
* float to int
* no-verify
* pre-change for icon translation changes
---------
Co-authored-by: Jeff Stein <6491743+jeffor@users.noreply.github.com>
* initial
* initial
* add tests
* Update for list return
* translate exception
* tests for errors
* review tweaks
* test fix
* force content_type to lowercase
* Allow media_content_type = None
* new test
* Shelly RPC sub-devices
* Better varaible name
* Add get_rpc_device_info helper
* Revert channel name changes
* Use get_rpc_device_info
* Add get_rpc_device_info helper
* Use get_block_device_info
* Use helpers in the button platform
* Fix channel name and roller mode for block devices
* Fix EM3 gen1
* Fix channel name for RPC devices
* Revert test changes
* Fix/improve test_block_get_block_channel_name
* Fix test_get_rpc_channel_name_multiple_components
* Fix tests
* Fix tests
* Fix tests
* Use key instead of index to generate sub-device identifier
* Improve logic for Pro RGBWW PM
* Split channels for em1
* Better channel name
* Cleaning
* has_entity_name is True
* Add get_block_sub_device_name() function
* Improve block functions
* Add get_rpc_sub_device_name() function
* Remove _attr_name
* Remove name for button with device class
* Fix names of virtual components
* Better Input name
* Fix get_rpc_channel_name()
* Fix names for Inputs
* get_rpc_channel_name() improvement
* Better variable name
* Clean RPC functions
* Fix input_name type
* Fix test
* Fix entity_ids for Blu Trv
* Fix get_block_channel_name()
* Fix for Blu Trv, once again
* Revert name for reboot button
* Fix button tests
* Fix tests
* Fix coordinator tests
* Fix tests for cover platform
* Fix tests for event platform
* Fix entity_ids in init tests
* Fix get_block_channel_name() for lights
* Fix tests for light platform
* Fix test for logbook
* Update snapshots for number platform
* Fix tests for sensor platform
* Fix tests for switch platform
* Fix tests for utils
* Uncomment
* Fix tests for flood
* Fix Valve entity name
* Fix climate tests
* Fix test for diagnostics
* Fix tests for init
* Remove old snapshots
* Add tests for 2PM Gen3
* Add comment
* More tests
* Cleaning
* Clean fixtures
* Update tests
* Anonymize coordinates in fixtures
* Split Pro 3EM entities into sub-devices
* Make sub-device names more unique
* 3EM (gen1) does not support sub-devices
* Coverage
* Rename "device temperature" sensor to the "relay temperature"
* Update tests after rebase
* Support sub-devices for 3EM (gen1)
* Mark has-entity-name rule as done 🎉
* Rename `relay temperature` to `temperature`
* Add reauth and reconfigure
* Reauth and reconfigure in different functions
* Add duplicate check
* Add test for reconfigure duplicate
* Removed seconds config entry fixture
* Add data descriptions in the Android TV Remote Configure Android apps
* Update homeassistant/components/androidtv_remote/strings.json
---------
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Allow disabled selectors in config flows. Show hidden options for history_stats.
* fix tests
* use optional instead of required
* rename flag to readonly
* rename to read_only
* Update to use read_only field as part of selector definition
* lint fix
* Fix test
* All selectors
* Add AbstractTemplate cover to prepare for trigger based template covers
* add reflection and improve test coverage
* update class after rebase
* remove test
* Don't add dynamically Home Connect sensors and disable them by default
* Fix test
* Check for None
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* add webhook in switchbot cloud integration
* Rename _need_initialized to _is_initialized and reduce nb line in async_setup_entry
* Add unit tests
* Enhance poll management
* fix
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Remove the old ZWave controller from the list of migration targets
* ensure addon device path is serial/by_id
* Use executor
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Added shared space to the list of all the albums
* Added tests
* added more tests
* Apply suggestions from code review
---------
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
* Assist Pipeline stream TTS when supported and long response
* Indicate in run-start if streaming supported
* Simplify a little bit
* Trigger streaming based on characters
* 60
* Move make_zmanim() method to entity
* Move enum values to setup
* Create a Jewish Calendar Sensor Description
* Hold a single variable for the runtime data in the entity
* Move value calculation to sensor description
* Use a base class to keep timestamp sensor inheritance
* Move attr to entity description as well
* Move options to entity description as well
* Fix tests after merge
* Put multiline in parentheses
* Fix diagnostics tests
* Suez water: fetch historical data in statistics
* test review
* wip: fix few things
* Python is smarter than me
* use snapshots for statistics and add hard limit for historical stats
* refactor refresh + handle missing price
* No more auth error raised
* fix after rebase
* Review - much cleaner <3
* fix changes
* test without snapshots
* fix imports
* Create repair issue if not all add-ons or folders were backed up
* Fix spelling
* Fix _collect_errors
* Make time patching by freezegun work with mashumaro
* Addd test to hassio
* Add fixture
* Fix generating list of folders
* Add issue creation tests
* Include name of failing add-on in message
* Improve code formatting
* Rename AddonError to AddonErrorData
* Use preferred spelling of "setpoint" in `smartthings`
Change three occurrences of "set point" to "setpoint" to match the preferred spelling in Home Assistant.
* Update test_sensor.ambr
* Update test_sensor.ambr (2)
* fix issues with checking mac address for panels added manually
* add test
* don't allow discovery to pick up a host twice
* make sure we validate tests without a mac address
* check entry is loaded
* Update config_flow.py
* apply changes from review
* assert unique id
* assert unique id
* Sort usb ports in Z-Wave flow so unknown devices are last
* tweak
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* add media_source platform
* fix error messages
* use mime-type from asset info, instead of guessing it
* add dependency for http
* add tests
* use direct imports and set can_play=False for images
* fix tests
* Enable RFDEBUG on "Enable debug logging"
* fix checks
* fix checks
* one more lap
* fix test
* wait to init rflink
In my dev env this is not needed
* use hass.async_create_task(handle_logging_changed())
instead async_at_started(hass, handle_logging_changed)
* revert unneeded async_block_till_done
* Remove the startup management
There's a race condition at startup that can't be managed nicely
* Add energy/water forecast & fix drying_step error
Adding the energy forecast and water forecast entities that are present in the HACS version of this integration but absent in the HA Core implantation.
Also fixed the state_drying_step sensor which wasn't handling casting of the API value to an int correctly due to the API sometimes giving a None value.
* Fix formatting issues from previous commit
* Fix missing translation_key line 202
* Remove icon entries
* Update icons.json
* Update strings.json
* Update strings.json (correcting mixed up energy/water forecast names)
* Update homeassistant/components/miele/strings.json
Co-authored-by: Åke Strandberg <ake@strandberg.eu>
* Update homeassistant/components/miele/strings.json
Co-authored-by: Åke Strandberg <ake@strandberg.eu>
* Fix tests
---------
Co-authored-by: Åke Strandberg <ake@strandberg.eu>
Co-authored-by: Joostlek <joostlek@outlook.com>
* Fix Nanoleaf light state propagation after change from home asisstant
* Add tests to check if nanoleaf light is triggering async_write_ha_state
* Fix pylint for test case
* Fix use coordinator.async_refresh instead of async_write_ha_state
* Fix tests
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* add immich integration
* bump aioimmich==0.3.1
* rework to require an url as input and pare it afterwards
* fix doc strings
* remove name attribute from deviceinfo as it is default behaviour
* add translated uom for count sensors
* explicitly pass in the config_entry in coordinator
* fix url in strings to uppercase
* use data_updates attribute instead of data
* remove left over
* match entries only by host
* remove quotes
* import SOURCE_USER directly, instead of config_entries
* split happy and sad flow tests
* remove unneccessary async_block_till_done() calls
* replace url example by "full URL"
* bump aioimmich==0.4.0
* bump aioimmich==0.5.0
* allow multiple users for same immich instance
* Fix tests
* limit entities when user has no admin rights
* Fix tests
* Fix tests
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Reduce stress on WMS WebControl pro with higher scan interval
Avoid delays and connection issues due to overloaded hub.
Fixes#133832 and #134413
* Schedule an entity state update after performing an action
Avoid delaying immediate status updates, e.g. on/off changes.
* Replace scheduled state updates with delayed action completion
Suggested-by: joostlek
* Add binary sensor tests
* Wait for background tasks as well in test_binary_sensor_update_failure
* Fix module docstring
* Use snapshot_platform, move constants to const.py, do not use snapshot for testing state updates
* Use JSON fixtures
* Use helper for loading JSON fixtures, remove unneeded mock in setup_integration
* Move mocks to pytest markers where possible
* Set the default upgrade icon for the MQTT device to the default icon for Home Assistant instead of the icon for the MQTT integration
* Set the default upgrade icon for the MQTT device to the default icon for Home Assistant instead of the icon for the MQTT integration
* Set the default upgrade icon for the MQTT device to the default icon for Home Assistant instead of the icon for the MQTT integration
* Set the default upgrade icon for the MQTT device to the default icon for Home Assistant instead of the icon for the MQTT integration
* Fix failed tests
* Fix failed tests
* Cleanup unused helper option
* ruff
---------
Co-authored-by: jbouwh <jan@jbsoft.nl>
* Refactor Fan
* Add tower fan tests and mode
* Schedule update after turn off
* Adjust updates to refresh library
* correct off command
* Revert changes
* Merge corrections
* Remove unused code to increase test coverage
* Ruff
* Tests
* Test for preset mode
* Adjust to increase coverage
* Test Corrections
* tests to match other PR
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update door switch strings so they are more user friendly
* Update door switch strings so they are more user friendly
* Update door switch strings so they are more user friendly
* update strings
* update strings
* Update strings.json
Corrected program names:
changed "Pre_rinse" to "Pre-Rinse"
changed "Kurz 60°C" to "Speed 60°C"
Both match the Home Connect app; although the UK documentation refers to "Speed 60°C" as "Quick 60°C"
* Adjust casing
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add dhcp discovery
* Update homeassistant/components/bosch_alarm/config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* put mac address in entry instead of unique id
* Update host and mac via dhcp discovery
* add mac to connections
* Abort dhcp flow if there is already an ongoing flow
* apply changes from review
* apply change from review
* remove outdated test
* fix snapshots
* apply change from review
* clean definition for connections
* update quality scale
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add another EHS SmartThings fixture
* Add another EHS
* Add water heater support to SmartThings
* Add water heater support to SmartThings
* Add water heater support to SmartThings
* Add water heater support to SmartThings
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Add more tests
* Make target temp setting conditional
* Make target temp setting conditional
* Finish tests
* Fix
* Add modern configuration for template alarm control panel
* address comments and add tests for coverage
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add media search intent
* Add PLAY_MEDIA as required feature and remove explicit responses
---------
Co-authored-by: Michael Hansen <mike@rhasspy.org>
* Add binary sensors to bosch_alarm
* make one device per sensor, remove device class guessing
* fix tests
* update tests
* Apply suggested changes
* add binary sensors
* make fault sensors diagnostic
* update tests
* update binary sensors to use base entity
* fix strings
* fix icons
* add state translations for area ready sensors
* use constants in tests
* apply changes from review
* remove fault prefix, use default translation for battery low
* update tests
* Add buttons to Blue current integration
* Apply feedback
* Changed configEntry to use the BlueCurrentConfigEntry.
The connector is now accessed via the entry instead of hass.data.
* Changed test_buttons_created test to use the snapshot_platform function.
Also removed the entry.unique_id check in the test_charge_point_buttons function because this is not needed anymore, according to https://github.com/home-assistant/core/pull/114000#discussion_r1627201872
* Applied requested changes.
Changes requested by joostlek.
* Moved has_value from BlueCurrentEntity to class level.
This value was still inside the __init__ function, so the value was not overwritten by the ChargePointButton.
---------
Co-authored-by: Floris272 <florispuijk@outlook.com>
* Remove _attr_name = None from generic base class
* Add support for identify buttons to WMS WebControl pro
* Fix PERF401 as suggested by joostlek
* Fix fixture name after rebase
* Split test
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Fix motor control function names
* Add position logic for BS4
* Use helper methods from pypck
* Add motor positioning to domain_data schema
* Fix tests
* Add motor positioning via module
* Invert motor cover positions
* Merge relay cover classes back into one class
* Update snapshot for covers
* Revert bump lcn-frontend to 0.2.4
* First try to use snapshot testing for sensors
* Use snapshot testing
* Add ambr files
* Update comment
* Address review comments
* Remove duplicate async init integration call
* Add device test for cases w/o SERIALNO
* Use friendlier snapshot names
* Use * to mandate keyed argument for async_init_integration
* Always pass mock config entry ID
* Fix incorrect ID
* flow binary sensor
* rename property
* Move const and update coordinator reference
* update controller descriptions
* Address review comments
* Use lookup for rain sensor
* Update online binary sensor
* make it a bit more readable
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Remove myself as code owner
I'm haven't actively been working on this for some time. Have removed myself as a code owner.
* cleanup
* cleanup
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* aioesphomeapi update
* Bump aioesphomeapi to 31.0.0
There are some breaking changes with the protobuf naming and types
required some refactoring
changelog: https://github.com/esphome/aioesphomeapi/compare/v30.2.0...v31.0.0
* actually include the commit to bump the lib
* Improvements in user-facing strings of `incomfort`
Fix spelling of "IP address" and "timeout"
Remove "temperature" from "Shortcut outside sensor temperature" as this makes no sense and leads to completely wrong translations. This is to indicate an electrical shortcut on the sensor so this should be the last word.
This also matches the naming in the user manual.
* Suggestion from review
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
---------
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
* Refactor test setup for unique ID migration in Overkiz integration
* Refactor test cases to unify result variable usage in Overkiz config flow tests (resultn -> result)
* Revert change in test_init
- make all references to "auth token" consistent, using sentence-casing
- remove "Paste … here" so the description correctly refers to the field name 'Auth token'
- make the clickable URL text longer by using "these instructions" instead of just "these"
- slightly reword using "If you prefer to …"
- add the missing hyphen to "built-in"
Sentence-case names and remove "True/False" in `emulated_roku`setup
As a binary field is shown as an on/off toggle in the UI there is no need to include "(True/False)" in the field label.
* Fix sentence-casing in data field names of `aurora_abb_powerone`
* Add suggestion from review.
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Initial fan
* add more tests
* add last fan tests and small fixes
* fix tests after latest change
* another small correction
* use common strings
* add snapshot test
* fix review comments
* fix typing
* remove uneeded None
* remove unwanted file
* fix turn_on function
* typo
* Use constants for preset modes.
* fix review notes.
* add switch platform to bosch alarm
* fix tests
* one device per output
* add switch for door
* add switch entities for door
* fix switch devices
* apply changes from review
* update identifiers
* add missing entity
* use base entity for switch
* rename var
* fix icons
* give user a nice error if they try to lock or secure a door that is in the process of being cycled
* fix test
* Update homeassistant/components/bosch_alarm/switch.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/bosch_alarm/switch.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* use service constants
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Ignore entries with source reconfigure in _async_abort_entries_match
* Exclude reconfigure and reauth entry from match check
* Add tests
* Fix tests for other components
* Revert unrelated changes
* Update docstring
* Make test more realistic
* Change name and docstring for sabnzbd test
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* [CambridgeAudio Integration] Add switch to enable Control Bus Mode
* remove load_fn
* Add import for ControlBusMode
* Add strings for control_bus_mode
* Add icons for control_bus_mode
* Add test case for the select ControlBusMode.Amplifier
* Change the set of icons
* Fix the usage of the wrong property name
* Fix test
* Fix test 2
* add new snapshot
* fix test name
* Fix
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* first cut at update entties
* remove sensors for now
* make update vserion less wordy
* fix re escape
* Use name
* use Caps
* fix translation
* move all data manipulation to data prepare fn, refine regexes and provide as much info as possible
* fix formatting
* update return type
* fix class inherit
* Fix ruff
* update tests
* fix spelling
* ruff
* Update homeassistant/components/squeezebox/update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* fix tests
* ruff
* update text based on feedback from docs
* make the plugin update entity smarter
* update plugin updater tests
* define attr
* Callable type
* callable guard
* ruff
* add local release info page
* fix typing
* refactor use release notes for LMS update
* Make update simple and produce a release summary instead
* Update tests
* Fix tests
* Tighten english
* test for restart fail
* be more explicit with coordinator error
* remove unused regex
* revert error msg unrealted
* Fix newline
* Fix socket usage during tests
* Simplify based on new lib version
* CI Fixes
* fix typing
* fix enitiy call back
* fix enitiy call back types
* remove some unrelated titdying
---------
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
* Add snapshot tests for sensors
* Code cleanup
* Patch during async_setup only
* Use snapshot_platform, split platforms for snapshot tests
* Make mock_config_entry and mode fixtures
* Update snapshots with latest device and state class changes
* Move setup_platform to __init__.py and patch HA object instead of library
* Remove if statements in tests
* Add client mock fixture to patch get_weather instead of internal call
* Code cleanup
* Test explicit list of modes
* Fix
* Fix
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Move strings from entity descriptions to strings.json
* Use the original name values
* Fix casing
* Use "real" english names as well as transliterated names
* Add hob support to SmartThings
* Add hob support to SmartThings
* Add hob support to SmartThings
* Fix
* Update homeassistant/components/smartthings/icons.json
- add the missing hyphen to "one-time setup fee"
- capitalize one occurrence of "Cloud Project" (treated as name in all other strings)
- sentence-case "name" as this can be translated
- replace two inconsistent occurrences of camel-cased "TotalConnect" with "Total Connect"
- apply sentence-casing to all strings
- add a missing hyphen to "4-digit numer"
* Improve Voip pipeline stability
It appears the pipeline is being unexpectedly cancelled in some
instances. In order to mitigate this issue hang ups will be detected
using a separate task rather than relying on timeouts in the STT read
method. Also reading STT events will be retried once if it is cancelled.
The pipeline will also catch and log any CancelledErrors to help with
further debugging.
* Update Voip tests
* Remove unnecessary changes
Remove unnecessary logging and cancelled error handling in wyoming STT.
* Remove comment about clearing system prompt
The test no longer checks for clearing the system prompt. Since that
logic exists completely in the assist_satellite component I think it is
reasonable to only test that logic in the unit tests for that component.
* Re-raise cancellation
Re-raise CancelledError if the current task is cancelling in the check hangup task
Co-authored-by: J. Nick Koston <nick@koston.org>
* Re-raise CancelledError in pipeline as well
* Fix formatting issue
* Remove unnecessary logging
* Add MockResultStream import to tests
This was presumably missed while merging
* Cancel check hangup task on disconnect
* Add myself as codeowner for VoIP
* Update CODEOWNERS
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
The config flow titles in Home Assistant use verbs by default ("Set up …" / "Configure …" / "Select …" etc.
Therefore "Sign-in …" (noun) for the initial setup in `ring` is replaced with "Sign in …" (verb).
* Give entry unique id with MAC, strings.json tweaks
* Update codeowners
* Add config_flow tests
* Update requirements
* Update homeassistant/components/zimi/__init__.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Store controller reference in entry.runtime_data instead of hass.data
* Add typing
* Removed hass data pop on unload. (No longer needed when hass data moved for runtime_data)
* Refactor config_flow based on feedback from @zweckj with inline validation, simpler defaults, better description data
* Add Michael to codeowners
* Remove manual debug override in entity
* Populate via_device
* remove empty keys from manifest.json
* Refactor with DataUpdateCoordinator
Device Entities use existing push update method
* set via_device to match zcc identifier
* Changed logger to use debug level
* Define the zimi constants
* Move extraaneous code out from try
* Move __del__ to async_wil_remove_from_hass
* Use zcc device for name
* Print debug if mac mismatch
Add final exception if api is not ready after connect
* Re-work configuration flow:
1. Remove unused CONF_TIMEOUT, CONF_VERBOSITY and CONF_WATCHDOG
2. Move connect() logic out of ZimiCoordinator
3. Add fast connect check during ConfigFlow to check mac matches
4. Use zcc version 3.2.3 with default watchdog time value (and remove this from HA)
* Add error detail to mac mismatch
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/const.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/coordinator.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/coordinator.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Remove coordinator and move setup to __init__
* Set name in _attr_name
* Use _light directly for status etc; Remove _state and _brightness; SImplify update()
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* No need to delete device, fix return
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Remove non-failing items from try
Abort duplicate configurations
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Move attr change to notify
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/__init__.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Remove superflous defalt
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Move aysnc_connect_to_controller to helpers.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Invert if api
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Added ZimiConfigEntry to type runtime_data correctly.
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Use _abort_if_unique_id_configured
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Invert error logic for cleaner flow
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Add ZimiDimmer class
* Set colour_mode only in ZimiDimmer
* Use device name instead of entity name
Update deviceinfo for zcc
Update deviceinfo for lights
More ZimiDimmer and ZimiLight cleanup
* Update homeassistant/components/zimi/__init__.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/__init__.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Add missing import for CONNECTION_NETWORK_MAC
* @mhannon11 Fixed some minor style changes BUT these tests need re-working now that the config_flow has a second call to the zcc helper to check the API. The tests as written now fail with connect_fail
* Remove some code from try
* Moved static items from initialiser
* Remove superflous assert when unloading entry
* refactor - move title out of data
* One call to async_add_entities
Update ZimiDimmer to initialise color_modes after calling super()
* Create ZimiEntity base class
(as ToggleEntity)
* Updated test of config_flow
* Move api_mock parameters to test cases
* Much improved tests
* Test for input value mismatch and then recovery of flow
* Import FlowResultType
* Implement Entities event setup correctly
* Initial quality_scale.yml
* Update homeassistant/components/zimi/quality_scale.yml
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/manifest.json
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Add link to zcc repo
* Update homeassistant/components/zimi/entity.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/entity.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Removed unecessary f-strings
* Filled in all of the quality scale
* Updated in line with latest documentation improvements
* FIx missing import for Entity
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Simplify logger and throw
* Update homeassistant/components/zimi/helpers.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Re-factor config_flow with multi-stage steps
* Add comments to notify
* Don't set hw_version
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/quality_scale.yml
Co-authored-by: Josef Zweck <josef@zweck.dev>
* mark docs-troubleshooting done
* Update with zcc-helper version supporting PEP 625 sdist rules on PyPi
* Comment re characteristic ID
* Pulls in latest zcc that closes UDP listening port correctly after discovery timeout
* Re-factored config_flow
1. Try discovery and auto-populate
2. Try manual configuration (with optional values for port and mac)
In most cases, auto-discovery does it all.
Discovery will only fail if UDP broadcast is not possible to/from zcc.
* Do not show error message if discovery fails
* Refactor with self.data and async_show_step_finish()
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/quality_scale.yml
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/quality_scale.yml
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/entity.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/light.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* refactor import to use ConfigFlow
* Change status for discovery
* Add dynamic title to config flow
* string
* Revert title from form but add IP:port to static title
* Automatically finish configuration if possible, if not show form
* Use StrEnum instead of Exception class
* Remove MAC from user forms
* Disconnect api before form completion
* Assign to self.mac instead of returning as detail
* Updated test suite
* Update test status
* mark action exemptions todo
* Remove mac related error cases from flow completely
* Remove unused MAC error strings
* Moved error details to logs
Removed _error_tuple
Removed error details
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* rename check_errors
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Update zcc-helper and support HA devices via zcc manufacter_info fields
* Partial implementation - Use updated zcc-helper to discover multiple controllers
* Config_flow with support for auto-discovery of one or more zcc or fallback to manual configuration.
* Don't re-connect to api if validate_connection already did
* Make fast=False is used for creation
* Pull in improved zcc_helper version to address data completeness after machine_info implementation
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Import and use ConfigFlowResult
* Latest zcc to fix discovers() return value bug
* Update config_flow.py
* Update homeassistant/components/zimi/manifest.json
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Use latest release version of 3.3 (no changes to rc4)
* Improved sentence casing
* Update strings.json
* Update homeassistant/components/zimi/entity.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Remove superflous logging
Use Zimi network_name as ZCC name
Cleanup device info inputs
* Remove __del__
* Rename arguments
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Move PLATFORMS to init
* Update homeassistant/components/zimi/light.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove debug at init
* Update homeassistant/components/zimi/helpers.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove _attr_has_entity = False
* More naming changes
* Revised config_flow to use zcc-helper for validation using new zcc-helper version
* Update homeassistant/components/zimi/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Removed commented enum
* s/_entity/_device/g
* Update homeassistant/components/zimi/entity.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/helpers.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Don't log error when raising exception
* Updated tests for new config_flow
* Refactor with new zcc that uses Exception classes to pass errors
* Updated tests for config_flow to use Exceptions
* Device name is based on model
* Device name is None
Maps better to ZCC concept where devices do not have a name but the individual entities have names.
* Fix quality filename
* Bump zcc-helper to 3.4 release version
* Remove name override
* Bump zcc-helper to 3.4.1 with new device_name attribute used to populate devinfo
* Update homeassistant/components/zimi/light.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add missing transalation picked up by CI
* Update homeassistant/components/zimi/light.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Bump zcc-helper to only classify light and dimmer controlPointType as lights
* Bump to non dev version of zcc-helper
* Ruff fixes
* Add missing data description for pytest
* Remove confusing comment
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/const.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/const.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/const.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/zimi/light.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* f-strings
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Assert result type, step and errors between each step
* test for duplicate entry
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zimi/test_config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove duplicate test for discovery failure
* Calculate brightness
* Don't re-raise Exception in helper
* Fix ruff and mypi errors
* Add tests for missing connection exceptions
* Added standard invalid_host and timeout strings
* Explain limitations in discovery.
* Update quality_scale.yaml
* Update quality_scale.yaml
* Removed duplicate strings with reference
---------
Co-authored-by: markhannon <mark.hannon@gmail.com>
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Wait for the migration to finish in Opower
* Don't call async_block_till_done since this can timeout and seems to meant for tests
* Don't call async_block_till_done since this can timeout and seems to meant for tests
* feat: raise execption on hvac mode while device is locked
* fix: test for setting hvac mode while device is locked.
* feat: update translation
* feat: add separate translations for HVAC and temperature
* fix: test cases
* fix: test cases for test_set_preset_mode_boost
* rev: code review
* rev: exception string
* feat: updated error message and added helper function
* Update homeassistant/components/fritzbox/strings.json
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
* fix: translation key
* remove check_active_or_lock_mode from async_set_preset_mode
---------
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
If the entity is already registered, avoid trying to work
out the suggested_entity_id and suggested_object_id as
async_get_or_create will discard them anyways.
This may not be possible yet, but the long term goal is to get
rid of pyserial-asyncio everywhere so we can prevent future
integrations from using it and than we have to go though the
effort of getting them to replace it with pyserial-asyncio-fast
to avoid the event loop being blocked
needed for https://github.com/home-assistant/core/pull/116635
"app_id":"E.g. com.plexapp.android for https://play.google.com/store/apps/details?id=com.plexapp.android",
"app_icon":"Image URL. From the Play Store app page, right click on the icon and select 'Copy image address' and then paste it here. Alternatively, download the image, upload it under /config/www/ and use the URL /local/filename"
"description":"The inverter must be connected via an RS485 adaptor, please select serial port and the inverter's address as configured on the LCD panel",
"title":"Set up two-factor authentication using TOTP",
"description":"To activate twofactor authentication using time-based one-time passwords, scan the QR code with your authentication app. If you don't have one, we recommend either [Google Authenticator](https://support.google.com/accounts/answer/1066447) or [Authy](https://authy.com/).\n\n{qr_code}\n\nAfter scanning the code, enter the sixdigit code from your app to verify the setup. If you have problems scanning the QR code, do a manual setup with code **`{code}`**."
"description":"To activate two-factor authentication using time-based one-time passwords, scan the QR code with your authentication app. If you don't have one, we recommend either [Google Authenticator](https://support.google.com/accounts/answer/1066447) or [Authy](https://authy.com/).\n\n{qr_code}\n\nAfter scanning the code, enter the six-digit code from your app to verify the setup. If you have problems scanning the QR code, do a manual setup with code **`{code}`**."
}
},
"error":{
@@ -13,7 +13,7 @@
}
},
"notify":{
"title":"Notify One-Time Password",
"title":"Notify one-time password",
"step":{
"init":{
"title":"Set up one-time password delivered by notify component",
"title":"Automatic backup could not be uploaded to the configured locations",
"description":"The automatic backup could not be uploaded to the configured locations {failed_agents}. Please check the logs for more information. Another attempt will be made at the next scheduled time if a backup schedule is configured."
},
"automatic_backup_failed_addons":{
"title":"Not all add-ons could be included in automatic backup",
"description":"Add-ons {failed_addons} could not be included in automatic backup. Please check the supervisor logs for more information. Another attempt will be made at the next scheduled time if a backup schedule is configured."
},
"automatic_backup_failed_agents_addons_folders":{
"title":"Automatic backup was created with errors",
"description":"The automatic backup was created with errors:\n* Locations which the backup could not be uploaded to: {failed_agents}\n* Add-ons which could not be backed up: {failed_addons}\n* Folders which could not be backed up: {failed_folders}\n\nPlease check the core and supervisor logs for more information. Another attempt will be made at the next scheduled time if a backup schedule is configured."
},
"automatic_backup_failed_folders":{
"title":"Not all folders could be included in automatic backup",
"description":"Folders {failed_folders} could not be included in automatic backup. Please check the supervisor logs for more information. Another attempt will be made at the next scheduled time if a backup schedule is configured."
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.