From dc53c21548b2b025360cac4f5413ee82f35c601e Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 5 Oct 2016 07:10:31 +0200 Subject: [PATCH] Check that no configuration is provided (#3675) --- homeassistant/components/lirc.py | 40 ++++++++++++++++++-------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/homeassistant/components/lirc.py b/homeassistant/components/lirc.py index 70a14cf6130..06a5f288c77 100644 --- a/homeassistant/components/lirc.py +++ b/homeassistant/components/lirc.py @@ -1,28 +1,35 @@ """ LIRC interface to receive signals from a infrared remote control. -This sensor will momentarily set state to various values as defined -in the .lintrc file which can be interpreted in home-assistant to -trigger various actions. - -Sending signals to other IR receivers can be accomplished with the -shell_command component and the irsend command for now. +For more details about this component, please refer to the documentation at +https://home-assistant.io/components/lirc/ """ # pylint: disable=import-error import threading import time import logging -from homeassistant.const import (EVENT_HOMEASSISTANT_STOP, - EVENT_HOMEASSISTANT_START) +import voluptuous as vol + +from homeassistant.const import ( + EVENT_HOMEASSISTANT_STOP, EVENT_HOMEASSISTANT_START) -DOMAIN = "lirc" REQUIREMENTS = ['python-lirc==1.2.1'] + _LOGGER = logging.getLogger(__name__) -ICON = 'mdi:remote' -EVENT_IR_COMMAND_RECEIVED = 'ir_command_received' + BUTTON_NAME = 'button_name' +DOMAIN = 'lirc' + +EVENT_IR_COMMAND_RECEIVED = 'ir_command_received' + +ICON = 'mdi:remote' + +CONFIG_SCHEMA = vol.Schema({ + DOMAIN: vol.Schema({}), +}, extra=vol.ALLOW_EXTRA) + def setup(hass, config): """Setup LIRC capability.""" @@ -65,20 +72,19 @@ class LircInterface(threading.Thread): def run(self): """Main loop of LIRC interface thread.""" import lirc - _LOGGER.debug('LIRC interface thread started') + _LOGGER.debug("LIRC interface thread started") while not self.stopped.isSet(): try: code = lirc.nextcode() # list; empty if no buttons pressed except lirc.NextCodeError: - _LOGGER.warning('Encountered error reading ' - 'next code from LIRC') + _LOGGER.warning("Error reading next code from LIRC") code = None # interpret result from python-lirc if code: code = code[0] - _LOGGER.info('Got new LIRC code %s', code) - self.hass.bus.fire(EVENT_IR_COMMAND_RECEIVED, - {BUTTON_NAME: code}) + _LOGGER.info("Got new LIRC code %s", code) + self.hass.bus.fire( + EVENT_IR_COMMAND_RECEIVED, {BUTTON_NAME: code}) else: time.sleep(0.2) lirc.deinit()