From e39489e6ad6c1c16cf353b088f35c8699a4e6974 Mon Sep 17 00:00:00 2001 From: Edward Firmo <94725493+edwardtfn@users.noreply.github.com> Date: Mon, 11 Mar 2024 22:20:36 +0100 Subject: [PATCH] Move notification buttons engine to ESPHome Solves #1881 Improves #1501 --- esphome/nspanel_esphome_core.yaml | 32 ++++++++++++++++---- hmi/dev/nspanel_eu_code/boot.txt | 2 +- hmi/dev/nspanel_eu_code/notification.txt | 20 ------------ hmi/dev/nspanel_us_code/boot.txt | 2 +- hmi/dev/nspanel_us_code/notification.txt | 20 ------------ hmi/nspanel_eu.HMI | Bin 15263259 -> 15263259 bytes hmi/nspanel_eu.tft | Bin 7494688 -> 7494348 bytes hmi/nspanel_us.HMI | Bin 15048136 -> 15048136 bytes hmi/nspanel_us.tft | Bin 7498852 -> 7498516 bytes nspanel_blueprint.yaml | 37 ++--------------------- 10 files changed, 30 insertions(+), 83 deletions(-) diff --git a/esphome/nspanel_esphome_core.yaml b/esphome/nspanel_esphome_core.yaml index 6987819..2968a3d 100644 --- a/esphome/nspanel_esphome_core.yaml +++ b/esphome/nspanel_esphome_core.yaml @@ -18,7 +18,7 @@ substitutions: temp_units: "°C" invalid_cooldown: "100ms" ##### DON'T CHANGE THIS ###### - version: "4.3.0b2" + version: "4.3.0b3" ############################## ##### External components ##### @@ -508,6 +508,7 @@ api: notification_label->publish_state(""); notification_text->publish_state(""); notification_unread->turn_off(); + set_component_visibility->execute("home.bt_notific", false); # Displays a notification message on the screen, useful for alerts or informational updates. - service: notification_show @@ -517,8 +518,7 @@ api: then: - lambda: |- if (!id(is_uploading_tft)) { - ESP_LOGV("service.notification_show", "Starting"); - + set_component_visibility->execute("home.bt_notific", true); goto_page->execute("notification"); disp1->set_component_text_printf("notification.notifi_label", "%s", label.c_str()); @@ -874,6 +874,25 @@ display: break; } break; + case 16: // notification + switch (component_id) { + case 7: // bt_accept + if (!touch_event) { // Release + notification_label->publish_state(""); + notification_text->publish_state(""); + notification_unread->turn_off(); + goto_page->execute("home"); + set_component_visibility->execute("home.bt_notific", false); + } + break; + case 8: // bt_clear + if (!touch_event) { // Release + notification_unread->turn_off(); + goto_page->execute("home"); + } + break; + } + break; case 22: // fan switch (component_id) { case 17: // bt_oscillate @@ -882,6 +901,7 @@ display: } break; } + break; } } @@ -1721,9 +1741,9 @@ text_sensor: detailed_entity->publish_state((id(is_embedded_thermostat)) ? "embedded_climate" : ""); disp1->set_component_value("climate.embedded", id(is_embedded_thermostat) ? 1 : 0); goto_page->execute("climate"); - } else if (page == "light" or page == "climate" or page == "notification") { // Generic event - auto ha_event = new esphome::api::CustomAPIDevice(); - ha_event->fire_homeassistant_event("esphome.nspanel_ha_blueprint", { + } else if (page == "light" or page == "climate") { // Generic event + esphome::api::CustomAPIDevice ha_event; + ha_event.fire_homeassistant_event("esphome.nspanel_ha_blueprint", { {"type", "generic"}, {"page", page}, {"event", event}, diff --git a/hmi/dev/nspanel_eu_code/boot.txt b/hmi/dev/nspanel_eu_code/boot.txt index 8e2230b..8800fe0 100644 --- a/hmi/dev/nspanel_eu_code/boot.txt +++ b/hmi/dev/nspanel_eu_code/boot.txt @@ -101,7 +101,7 @@ Text tft_version Dragging : 0 Send Component ID : on press and release Associated Keyboard: none - Text : 4.3.0b2 + Text : 4.3.0b3 Max. Text Size : 9 Text esph_version diff --git a/hmi/dev/nspanel_eu_code/notification.txt b/hmi/dev/nspanel_eu_code/notification.txt index ed2fbf2..b6a6951 100644 --- a/hmi/dev/nspanel_eu_code/notification.txt +++ b/hmi/dev/nspanel_eu_code/notification.txt @@ -80,16 +80,6 @@ Button bt_accept Text : î—  Max. Text Size : 3 - Events - Touch Release Event - lastclick.txt="{\"page\": \"notification\", \"component\": \"accept\", \"value\": \"release\"}" - printh 92 - prints "nspanelevent",0 - printh 00 - prints lastclick.txt,0 - printh 00 - printh FF FF FF - Button bt_clear Attributes ID : 8 @@ -100,16 +90,6 @@ Button bt_clear Text : î…™ Max. Text Size : 10 - Events - Touch Release Event - lastclick.txt="{\"page\": \"notification\", \"component\": \"clear\", \"value\": \"release\"}" - printh 92 - prints "nspanelevent",0 - printh 00 - prints lastclick.txt,0 - printh 00 - printh FF FF FF - Timer swipestore Attributes ID : 4 diff --git a/hmi/dev/nspanel_us_code/boot.txt b/hmi/dev/nspanel_us_code/boot.txt index d1e4b91..4c68974 100644 --- a/hmi/dev/nspanel_us_code/boot.txt +++ b/hmi/dev/nspanel_us_code/boot.txt @@ -101,7 +101,7 @@ Text tft_version Dragging : 0 Send Component ID : on press and release Associated Keyboard: none - Text : 4.3.0b2 + Text : 4.3.0b3 Max. Text Size : 9 Events diff --git a/hmi/dev/nspanel_us_code/notification.txt b/hmi/dev/nspanel_us_code/notification.txt index 99d93c7..731f0d7 100644 --- a/hmi/dev/nspanel_us_code/notification.txt +++ b/hmi/dev/nspanel_us_code/notification.txt @@ -80,16 +80,6 @@ Button bt_accept Text : î—  Max. Text Size : 3 - Events - Touch Release Event - lastclick.txt="{\"page\": \"notification\", \"component\": \"accept\", \"value\": \"release\"}" - printh 92 - prints "nspanelevent",0 - printh 00 - prints lastclick.txt,0 - printh 00 - printh FF FF FF - Button bt_clear Attributes ID : 8 @@ -100,16 +90,6 @@ Button bt_clear Text : î…™ Max. Text Size : 3 - Events - Touch Release Event - lastclick.txt="{\"page\": \"notification\", \"component\": \"clear\", \"value\": \"release\"}" - printh 92 - prints "nspanelevent",0 - printh 00 - prints lastclick.txt,0 - printh 00 - printh FF FF FF - Timer swipestore Attributes ID : 4 diff --git a/hmi/nspanel_eu.HMI b/hmi/nspanel_eu.HMI index 155a681dbcec1abe087382ed2a28eb1791139b6f..df52da71930c5abf9823c7da51a5bc78f2dc26c7 100644 GIT binary patch delta 1601 zcmeIw{Zo`x6u|NOu*=fqH0?~mx{W_TDV3=~P2-}uW@e#jYNVB!LGQk=K5RfrARJxZ z6ljrKk=e49LQvT%Po)7xA{J>#FH)44Y5bDIOieaZO?^T7L8d>TA38Iindd&|+G;b?4pzoo zHr5+Yb%)1L1B)CDqqf*eAQzc<@zv3u5J8jQy5JVoF0jeVDnzQ}$qp|vjPbB!+S zbp?7|2BKht9no-Dy{?$C{r?Z;UxrfXbO)Sn15vQSj%YY6r#oig%zvRE;&d;_6_2FI z6qzbF%QW%Ibh$-l$gMI{Zj)JZyWAnEGF#@zoibPE$z3vE7RW-mThinnStN_)Ub#>1 zmnHImER_dknLH%vk|7VvBl4&`CXdS#@}w-66|z!R$!b|6YsDw)Wc^+JrRxpd9yWi`eJAoK>!ab*u}w?ERfe^4 zmziqQNd;MU>)MJi3-b5z+cnVp_Mh>3F25dyG6{&ybK(&3vpDEc^RhmB~UK<

