From 20a1025a8c74177a49e9d4d2fce7b6286b586a16 Mon Sep 17 00:00:00 2001 From: Ryan Kraus Date: Sun, 10 Jan 2016 00:43:27 -0500 Subject: [PATCH] Added active_child attribute to universal media players. The entity of the first active child is now reported in the attributes for a universal media player. --- homeassistant/components/media_player/universal.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/media_player/universal.py b/homeassistant/components/media_player/universal.py index dbdf5b02e57..7e721f85677 100644 --- a/homeassistant/components/media_player/universal.py +++ b/homeassistant/components/media_player/universal.py @@ -31,6 +31,8 @@ from homeassistant.components.media_player import ( ATTR_MEDIA_PLAYLIST, ATTR_APP_ID, ATTR_APP_NAME, ATTR_MEDIA_VOLUME_LEVEL, ATTR_MEDIA_SEEK_POSITION) +ATTR_ACTIVE_CHILD = 'active_child' + CONF_ATTRS = 'attributes' CONF_CHILDREN = 'children' CONF_COMMANDS = 'commands' @@ -38,6 +40,7 @@ CONF_PLATFORM = 'platform' CONF_SERVICE = 'service' CONF_SERVICE_DATA = 'service_data' CONF_STATE = 'state' + OFF_STATES = [STATE_IDLE, STATE_OFF] REQUIREMENTS = [] _LOGGER = logging.getLogger(__name__) @@ -338,11 +341,10 @@ class UniversalMediaPlayer(MediaPlayerDevice): @property def device_state_attributes(self): - """ - Extra attributes a device wants to expose. - Not supported for Universal Media Player. - """ - return None + """ Extra attributes a device wants to expose. """ + active_child = self.active_child_state + return {ATTR_ACTIVE_CHILD: active_child.entity_id} \ + if active_child else {} def turn_on(self): """ turn the media player on. """