Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Betatest NSPanel-lovelace-ui v0.7.x

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Betatest NSPanel-lovelace-ui v0.7.x

Geplant Angeheftet Gesperrt Verschoben Tester
726 Beiträge 26 Kommentatoren 132.6k Aufrufe 31 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • T ticaki

    @snigga

    Kannst mal testen https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/tree/pagePopup

    Ist ähnlich wie die Screensaver-Notifications aber kaum getestet.

    Bildschirmfoto 2025-11-07 um 11.05.45.png

    activate schaltet das scharf
    id wird zum wiedererkennen benutz und sollte eindeutig sein. Eine leere ID löscht alle Popups
    priority bestimmt was vorne ist - <=0 löscht das Popup mit der gleichen id
    global ob es überall angezeigt werden soll.
    type information wird beim drücken auf X gelöscht. acknowledge muß einen button haben und drücken auf X startet einen reminder von 120 Sekunden
    textSize - kein Plan das muß ich mir nochmal erklären lassen :)

    vorübergehend

    buttonLeft hat nächstes als Standardfunktion (unendlicher Kreisverkehr)
    buttonRight hat löschen als Standardfunktion

    wenn @Armilar und @TT-Tom das getestet haben und ich dann alles behoben habe was die finden mache ich ein release.

    Der timeout aus dem Skript beißt sich aktuell noch mit der Verwaltung - mal sehen wann das kommt.

    EDIT:
    hab jetzt auch globale Buttonsstates hinzugefügt
    yes - ist der rechte button
    no - ist der linke
    id - ist panel + popup id

    Beim drücken von einem button wird der entsprechende State .id und .yes oder .no mit der popupid aktualisiert - abfragen darauf mit any und '' verwerfen - beim starten des adapters wird das mit leer überschrieben.

    S Offline
    S Offline
    Snigga
    schrieb am zuletzt editiert von Snigga
    #668

    @ticaki bist der Wahnsinn. Leider bekomme ich es nicht zum laufen. Was muss ich im Script hinterlegen?

    const Nachricht: ScriptConfig.PagePopup = {
        card: 'popupNotify',
        dpInit: '',
        alwaysOn: 'none',
        uniqueID: 'Nachritcht',
        config: {
            card: 'popupNotify',
            data: {
                entity1: { value: { type: 'triggered', dp: '0_userdata.0.example_state' } },
                headline: { type: 'const', constVal: 'welcomeHToken' },
                colorHeadline: { true: { color: { type: 'const', constVal: Green } } },
                buttonLeft: { type: 'const', constVal: '' },
                colorButtonLeft: { true: { color: { type: 'const', constVal: White } } },
                buttonRight: { type: 'const', constVal: '' },
                colorButtonRight: { true: { color: { type: 'const', constVal: White } } },
                text: { type: 'const', constVal: 'welcomeTToken' }, // text: { type: 'const', constVal: 'Text Test ${pl}' },
                colorText: { true: { color: { type: 'const', constVal: White } } },
                timeout: { type: 'const', constVal: 3 },
                // {placeholder: {text: '' oder dp: ''}} im Text muss dann ${dieserKeyStehtImText} stehen
                // optionalValue: { type: 'const', constVal: { dieserKeyStehtImText: { text: 'das ist ein placeholder' } } },
                //setValue1: { type: 'const', constVal: true }, // alleine ist es ein switch
                //setValue2: { type: 'const', constVal: true }, // mit setValue2 wird 1, bei yes und 2 bei no auf true gesetzt
                closingBehaviour: { type: 'const', constVal: 'both' }, // 'both' | 'yes' | 'no' | 'none'
            },
        },
        pageItems: [],
        items: undefined,
    };
    
    const Nachricht1: any = {
        dpInit: '',
        alwaysOn: 'ignore',
        uniqueID: '///popupNotification',
        config: {
            card: 'popupNotify',
            data: {
                entity1: { value: { type: 'internal', dp: 'cmd/popupNotification', read: 'return true' } },
                headline: { type: 'internal', dp: 'cmd/popupNotification', read: 'return JSON.parse(val).headline' },
                colorHeadline: { true: { color: { type: 'const', constVal: Green } } },
                buttonLeft: { type: 'const', constVal: 'nextF' },
                colorButtonLeft: { true: { color: { type: 'const', constVal: White } } },
                buttonRight: { type: 'const', constVal: 'ok' },
                colorButtonRight: { true: { color: { type: 'const', constVal: White } } },
                text: { type: 'internal', dp: 'cmd/popupNotification', read: 'return JSON.parse(val).text' }, // text: { type: 'const', constVal: 'Text Test ${pl}' },
                colorText: { true: { color: { type: 'const', constVal: White } } },
                timeout: { type: 'const', constVal: 0 },
                // {placeholder: {text: '' oder dp: ''}}
                // optionalValue: { type: 'const', constVal: { pl: { text: 'das ist ein placeholder' } } },
                setValue1: { type: 'internalState', dp: 'cmd/NotificationCleared' },
                setValue2: { type: 'internalState', dp: 'cmd/NotificationNext' },
                closingBehaviour: { type: 'const', constVal: 'none' },
            },
        },
        pageItems: [],
        items: undefined,
    };
    
    

    Bzw. habe ich es auch über die Datenpunkte probiert.

    Screenshot 2025-11-08 203430.png

    T 2 Antworten Letzte Antwort
    0
    • S Snigga

      @ticaki bist der Wahnsinn. Leider bekomme ich es nicht zum laufen. Was muss ich im Script hinterlegen?

      const Nachricht: ScriptConfig.PagePopup = {
          card: 'popupNotify',
          dpInit: '',
          alwaysOn: 'none',
          uniqueID: 'Nachritcht',
          config: {
              card: 'popupNotify',
              data: {
                  entity1: { value: { type: 'triggered', dp: '0_userdata.0.example_state' } },
                  headline: { type: 'const', constVal: 'welcomeHToken' },
                  colorHeadline: { true: { color: { type: 'const', constVal: Green } } },
                  buttonLeft: { type: 'const', constVal: '' },
                  colorButtonLeft: { true: { color: { type: 'const', constVal: White } } },
                  buttonRight: { type: 'const', constVal: '' },
                  colorButtonRight: { true: { color: { type: 'const', constVal: White } } },
                  text: { type: 'const', constVal: 'welcomeTToken' }, // text: { type: 'const', constVal: 'Text Test ${pl}' },
                  colorText: { true: { color: { type: 'const', constVal: White } } },
                  timeout: { type: 'const', constVal: 3 },
                  // {placeholder: {text: '' oder dp: ''}} im Text muss dann ${dieserKeyStehtImText} stehen
                  // optionalValue: { type: 'const', constVal: { dieserKeyStehtImText: { text: 'das ist ein placeholder' } } },
                  //setValue1: { type: 'const', constVal: true }, // alleine ist es ein switch
                  //setValue2: { type: 'const', constVal: true }, // mit setValue2 wird 1, bei yes und 2 bei no auf true gesetzt
                  closingBehaviour: { type: 'const', constVal: 'both' }, // 'both' | 'yes' | 'no' | 'none'
              },
          },
          pageItems: [],
          items: undefined,
      };
      
      const Nachricht1: any = {
          dpInit: '',
          alwaysOn: 'ignore',
          uniqueID: '///popupNotification',
          config: {
              card: 'popupNotify',
              data: {
                  entity1: { value: { type: 'internal', dp: 'cmd/popupNotification', read: 'return true' } },
                  headline: { type: 'internal', dp: 'cmd/popupNotification', read: 'return JSON.parse(val).headline' },
                  colorHeadline: { true: { color: { type: 'const', constVal: Green } } },
                  buttonLeft: { type: 'const', constVal: 'nextF' },
                  colorButtonLeft: { true: { color: { type: 'const', constVal: White } } },
                  buttonRight: { type: 'const', constVal: 'ok' },
                  colorButtonRight: { true: { color: { type: 'const', constVal: White } } },
                  text: { type: 'internal', dp: 'cmd/popupNotification', read: 'return JSON.parse(val).text' }, // text: { type: 'const', constVal: 'Text Test ${pl}' },
                  colorText: { true: { color: { type: 'const', constVal: White } } },
                  timeout: { type: 'const', constVal: 0 },
                  // {placeholder: {text: '' oder dp: ''}}
                  // optionalValue: { type: 'const', constVal: { pl: { text: 'das ist ein placeholder' } } },
                  setValue1: { type: 'internalState', dp: 'cmd/NotificationCleared' },
                  setValue2: { type: 'internalState', dp: 'cmd/NotificationNext' },
                  closingBehaviour: { type: 'const', constVal: 'none' },
              },
          },
          pageItems: [],
          items: undefined,
      };
      
      

      Bzw. habe ich es auch über die Datenpunkte probiert.

      Screenshot 2025-11-08 203430.png

      T Nicht stören
      T Nicht stören
      ticaki
      schrieb am zuletzt editiert von ticaki
      #669

      @snigga
      Skript hat nix damit zu tun - das geht über Datenpunkte

      LOL oki und bla steht in meinem Testpopup auch.

      Du mußt da drauf klicken: Bildschirmfoto 2025-11-08 um 20.42.55.png

      Benutze bitte auch die Version von JETZT - hab gerade einen großen Irrtum behoben :)

      EDIT: hier bei gehts noch immer um die testbranch

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Antwort Letzte Antwort
      0
      • T Nicht stören
        T Nicht stören
        ticaki
        schrieb am zuletzt editiert von ticaki
        #670

        Noch immer Testbranch

        Nur zur Klarstellung - das hat nichts mit dem Konfigurationsskript zu tun.

        Wenn du das aus einem Skript heraus senden willst geht JETZT auch das hier:

        sendTo('nspanel-lovelace-ui.0', 'setPopupNotification', {headline:'test test test', text:'Es lebt!!!'})

        Das Objekt was man senden kann sieht so aus:

                  type PagePopupDataDetails = {
                     headline: string;
                     text: string;
                     panel?: string; // wenn hier leer, ist es global
                     priority?: number;
                     type?: PopupDetailsType;
                     id?: string;
                     colorHeadline?: RGB | string;
                     buttonLeft?: string;
                     colorButtonLeft?: RGB | string;
                     buttonRight?: string;
                     colorButtonRight?: RGB | string;
                     colorText?: RGB | string;
                     textSize?: string;
                     icon?: string;
                     iconColor?: RGB;
                     alwaysOn?: boolean;
                 };
        

        EDIT: RGB sieht im Adapter so aus:

        {
          r: number;
          g: number:
          b: number;
        }
        

        es geht auch #FF00FF

        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

        Spenden

        1 Antwort Letzte Antwort
        1
        • ArmilarA Armilar

          Gibt es aktuell eigentlich einen User mit der US-P Version, der gerne den Adapter nutzen möchte?

          bembelstemmerB Offline
          bembelstemmerB Offline
          bembelstemmer
          schrieb am zuletzt editiert von bembelstemmer
          #671

          @armilar said in Betatest NSPanel-lovelace-ui v0.7.x:

          Gibt es aktuell eigentlich einen User mit der US-P Version, der gerne den Adapter nutzen möchte?

          Hi. Ja, inzwischen gibt es einen :grin:
          Nach Jahren habe ich endlich mal ein bisschen Zeit meine Panels von einer uralt Script version zu aktualisieren und stelle deshalb auf den Adapter um.
          EU und US-L funktioniert. US-P funktioniert leider gar nicht. Das Display bleibt auch mit der leeren Default Config einfach schwarz weil die CardGrid irgendwie nicht will.
          Habe schon versucht mehrere ältere Versionen der TFT zu flashen, aber offenbar liegt es nicht daran?!?

          Der Adapter loggt diese Warnings, die mir aber nicht viel sagen.

          [Bad-SendClass] send payload: {"payload":"pageType~cardGrid","ackForType":true} to panel. Losing count: 3
          

          Nach ein paar Versuchen setzt der Adapter das Panel dann auf offline.
          Habt ihr irgendwelche Tipps was da klemmen könnte?

          VG

          T 1 Antwort Letzte Antwort
          0
          • bembelstemmerB bembelstemmer

            @armilar said in Betatest NSPanel-lovelace-ui v0.7.x:

            Gibt es aktuell eigentlich einen User mit der US-P Version, der gerne den Adapter nutzen möchte?

            Hi. Ja, inzwischen gibt es einen :grin:
            Nach Jahren habe ich endlich mal ein bisschen Zeit meine Panels von einer uralt Script version zu aktualisieren und stelle deshalb auf den Adapter um.
            EU und US-L funktioniert. US-P funktioniert leider gar nicht. Das Display bleibt auch mit der leeren Default Config einfach schwarz weil die CardGrid irgendwie nicht will.
            Habe schon versucht mehrere ältere Versionen der TFT zu flashen, aber offenbar liegt es nicht daran?!?

            Der Adapter loggt diese Warnings, die mir aber nicht viel sagen.

            [Bad-SendClass] send payload: {"payload":"pageType~cardGrid","ackForType":true} to panel. Losing count: 3
            

            Nach ein paar Versuchen setzt der Adapter das Panel dann auf offline.
            Habt ihr irgendwelche Tipps was da klemmen könnte?

            VG

            T Nicht stören
            T Nicht stören
            ticaki
            schrieb am zuletzt editiert von ticaki
            #672

            @bembelstemmer
            wlan unbeständig. MQTT ist ein fire and forget verbindung zum Tasmota hin, daher benutzt der Adapter eine allgemeine Bestätigungsmeldung vom nspanel um zu sehen ob es angekommen ist - wenn da nix zurück kommt innerhalb einer steigenden Zeitspanne erhöht sich losingCount und bei 10 oder so geht das panel offline.

            Edit hab nachgeguckt:

            if (this.losingMessageCount++ > 5) {
                        if (this.panel) {
                            if (this.adapter.config.additionalLog) {
                                this.log.error(`Losing ${this.losingMessageCount} messages - set panel offline!`);
                            }
                            this.panel.isOnline = false;
                        }
                    }
            

            bei 7 gehts offline...

            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

            Spenden

            bembelstemmerB 1 Antwort Letzte Antwort
            0
            • T ticaki

              @bembelstemmer
              wlan unbeständig. MQTT ist ein fire and forget verbindung zum Tasmota hin, daher benutzt der Adapter eine allgemeine Bestätigungsmeldung vom nspanel um zu sehen ob es angekommen ist - wenn da nix zurück kommt innerhalb einer steigenden Zeitspanne erhöht sich losingCount und bei 10 oder so geht das panel offline.

              Edit hab nachgeguckt:

              if (this.losingMessageCount++ > 5) {
                          if (this.panel) {
                              if (this.adapter.config.additionalLog) {
                                  this.log.error(`Losing ${this.losingMessageCount} messages - set panel offline!`);
                              }
                              this.panel.isOnline = false;
                          }
                      }
              

              bei 7 gehts offline...

              bembelstemmerB Offline
              bembelstemmerB Offline
              bembelstemmer
              schrieb am zuletzt editiert von
              #673

              @ticaki Danke. Sowas hatte ich auch gesehen im Code.
              Aber gleiches Panel am gleichen Standort mit US-L geflashed funktioniert perfekt. Liegt halt auf der Seite 😄
              Empfang ist auch perfekt laut Tasmota.
              Mit dem alten Script hatte ich da auch nie Probleme.
              Kann es immer nachstellen durch hin und her flashen zwischen US-L und US-P.

              Den MQTT Fehler habe ich gepostet weil es die einzige Nachricht ist die anders aussieht als bei meinen restlichen Panels.

              Ich kann auch gerne versuchen irgendwas anderes zu debuggen wenn ich weiß was.
              Das Skript kannte ich ganz gut. Beim Adapter bin ich noch neu.

              teletapiT T 2 Antworten Letzte Antwort
              0
              • bembelstemmerB bembelstemmer

                @ticaki Danke. Sowas hatte ich auch gesehen im Code.
                Aber gleiches Panel am gleichen Standort mit US-L geflashed funktioniert perfekt. Liegt halt auf der Seite 😄
                Empfang ist auch perfekt laut Tasmota.
                Mit dem alten Script hatte ich da auch nie Probleme.
                Kann es immer nachstellen durch hin und her flashen zwischen US-L und US-P.

                Den MQTT Fehler habe ich gepostet weil es die einzige Nachricht ist die anders aussieht als bei meinen restlichen Panels.

                Ich kann auch gerne versuchen irgendwas anderes zu debuggen wenn ich weiß was.
                Das Skript kannte ich ganz gut. Beim Adapter bin ich noch neu.

                teletapiT Online
                teletapiT Online
                teletapi
                schrieb am zuletzt editiert von teletapi
                #674

                @bembelstemmer Mein US NSPanel läuft jetzt schon seid Wochen stabil mit dem Adapter und ist ebenfalls mit US-P geflasht. Einzige Wehrmutstropfen das Panel flasht die US-P TFT version nicht per Flash Nextion zu da ist immer bei 99,9% Schluss die letzten paar Byte bekommt es nicht hin daher flashe ich das US Panel bei Bedarf per Nextion Editor das funktioniert prima. Mitttlerweile hab ich mir einen Stecker nach aussen eingebaut mit dem ich dann per serial Adapter flashen kann. Aber ansoinsten läuft das Teil sehr stabil
                WhatsApp Bild 2025-11-09 um 13.28.39_9b6a76f2.jpg WhatsApp Bild 2025-11-09 um 13.28.39_6c127aef.jpg WhatsApp Bild 2025-11-09 um 13.28.38_d4fd95c1.jpg

                Ich muss mich berichten nicht Portrait sondern Landsscape

                1 Antwort Letzte Antwort
                0
                • bembelstemmerB bembelstemmer

                  @ticaki Danke. Sowas hatte ich auch gesehen im Code.
                  Aber gleiches Panel am gleichen Standort mit US-L geflashed funktioniert perfekt. Liegt halt auf der Seite 😄
                  Empfang ist auch perfekt laut Tasmota.
                  Mit dem alten Script hatte ich da auch nie Probleme.
                  Kann es immer nachstellen durch hin und her flashen zwischen US-L und US-P.

                  Den MQTT Fehler habe ich gepostet weil es die einzige Nachricht ist die anders aussieht als bei meinen restlichen Panels.

                  Ich kann auch gerne versuchen irgendwas anderes zu debuggen wenn ich weiß was.
                  Das Skript kannte ich ganz gut. Beim Adapter bin ich noch neu.

                  T Nicht stören
                  T Nicht stören
                  ticaki
                  schrieb am zuletzt editiert von ticaki
                  #675

                  @bembelstemmer
                  in der US-P Version starte mal den Tasmota neu und zeig mal die Konsole ab dem mqtt connect - vielleicht gibts da kein customsend: done" oder so.

                  Oder falscher Berry - obwohl das der Adapter machen sollte...

                  Kannst auch - im Admin expert an - developer - log alles an machen - adapter auf debug stelllen und mir den wust an Daten geben der ab dem ersten "set panel online Bad" (oder so ähnlich) kommt.

                  EDIT: US-P sollte "theoretisch" mit dem Adapter laufen, aber weil keiner es testet weiß ich nicht wieviel geht.

                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                  Spenden

                  1 Antwort Letzte Antwort
                  0
                  • T Nicht stören
                    T Nicht stören
                    ticaki
                    schrieb am zuletzt editiert von
                    #676

                    Armilar hat mir gerade gesagt das die US-P sich an der cardGrid aufhängt, also ein adapter problem.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    bembelstemmerB 1 Antwort Letzte Antwort
                    0
                    • T ticaki

                      Armilar hat mir gerade gesagt das die US-P sich an der cardGrid aufhängt, also ein adapter problem.

                      bembelstemmerB Offline
                      bembelstemmerB Offline
                      bembelstemmer
                      schrieb am zuletzt editiert von
                      #677

                      @ticaki das Gefühl hatte ich auch so wie sich das Panel verhält. Danke fürs Update.

                      @teletapi das ist bei mir auch so. Landscape geht ohne Probleme. Und bzgl. des 99% Problems konnte ich das bisher immer lösen indem ich direkt danach nochmal die gleiche Version per Konsole flashe mit FlashNextion ohne Neustart vorher oder so.
                      Dann startet er direkt nochmal bei irgendwas um die 80% und schafft es dann fertig zu flashen. Hab ich seit gestern Abend jetzt schon über 10x so hinbekommen beim debuggen der US-P Thematik.

                      ArmilarA 1 Antwort Letzte Antwort
                      0
                      • bembelstemmerB bembelstemmer

                        @ticaki das Gefühl hatte ich auch so wie sich das Panel verhält. Danke fürs Update.

                        @teletapi das ist bei mir auch so. Landscape geht ohne Probleme. Und bzgl. des 99% Problems konnte ich das bisher immer lösen indem ich direkt danach nochmal die gleiche Version per Konsole flashe mit FlashNextion ohne Neustart vorher oder so.
                        Dann startet er direkt nochmal bei irgendwas um die 80% und schafft es dann fertig zu flashen. Hab ich seit gestern Abend jetzt schon über 10x so hinbekommen beim debuggen der US-P Thematik.

                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        schrieb am zuletzt editiert von
                        #678

                        @bembelstemmer

                        Bei der US-p kommt das Startup, dann die Einstellungen (Dimmode, etc.), dann der PageType und dann "kein" entityUpd (Seiten-Update) mehr... Denke da ist irgendeine Abfrage auf != us-p im Adapter-Code um die Seiteninhalte entsprechend der Anzahl an Seitenelementen für das korrekte entityUpd aufzubereiten.

                        @ticaki hat eben den Emulator aktiviert und checkt das durch...

                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        1 Antwort Letzte Antwort
                        0
                        • T Nicht stören
                          T Nicht stören
                          ticaki
                          schrieb am zuletzt editiert von ticaki
                          #679

                          Armilar hats gefunden - bugfix in arbeit. :)

                          Ist ein HMI Problem - wird heute abend gefixt

                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                          Spenden

                          bembelstemmerB 1 Antwort Letzte Antwort
                          0
                          • T ticaki

                            Armilar hats gefunden - bugfix in arbeit. :)

                            Ist ein HMI Problem - wird heute abend gefixt

                            bembelstemmerB Offline
                            bembelstemmerB Offline
                            bembelstemmer
                            schrieb am zuletzt editiert von
                            #680

                            @ticaki nice.
                            Habs aktuell auf der neusten Script Version laufen.
                            Von daher keine Eile. Ich teste es dann gerne nochmal mit dem Adapter nach.

                            T 1 Antwort Letzte Antwort
                            0
                            • bembelstemmerB bembelstemmer

                              @ticaki nice.
                              Habs aktuell auf der neusten Script Version laufen.
                              Von daher keine Eile. Ich teste es dann gerne nochmal mit dem Adapter nach.

                              T Nicht stören
                              T Nicht stören
                              ticaki
                              schrieb am zuletzt editiert von
                              #681

                              @bembelstemmer
                              Das da ist ein grundsätzliches Problem in der HMI - der Adapter benutzt CustomSend: 'Done' und renderCurrentPage um zu ermitteln ob etwas angekommen ist und ob es bearbeitet wurde - die US-P sendet keine renderCurrentPage zurück - daher geht da garnix.

                              Wenn die HMI online ist werde ich das auch mal mit der emu testen

                              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                              Spenden

                              1 Antwort Letzte Antwort
                              0
                              • T Nicht stören
                                T Nicht stören
                                ticaki
                                schrieb am zuletzt editiert von ticaki
                                #682

                                Fehler in der HMI und im Adapter behoben 5.0.3 (us-p only)

                                0.7.3 (2025-11-09)

                                • (ticaki) Switch from global subscript to individual subscriptions
                                • (ticaki) model us-p fixed
                                • (ticaki) update deps

                                popups sind nicht genug getestet

                                Dauert immer ein paar minuten bis die tests durch sind und das auf npm ist

                                Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                Spenden

                                bembelstemmerB 1 Antwort Letzte Antwort
                                0
                                • T ticaki

                                  Fehler in der HMI und im Adapter behoben 5.0.3 (us-p only)

                                  0.7.3 (2025-11-09)

                                  • (ticaki) Switch from global subscript to individual subscriptions
                                  • (ticaki) model us-p fixed
                                  • (ticaki) update deps

                                  popups sind nicht genug getestet

                                  Dauert immer ein paar minuten bis die tests durch sind und das auf npm ist

                                  bembelstemmerB Offline
                                  bembelstemmerB Offline
                                  bembelstemmer
                                  schrieb am zuletzt editiert von
                                  #683

                                  @ticaki & @Armilar vielen Dank für den schnellen Fix. Sieht gut aus.
                                  Ich habe bisher zwar nur schnell geupdated und geflashed aber das Panel wechselt jetzt in den Screensaver.
                                  Auf dem US-P brauche ich nicht viel Cards, etc.
                                  Die werde ich versuchen die kommenden Tage dann zu testen.

                                  1 Antwort Letzte Antwort
                                  0
                                  • S Snigga

                                    @ticaki bist der Wahnsinn. Leider bekomme ich es nicht zum laufen. Was muss ich im Script hinterlegen?

                                    const Nachricht: ScriptConfig.PagePopup = {
                                        card: 'popupNotify',
                                        dpInit: '',
                                        alwaysOn: 'none',
                                        uniqueID: 'Nachritcht',
                                        config: {
                                            card: 'popupNotify',
                                            data: {
                                                entity1: { value: { type: 'triggered', dp: '0_userdata.0.example_state' } },
                                                headline: { type: 'const', constVal: 'welcomeHToken' },
                                                colorHeadline: { true: { color: { type: 'const', constVal: Green } } },
                                                buttonLeft: { type: 'const', constVal: '' },
                                                colorButtonLeft: { true: { color: { type: 'const', constVal: White } } },
                                                buttonRight: { type: 'const', constVal: '' },
                                                colorButtonRight: { true: { color: { type: 'const', constVal: White } } },
                                                text: { type: 'const', constVal: 'welcomeTToken' }, // text: { type: 'const', constVal: 'Text Test ${pl}' },
                                                colorText: { true: { color: { type: 'const', constVal: White } } },
                                                timeout: { type: 'const', constVal: 3 },
                                                // {placeholder: {text: '' oder dp: ''}} im Text muss dann ${dieserKeyStehtImText} stehen
                                                // optionalValue: { type: 'const', constVal: { dieserKeyStehtImText: { text: 'das ist ein placeholder' } } },
                                                //setValue1: { type: 'const', constVal: true }, // alleine ist es ein switch
                                                //setValue2: { type: 'const', constVal: true }, // mit setValue2 wird 1, bei yes und 2 bei no auf true gesetzt
                                                closingBehaviour: { type: 'const', constVal: 'both' }, // 'both' | 'yes' | 'no' | 'none'
                                            },
                                        },
                                        pageItems: [],
                                        items: undefined,
                                    };
                                    
                                    const Nachricht1: any = {
                                        dpInit: '',
                                        alwaysOn: 'ignore',
                                        uniqueID: '///popupNotification',
                                        config: {
                                            card: 'popupNotify',
                                            data: {
                                                entity1: { value: { type: 'internal', dp: 'cmd/popupNotification', read: 'return true' } },
                                                headline: { type: 'internal', dp: 'cmd/popupNotification', read: 'return JSON.parse(val).headline' },
                                                colorHeadline: { true: { color: { type: 'const', constVal: Green } } },
                                                buttonLeft: { type: 'const', constVal: 'nextF' },
                                                colorButtonLeft: { true: { color: { type: 'const', constVal: White } } },
                                                buttonRight: { type: 'const', constVal: 'ok' },
                                                colorButtonRight: { true: { color: { type: 'const', constVal: White } } },
                                                text: { type: 'internal', dp: 'cmd/popupNotification', read: 'return JSON.parse(val).text' }, // text: { type: 'const', constVal: 'Text Test ${pl}' },
                                                colorText: { true: { color: { type: 'const', constVal: White } } },
                                                timeout: { type: 'const', constVal: 0 },
                                                // {placeholder: {text: '' oder dp: ''}}
                                                // optionalValue: { type: 'const', constVal: { pl: { text: 'das ist ein placeholder' } } },
                                                setValue1: { type: 'internalState', dp: 'cmd/NotificationCleared' },
                                                setValue2: { type: 'internalState', dp: 'cmd/NotificationNext' },
                                                closingBehaviour: { type: 'const', constVal: 'none' },
                                            },
                                        },
                                        pageItems: [],
                                        items: undefined,
                                    };
                                    
                                    

                                    Bzw. habe ich es auch über die Datenpunkte probiert.

                                    Screenshot 2025-11-08 203430.png

                                    T Nicht stören
                                    T Nicht stören
                                    ticaki
                                    schrieb am zuletzt editiert von ticaki
                                    #684

                                    @snigga

                                    POPUP ist in der main branch

                                    Wie es über States geht steht ja oben.

                                    zum Skriptversand folgendes:

                                    Simpel:

                                    sendTo('nspanel-lovelace-ui.0', 'setPopupNotification', {id: 'test3', headline:'test3', buttonLeft:'weiter', buttonRight: 'oki',  text:'Es lebt!!!'})
                                    

                                    oder in kompliziert: :)

                                    type PagePopupDataDetails = {
                                                 headline: string;
                                                 text: string;
                                                 panel?: string;
                                                 priority?: number;
                                                 type?: 'information' | 'acknowledge';
                                                 id?: string;
                                                 colorHeadline?: {r:number,g:number,b:number} | string;
                                                 buttonLeft?: string;
                                                 colorButtonLeft?: {r:number,g:number,b:number} | string;
                                                 buttonRight?: string;
                                                 colorButtonRight?: {r:number,g:number,b:number} | string;
                                                 colorText?: {r:number,g:number,b:number} | string;
                                                 textSize?: string;
                                                 icon?: string;
                                                 iconColor?: {r:number,g:number,b:number};
                                                 alwaysOn?: boolean;
                                             };
                                    
                                    const message: PagePopupDataDetails = {
                                        id: 'test3', 
                                        priority: 49,
                                        headline:'test3', 
                                        buttonLeft:'weiter', 
                                        buttonRight: 'oki',  
                                        text:'Es lebt!!!',
                                        type: 'information',
                                    }
                                    
                                    sendTo('nspanel-lovelace-ui.0', 'setPopupNotification', message)
                                    

                                    Popups sind grundsätzlich erstmal dauerhaft
                                    yes ist der rechte button - no der linke - no hat die funktion weiter - yes löschen

                                    id: zur Wiedererkennung - beliebige Zeichenkette - wenn leer werden alle gespeicherten Popups gelöscht
                                    type: information - wenn aufs X gedrückt wird oder auf den yes Button wird das gelöscht / acknowledge - drücken auf X startet wiedervorlage Timer (5 Minuten)
                                    priority: 1: höchste Prio - 0 bzw. <= 0 löscht das popup mit der id
                                    panel: nix popup ist global - mit angabe nur das benannte panel
                                    alwaysOn: das gleiche wie bei Seiten
                                    icon: wenn da wird icon iconcolor und textsize hingeschickt, sonst nicht

                                    text - headline muß angegeben sein sonst steht im Panel missing text/headline

                                    acknowledge ohne Angabe von buttonRight wird umgetypt in information

                                    das sind auswertungsstates für die popups

                                    Bildschirmfoto_2025-11-11_um_10.52.46.png

                                    in id steht die ID die du hingeschickt ist - auf globaler ebene steht noch das panel davor also panel.id
                                    lokal im panel steht nur die ID
                                    wenn yes oder no angeklickt wird, wird der entsprechende State mit der ID aktualisiert.

                                    global wird nur von globalen popups beschrieben. lokal von allen die auf dem panel angezeigt werden.

                                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                    Spenden

                                    T 1 Antwort Letzte Antwort
                                    1
                                    • T ticaki

                                      @snigga

                                      POPUP ist in der main branch

                                      Wie es über States geht steht ja oben.

                                      zum Skriptversand folgendes:

                                      Simpel:

                                      sendTo('nspanel-lovelace-ui.0', 'setPopupNotification', {id: 'test3', headline:'test3', buttonLeft:'weiter', buttonRight: 'oki',  text:'Es lebt!!!'})
                                      

                                      oder in kompliziert: :)

                                      type PagePopupDataDetails = {
                                                   headline: string;
                                                   text: string;
                                                   panel?: string;
                                                   priority?: number;
                                                   type?: 'information' | 'acknowledge';
                                                   id?: string;
                                                   colorHeadline?: {r:number,g:number,b:number} | string;
                                                   buttonLeft?: string;
                                                   colorButtonLeft?: {r:number,g:number,b:number} | string;
                                                   buttonRight?: string;
                                                   colorButtonRight?: {r:number,g:number,b:number} | string;
                                                   colorText?: {r:number,g:number,b:number} | string;
                                                   textSize?: string;
                                                   icon?: string;
                                                   iconColor?: {r:number,g:number,b:number};
                                                   alwaysOn?: boolean;
                                               };
                                      
                                      const message: PagePopupDataDetails = {
                                          id: 'test3', 
                                          priority: 49,
                                          headline:'test3', 
                                          buttonLeft:'weiter', 
                                          buttonRight: 'oki',  
                                          text:'Es lebt!!!',
                                          type: 'information',
                                      }
                                      
                                      sendTo('nspanel-lovelace-ui.0', 'setPopupNotification', message)
                                      

                                      Popups sind grundsätzlich erstmal dauerhaft
                                      yes ist der rechte button - no der linke - no hat die funktion weiter - yes löschen

                                      id: zur Wiedererkennung - beliebige Zeichenkette - wenn leer werden alle gespeicherten Popups gelöscht
                                      type: information - wenn aufs X gedrückt wird oder auf den yes Button wird das gelöscht / acknowledge - drücken auf X startet wiedervorlage Timer (5 Minuten)
                                      priority: 1: höchste Prio - 0 bzw. <= 0 löscht das popup mit der id
                                      panel: nix popup ist global - mit angabe nur das benannte panel
                                      alwaysOn: das gleiche wie bei Seiten
                                      icon: wenn da wird icon iconcolor und textsize hingeschickt, sonst nicht

                                      text - headline muß angegeben sein sonst steht im Panel missing text/headline

                                      acknowledge ohne Angabe von buttonRight wird umgetypt in information

                                      das sind auswertungsstates für die popups

                                      Bildschirmfoto_2025-11-11_um_10.52.46.png

                                      in id steht die ID die du hingeschickt ist - auf globaler ebene steht noch das panel davor also panel.id
                                      lokal im panel steht nur die ID
                                      wenn yes oder no angeklickt wird, wird der entsprechende State mit der ID aktualisiert.

                                      global wird nur von globalen popups beschrieben. lokal von allen die auf dem panel angezeigt werden.

                                      T Offline
                                      T Offline
                                      TT-Tom
                                      schrieb am zuletzt editiert von
                                      #685

                                      @ticaki sagte in Betatest NSPanel-lovelace-ui v0.7.x:

                                      type: information - wenn aufs X gedrückt wird oder auf den yes Button wird das gelöscht / acknowledge - drücken auf X startet wiedervorlage Timer (5 Minuten)

                                      kleine Ergänzung:

                                      Beim Type acknowledge, wird bei "yes" das Popup auch gelöscht -> ist als Lesebestätigung zu werten

                                      mit dem no / linken Button wird durch die Popups geblättert

                                      AlwaysOn ist Standard auf true, bei false läuft der Timeout vom Screensaver ab, wenn das Popup eingeblendet wird.
                                      Mit aufwecken des Panels erscheinen wieder die Popups, die noch nicht bestätigt wurden.

                                      Gruß Tom
                                      https://github.com/tt-tom17
                                      Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                      NSPanel Script Wiki
                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                      NSPanel Adapter Wiki
                                      https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                      1 Antwort Letzte Antwort
                                      0
                                      • T Nicht stören
                                        T Nicht stören
                                        ticaki
                                        schrieb am zuletzt editiert von ticaki
                                        #686

                                        hab noch buzzer hinzugefügt

                                        • über States geht das nur mit true/false
                                        • per Skript kann man auch nen eigenen Buzzerstring mit schicken

                                        im Skript wird der type dann um dieses hier erweitert:

                                        buzzer?: boolean | string;
                                        

                                        Wird genau 1 mal beim ersten Anzeigen des entsprechenden Popup ausgelöst.

                                        @TT-Tom

                                        Ist natürlich auch für den Rest - anzumerken wäre zu yes und X noch:
                                        X schließt auf dem Panel wo es gedrückt wird das popup egal ob es ein globales oder lokales war.
                                        yes schließt/löscht/bestätigt bei einem globalen Popup dieses für alle Panels.

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        1 Antwort Letzte Antwort
                                        0
                                        • T Nicht stören
                                          T Nicht stören
                                          ticaki
                                          schrieb am zuletzt editiert von ticaki
                                          #687

                                          oft editiert:
                                          Ich benenne die States doch um - in buttonLeft und buttonRight - damit man weiß was es ist. Das Panel sendet halt yes oder no daher die states - aber das ist quark und verwirrt nur.

                                          States umbenannt

                                          isBuzzerAllowed hinzugefügt - das betrifft Notifications (screensaver) und pagePopups - wenn deaktiviert beept da nix. Gilt nicht für das explizierte Buzzern über State oder sendTo - wenn ihr absichtlich auf dem Schlafzimmerpanel um 4:00 nen buzzer hinsendet dann machts einfach nicht :D

                                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                          Spenden

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          631

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe