Add Device and Integration Services to ISY994#35467
Merged
bdraco merged 9 commits intohome-assistant:devfrom May 11, 2020
shbatm:isy994_v2_pr9a
Merged
Add Device and Integration Services to ISY994#35467bdraco merged 9 commits intohome-assistant:devfrom shbatm:isy994_v2_pr9a
bdraco merged 9 commits intohome-assistant:devfrom
shbatm:isy994_v2_pr9a
Conversation
ISY994 Add support for climate platform
Remove device registry cleanup from service in favor of #35106
Rename entry to config_entry_id
Fix Typo
bdraco
reviewed
May 10, 2020
bdraco
reviewed
May 10, 2020
bdraco
reviewed
May 10, 2020
bdraco
reviewed
May 10, 2020
bdraco
reviewed
May 10, 2020
bdraco
reviewed
May 10, 2020
8 tasks
Contributor
Author
|
Docs added. |
bdraco
approved these changes
May 11, 2020
Member
bdraco
left a comment
There was a problem hiding this comment.
Looks good. @shbatm I want to at give @MartinHjelmare a chance to read your feedback in #35467 (comment) before merging
24 tasks
bdraco
approved these changes
May 11, 2020
Member
bdraco
left a comment
There was a problem hiding this comment.
Looks good. Thanks for the fixes as well
rhadamantys
pushed a commit
to rhadamantys/home-assistant
that referenced
this pull request
May 11, 2020
* ISY994 Add Services ISY994 Add support for climate platform * Remove device registry cleanup Remove device registry cleanup from service in favor of home-assistant#35106 * ISY994 Update Services Definitions Rename entry to config_entry_id * Grammar corrections Fix Typo * Add await and lower logging per review. * Rename to entries and remove unused device_id refs * Fix tuple typo * Fix Typo in strings * Fix typo in strings
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed change
This is the 9th PR in a series (~10 total) to include migration to PyISYv2 and "modernization" of the isy994 integration based on testing done over the past year in the HACS custom component.
Full migration plan is captured in PR #35212
This PR adds several integration and entity services to expose commands and controls that are not available through other Home Assistant means, without calling custom REST commands and adding additional workarounds. This also allows a user to control devices that do not have full compatibility yet in Home Assistant (many Z-Wave device, like RGB bulbs). These services will also support future Device commands for being sent from the Frontend.
Services have been split into two categories--those that are called on entities that Home Assistant knows about are added as entity services, and those that call other ISY functions have been added at the integration level.
The following services are available:
isy994.send_raw_node_command: Send a "raw" ISY REST Device Command to a Node using its Home Assistant Entity ID.isy994.send_node_command: Send a command to an ISY Device using its Home Assistant entity ID. Valid commands are: beep, brighten, dim, disable, enable, fade_down, fade_stop, fade_up, fast_off, fast_on, and query.isy994.set_on_level: Send an ISY set_on_level command to a Node.isy994.set_ramp_rate: Send an ISY set_ramp_rate command to a Node.isy994.system_query: Request the ISY Query the connected devices.isy994.set_variable: Set an ISY variable's current or initial value. Variables can be set by either type/address or by name.isy994.send_program_command: Send a command to control an ISY program or folder. Valid commands are run, run_then, run_else, stop, enable, disable, enable_run_at_startup, and disable_run_at_startup.isy994.run_network_resource: Run a network resource on the ISY.isy994.reload: Reload the ISY994 connection(s) without restarting Home Assistant. Use to pick up new devices that have been added or changed on the ISY.isy994.cleanup_entities: Cleanup old entities no longer used by the ISY994 integrations. Useful if you've removed devices from the ISY or changed the filter string options in the configuration to exclude additional items and they were not properly removed by Home Assistant.Type of change
Example entry for
configuration.yaml:# Example configuration.yamlAdditional information
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:
Tag: @bdraco @OverloadUT