Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Multi Ereignislisten Skript

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Multi Ereignislisten Skript

    This topic has been deleted. Only users with topic management privileges can see it.
    • Hiltex
      Hiltex @siggi85 last edited by

      @siggi85 nach meinem Verständnis ist eine globale Funktion ja im Prinzip nur ein Code-Schnipsel, das überall zur Verfügung steht. Speziell bei der Ereignisliste ist der extrem einfach gehalten und ist selbst für einen Raspberry Pi 1 keine Herausforderung.
      Das ganze über einen Datenpunkt zu realisieren scheint mir indes eher unflexibel, weil man da ja auch die Parameter für die Liste und Farbe mit übergeben müsste. Insofern finde ich die aktuelle Lösung garnicht so schlecht.
      Allerdings hab ich das ganze bisher nur sehr rudimentär eingebaut, weil ich keinen Sinn darin sehe, mir eine Liste mit Tür offen, Tür geschlossen, Tür offen, Tür geschlossen anzeigen zu lassen. Sowas benötige ich zwar manchmal für die Fehlersuche, aber dann lass ich mir den Wechsel der Zustände ins History oder InfluxDB schreiben und werte das dann grafisch mit Flot oder Grafana aus. So kann ich Trigger und Aktion gleichzeitig sehen und besser nachvollziehen, warum morgens das Licht leuchtet, wenn ich ins Wohnzimmer komme, obwohl ich es abends ausgeschaltet habe.

      1 Reply Last reply Reply Quote 0
      • M
        martinschm @ruhr70 last edited by

        @ruhr70 Sehr cooles Skript. Hab etwas gebaucht um den Zweck zu verstehen, aber das ist echt super cool. Kommt gleich auf meine ToDo Liste fürs Smart Home

        1 Reply Last reply Reply Quote 0
        • sigi234
          sigi234 Forum Testing Most Active last edited by sigi234

          @ruhr70 sagte in [Vorlage] Multi Ereignislisten Skript:

          0.2.3

          Hm , habe mal die 0.2.3 genommen , leider kommt ein Fehler:

          15.8.2019, 11:16:10.692	[info ]: javascript.0 Stop script script.js.Ereignisse.Erstellt_Ereignislisten
          15.8.2019, 11:16:10.692	[info ]: javascript.0 script.js.Ereignisse.Erstellt_Ereignislisten: ----------- Skript: script.js.Ereignisse.Erstellt_Ereignislisten -> wurde beendet -----------
          15.8.2019, 11:16:10.798	[info ]: javascript.0 Start javascript script.js.Ereignisse.Erstellt_Ereignislisten
          15.8.2019, 11:16:10.798	[error]: javascript.0 script.js.Ereignisse.Erstellt_Ereignislisten compile failed:
          at script.js.Ereignisse.Erstellt_Ereignislisten:140
          15.8.2019, 11:16:56.490	[info ]: javascript.0 Stop script script.js.Ereignisse.Erstellt_Ereignislisten
          15.8.2019, 11:16:56.496	[info ]: javascript.0 Start javascript script.js.Ereignisse.Erstellt_Ereignislisten
          15.8.2019, 11:16:56.496	[error]: javascript.0 script.js.Ereignisse.Erstellt_Ereignislisten compile failed:
          at script.js.Ereignisse.Erstellt_Ereignislisten:140
          15.8.2019, 11:17:41.090	[info ]: javascript.0 Stop script script.js.Ereignisse.Erstellt_Ereignislisten
          15.8.2019, 11:17:41.101	[info ]: javascript.0 Start javascript script.js.Ereignisse.Erstellt_Ereignislisten
          15.8.2019, 11:17:41.101	[error]: javascript.0 script.js.Ereignisse.Erstellt_Ereignislisten compile failed:
          at script.js.Ereignisse.Erstellt_Ereignislisten:140
          

          Zeile 140:

          for (var i=0; i<this.length; i++)/if/(a="==" this[i])/return/true/false/}/function/makejsonarr()/{/for/(var/liste/in/listenjson)/jsonarr[liste]="readListEvent(pfad+liste+&quot;.eventlistArr&quot;);" datenpunkte/für/die/eventlisten/anlegen/dpanlegen(callback)/var/stateliste="[];" zeitstempel="listenJson[liste].zeitstempel;" (typeof/"undefined")/hier/wird/als/array/angelegt/stateliste.push({id:/pfad+liste+".eventlistarr",/val:formatdate(new/date(),/zeitstempel)/+/trennerzeitstempel/'datenpunkt/angelegt',/write:/false});/string/mit/\n/pfad+liste+".eventliststr",/val:"",/html-string/<br="">\n für VIS
          

          Bin wieder zurück auf die 0.2.2

          1 Reply Last reply Reply Quote 0
          • a200
            a200 last edited by

            @sigi234 sagte in [Vorlage] Multi Ereignislisten Skript:

            Bin wieder zurück auf die 0.2.2

            geht die 0.3.0er bei dir nicht? bei mir flutscht das Ding wie sonst was.

            sigi234 1 Reply Last reply Reply Quote 0
            • sigi234
              sigi234 Forum Testing Most Active @a200 last edited by

              @a200 sagte in [Vorlage] Multi Ereignislisten Skript:

              @sigi234 sagte in [Vorlage] Multi Ereignislisten Skript:

              Bin wieder zurück auf die 0.2.2

              geht die 0.3.0er bei dir nicht? bei mir flutscht das Ding wie sonst was.

              Geht bei mir nicht. .

              1 Reply Last reply Reply Quote 0
              • M
                martinschm last edited by

                Hi,
                ich würde die Listen gerne unter meinen eigenen Datenpunkten (Ordner der auf der obersten Ebene liegt und Datenpunkte.0 heißt) anlegen lassen und nicht unter javascript.0

                Kann ich das in den Skript irgendwie anpassen ?

                arteck 1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active @martinschm last edited by

                  @martinschm lass die lieber da .. eigenen Datenpunkte sollten nicht im einzelnen eigen angelegten Datenbaum liegen

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    martinschm @arteck last edited by

                    Hi @arteck, was ist der Grund dafür ?

                    Hab zwei javascript Instanzen, eine auf der ich Skripte teste und eine wo die produktiven laufen. Dachte wenn ich teste und der Adapter mal abstürzt läuft der Rest trotzdem weiter.

                    Daher schien es mir klug, die Datenpunkte unabhängig vom Adapter abzulegen

                    arteck 1 Reply Last reply Reply Quote 1
                    • arteck
                      arteck Developer Most Active @martinschm last edited by

                      @martinschm ja es ist so..die instanzen laufen unabhängig voneinander.. stürtzt die eine ab läuft der rest weiter...

                      ich lege die Datenpunkte so wie ich die Brauche .. die Instazen könne untereinander auf diese zugreifen

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        martinschm @arteck last edited by

                        @arteck said in [Vorlage] Multi Ereignislisten Skript:

                        @martinschm ja es ist so..die instanzen laufen unabhängig voneinander.. stürtzt die eine ab läuft der rest weiter...

                        ich lege die Datenpunkte so wie ich die Brauche .. die Instazen könne untereinander auf diese zugreifen

                        Danke für dein Feedback. Aus Neugierde würde mich aber interessieren, warum die Datenpunkte unterhalb des javascript Adapters bleiben sollen. Lerne gern dazu, mir leuchtet das aber noch nicht ein.

                        arteck 1 Reply Last reply Reply Quote 1
                        • arteck
                          arteck Developer Most Active @martinschm last edited by

                          @martinschm na ja.. es kann sein (auch wen ndie warscheinlichkeit klein ist ) das jemand einen Adapter Entwickelt der genaus so heisst wie deine Hauptstruktur.. jetzt wird der Adapter installiert und dieser zerhaut dir die komplette Struktur..

                          siggi85 1 Reply Last reply Reply Quote 0
                          • siggi85
                            siggi85 @arteck last edited by

                            Ich selbst nutze eine Struktur namens "custom" und habe da alles drunter. Bis auf die Ereignislisten und den speedtest des Internetanschlusses. Das habe ich allerdings nur unter javascript, weil ich den Aufwand geschäut habe und in JS nicht ganz auf der Höhe bin. Sollte eine Version erscheinen, wo ich die Ordnerstruktur anhand von bspw. Variablen selber festlegen könnte, wäre auch ich nicht abgeneigt. 🙂

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              martinschm @siggi85 last edited by

                              @siggi85 said in [Vorlage] Multi Ereignislisten Skript:

                              Ich selbst nutze eine Struktur namens "custom" und habe da alles drunter. Bis auf die Ereignislisten und den speedtest des Internetanschlusses. Das habe ich allerdings nur unter javascript, weil ich den Aufwand geschäut habe und in JS nicht ganz auf der Höhe bin. Sollte eine Version erscheinen, wo ich die Ordnerstruktur anhand von bspw. Variablen selber festlegen könnte, wäre auch ich nicht abgeneigt. 🙂

                              Ich hab mir jetzt per Skript die Listen anlegen lassen, hab sie dann als json exportiert. Das json dann angepasst (suchen ersetzen) und wieder importiert. Der Rest läuft dann anscheinen.

                              Das Erstellen lässt sich leider nicht anpassen, da createState immer unterhalb des javascript Ordners anlegt.

                              1 Reply Last reply Reply Quote 0
                              • Nashra
                                Nashra Most Active Forum Testing last edited by

                                Erstmal Danke für das tolle Script 👍
                                Jetzt zu meiner Frage wobei ich sagen muß das ich von js absolut keinen Plan habe.
                                Wie kann ich die Ausgabe farbig machen d.h. der Text "Flurheizung ausgeschaltet" z.B. in rot
                                und "eingeschaltet" in grün

                                var idFlurheizung   = "shelly.0.SHSW-1#55E0BB#1.Relay0.Switch";
                                
                                on({id:idFlurheizung,change:'ne'}, function (obj) {
                                    if (obj.state.val) {
                                        event('**Flurheizung eingeschaltet** ');
                                    } else {
                                        event('Flurheizung ausgeschaltet ');
                                    }
                                });
                                
                                a200 1 Reply Last reply Reply Quote 0
                                • a200
                                  a200 @Nashra last edited by a200

                                  @Nashra sagte in [Vorlage] Multi Ereignislisten Skript:

                                  Erstmal Danke für das tolle Script 👍
                                  Jetzt zu meiner Frage wobei ich sagen muß das ich von js absolut keinen Plan habe.
                                  Wie kann ich die Ausgabe farbig machen d.h. der Text "Flurheizung ausgeschaltet" z.B. in rot
                                  und "eingeschaltet" in grün

                                  event("heizung aus", "default", red);
                                  oder
                                  event("heizung an", "default", "#00ff00");

                                  Nashra 1 Reply Last reply Reply Quote 1
                                  • Nashra
                                    Nashra Most Active Forum Testing @a200 last edited by

                                    @a200 sagte in [Vorlage] Multi Ereignislisten Skript:

                                    @Nashra sagte in [Vorlage] Multi Ereignislisten Skript:

                                    Erstmal Danke für das tolle Script 👍
                                    Jetzt zu meiner Frage wobei ich sagen muß das ich von js absolut keinen Plan habe.
                                    Wie kann ich die Ausgabe farbig machen d.h. der Text "Flurheizung ausgeschaltet" z.B. in rot
                                    und "eingeschaltet" in grün

                                    Klappt so leider nicht

                                    event("Flurheizung ausgeschaltet", "default", red);

                                    hier kommen Fehlermeldungen im Log das die Farbe nicht definiert ist

                                    oder
                                    event("Flurheizung ausgeschaltet", "default", "#00ff00");

                                    hier keine Fehler, aber der Text ist nicht farbig

                                    a200 1 Reply Last reply Reply Quote 0
                                    • a200
                                      a200 @Nashra last edited by a200

                                      @Nashra jetzt habe ich nachgeschaut. Aus dem original Event-Skript:

                                      // Beispiele zur Anwendung in den eigenen Skripten:
                                      //
                                      // event("Tür geöffnet");  // erstellt einen Eintrag "Tür geöffnet" in der default-Liste
                                      // event("neue externe IP-Adresse","wichtig"); // erstellt einen Eintrag "neue externe IP-Adresse" in der Liste "wichtig"
                                      // event("Alarm ausgelöst"),["wichtig","default"],"rot"); // erstellt einen Eintrag "Alarm ausgelöst" in den Listen wichtig und default in der html-Farbe rot.
                                      

                                      wobei aus meiner Sicht hier ein Fehler vorliegt und es sollte heißen:

                                      event("Alarm ausgelöst",["wichtig","default"],"rot");
                                      

                                      oder

                                      event("Alarm ausgelöst", "default", "#ff00ff");
                                      

                                      wo die Farbe als RGB in hex angegeben wird funktioniert auch.

                                      1 Reply Last reply Reply Quote 1
                                      • Nashra
                                        Nashra Most Active Forum Testing last edited by

                                        Hm erstmal Danke für deine Hilfe aber irgendwie will das bei mir nicht.
                                        Welches Widget nutzt Du für die html Ausgabe?
                                        Habe basic-html und dort {javascript.0.Ereignisliste.default.eventlistHTML} eingetragen.
                                        Es wird zwar alles angezeigt aber eben nur in weißer Schrift.

                                        a200 1 Reply Last reply Reply Quote 0
                                        • a200
                                          a200 @Nashra last edited by

                                          @Nashra sagte in [Vorlage] Multi Ereignislisten Skript:

                                          Hm erstmal Danke für deine Hilfe aber irgendwie will das bei mir nicht.
                                          Welches Widget nutzt Du für die html Ausgabe?
                                          Habe basic-html und dort {javascript.0.Ereignisliste.default.eventlistHTML} eingetragen.
                                          Es wird zwar alles angezeigt aber eben nur in weißer Schrift.

                                          Schick mal bitte den Inhalt des DP.

                                          1 Reply Last reply Reply Quote 0
                                          • Nashra
                                            Nashra Most Active Forum Testing last edited by Nashra

                                            Keine Farbangaben drin, irgendwas stimmt da nicht

                                            08.12. 12:01 Küchenlicht ausgeschaltet<br>08.12. 12:01 **Küchenlicht eingeschaltet**<br>08.12. 12:00 Flurlicht ausgeschaltet<br>08.12. 12:00 **Flurlicht eingeschaltet**<br>08.12. 11:53 Flurlicht ausgeschaltet<br>08.12. 11:51 **Flurlicht eingeschaltet**<br>08.12. 11:51 Küchenlicht ausgeschaltet<br>08.12. 11:45 **Küchenlicht eingeschaltet**<br>08.12. 11:37 Flurlicht ausgeschaltet<br>08.12. 11:37 **Flurlicht eingeschaltet**<br>08.12. 11:34 Flurlicht ausgeschaltet<br>08.12. 11:34 **Flurlicht eingeschaltet**<br>08.12. 11:34 Flurlicht ausgeschaltet<br>08.12. 11:32 **Flurlicht eingeschaltet**<br>08.12. 11:21 Küchenlicht ausgeschaltet<br>08.12. 11:20 **Küchenlicht eingeschaltet**<br>08.12. 10:44 Wäschelicht ausgeschaltet <br>08.12. 10:44 **Wäschelicht eingeschaltet** <br>08.12. 10:43 Küchenlicht ausgeschaltet<br>08.12. 10:42 **Küchenlicht eingeschaltet**<br>08.12. 10:40 Flurlicht ausgeschaltet<br>08.12. 10:40 Küchenlicht ausgeschaltet<br>08.12. 10:38 **Küchenlicht eingeschaltet**<br>08.12. 10:32 **Flurlicht eingeschaltet**<br>08.12. 10:25 Wäschelicht ausgeschaltet <br>08.12. 10:25 Flurlicht ausgeschaltet<br>08.12. 10:25 **Flurlicht eingeschaltet**<br>08.12. 10:24 **Wäschelicht eingeschaltet** <br>08.12. 10:17 Flurlicht ausgeschaltet<br>08.12. 10:17 **Flurlicht eingeschaltet**<br>08.12. 10:17 Flurlicht ausgeschaltet<br>08.12. 10:13 **Flurlicht eingeschaltet**<br>08.12. 10:04 Küchenlicht ausgeschaltet<br>08.12. 10:04 **Küchenlicht eingeschaltet**<br>08.12. 09:59 Küchenlicht ausgeschaltet<br>08.12. 09:59 **Küchenlicht eingeschaltet**<br>08.12. 09:53 Küchenlicht ausgeschaltet <br>08.12. 09:53 **Küchenlicht eingeschaltet** <br>08.12. 09:22 **Küchenlicht eingeschaltet** <br>08.12. 08:59 Küchenlicht ausgeschaltet <br>08.12. 08:53 **Küchenlicht eingeschaltet** <br>08.12. 00:00 ##### Sonntag, den 08.12.2019 #####<br>07.12. 23:10 Küchenlicht ausgeschaltet <br>07.12. 23:07 **Küchenlicht eingeschaltet** <br>07.12. 23:03 Flurlicht ausgeschaltet <br>07.12. 23:03 **Flurlicht eingeschaltet** <br>07.12. 23:03 Küchenlicht ausgeschaltet <br>07.12. 23:00 **Küchenlicht eingeschaltet** <br>07.12. 22:55 Wäschelicht ausgeschaltet <br>07.12. 22:51 Küchenlicht ausgeschaltet 
                                            

                                            Kann es vllt an den Scripten liegen, in global ist es die 0.3.0 und unter common die 0.2.3

                                            a200 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript template
                                            28
                                            112
                                            16918
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo