diff --git a/alexa_media/__init__.py b/alexa_media/__init__.py index 5b0695ec..7fe107f3 100644 --- a/alexa_media/__init__.py +++ b/alexa_media/__init__.py @@ -28,7 +28,7 @@ REQUIREMENTS = ['alexapy==0.3.0'] -__version__ = '1.2.0' +__version__ = '1.2.1' _LOGGER = logging.getLogger(__name__) diff --git a/alexa_media/notify.py b/alexa_media/notify.py index 125631c8..83f7878e 100644 --- a/alexa_media/notify.py +++ b/alexa_media/notify.py @@ -66,10 +66,11 @@ def convert(self, names, type_="entities", filter_matches=False): for item in names: matched = False for alexa in self.devices: - _LOGGER.debug("Testing item: %s against (%s, %s, %s)", + _LOGGER.debug("Testing item: %s against (%s, %s, %s, %s)", item, + alexa, alexa.name, - alexa.unique_id, + hide_serial(alexa.unique_id), alexa.entity_id) if item in (alexa, alexa.name, alexa.unique_id, alexa.entity_id): @@ -87,9 +88,6 @@ def convert(self, names, type_="entities", filter_matches=False): item, type_, converted) - else: - _LOGGER.debug("Filtering out: %s", - item) if not filter_matches and not matched: devices.append(item) return devices @@ -139,8 +137,11 @@ def send_message(self, message="", **kwargs): if isinstance(targets, str): targets = [targets] entities = self.convert(targets, type_="entities") - entities.extend(self.hass.components.group.expand_entity_ids(entities)) - + try: + entities.extend(self.hass.components.group.expand_entity_ids( + entities)) + except ValueError: + _LOGGER.info("Invalid Home Assistant entity in %s", entities) if data['type'] == "tts": targets = self.convert(entities, type_="entities", filter_matches=True) @@ -151,11 +152,14 @@ def send_message(self, message="", **kwargs): elif data['type'] == "announce": targets = self.convert(entities, type_="serialnumbers", filter_matches=True) + _LOGGER.debug("Announce targets: %s entities: %s", + list(map(hide_serial, targets)), + entities) for account, account_dict in (self.hass.data[DATA_ALEXAMEDIA] ['accounts'].items()): for alexa in (account_dict['entities'] ['media_player'].values()): - if alexa in entities and alexa.available: + if alexa.unique_id in targets and alexa.available: _LOGGER.info(("%s: Announce by %s to " "targets: %s: %s"), hide_email(account), diff --git a/custom_components.json b/custom_components.json index 47ceaf0d..6cf1adcf 100644 --- a/custom_components.json +++ b/custom_components.json @@ -1,6 +1,6 @@ { "alexa_media": { - "version": "1.2.0", + "version": "1.2.1", "local_location": "/custom_components/alexa_media/__init__.py", "remote_location": "https://raw.githubusercontent.com/keatontaylor/alexa_media_player/master/alexa_media/__init__.py", "visit_repo": "https://github.com/keatontaylor/alexa_media_player",