-
-
Notifications
You must be signed in to change notification settings - Fork 36.2k
Add unique_id to RFLink entities #34096
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Hi there @javicalle! Thanks for opening up a PR! However, there are all kinds of unrelated commits in this PR. Could you please clean that up so the PR only contains your changes? Thanks! 👍 |
c77aced to
a66c708
Compare
|
I think I was able to resolve the mess I had made with commits. |
|
Local coverage ups to 100% |
|
I've been reviewing how the So, what is the situation in this case? And, are these values uniques? BUT IMHO there is another approach that is intended to follow this PR. But it is also true that this implementation enables the possibility of this operation being perverted so that you can substitute one physical device for another and assign it the same So before going any further in this RP I think you should evaluate if the approach is correct. For my part, I don't think there is another way to generate a unique_id value for this type of integration. |
Fix race condition that causes pairing and unpairing failures. ikalchev/HAP-python#246 Fix loop on dropped connections that causes temporary stalls and connection loss. ikalchev/HAP-python#249 Fix exception on missing video fields. ikalchev/HAP-python#245
When the websocket is created `SSLContext.load_default_certs` is called each time which opens up the system default ssl certs file and reads it in Normally this goes unnoticed, however since there are frequent connects and disconnects of the websocket it was noticeable.
* add binary sensor platform to zwave_mqtt * add tests for binary_sensor * fix tests * device class is required value * Update homeassistant/components/zwave_mqtt/binary_sensor.py use colon as separator Co-authored-by: Martin Hjelmare <[email protected]> * extend tests * code optimize * add test for enabling a legacy binary sensor Co-authored-by: Martin Hjelmare <[email protected]>
…t#35545) * Ensure homekit_controller recieves zeroconf c# updates If an integration has a homekit config flow step homekit controller would not see updates for devices that were paired with it and would not rescan for changes. * Only send updates to homekit controller if the device is paired This avoids the device showing up a second time. * remove debug * fix refactor error
…t#35555) * New way to identify role, compatible with standalone controller or as part of unifios * Remove error * Bump dependency to v22 * Remove unused import
* Fix synology temperature rounding * Remove stale comment
* Patch aiohttp client session close * Add test * Restore close regardless of auto_cleanup * Close session instead of detaching and do not restore * Delint test * Add frame helper * Use frame helper * Test warning log when closing session * Clean up * Correct docstring * Do not change shutdown * Fix tests
…34670) * Use helper functions for exception handling * Create a separate class to handle communication with the device * Update manifest * Use coroutine for service setup * Fix sensor update * Update tests * Fix MP1 switch * Add device.py to .coveragerc * Remove unnecessary blocking from test_learn_timeout * Change access method for entries with default values * Make the changes suggested by MartinHjelmare * Remove dot from debug message * Use underscore for unused variable
* Add integration for wiffi devices wiffi devices are DIY board manufactured by stall.biz. Several devices are available, e.g. a weather station (weatherman), an indoor environmental sensor (wiffi-wz) and some more. This intgration has been developed using a weatherman device, but should also work for other devices from stall.biz. * Fix pylint warning * Use WIFFI / STALL WIFFI instead of wiffi to be consistent with stall.biz * Don't update disabled entities. * fix complains - move wiffi specific code to pypi - remove yaml configuration code * incorporate various suggestions from code review * fix remaining comments from Martin * fix comments * add tests for config flow * fix comments * add missing requirements for tests * fix pylint warnings * fix comments * fix comments remove debug log rename .translations to translations * rebase and adapt to latest dev branch * Update homeassistant/components/wiffi/config_flow.py Co-Authored-By: Martin Hjelmare <[email protected]> * Update homeassistant/components/wiffi/config_flow.py Co-Authored-By: Martin Hjelmare <[email protected]> * fix missing import Co-authored-by: Martin Hjelmare <[email protected]>
* Allow Plex discovery on demand * Add new discovery source * Add tests
* New forked_daapd component * Bunch of changes Add config flow and zeroconf Add zones on callback when added by server Add password auth Add async_play_media for TTS Add media_image_url Add support for pipe control/input from librespot-java Improve update callbacks * Refactor as per code review suggestions Move config_flow connection testing to pypi library (v0.1.4) Remove use of ForkedDaapdData class Decouple Master and Zone data and functions Add updater class to manage websocket and entity updates * More changes as per code review Avoid direct access to entities in tests Bump pypi version Mark entities unavailable when websocket disconnected Move config tests to test_config_flow Move full url creation from media_image_url to library Move updater entity from master to hass.data Remove default unmute volume option Remove name from config_flow Remove storage of entities in hass.data Use async_write_ha_state Use signal to trigger update_options Use unittest.mock instead of asynctest.mock * Yet more changes as per code review Add more assertions in tests Avoid patching asyncio Make off state require player state stopped Only send update to existing zones Split up some tests Use events instead of async_block_till_done Use sets instead of lists where applicable Wait for pause callback before continuing TTS * Remove unnecessary use of Future() * Add pipes and playlists as sources * Add support for multiple servers Change config options to add max_playlists+remove use_pipe_control Create Machine ID in test_connection and also get from zeroconf Modify hass.data storage Update host for known configurations Use Machine ID in unique_ids, entity names, config title, signals * Use entry_id as basis for multiple entries * Use f-strings and str.format, abort for same host * Clean up check for same host
…#35993) * Centralite specific control seq of operation * Remove Fan safeguards * Split hvac_action property. * Refactor hvac_action property. Current hvac_action logic is Zen Within thermostat specific and differs a bit from ZCL specs. Implement it as a separate class. * Refactor hvac_action property for default thermostat Follow more closely ZCL specs in parsing hvac state of the thermostat.
* Bump env_canada to 0.0.38 * Fix timestamp type
* Implement cover for "Shade" ZHA device type. * Update ZHA cover tests. * Add stop command * Coverage.
* use Coerce(float) on service options * defer the type from options list
|
It seems that I have done a mess with code rebase. |
That's a pity, that's exactly what I was looking for. Any chance this can still be implemented? |
|
@javicalle will you add |
|
unique_id would make my life much easier with regards to RFLink so I would like to see it as well. |
Proposed change
Add
unique_idproperty to the RFLink entities.Type of change
Example entry for
configuration.yaml:There is no changes to device settings
Additional information
This change has been successfully tested in my local environment, including automations, HA interactions and phisical devices interactions.
Checklist
black --fast homeassistant tests)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest.requirements_all.txt.Updated by running
python3 -m script.gen_requirements_all..coveragerc.The integration reached or maintains the following Integration Quality Scale: