Yesss, it’s working, thanks!!!
Hi guys,
super new to HA, am in healthcare and don’t have a ton of coding knowledge but just getting started.
Got the spotify/spotcast plugins setup, those work great, just trying to get this media card setup to play on two alexas, either separately or grouped, from spotify.
Neither speaker will let me chose any source besides “local speaker”
Only way I can get spotify to play is by using a separate default media card and chosing media, then it plays just on the echo dot, and not on both. Nor can I ever get it to play on the other.
type: entities
entities:
type: ‘custom:mini-media-player’
entity: media_player.joseph_s_echo_dot
group: true
hide:
controls: true
type: ‘custom:mini-media-player’
entity: media_player.joseph_s_echo
group: true
hide:
controls: true
is the code for my current mini media player which shows both.
Ideas? Would love to learn more.
Sorry if this has already been asked before, but is there anyway to change the background opacity based on the state of the device?
I want to have the card at 60% opacity when the status is either unavailable, idle of off and noticed there is a --mini-media-player-background-opacity variable, but unsure how to actually make it work in code!!!
Does anyone know how to use the speaker group management with a dynamically changing “master” speaker? My goal is to only show the card that has the correct “master” speaker.
Currently I’m using the speaker group management along with a conditional card for my Sonos speakers. This allows me to only have the card display in lovelace when the speaking state is playing
. I have created a card for each of my speakers as “master”. The issue is that I have to find which card has the “master” speaker as the main entity in order to control the grouping.
I’d like to find a way to only have the card display that has the appropriate “master” speaker as the main entity so I can control the grouping. Hopefully this question makes sense.
It’s a little messy, but you can create template binary sensors for each speaker:
- platform: template
sensors:
sonos_kitchen_is_controller:
value_template: >
{% if state_attr('media_player.sonos_kitchen', 'sonos_group') %}
{{ state_attr('media_player.sonos_kitchen', 'sonos_group')[0] == 'media_player.sonos_kitchen' }}
{% else %}
False
{% endif %}
Then you could add a conditional card for each speaker based on the appropriate binary_sensor
with the speaker_group
populated:
- type: conditional
conditions:
- entity: binary_sensor.sonos_kitchen_is_controller
state: 'on'
card:
artwork: cover
entity: media_player.sonos_kitchen
hide:
icon: true
power: true
idle_view:
after: 5
when_idle: true
when_paused: true
speaker_group:
entities:
- entity_id: media_player.sonos_kitchen
- entity_id: media_player.sonos_dining_room
- entity_id: media_player.sonos_front_room
- entity_id: media_player.sonos_basement
- entity_id: media_player.sonos_bedroom
show_group_count: true
type: 'custom:mini-media-player'
I bet there’s a simpler and less verbose way, but this works well for me.
Thank you for sharing! I actually did figure this out in a very similar way using sensors instead of binary sensors to determine which speaker is the master. I had not posted my setup yet because Im still making tweaks to it. I might give your setup a go to see if it works any different / better than my current method.
I also found another discussion where someone used entity_filter
card with regex state_filter
. I had not heard of regex until just now so Im looking into that and also trying out their way of making the card.
bump bump
Does anyone know how to change the media_title and entity picture of a media player using media_player.play_media with the shortcuts? In the media player documentation there is a section about extra attributes and I tried a lot but couldn’t find how to do it. This is the corresponding code:
shortcuts:
columns: 4 # Max buttons per row
buttons:
- name: "538"
type: service
id: media_player.play_media
data:
entity_id: media_player.sonos
media_content_id: http://22343.live.streamtheworld.com/RADIO538.mp3
media_content_type: music
extra:
title: "538"
And a screenshot:
type: 'custom:mini-media-player'
entity: media_player.echo_dotchen
source: icon
name: any name you like
shortcuts:
…
Would you like to post your code? Maybe four eyes see more than two.
@Pedolsky I don’t think it’s my code , it’s the discovery of the alexa media players when trying to display them in the drop down tab
i mean dynamically, so the name changes to the name of the shortcut.
and it’s the subitle i mean. not the name
Hi,
did you have your devices discovered or did you define them with their ‘Alexa’ names in configuration.yaml like this?:
alexa_media:
accounts:
- email: your amazon email
password: your amazon password
url: amazon.com
include_devices:
- "Master Bedroom"
- Stairs
Where in the docs can I find something about an extra option? Or do you mean the attribute
option? If so, I would like to use it but it doesen‘t work ‚though the attribute exists.
No i mean in the media player docs: Media Player - Home Assistant at Service media_player.play_media it refers to a service_data attribute called extra. In this attribute you can use media_info and metadata but then you will need the datatype map. Further it refers to google dev pages. But i haven’t figured out the right syntax yet. New to this.
is it possible to ‘mix’ the group (for Sonos speakers) function with grouped cards?? To also have a volume slider per speaker ??
I try this, but its not working
# card
type: custom:mini-media-player
entity: media_player.family_room
group: true
artwork: material
shuffle: true
hide:
power: true
source: true
speaker_group:
platform: sonos
show_group_count: true
entities:
- entity_id: media_player.family_room
name: Sonos Woonkamer
group: true
hide:
controls: true
- entity_id: media_player.keuken
name: Sonos Keuken
group: true
hide:
controls: true
- entity_id: media_player.slaapkamer
name: Sonos slaapkamer
group: true
hide:
controls: true
Yes! I’d also like to know if there’s a way to include volume sliders for each individual room in a group. I tried to figure it out but couldn’t…