1
0
mirror of https://github.com/home-assistant/core.git synced 2025-12-24 12:59:34 +00:00

Zwave import fixes for stability (#1845)

This commit is contained in:
John Arild Berentsen
2016-04-17 23:46:51 +02:00
committed by Paulus Schoutsen
parent ea38742067
commit b45c0cd735
5 changed files with 43 additions and 55 deletions

View File

@@ -7,10 +7,7 @@ at https://home-assistant.io/components/sensor.zwave/
# Because we do not compile openzwave on CI
# pylint: disable=import-error
from homeassistant.components.sensor import DOMAIN
from homeassistant.components.zwave import (
ATTR_NODE_ID, ATTR_VALUE_ID, COMMAND_CLASS_ALARM, COMMAND_CLASS_METER,
COMMAND_CLASS_SENSOR_MULTILEVEL, NETWORK,
TYPE_DECIMAL, ZWaveDeviceEntity)
from homeassistant.components import zwave
from homeassistant.const import (TEMP_CELCIUS, TEMP_FAHRENHEIT)
from homeassistant.helpers.entity import Entity
@@ -37,11 +34,11 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
# platform: zwave
#
# `setup_platform` will be called without `discovery_info`.
if discovery_info is None or NETWORK is None:
if discovery_info is None or zwave.NETWORK is None:
return
node = NETWORK.nodes[discovery_info[ATTR_NODE_ID]]
value = node.values[discovery_info[ATTR_VALUE_ID]]
node = zwave.NETWORK.nodes[discovery_info[zwave.ATTR_NODE_ID]]
value = node.values[discovery_info[zwave.ATTR_VALUE_ID]]
value.set_change_verified(False)
@@ -62,18 +59,18 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
return
# Generic Device mappings
if value.command_class == COMMAND_CLASS_SENSOR_MULTILEVEL:
if value.command_class == zwave.COMMAND_CLASS_SENSOR_MULTILEVEL:
add_devices([ZWaveMultilevelSensor(value)])
elif (value.command_class == COMMAND_CLASS_METER and
value.type == TYPE_DECIMAL):
elif (value.command_class == zwave.COMMAND_CLASS_METER and
value.type == zwave.TYPE_DECIMAL):
add_devices([ZWaveMultilevelSensor(value)])
elif value.command_class == COMMAND_CLASS_ALARM:
elif value.command_class == zwave.COMMAND_CLASS_ALARM:
add_devices([ZWaveAlarmSensor(value)])
class ZWaveSensor(ZWaveDeviceEntity, Entity):
class ZWaveSensor(zwave.ZWaveDeviceEntity, Entity):
"""Representation of a Z-Wave sensor."""
def __init__(self, sensor_value):
@@ -81,7 +78,7 @@ class ZWaveSensor(ZWaveDeviceEntity, Entity):
from openzwave.network import ZWaveNetwork
from pydispatch import dispatcher
ZWaveDeviceEntity.__init__(self, sensor_value, DOMAIN)
zwave.ZWaveDeviceEntity.__init__(self, sensor_value, DOMAIN)
dispatcher.connect(
self.value_changed, ZWaveNetwork.SIGNAL_VALUE_CHANGED)