implement shuffle button

This commit is contained in:
Johannes Braun
2022-11-27 00:15:52 +01:00
parent f27e0746e3
commit c82797e4e5
5 changed files with 12 additions and 2 deletions

View File

@@ -165,7 +165,7 @@ options are ? seperated
onoffbtn has to be`disable` to disable the on off btn
tIconBtnEntityName is the entiy name used in the button event for pressing the upper left icon
`entityUpd~*heading*~*navigation*~*internalNameEntiy*~*icon*~iconcolor~*title*~titlecolor~*author*~authorcolor~*volume*~*playpauseicon*~currentSpeaker~speakerList-seperated-by-?~onoffbtn~tIconBtnEntityName`
`entityUpd~*heading*~*navigation*~*internalNameEntiy*~*icon*~iconcolor~*title*~titlecolor~*author*~authorcolor~*volume*~*playpauseicon*~currentSpeaker~speakerList-seperated-by-?~onoffbtn~tIconBtnEntityName,iconShuffle`
### cardAlarm Page

Binary file not shown.

Binary file not shown.

View File

@@ -326,6 +326,9 @@ class LuiController(object):
apis.ha_api.get_entity(entity_id).call_service("turn_on")
else:
apis.ha_api.get_entity(entity_id).call_service("turn_off")
if button_type == "media-shuffle":
cur_suffle = apis.ha_api.get_entity(entity_id).shuffle
apis.ha_api.get_entity(entity_id).call_service("shuffle_set", shuffle=!cur_suffle)
if button_type == "volumeSlider":
pos = int(value)
# HA wants this value between 0 and 1 as float

View File

@@ -501,7 +501,14 @@ class LuiPagesGen(object):
onoffbutton = 1374
else:
onoffbutton = rgb_dec565([255,152,0])
command = f"entityUpd~{heading}~{navigation}~{item}~{icon}~~{title}~~{author}~~{volume}~{iconplaypause}~{source}~{speakerlist[:200]}~{onoffbutton}~{mediaBtn}"
shuffleBtn = "disable"
if bits & 0b100000000000000:
shuffle = get_attr_safe(entity, "shuffle", "")
if shuffle == False:
shuffleBtn = get_icon_id('shuffle-disabled')
elif shuffle == True:
shuffleBtn = get_icon_id('shuffle')
command = f"entityUpd~{heading}~{navigation}~{item}~{icon}~~{title}~~{author}~~{volume}~{iconplaypause}~{source}~{speakerlist[:200]}~{onoffbutton}~{mediaBtn}~{shuffleBtn}"
self._send_mqtt_msg(command)
def generate_alarm_page(self, navigation, entity, overwrite_supported_modes, alarmBtn):