From 7f71706f08122e309ff04bf6e765513bcfde3658 Mon Sep 17 00:00:00 2001 From: badele Date: Sat, 3 Oct 2015 11:26:18 +0200 Subject: [PATCH] Log RFXCOM events --- homeassistant/components/rfxtrx.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/homeassistant/components/rfxtrx.py b/homeassistant/components/rfxtrx.py index d4eb379b04f..2ec4fd3d25d 100644 --- a/homeassistant/components/rfxtrx.py +++ b/homeassistant/components/rfxtrx.py @@ -23,6 +23,7 @@ rfxtrx: """ import logging +from homeassistant.util import slugify DEPENDENCIES = [] REQUIREMENTS = ['https://github.com/Danielhiversen/pyRFXtrx/archive/' + @@ -43,6 +44,13 @@ def setup(hass, config): def handle_receive(event): """ Callback all subscribers for RFXtrx gateway. """ + # Log RFXCOM event + entity_id = slugify(event.device.id_string.lower()) + packet_id = "".join("{0:02x}".format(x) for x in event.data) + entity_name = "%(entity_id)s : %(packet_id)s" % locals() + _LOGGER.info("Receive RFXCOM event from %s => %s" % (event.device, entity_name)) + + # Callback to HA registered components for subscriber in RECEIVED_EVT_SUBSCRIBERS: subscriber(event) @@ -68,6 +76,12 @@ def setup(hass, config): def getRFXObject(packetid): """ return the RFXObject with the packetid""" + try: + import RFXtrx as rfxtrxmod + except ImportError: + _LOGGER.exception("Failed to import rfxtrx") + return False + binarypacket = bytearray.fromhex(packetid) pkt = rfxtrxmod.lowlevel.parse(binarypacket)