mirror of
https://github.com/home-assistant/core.git
synced 2025-07-21 12:17:07 +00:00
Bump zwave-js-server-python to 0.35.0 (#66785)
* Bump zwave-js-server-python to 0.35.0 * Remove support for new event type which should go in a separate PR
This commit is contained in:
parent
703d01e772
commit
82ebb7047f
@ -8,8 +8,8 @@ from zwave_js_server.model.node import NodeDataType
|
||||
from homeassistant.config_entries import ConfigEntry
|
||||
from homeassistant.const import CONF_URL
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers import device_registry as dr
|
||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||
from homeassistant.helpers.device_registry import DeviceEntry
|
||||
|
||||
from .const import DATA_CLIENT, DOMAIN
|
||||
from .helpers import get_home_and_node_id_from_device_entry
|
||||
@ -26,7 +26,7 @@ async def async_get_config_entry_diagnostics(
|
||||
|
||||
|
||||
async def async_get_device_diagnostics(
|
||||
hass: HomeAssistant, config_entry: ConfigEntry, device: DeviceEntry
|
||||
hass: HomeAssistant, config_entry: ConfigEntry, device: dr.DeviceEntry
|
||||
) -> NodeDataType:
|
||||
"""Return diagnostics for a device."""
|
||||
client: Client = hass.data[DOMAIN][config_entry.entry_id][DATA_CLIENT]
|
||||
@ -42,8 +42,5 @@ async def async_get_device_diagnostics(
|
||||
"minSchemaVersion": client.version.min_schema_version,
|
||||
"maxSchemaVersion": client.version.max_schema_version,
|
||||
},
|
||||
"state": {
|
||||
**node.data,
|
||||
"values": [value.data for value in node.values.values()],
|
||||
},
|
||||
"state": node.data,
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
"name": "Z-Wave JS",
|
||||
"config_flow": true,
|
||||
"documentation": "https://www.home-assistant.io/integrations/zwave_js",
|
||||
"requirements": ["zwave-js-server-python==0.34.0"],
|
||||
"requirements": ["zwave-js-server-python==0.35.0"],
|
||||
"codeowners": ["@home-assistant/z-wave"],
|
||||
"dependencies": ["usb", "http", "websocket_api"],
|
||||
"iot_class": "local_push",
|
||||
|
@ -2559,7 +2559,7 @@ zigpy==0.43.0
|
||||
zm-py==0.5.2
|
||||
|
||||
# homeassistant.components.zwave_js
|
||||
zwave-js-server-python==0.34.0
|
||||
zwave-js-server-python==0.35.0
|
||||
|
||||
# homeassistant.components.zwave_me
|
||||
zwave_me_ws==0.1.23
|
||||
|
@ -1584,7 +1584,7 @@ zigpy-znp==0.7.0
|
||||
zigpy==0.43.0
|
||||
|
||||
# homeassistant.components.zwave_js
|
||||
zwave-js-server-python==0.34.0
|
||||
zwave-js-server-python==0.35.0
|
||||
|
||||
# homeassistant.components.zwave_me
|
||||
zwave_me_ws==0.1.23
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 16, "label":"Binary Switch"},
|
||||
"specific": {"key": 1, "label":"Binary Power Switch"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
@ -50,10 +50,10 @@
|
||||
"nodeId": 102,
|
||||
"index": 0,
|
||||
"installerIcon": 1792,
|
||||
"userIcon": 1792
|
||||
"userIcon": 1792,
|
||||
"commandClasses": []
|
||||
}
|
||||
],
|
||||
"commandClasses": [],
|
||||
"values": [
|
||||
{
|
||||
"endpoint": 0,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 8, "label":"Thermostat"},
|
||||
"specific": {"key": 6, "label":"Thermostat General V2"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 17, "label":"Multilevel Switch"},
|
||||
"specific": {"key": 1, "label":"Multilevel Power Switch"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 17, "label":"Multilevel Switch"},
|
||||
"specific": {"key": 7, "label":"Motor Control Class C"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -25,7 +25,7 @@
|
||||
"Thermostat Setpoint",
|
||||
"Version"
|
||||
],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 8, "label":"Thermostat"},
|
||||
"specific": {"key": 6, "label":"Thermostat General V2"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -6,11 +6,11 @@
|
||||
"status": 4,
|
||||
"ready": true,
|
||||
"deviceClass": {
|
||||
"basic": {"key": 2, "label":"Static Controller"},
|
||||
"generic": {"key": 8, "label":"Thermostat"},
|
||||
"specific": {"key": 6, "label":"Thermostat General V2"},
|
||||
"basic": { "key": 2, "label": "Static Controller" },
|
||||
"generic": { "key": 8, "label": "Thermostat" },
|
||||
"specific": { "key": 6, "label": "Thermostat General V2" },
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
@ -47,7 +47,129 @@
|
||||
"nodeId": 13,
|
||||
"index": 0,
|
||||
"installerIcon": 4608,
|
||||
"userIcon": 4608
|
||||
"userIcon": 4608,
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 49,
|
||||
"name": "Multilevel Sensor",
|
||||
"version": 5,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 64,
|
||||
"name": "Thermostat Mode",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 66,
|
||||
"name": "Thermostat Operating State",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 67,
|
||||
"name": "Thermostat Setpoint",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 68,
|
||||
"name": "Thermostat Fan Mode",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 69,
|
||||
"name": "Thermostat Fan State",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 89,
|
||||
"name": "Association Group Information",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 90,
|
||||
"name": "Device Reset Locally",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 94,
|
||||
"name": "Z-Wave Plus Info",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 96,
|
||||
"name": "Multi Channel",
|
||||
"version": 4,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 115,
|
||||
"name": "Powerlevel",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 3,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 128,
|
||||
"name": "Battery",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 129,
|
||||
"name": "Clock",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 135,
|
||||
"name": "Indicator",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 142,
|
||||
"name": "Multi Channel Association",
|
||||
"version": 3,
|
||||
"isSecure": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"nodeId": 13,
|
||||
@ -57,128 +179,6 @@
|
||||
},
|
||||
{ "nodeId": 13, "index": 2 }
|
||||
],
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 49,
|
||||
"name": "Multilevel Sensor",
|
||||
"version": 5,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 64,
|
||||
"name": "Thermostat Mode",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 66,
|
||||
"name": "Thermostat Operating State",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 67,
|
||||
"name": "Thermostat Setpoint",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 68,
|
||||
"name": "Thermostat Fan Mode",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 69,
|
||||
"name": "Thermostat Fan State",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 89,
|
||||
"name": "Association Group Information",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 90,
|
||||
"name": "Device Reset Locally",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 94,
|
||||
"name": "Z-Wave Plus Info",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 96,
|
||||
"name": "Multi Channel",
|
||||
"version": 4,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 115,
|
||||
"name": "Powerlevel",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 3,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 128,
|
||||
"name": "Battery",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 129,
|
||||
"name": "Clock",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 135,
|
||||
"name": "Indicator",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 142,
|
||||
"name": "Multi Channel Association",
|
||||
"version": 3,
|
||||
"isSecure": false
|
||||
}
|
||||
],
|
||||
"values": [
|
||||
{
|
||||
"commandClassName": "Manufacturer Specific",
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 17, "label":"Routing Slave"},
|
||||
"specific": {"key": 0, "label":"Unused"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 64, "label":"Entry Control"},
|
||||
"specific": {"key": 7, "label":"Secure Barrier Add-on"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 17, "label":"Routing Slave"},
|
||||
"specific": {"key": 1, "label":"Multilevel Power Switch"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -8,7 +8,7 @@
|
||||
"generic": {"key": 32, "label":"Binary Sensor"},
|
||||
"specific": {"key": 1, "label":"Routing Binary Sensor"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": false,
|
||||
|
@ -8,7 +8,7 @@
|
||||
"generic": {"key": 17, "label":"Multilevel Switch"},
|
||||
"specific": {"key": 1, "label":"Multilevel Power Switch"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 17, "label":"Multilevel Switch"},
|
||||
"specific": {"key": 8, "label":"Fan Switch"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -64,7 +64,87 @@
|
||||
},
|
||||
"mandatorySupportedCCs": [32, 38, 39],
|
||||
"mandatoryControlledCCs": []
|
||||
}
|
||||
},
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 32,
|
||||
"name": "Basic",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 38,
|
||||
"name": "Multilevel Switch",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 43,
|
||||
"name": "Scene Activation",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 44,
|
||||
"name": "Scene Actuator Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 86,
|
||||
"name": "CRC-16 Encapsulation",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 89,
|
||||
"name": "Association Group Information",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 90,
|
||||
"name": "Device Reset Locally",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 94,
|
||||
"name": "Z-Wave Plus Info",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"values": [
|
||||
@ -557,86 +637,6 @@
|
||||
"mandatorySupportedCCs": [32, 38, 39],
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 32,
|
||||
"name": "Basic",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 38,
|
||||
"name": "Multilevel Switch",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 43,
|
||||
"name": "Scene Activation",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 44,
|
||||
"name": "Scene Actuator Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 86,
|
||||
"name": "CRC-16 Encapsulation",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 89,
|
||||
"name": "Association Group Information",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 90,
|
||||
"name": "Device Reset Locally",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 94,
|
||||
"name": "Z-Wave Plus Info",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
}
|
||||
],
|
||||
"interviewStage": "Complete",
|
||||
"deviceDatabaseUrl": "https://devices.zwave-js.io/?jumpTo=0x0063:0x4944:0x3038:5.26"
|
||||
}
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 16, "label":"Binary Switch"},
|
||||
"specific": {"key": 1, "label":"Binary Power Switch"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
@ -60,10 +60,10 @@
|
||||
"nodeId": 32,
|
||||
"index": 0,
|
||||
"installerIcon": 1792,
|
||||
"userIcon": 1792
|
||||
"userIcon": 1792,
|
||||
"commandClasses": []
|
||||
}
|
||||
],
|
||||
"commandClasses": [],
|
||||
"values": [
|
||||
{
|
||||
"commandClassName": "Binary Switch",
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 64, "label":"Entry Control"},
|
||||
"specific": {"key": 3, "label":"Secure Keypad Door Lock"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
|
@ -8,7 +8,7 @@
|
||||
"generic": {"key": 64, "label":"Entry Control"},
|
||||
"specific": {"key": 3, "label":"Secure Keypad Door Lock"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
@ -47,71 +47,71 @@
|
||||
"endpoints": [
|
||||
{
|
||||
"nodeId": 20,
|
||||
"index": 0
|
||||
"index": 0,
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 98,
|
||||
"name": "Door Lock",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 99,
|
||||
"name": "User Code",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 113,
|
||||
"name": "Notification",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 128,
|
||||
"name": "Battery",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 152,
|
||||
"name": "Security",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 98,
|
||||
"name": "Door Lock",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 99,
|
||||
"name": "User Code",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 113,
|
||||
"name": "Notification",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 128,
|
||||
"name": "Battery",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 152,
|
||||
"name": "Security",
|
||||
"version": 1,
|
||||
"isSecure": true
|
||||
}
|
||||
],
|
||||
"values": [
|
||||
{
|
||||
"commandClassName": "Door Lock",
|
||||
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 21, "label":"Multilevel Sensor"},
|
||||
"specific": {"key": 1, "label":"Routing Multilevel Sensor"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": true,
|
||||
"isFrequentListening": false,
|
||||
|
@ -11,7 +11,7 @@
|
||||
"generic": {"key": 8, "label":"Thermostat"},
|
||||
"specific": {"key": 6, "label":"Thermostat General V2"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"neighbors": [],
|
||||
"interviewAttempts": 1,
|
||||
|
@ -11,7 +11,7 @@
|
||||
"generic": {"key": 8, "label":"Thermostat"},
|
||||
"specific": {"key": 6, "label":"Thermostat General V2"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
@ -274,5 +274,6 @@
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"replaced": false
|
||||
}
|
@ -10,7 +10,7 @@
|
||||
"generic": {"key": 8, "label":"Thermostat"},
|
||||
"specific": {"key": 6, "label":"Thermostat General V2"},
|
||||
"mandatorySupportedCCs": [],
|
||||
"mandatoryControlCCs": []
|
||||
"mandatoryControlledCCs": []
|
||||
},
|
||||
"isListening": false,
|
||||
"isFrequentListening": true,
|
||||
|
@ -80,98 +80,98 @@
|
||||
"aggregatedEndpointCount": 0,
|
||||
"interviewAttempts": 1,
|
||||
"interviewStage": "NodeInfo",
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 89,
|
||||
"name": "Association Group Information",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 90,
|
||||
"name": "Device Reset Locally",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 91,
|
||||
"name": "Central Scene",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 94,
|
||||
"name": "Z-Wave Plus Info",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 96,
|
||||
"name": "Multi Channel",
|
||||
"version": 4,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 113,
|
||||
"name": "Notification",
|
||||
"version": 4,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 128,
|
||||
"name": "Battery",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 132,
|
||||
"name": "Wake Up",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 142,
|
||||
"name": "Multi Channel Association",
|
||||
"version": 3,
|
||||
"isSecure": false
|
||||
}
|
||||
],
|
||||
"endpoints": [
|
||||
{
|
||||
"nodeId": 35,
|
||||
"index": 0,
|
||||
"installerIcon": 7172,
|
||||
"userIcon": 7172
|
||||
"userIcon": 7172,
|
||||
"commandClasses": [
|
||||
{
|
||||
"id": 89,
|
||||
"name": "Association Group Information",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 90,
|
||||
"name": "Device Reset Locally",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 91,
|
||||
"name": "Central Scene",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 94,
|
||||
"name": "Z-Wave Plus Info",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 96,
|
||||
"name": "Multi Channel",
|
||||
"version": 4,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 112,
|
||||
"name": "Configuration",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 113,
|
||||
"name": "Notification",
|
||||
"version": 4,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 114,
|
||||
"name": "Manufacturer Specific",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 122,
|
||||
"name": "Firmware Update Meta Data",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 128,
|
||||
"name": "Battery",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 132,
|
||||
"name": "Wake Up",
|
||||
"version": 1,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 133,
|
||||
"name": "Association",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 134,
|
||||
"name": "Version",
|
||||
"version": 2,
|
||||
"isSecure": false
|
||||
},
|
||||
{
|
||||
"id": 142,
|
||||
"name": "Multi Channel Association",
|
||||
"version": 3,
|
||||
"isSecure": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"nodeId": 35,
|
||||
|
@ -478,7 +478,15 @@ async def test_add_node(
|
||||
|
||||
event = Event(
|
||||
type="interview failed",
|
||||
data={"source": "node", "event": "interview failed", "nodeId": 67},
|
||||
data={
|
||||
"source": "node",
|
||||
"event": "interview failed",
|
||||
"nodeId": 67,
|
||||
"args": {
|
||||
"errorMessage": "error",
|
||||
"isFinal": True,
|
||||
},
|
||||
},
|
||||
)
|
||||
client.driver.receive_event(event)
|
||||
|
||||
@ -1610,7 +1618,15 @@ async def test_replace_failed_node(
|
||||
|
||||
event = Event(
|
||||
type="interview failed",
|
||||
data={"source": "node", "event": "interview failed", "nodeId": 67},
|
||||
data={
|
||||
"source": "node",
|
||||
"event": "interview failed",
|
||||
"nodeId": 67,
|
||||
"args": {
|
||||
"errorMessage": "error",
|
||||
"isFinal": True,
|
||||
},
|
||||
},
|
||||
)
|
||||
client.driver.receive_event(event)
|
||||
|
||||
@ -2193,7 +2209,15 @@ async def test_refresh_node_info(
|
||||
|
||||
event = Event(
|
||||
type="interview failed",
|
||||
data={"source": "node", "event": "interview failed", "nodeId": 52},
|
||||
data={
|
||||
"source": "node",
|
||||
"event": "interview failed",
|
||||
"nodeId": 52,
|
||||
"args": {
|
||||
"errorMessage": "error",
|
||||
"isFinal": True,
|
||||
},
|
||||
},
|
||||
)
|
||||
client.driver.receive_event(event)
|
||||
|
||||
|
@ -215,17 +215,6 @@ async def test_node_status_state(
|
||||
assert len(calls) == 4
|
||||
assert calls[3].data["some"] == "dead - event - test_event4"
|
||||
|
||||
event = Event(
|
||||
"unknown",
|
||||
data={
|
||||
"source": "node",
|
||||
"event": "unknown",
|
||||
"nodeId": lock_schlage_be469.node_id,
|
||||
},
|
||||
)
|
||||
lock_schlage_be469.receive_event(event)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
|
||||
async def test_config_parameter_state(
|
||||
hass, client, lock_schlage_be469, integration, calls
|
||||
|
@ -2,9 +2,7 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
import pytest
|
||||
from zwave_js_server.const import CommandClass
|
||||
from zwave_js_server.event import Event
|
||||
from zwave_js_server.model.value import _get_value_id_from_dict, get_value_id
|
||||
|
||||
from homeassistant.components.zwave_js.diagnostics import async_get_device_diagnostics
|
||||
from homeassistant.components.zwave_js.helpers import get_device_id
|
||||
@ -43,9 +41,6 @@ async def test_device_diagnostics(
|
||||
assert device
|
||||
|
||||
# Update a value and ensure it is reflected in the node state
|
||||
value_id = get_value_id(
|
||||
multisensor_6, CommandClass.SENSOR_MULTILEVEL, PROPERTY_ULTRAVIOLET
|
||||
)
|
||||
event = Event(
|
||||
type="value updated",
|
||||
data={
|
||||
@ -75,18 +70,7 @@ async def test_device_diagnostics(
|
||||
"maxSchemaVersion": 0,
|
||||
}
|
||||
|
||||
# Assert that the data returned doesn't match the stale node state data
|
||||
assert diagnostics_data["state"] != multisensor_6.data
|
||||
|
||||
# Replace data for the value we updated and assert the new node data is the same
|
||||
# as what's returned
|
||||
updated_node_data = multisensor_6.data.copy()
|
||||
for idx, value in enumerate(updated_node_data["values"]):
|
||||
if _get_value_id_from_dict(multisensor_6, value) == value_id:
|
||||
updated_node_data["values"][idx] = multisensor_6.values[
|
||||
value_id
|
||||
].data.copy()
|
||||
assert diagnostics_data["state"] == updated_node_data
|
||||
assert diagnostics_data["state"] == multisensor_6.data
|
||||
|
||||
|
||||
async def test_device_diagnostics_error(hass, integration):
|
||||
|
@ -196,12 +196,16 @@ async def test_on_node_added_not_ready(
|
||||
assert len(hass.states.async_all()) == 0
|
||||
assert not dev_reg.devices
|
||||
|
||||
node_state = deepcopy(zp3111_not_ready_state)
|
||||
node_state["isSecure"] = False
|
||||
|
||||
event = Event(
|
||||
type="node added",
|
||||
data={
|
||||
"source": "controller",
|
||||
"event": "node added",
|
||||
"node": deepcopy(zp3111_not_ready_state),
|
||||
"node": node_state,
|
||||
"result": {},
|
||||
},
|
||||
)
|
||||
client.driver.receive_event(event)
|
||||
@ -317,12 +321,16 @@ async def test_existing_node_not_replaced_when_not_ready(
|
||||
assert state.name == "Custom Entity Name"
|
||||
assert not hass.states.get(motion_entity)
|
||||
|
||||
node_state = deepcopy(zp3111_not_ready_state)
|
||||
node_state["isSecure"] = False
|
||||
|
||||
event = Event(
|
||||
type="node added",
|
||||
data={
|
||||
"source": "controller",
|
||||
"event": "node added",
|
||||
"node": deepcopy(zp3111_not_ready_state),
|
||||
"node": node_state,
|
||||
"result": {},
|
||||
},
|
||||
)
|
||||
client.driver.receive_event(event)
|
||||
@ -838,9 +846,14 @@ async def test_node_removed(hass, multisensor_6_state, client, integration):
|
||||
dev_reg = dr.async_get(hass)
|
||||
node = Node(client, deepcopy(multisensor_6_state))
|
||||
device_id = f"{client.driver.controller.home_id}-{node.node_id}"
|
||||
event = {"node": node}
|
||||
event = {
|
||||
"source": "controller",
|
||||
"event": "node added",
|
||||
"node": node.data,
|
||||
"result": {},
|
||||
}
|
||||
|
||||
client.driver.controller.emit("node added", event)
|
||||
client.driver.controller.receive_event(Event("node added", event))
|
||||
await hass.async_block_till_done()
|
||||
old_device = dev_reg.async_get_device(identifiers={(DOMAIN, device_id)})
|
||||
assert old_device.id
|
||||
@ -907,7 +920,7 @@ async def test_replace_same_node(
|
||||
"index": 0,
|
||||
"status": 4,
|
||||
"ready": False,
|
||||
"isSecure": "unknown",
|
||||
"isSecure": False,
|
||||
"interviewAttempts": 1,
|
||||
"endpoints": [{"nodeId": node_id, "index": 0, "deviceClass": None}],
|
||||
"values": [],
|
||||
@ -922,6 +935,7 @@ async def test_replace_same_node(
|
||||
"timeoutResponse": 0,
|
||||
},
|
||||
},
|
||||
"result": {},
|
||||
},
|
||||
)
|
||||
|
||||
@ -1022,7 +1036,7 @@ async def test_replace_different_node(
|
||||
"index": 0,
|
||||
"status": 4,
|
||||
"ready": False,
|
||||
"isSecure": "unknown",
|
||||
"isSecure": False,
|
||||
"interviewAttempts": 1,
|
||||
"endpoints": [
|
||||
{"nodeId": multisensor_6.node_id, "index": 0, "deviceClass": None}
|
||||
@ -1039,6 +1053,7 @@ async def test_replace_different_node(
|
||||
"timeoutResponse": 0,
|
||||
},
|
||||
},
|
||||
"result": {},
|
||||
},
|
||||
)
|
||||
|
||||
|
@ -220,7 +220,15 @@ async def test_node_status_sensor_not_ready(
|
||||
assert hass.states.get(NODE_STATUS_ENTITY).state == "alive"
|
||||
|
||||
# Mark node as ready
|
||||
event = Event("ready", {"nodeState": lock_id_lock_as_id150_state})
|
||||
event = Event(
|
||||
"ready",
|
||||
{
|
||||
"source": "node",
|
||||
"event": "ready",
|
||||
"nodeId": node.node_id,
|
||||
"nodeState": lock_id_lock_as_id150_state,
|
||||
},
|
||||
)
|
||||
node.receive_event(event)
|
||||
assert node.ready
|
||||
assert hass.states.get(NODE_STATUS_ENTITY)
|
||||
|
Loading…
x
Reference in New Issue
Block a user