From afbf377b6d5bc077b89732f6960fb8f95f0786b2 Mon Sep 17 00:00:00 2001 From: William Scanlon Date: Wed, 16 Dec 2015 13:32:38 -0500 Subject: [PATCH] Update for style changes in python-wink --- homeassistant/components/light/wink.py | 4 +- homeassistant/components/lock/wink.py | 8 +-- .../components/sensor/wink-eggminder.py | 63 ------------------- homeassistant/components/sensor/wink.py | 30 ++++++++- homeassistant/components/wink.py | 10 +-- requirements_all.txt | 1 - 6 files changed, 39 insertions(+), 77 deletions(-) delete mode 100755 homeassistant/components/sensor/wink-eggminder.py diff --git a/homeassistant/components/light/wink.py b/homeassistant/components/light/wink.py index 7d14c97dedb..1a7fde38cb5 100644 --- a/homeassistant/components/light/wink.py +++ b/homeassistant/components/light/wink.py @@ -44,10 +44,10 @@ class WinkLight(WinkToggleDevice): brightness = kwargs.get(ATTR_BRIGHTNESS) if brightness is not None: - self.wink.setState(True, brightness / 255) + self.wink.set_state(True, brightness / 255) else: - self.wink.setState(True) + self.wink.set_state(True) @property def state_attributes(self): diff --git a/homeassistant/components/lock/wink.py b/homeassistant/components/lock/wink.py index ba712baba08..d021c7de688 100644 --- a/homeassistant/components/lock/wink.py +++ b/homeassistant/components/lock/wink.py @@ -42,7 +42,7 @@ class WinkLockDevice(LockDevice): @property def unique_id(self): """ Returns the id of this wink lock """ - return "{}.{}".format(self.__class__, self.wink.deviceId()) + return "{}.{}".format(self.__class__, self.wink.device_id()) @property def name(self): @@ -51,7 +51,7 @@ class WinkLockDevice(LockDevice): def update(self): """ Update the state of the lock. """ - self.wink.updateState() + self.wink.update_state() @property def is_locked(self): @@ -60,8 +60,8 @@ class WinkLockDevice(LockDevice): def lock(self): """ Lock the device. """ - self.wink.setState(True) + self.wink.set_state(True) def unlock(self): """ Unlock the device. """ - self.wink.setState(False) + self.wink.set_state(False) diff --git a/homeassistant/components/sensor/wink-eggminder.py b/homeassistant/components/sensor/wink-eggminder.py deleted file mode 100755 index b8b6e2937d6..00000000000 --- a/homeassistant/components/sensor/wink-eggminder.py +++ /dev/null @@ -1,63 +0,0 @@ -""" -homeassistant.components.egg_minder.wink -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Support for Wink Egg Minder. -For more details about this platform, please refer to the documentation at -at https://home-assistant.io/components/sensor.wink-eggminder/ -""" -import logging - -from homeassistant.helpers.entity import Entity -from homeassistant.const import CONF_ACCESS_TOKEN - -REQUIREMENTS = ['https://github.com/bradsk88/python-wink/archive/' - '91c8e9a5df24c8dd1a5267dc29a00a40c11d826a.zip' - '#python-wink==0.3.0'] - -def setup_platform(hass, config, add_devices, discovery_info=None): - """ Sets up the Wink platform. """ - import pywink - - if discovery_info is None: - token = config.get('access_token') - - if token is None: - logging.getLogger(__name__).error( - "Missing wink access_token. " - "Get one at https://winkbearertoken.appspot.com/") - return - - pywink.set_bearer_token(token) - - add_devices(WinkEggMinder(eggtray) for eggtray in pywink.get_eggtrays()) - - -class WinkEggMinder(Entity): - """ Represents a Wink sensor. """ - - def __init__(self, wink): - self.wink = wink - - @property - def state(self): - """ Returns the state. """ - return self.wink.state() - - @property - def unique_id(self): - """ Returns the id of this wink sensor """ - return "{}.{}".format(self.__class__, self.wink.deviceId()) - - @property - def name(self): - """ Returns the name of the sensor if any. """ - return self.wink.name() - - def update(self): - """ Update state of the Egg Minder. """ - self.wink.updateState() - - #@property - #def egg_count(self): - # """ The number of eggs """ - # return self.wink.state() diff --git a/homeassistant/components/sensor/wink.py b/homeassistant/components/sensor/wink.py index e0ed4d6e444..0b0e3ac1628 100644 --- a/homeassistant/components/sensor/wink.py +++ b/homeassistant/components/sensor/wink.py @@ -31,6 +31,7 @@ def setup_platform(hass, config, add_devices, discovery_info=None): pywink.set_bearer_token(token) add_devices(WinkSensorDevice(sensor) for sensor in pywink.get_sensors()) + add_devices(WinkEggMinder(eggtray) for eggtray in pywink.get_eggtrays()) class WinkSensorDevice(Entity): @@ -47,7 +48,7 @@ class WinkSensorDevice(Entity): @property def unique_id(self): """ Returns the id of this wink sensor """ - return "{}.{}".format(self.__class__, self.wink.deviceId()) + return "{}.{}".format(self.__class__, self.wink.device_id()) @property def name(self): @@ -56,9 +57,34 @@ class WinkSensorDevice(Entity): def update(self): """ Update state of the sensor. """ - self.wink.updateState() + self.wink.update_state() @property def is_open(self): """ True if door is open. """ return self.wink.state() + +class WinkEggMinder(Entity): + """ Represents a Wink Egg Minder. """ + + def __init__(self, wink): + self.wink = wink + + @property + def state(self): + """ Returns the state. """ + return self.wink.state() + + @property + def unique_id(self): + """ Returns the id of this wink Egg Minder """ + return "{}.{}".format(self.__class__, self.wink.device_id()) + + @property + def name(self): + """ Returns the name of the Egg Minder if any. """ + return self.wink.name() + + def update(self): + """ Update state of the Egg Minder. """ + self.wink.update_state() diff --git a/homeassistant/components/wink.py b/homeassistant/components/wink.py index ee15a19791b..d86294ea54b 100644 --- a/homeassistant/components/wink.py +++ b/homeassistant/components/wink.py @@ -40,7 +40,7 @@ def setup(hass, config): for component_name, func_exists, discovery_type in ( ('light', pywink.get_bulbs, DISCOVER_LIGHTS), ('switch', pywink.get_switches, DISCOVER_SWITCHES), - ('sensor', pywink.get_sensors, DISCOVER_SENSORS), + ('sensor', lambda: pywink.get_sensors or pywink.get_eggtrays, DISCOVER_SENSORS), ('lock', pywink.get_locks, DISCOVER_LOCKS)): if func_exists(): @@ -67,7 +67,7 @@ class WinkToggleDevice(ToggleEntity): @property def unique_id(self): """ Returns the id of this Wink switch. """ - return "{}.{}".format(self.__class__, self.wink.deviceId()) + return "{}.{}".format(self.__class__, self.wink.device_id()) @property def name(self): @@ -88,12 +88,12 @@ class WinkToggleDevice(ToggleEntity): def turn_on(self, **kwargs): """ Turns the switch on. """ - self.wink.setState(True) + self.wink.set_state(True) def turn_off(self): """ Turns the switch off. """ - self.wink.setState(False) + self.wink.set_state(False) def update(self): """ Update state of the light. """ - self.wink.updateState() + self.wink.update_state() diff --git a/requirements_all.txt b/requirements_all.txt index 6beffe4929f..9587ba55d27 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -59,7 +59,6 @@ https://github.com/pavoni/home-assistant-vera-api/archive/efdba4e63d58a30bc9b36d # homeassistant.components.light.wink # homeassistant.components.lock.wink # homeassistant.components.sensor.wink -# homeassistant.components.sensor.wink-eggminder # homeassistant.components.switch.wink https://github.com/balloob/python-wink/archive/42fdcfa721b1bc583688e3592d8427f4c13ba6d9.zip#python-wink==0.2