So, after testing device states on various apps these were my results
Netflix playing
'audio_state': 'paused', 'wake_lock_size': 2, 'current_app': 'com.netflix.ninja', 'media_session_state': 3
Netflix paused
'audio_state': 'paused', 'wake_lock_size': 0, 'current_app': 'com.netflix.ninja', 'media_session_state': 2
netflix idle
'audio_state': 'paused', 'wake_lock_size': 0, 'current_app': 'com.netflix.ninja', 'media_session_state': 1
netflix preview
'audio_state': 'paused', 'wake_lock_size': 2, 'current_app': 'com.netflix.ninja', 'media_session_state': 3
Android TV Launcher
'audio_state': 'paused', 'wake_lock_size': 0, 'current_app': 'com.google.android.tvlauncher', 'media_session_state': None
Plex idle
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.plexapp.android', 'media_session_state': None
Plex paused
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.plexapp.android', 'media_session_state': 2
Plex playing
'audio_state': 'paused', 'wake_lock_size': 3, 'current_app': 'com.plexapp.android', 'media_session_state': 3
Emby idle
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'tv.emby.embyatv', 'media_session_state': None
Emby paused
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'tv.emby.embyatv', 'media_session_state': None
Emby playing
'audio_state': 'paused', 'wake_lock_size': 3, 'current_app': 'tv.emby.embyatv', 'media_session_state': None
YouTube idle
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.google.android.youtube.tv', 'media_session_state': 0
Youtube paused
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.google.android.youtube.tv', 'media_session_state': 2
Youtube playing
'audio_state': 'paused', 'wake_lock_size': 3, 'current_app': 'com.google.android.youtube.tv', 'media_session_state': 3
This led to my config
media_player:
- platform: androidtv
name: Shield
host: 192.168.0.152
apps:
tv.emby.embyatv: "Emby"
com.netflix.ninja: "Netflix"
com.google.android.tvlauncher: "Android TV Launcher"
com.plexapp.android: "Plex"
com.google.android.youtube.tv: "YouTube"
state_detection_rules:
'tv.emby.embyatv':
- 'playing':
'wake_lock_size': 3
- 'standby':
'wake_lock_size': 1
'com.netflix.ninja':
- 'playing':
'media_session_state': 3
'wake_lock_size': 2
- 'paused':
'media_session_state': 2
'wake_lock_size': 0
- 'standby':
'media_session_state': 1
'wake_lock_size': 0
'com.google.android.tvlauncher':
- 'standby':
'wake_lock_size': 0
'com.plexapp.android':
- 'playing':
'media_session_state': 3
'wake_lock_size': 3
- 'paused':
'media_session_state': 2
'wake_lock_size': 1
- 'standby':
'wake_lock_size': 1
'com.google.android.youtube.tv':
- 'playing':
'media_session_state': 3
'wake_lock_size': 3
- 'paused':
'media_session_state': 2
'wake_lock_size': 1
- 'standby':
'media_session_state': 0
'wake_lock_size': 1
I haven’t tested thoroughly but it worked with a brief run-through. I’ll follow up if I notice any issues.