2014-12-16 08:01:15 +00:00
|
|
|
""" Support for WeMo switchces. """
|
|
|
|
import logging
|
|
|
|
|
2015-01-11 07:47:23 +00:00
|
|
|
# pylint: disable=no-name-in-module, import-error
|
2015-01-11 06:53:41 +00:00
|
|
|
import homeassistant.external.wink.pywink as pywink
|
|
|
|
|
2015-01-16 05:25:24 +00:00
|
|
|
from homeassistant.components.wink import WinkToggleDevice
|
|
|
|
from homeassistant.const import CONF_ACCESS_TOKEN
|
2014-12-16 08:01:15 +00:00
|
|
|
|
|
|
|
|
|
|
|
def get_devices(hass, config):
|
2015-01-11 06:53:41 +00:00
|
|
|
""" Find and return Wink switches. """
|
2015-01-11 07:47:23 +00:00
|
|
|
token = config.get(CONF_ACCESS_TOKEN)
|
2014-12-16 08:01:15 +00:00
|
|
|
|
2015-01-11 06:53:41 +00:00
|
|
|
if token is None:
|
|
|
|
logging.getLogger(__name__).error(
|
|
|
|
"Missing wink access_token - "
|
|
|
|
"get one at https://winkbearertoken.appspot.com/")
|
2015-01-11 07:47:23 +00:00
|
|
|
return []
|
2014-12-16 08:01:15 +00:00
|
|
|
|
2015-01-11 06:53:41 +00:00
|
|
|
pywink.set_bearer_token(token)
|
2014-12-16 08:01:15 +00:00
|
|
|
|
2015-01-11 07:47:23 +00:00
|
|
|
return get_switches()
|
|
|
|
|
|
|
|
|
|
|
|
def devices_discovered(hass, config, info):
|
|
|
|
""" Called when a device is discovered. """
|
|
|
|
return get_switches()
|
|
|
|
|
|
|
|
|
|
|
|
def get_switches():
|
|
|
|
""" Returns the Wink switches. """
|
2015-01-16 05:25:24 +00:00
|
|
|
return [WinkToggleDevice(switch) for switch in pywink.get_switches()]
|