Check that no configuration is provided (#3675)
parent
b9b41d3855
commit
dc53c21548
|
@ -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()
|
||||
|
|
Loading…
Reference in New Issue