diff --git a/homeassistant/components/camera/ffmpeg.py b/homeassistant/components/camera/ffmpeg.py index c3f0ffbfe0b..bb7c7ac6cdc 100644 --- a/homeassistant/components/camera/ffmpeg.py +++ b/homeassistant/components/camera/ffmpeg.py @@ -35,7 +35,7 @@ def async_setup_platform(hass, config, async_add_devices, discovery_info=None): """Setup a FFmpeg Camera.""" if not async_run_test(hass, config.get(CONF_INPUT)): return - hass.loop.create_task(async_add_devices([FFmpegCamera(hass, config)])) + yield from async_add_devices([FFmpegCamera(hass, config)]) class FFmpegCamera(Camera): @@ -85,7 +85,7 @@ class FFmpegCamera(Camera): break response.write(data) finally: - self.hass.loop.create_task(stream.close()) + self.hass.async_add_job(stream.close()) yield from response.write_eof() @property diff --git a/homeassistant/components/camera/generic.py b/homeassistant/components/camera/generic.py index c6664ed70b2..e298bed2a92 100644 --- a/homeassistant/components/camera/generic.py +++ b/homeassistant/components/camera/generic.py @@ -43,7 +43,7 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({ # pylint: disable=unused-argument def async_setup_platform(hass, config, async_add_devices, discovery_info=None): """Setup a generic IP Camera.""" - hass.loop.create_task(async_add_devices([GenericCamera(hass, config)])) + yield from async_add_devices([GenericCamera(hass, config)]) class GenericCamera(Camera): diff --git a/homeassistant/components/camera/mjpeg.py b/homeassistant/components/camera/mjpeg.py index e8799d1be34..a2c35410c55 100644 --- a/homeassistant/components/camera/mjpeg.py +++ b/homeassistant/components/camera/mjpeg.py @@ -43,7 +43,7 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({ # pylint: disable=unused-argument def async_setup_platform(hass, config, async_add_devices, discovery_info=None): """Setup a MJPEG IP Camera.""" - hass.loop.create_task(async_add_devices([MjpegCamera(hass, config)])) + yield from async_add_devices([MjpegCamera(hass, config)]) def extract_image_from_mjpeg(stream): @@ -122,7 +122,7 @@ class MjpegCamera(Camera): break response.write(data) finally: - self.hass.loop.create_task(stream.release()) + self.hass.async_add_job(stream.release()) yield from response.write_eof() @property diff --git a/homeassistant/components/camera/synology.py b/homeassistant/components/camera/synology.py index 7edbc0005d8..d6cc0a3e506 100644 --- a/homeassistant/components/camera/synology.py +++ b/homeassistant/components/camera/synology.py @@ -147,7 +147,7 @@ def async_setup_platform(hass, config, async_add_devices, discovery_info=None): devices.append(device) yield from asyncio.wait(tasks, loop=hass.loop) - hass.loop.create_task(async_add_devices(devices)) + yield from async_add_devices(devices) @asyncio.coroutine @@ -280,7 +280,7 @@ class SynologyCamera(Camera): break response.write(data) finally: - self.hass.loop.create_task(stream.release()) + self.hass.async_add_job(stream.release()) yield from response.write_eof() @property diff --git a/homeassistant/components/light/litejet.py b/homeassistant/components/light/litejet.py index 3ff8067ec8c..33185dad07b 100644 --- a/homeassistant/components/light/litejet.py +++ b/homeassistant/components/light/litejet.py @@ -47,7 +47,7 @@ class LiteJetLight(Light): def _on_load_changed(self): """Called on a LiteJet thread when a load's state changes.""" _LOGGER.debug("Updating due to notification for %s", self._name) - self._hass.loop.create_task(self.async_update_ha_state(True)) + self._hass.async_add_job(self.async_update_ha_state(True)) @property def name(self): diff --git a/homeassistant/components/persistent_notification.py b/homeassistant/components/persistent_notification.py index 5e91aef4d9f..b4dde02baff 100644 --- a/homeassistant/components/persistent_notification.py +++ b/homeassistant/components/persistent_notification.py @@ -55,8 +55,7 @@ def async_create(hass, message, title=None, notification_id=None): ] if value is not None } - hass.loop.create_task( - hass.services.async_call(DOMAIN, SERVICE_CREATE, data)) + hass.async_add_job(hass.services.async_call(DOMAIN, SERVICE_CREATE, data)) @asyncio.coroutine diff --git a/homeassistant/components/sensor/torque.py b/homeassistant/components/sensor/torque.py index fd08e0bc511..8c88a4e22d2 100644 --- a/homeassistant/components/sensor/torque.py +++ b/homeassistant/components/sensor/torque.py @@ -146,4 +146,4 @@ class TorqueSensor(Entity): def async_on_update(self, value): """Receive an update.""" self._state = value - self.hass.loop.create_task(self.async_update_ha_state()) + self.hass.async_add_job(self.async_update_ha_state()) diff --git a/homeassistant/components/sensor/yr.py b/homeassistant/components/sensor/yr.py index 7bede98213e..dd53df9a7fe 100644 --- a/homeassistant/components/sensor/yr.py +++ b/homeassistant/components/sensor/yr.py @@ -154,7 +154,7 @@ class YrData(object): try_again('{} returned {}'.format(self._url, resp.status)) return text = yield from resp.text() - self.hass.loop.create_task(resp.release()) + self.hass.async_add_job(resp.release()) except asyncio.TimeoutError as err: try_again(err) return diff --git a/homeassistant/components/switch/litejet.py b/homeassistant/components/switch/litejet.py index f51984b411b..4ea565ff62f 100644 --- a/homeassistant/components/switch/litejet.py +++ b/homeassistant/components/switch/litejet.py @@ -47,12 +47,12 @@ class LiteJetSwitch(SwitchDevice): def _on_switch_pressed(self): _LOGGER.debug("Updating pressed for %s", self._name) self._state = True - self._hass.loop.create_task(self.async_update_ha_state()) + self._hass.async_add_job(self.async_update_ha_state()) def _on_switch_released(self): _LOGGER.debug("Updating released for %s", self._name) self._state = False - self._hass.loop.create_task(self.async_update_ha_state()) + self._hass.async_add_job(self.async_update_ha_state()) @property def name(self): diff --git a/homeassistant/components/switch/netio.py b/homeassistant/components/switch/netio.py index dde7b791d90..9d292cc1b9a 100644 --- a/homeassistant/components/switch/netio.py +++ b/homeassistant/components/switch/netio.py @@ -119,7 +119,7 @@ class NetioApiView(HomeAssistantView): ndev.start_dates = start_dates for dev in DEVICES[host].entities: - self.hass.loop.create_task(dev.async_update_ha_state()) + self.hass.async_add_job(dev.async_update_ha_state()) return self.json(True)