E*|L>0E98XC{xdAxucyoeom2|MvJLa0R;ui#a@hF#c=I@IHJG@uc0 z;7z=RJ$M@t?8QDb!NNOu7w=&|4&Z$>qXn(_03V_aAK@U{aR?najF0gNI`Juv;3z&r u7mlGDgLC}?U*anqM-RTnH|WK;_zow~hm-gor|<(#;|zYZ&gS$_T=h4%Q-zxV delta 1397 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 delta 11311 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 diff --git a/hmi/nspanel_us.HMI b/hmi/nspanel_us.HMI index 1191a941118ad35bbcdd6f521219da2a7309d6c7..5d6ebe638f50653116ce5c601ab6598ba16751fe 100644 GIT binary patch delta 1445 zcmdtg=}%N=6vy#N>Ihch zR4nctI*(e)fGaMv;7G4_>QX?#F7B;Mt01n4X`-)8j4%2{O^p2u8c*`ceSS~QNzP54 z&X7N{6Z)NIeWIby^G!11buBpCco?Q@z8Q{qT@RX$kU>a{BKR_+Qj-!BN0#Jk&#Se| z)bf(Z?PZ#FKNOKX{9f3T%+=6%OVj!4?PbA0lv7Xo&#YG7VQFdZ7l)r@u8!TYw5`vE z&qrU?*`hh7ccqgt8PVbUj~5U2B{&CF6gn#lojSr`ARG~J*oDr>n%gh+&sDfxm2Q`g zFc=6&1RS>871@33|IiS0yXwj%SyJRxNtM^+bxD&^k}jiVjEt3W@`j9;44ELA@}^9b zw`7vMEt4fnrbxEDBk#&onI`Ya`;sFc$aKk-88TBolsw6o0+}U+GF#@zNAj^0$tUuu z%$0dEUy7wf7RW+bB%T9iYghQ`zWw&v#W_n-+-gC3W2{Puv~umHvsO!-$}8|hsInew zkbkNt&Yqj)dC=d^9ATx@I)X#SH>SB&?Rv9n=uv~GNDYhEv?I^XH(Z+5(EGlr)q~ZP zszA0~v%&nwP>&C{^-($ZZpNrUwHaqG%CF1SRd=wo$oBe8J4Ou|cRfyJY&XZ~AvOA; z*`(5k?`u=bO1%!1mRj0RMQ3}i`3KY|t4F)cj;Gxh8(!#cRe@=qO=@}3(p*(iU!SB# zW%R__Sp&V*y1KN{8*ASmV7+3f&cwDrWx-twpJ6eUz>B3QMH!aib1cUSl%oQIFR&7o zScNZ9h1FPtwOEJs*no}r3O-chYxtqC37fG6-=GHHq87b-)}bC-u?^d?13R$`4cLu6 z*o%E=#CP}}O=!k`1aSZ@_yIN!;t+mB2tVO4j^HSc;b*j>4edCN6X-xEPU08*ir?@% sPT@4p;4IGJJTBl5{E3UWgv+>szwkG%;u^ZpjqB*a4ZGm(%{eXq0#M>mF#rGn delta 1352 zcmdtg>r;$T90&08w6|t6X3R93-Db?bFp@E8Cx%4GB_Rq$RJ!a66)WwsD!Tj>xn|Sj zl5UiH$+jMBZd;VxCHJ%>)8GZ(G~<;o?M%a8V4RuH%=gTE&pC5ueyz3=Su1co_1s($ z$IPK35010wM13w?syRmL!7+|K&-omCUh>!VD3Y_+I=-pVj*na->l&RCW+^InX}x&BV&NX(-%S9vq0a&{U=GiGw; zalQk&){hS_EDscZI1HbM@%d>cch|8#em=elcswWB0BG?aRD24-20z4dqLvR?5Kq(xBGAM@%sDvsw z2FIZqYTyK%gi~-D&cInX2enWK=b;`hfCU=B3Kv0uOK=&kfDIbqDqMr>a070F9h#sS zZozG6fmXN!ZEzRv!F_lD58)9!h9}StPoV>z!E<;4FX0uuhBwd&Z=nku@DAQXx1j6& HkZAo0NWT@$ diff --git a/hmi/nspanel_us.tft b/hmi/nspanel_us.tft index 10e9ff8100e8051fe76d94a8af6bcbd9bba74431..ea4d924e6443446f3d97861202b984531a0f372b 100644 GIT binary patch delta 11055 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 sPouA%I+l;rlh(9kB2o;0(4eX # NSPanel Configuration via Blueprint: Complete UI-Based Setup - **Version**: v4.3.0b2 + **Version**: v4.3.0b3 This project enables comprehensive configuration of your NSPanel through a Blueprint featuring a user interface. @@ -3263,7 +3263,7 @@ trigger_variables: variables: ##### GENERAL ##### - blueprint_version: '4.3.0b2' + blueprint_version: '4.3.0b3' date_format_temp: !input 'date_format' # Avoid breaking change for existing users with legacy type format date_format: '{{ date_format_temp if date_format_temp not in ["%d.%m", "%d/%m", "%-d/%-m", "%-m/%-d"] else "%A, " ~ date_format_temp }}' @@ -3299,8 +3299,6 @@ variables: page: home: 'esphome.{{ nspanel_name }}_init_page_home' settings: 'esphome.{{ nspanel_name }}_init_page_settings' - notification: - clear: 'esphome.{{ nspanel_name }}_notification_clear' page: alarm: 'esphome.{{ nspanel_name }}_page_alarm' media_player: 'esphome.{{ nspanel_name }}_page_media_player' @@ -9888,37 +9886,6 @@ action: - *variable_entity - *entity_details_show - - alias: Show button - Notification clear - conditions: - - '{{ nspanel_event.page == pages.notification }}' - - '{{ nspanel_event.component == "clear" }}' - sequence: - - service: switch.turn_off - data: - entity_id: '{{ notification_unread }}' - continue_on_error: true - - service: '{{ nspanel.service.command }}' - data: - cmd: 'page {{ pages.home }}' - continue_on_error: true - - - alias: Show button - Notification accept - conditions: - - '{{ nspanel_event.page == pages.notification }}' - - '{{ nspanel_event.component == "accept" }}' - sequence: - - service: switch.turn_off - data: - entity_id: '{{ notification_unread }}' - continue_on_error: true - - service: '{{ nspanel.service.notification.clear }}' - data: {} - continue_on_error: true - - service: '{{ nspanel.service.command }}' - data: - cmd: 'page {{ pages.home }}' - continue_on_error: true - ##### BOOT NSPANEL - automation reload ##### - alias: Automation reloaded conditions: