diff --git a/homeassistant/components/device_tracker/owntracks.py b/homeassistant/components/device_tracker/owntracks.py index 60335e2059afbc..ace6a251747332 100644 --- a/homeassistant/components/device_tracker/owntracks.py +++ b/homeassistant/components/device_tracker/owntracks.py @@ -75,6 +75,7 @@ def async_handle_mqtt_message(topic, payload, qos): except ValueError: # If invalid JSON _LOGGER.error("Unable to parse payload as JSON: %s", payload) + return message['topic'] = topic @@ -91,7 +92,11 @@ def _parse_topic(topic): Async friendly. """ - _, user, device, *_ = topic.split('/', 3) + try: + _, user, device, *_ = topic.split('/', 3) + except ValueError: + _LOGGER.error("Can't parse topic: '%s'", topic) + raise return user, device