From 65a5b235cf264fb35c83012de6f9d80c8f2376d1 Mon Sep 17 00:00:00 2001 From: Johannes Date: Wed, 1 Jun 2022 17:45:16 +0200 Subject: [PATCH] implement #255 --- HMI/README.md | 5 ++++- HMI/nspanel.HMI | Bin 11147230 -> 11147230 bytes HMI/nspanel.tft | Bin 7567952 -> 7568760 bytes README.md | 1 + apps/nspanel-lovelace-ui/luibackend/pages.py | 7 ++++--- 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/HMI/README.md b/HMI/README.md index 6414f1c7..16c3646a 100644 --- a/HMI/README.md +++ b/HMI/README.md @@ -129,7 +129,10 @@ The following message can be used to update the content on the cardEntities Page ### cardMedia Page -`entityUpd~*heading*~*navigation*~*internalNameEntiy*~*icon*~*title*~*author*~*volume*~*playpauseicon*~currentSpeaker~speakerList-seperated-by-?` +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*~*title*~*author*~*volume*~*playpauseicon*~currentSpeaker~speakerList-seperated-by-?~onoffbtn~tIconBtnEntityName` ### cardAlarm Page diff --git a/HMI/nspanel.HMI b/HMI/nspanel.HMI index ed2eeb5e0d540ddb6b9135c4c3026ed9c7ab9140..643fc49bd0838a0f26e2e5231a6fcdd6ca1e823c 100644 GIT binary patch delta 2762 zcmd_q{Zmv`7zglYVPTDUT@V%!_U=}Ou)Mf{0)hgC@*=o^AxS2?ya);l!G%PT71#m< zNhCOCRw%yU)J!=xbAMt;ehsivP2%=+Hl!|eSN8ap!|c=nvW(hKaZW{K^LCvft*D7&YHFvuGB4Ah(<@@B$(_%`;(k1=ZYTUBtdboUEgafDZDiZtP;^IOM+ z3VlBNIU_bqI`O;i&!?F6BOxqQEUIg>=Zp3NyVxxDlv!IF(pZ0&c4J7lwY0(Bl_VY& zO~yW>X|q|%6C-Z>OWOyu8&p!MCbBo4ePS^L>b2NPb7Pz*-;iT8ZjxW*_!j(O{ZB`S zvf62FP@*R#!DzB|iDH}G7=jc*NKWo-u-6N9)|NVA5n;aWcV){L zw2Unz#Kf}2OhYlVlt!DGrBxR$S^T0CR6}KHkq{-7rA0f00PU^M`{W<7C%MeNO~GFw)Z*)NJRTTztRLq(ZIDa$NVQD*!9 zlVz5U3+pK}Q@0iMEMM9GUzOpfkr}>?8fUc+B6ZAiS!j}$s`a^z((EH4>G05fX#>PS zEa*W10~p~Mcov?6jqp6g!6t}@1TaA&BtbHyz-BN*Dx^U=Y=Nzi0hy2m+aMcqU_0!9 zT*!lbcmZC70@w+=pb(0n7)oF_ltLNo0SlBv1ysUbcnPXtA5_E3upesR6*vH|!a=A7 zE7+h8>Y)J|;Se-IGstIm1X`dK?9c}7@EUYLCy3Am-S9dbg&sHt$DtQaKp!~ZB=o}o z41yEhfHz?XhG7Iw!6=NuX&8sM;0#Q_S(t>kVG5>!!8v#b&cnNK0p5f6;RBd~i*N~M T;WAu-t8fkGr2EqK#|Qrfjg(3K delta 1906 zcmdVY{clrM7zgm@bhquCItpd9Wwc#oIM=}#8?dfgVK8wUj<>Nnv2NXqd+}vXnV=Kw z#;$g6pfKe+rfVm@pu`YGaubuOF~P){iIJa#I7TKhnh2U`G6kpK+k3L}H+Ygy`n~6# zd+*cpoXJxsjFZ3uAF`OiWgw#3me%azvJ#~DIJRQ}t2o|MY8jq_peJj#WgsafFxMpT!e@9tHJ zDBdhw-eM-|>Da06VBKld6Bsb&x|L}{h7NS!AqOV&;PH7h}jqW9~@HMCQ5q0q5GP{V9_{Z`N z5Y6LxLpRaCd`)2wHk}ty*GJ^m@=ee+pxsbBV~hOCZ_`dmxmszls8=deOKmJy{r!7K zS)#gsPpT0;-US~lvqtAK%%fjdvzGgZ_&4i-NV&PZ#N$QB&5yj-QGB2 zTd1D-$`$HV-;bnaT#8JoOTY;(a6=k+;5Jwa>97oLhYYv_GQkU3upCxEHmrmkSOvL| z2diNXtc85=K>_&TPPhvKa5t=j^-u^KU?UX4J+KMxg<>dyQrHalK^bg;t*{NY!wx8i zolpUla6eSR1F#DogdjWw)ldT=sD(PHhX!~U8lefAp#>g+N8vGe99rQCXoDx=DcB9| z@HFg!z3>b?3mxzr?1TOAJcOYWy5InGgA6agix7bx=!HJ$hXFVUhu|f684kk{7=%~g qRX7R?yaq#X42I!#cmqZt3NaXkH{m$E1#iPU@GhKCr_}dmYyJZ}^io;? diff --git a/HMI/nspanel.tft b/HMI/nspanel.tft index 977badffe45153916dc53b818a6af1b7be82663e..8e95bfa50df0f3c03b45187b61d9fcfabe7347e8 100644 GIT binary patch delta 14152 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 diff --git a/README.md b/README.md index 29e5c929..f96011b5 100644 --- a/README.md +++ b/README.md @@ -447,6 +447,7 @@ key | optional | type | default | description `title` | True | string | `None` | Title of the Page `entity` | False | string | `None` | contains the entity of the current card, valid for cardThermo, cardAlarm and cardMedia `key` | True | string | `None` | Used by navigate items +`mediaControl` | True | string | `None` | Only valid on cardMedia, contains the action executed on pressing the top left media icon. (useful to navigate to a hidden card or start a script) #### Possible configuration values for screensaver config diff --git a/apps/nspanel-lovelace-ui/luibackend/pages.py b/apps/nspanel-lovelace-ui/luibackend/pages.py index de5b63e0..39f253eb 100644 --- a/apps/nspanel-lovelace-ui/luibackend/pages.py +++ b/apps/nspanel-lovelace-ui/luibackend/pages.py @@ -329,7 +329,7 @@ class LuiPagesGen(object): command = f"entityUpd~{heading}~{navigation}~{item}~{current_temp} {temperature_unit}~{dest_temp}~{state_value}~{min_temp}~{max_temp}~{step_temp}{icon_res}~{currently_translation}~{state_translation}~{action_translation}~{temperature_unit_icon}" self._send_mqtt_msg(command) - def generate_media_page(self, navigation, title, entity): + def generate_media_page(self, navigation, title, entity, mediaBtn): item = entity.entityId if not self._ha_api.entity_exists(item): command = f"entityUpd~Not found~{navigation}~{item}~{get_icon_id('alert-circle-outline')}~Please check your~apps.yaml in AppDaemon~~0~{get_icon_id('alert-circle-outline')}~~~disable" @@ -360,7 +360,7 @@ 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}" + command = f"entityUpd~{heading}~{navigation}~{item}~{icon}~{title}~{author}~{volume}~{iconplaypause}~{source}~{speakerlist[:200]}~{onoffbutton}~{mediaBtn}" self._send_mqtt_msg(command) def generate_alarm_page(self, navigation, entity): @@ -458,7 +458,8 @@ class LuiPagesGen(object): temp_unit = card.raw_config.get("temperatureUnit", "celsius") self.generate_thermo_page(navigation, card.title, card.entity, temp_unit) if card.cardType == "cardMedia": - self.generate_media_page(navigation, card.title, card.entity) + mediaBtn = card.raw_config.get("mediaControl", "") + self.generate_media_page(navigation, card.title, card.entity, mediaBtn) if card.cardType == "cardAlarm": self.generate_alarm_page(navigation, card.entity) if card.cardType == "screensaver":