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.
    • B
      Besserso last edited by

      vielen Dank für das tolle Script. Ich habe nun beide Scripte in mein System kopiert. Das Globale Script läuft auch, aber das Allgemeine Script hat bei mir auch den Fehler in Zeile 140. Welcher hier schon öfters angesprochen wurde. Liegt der Fehler im Kopieren? Was muss ich in der Zeile ändern damit es läuft?

      1 Reply Last reply Reply Quote 0
      • L
        Lachi last edited by Lachi

        Könnte jemand das 0.2.2 Skript hier reinstellen. Bei mir läuft das 0.2.3 auch nicht wegen Zeile 140.

        error	javascript.0 script.js.common.Ereignisliste compile failed: at script.js.common.Ereignisliste:140
        

        Anbei die Log datei,


        javascript.0 2020-02-06 12:30:54.539 error at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
        javascript.0 2020-02-06 12:30:54.538 error at Socket.Readable.push (_stream_readable.js:224:10)
        javascript.0 2020-02-06 12:30:54.538 error at readableAddChunk (_stream_readable.js:269:11)
        javascript.0 2020-02-06 12:30:54.538 error at addChunk (_stream_readable.js:288:12)
        javascript.0 2020-02-06 12:30:54.538 error at Socket.emit (events.js:198:13)
        javascript.0 2020-02-06 12:30:54.537 error at Socket.realHandler (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/WebSocket.js:825:20)
        javascript.0 2020-02-06 12:30:54.537 error at Receiver.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:103:24)
        javascript.0 2020-02-06 12:30:54.537 error at Receiver.expectHandler (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:499:31)
        javascript.0 2020-02-06 12:30:54.536 error at Receiver.finish (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:541:12)
        javascript.0 2020-02-06 12:30:54.536 error at Receiver.flush (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:347:3)
        javascript.0 2020-02-06 12:30:54.535 error at /opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:508:14
        javascript.0 2020-02-06 12:30:54.535 error at Receiver.applyExtensions (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:371:5)
        javascript.0 2020-02-06 12:30:54.535 error at /opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:536:18
        javascript.0 2020-02-06 12:30:54.535 error at Receiver.ontext (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/WebSocket.js:841:10)
        javascript.0 2020-02-06 12:30:54.534 error at WebSocket.emit (events.js:198:13)
        javascript.0 2020-02-06 12:30:54.534 error at WebSocket.onMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/node_modules/ws/lib/WebSocket.js:442:14)
        javascript.0 2020-02-06 12:30:54.534 error at WebSocket.ws.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transports/websocket.js:146:10)
        javascript.0 2020-02-06 12:30:54.533 error at WS.Transport.onData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:137:8)
        javascript.0 2020-02-06 12:30:54.533 error at WS.Transport.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:145:8)
        javascript.0 2020-02-06 12:30:54.532 error at WS.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        javascript.0 2020-02-06 12:30:54.532 error at WS.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:268:10)
        javascript.0 2020-02-06 12:30:54.532 error at Socket.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:451:14)
        javascript.0 2020-02-06 12:30:54.531 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        javascript.0 2020-02-06 12:30:54.531 error at Socket.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
        javascript.0 2020-02-06 12:30:54.531 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:322:16)
        javascript.0 2020-02-06 12:30:54.530 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:246:12)
        javascript.0 2020-02-06 12:30:54.530 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
        javascript.0 2020-02-06 12:30:54.529 error at Decoder.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
        javascript.0 2020-02-06 12:30:54.529 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:332:8)
        javascript.0 2020-02-06 12:30:54.528 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        javascript.0 2020-02-06 12:30:54.528 error at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
        javascript.0 2020-02-06 12:30:54.528 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:236:12)
        javascript.0 2020-02-06 12:30:54.527 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:312:9)
        javascript.0 2020-02-06 12:30:54.527 error at Socket.adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:745:17)
        javascript.0 2020-02-06 12:30:54.526 error at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1123:17)
        javascript.0 2020-02-06 12:30:54.526 error at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1070:37)
        javascript.0 2020-02-06 12:30:54.525 error at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:878:28)
        javascript.0 2020-02-06 12:30:54.525 error at Object.createScript (vm.js:277:10)
        javascript.0 2020-02-06 12:30:54.524 error at new Script (vm.js:83:7)
        javascript.0 2020-02-06 12:30:54.524 error SyntaxError: missing ) after argument list
        javascript.0 2020-02-06 12:30:54.523 error ^^^^
        javascript.0 2020-02-06 12:30:54.523 error 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+".eventlistArr")
        javascript.0 2020-02-06 12:30:54.523 error script.js.common.Ereignisliste compile failed: at script.js.common.Ereignisliste:140
        javascript.0 2020-02-06 12:30:54.522 info Start javascript script.js.common.Ereignisliste

        IM POST 64 KANN MAN DAS FUNKTIONIERENDE SKRIPT LADEN.

        1 Reply Last reply Reply Quote 1
        • B
          Besserso @RK62 last edited by

          @RK62 said in [Vorlage] Multi Ereignislisten Skript:

          Ich hatte das Skript für mich angepasst und habe versucht die Ursprungsversion wieder herzustellen.
          Siehe Anlage: AdapterEventList.js und hier die globale Funktion: global.js
          Und hier als zip: EventList.zip

          Gruß, Ralf

          Konnte damit meine Scriptfehler (Zeile 140) beheben. Vielen Dank!!!

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

            Hat zufälligerweise schon jemand dieses Script so umgebaut, dass man die Datenpunkte auch unter 0_userdata.0 statt unter javascript.0 anlegen kann?

            (Bin gerade am Umstellen meiner Scripte).

            siggi85 B 2 Replies Last reply Reply Quote 1
            • siggi85
              siggi85 @maeb3 last edited by

              @maeb3 sagte in [Vorlage] Multi Ereignislisten Skript:

              Hat zufälligerweise schon jemand dieses Script so umgebaut, dass man die Datenpunkte auch unter 0_userdata.0 statt unter javascript.0 anlegen kann?

              (Bin gerade am Umstellen meiner Scripte).

              Noch besser wäre ein eigener Adapter, aber das wäre auch schon sehr nützlich. 😊👍

              1 Reply Last reply Reply Quote 0
              • B
                baennjer @maeb3 last edited by baennjer

                @maeb3
                Ich habe mich jetzt mal bisschen näher mit dem Script beschäftigt und habe es auf 0_userdata.0. umgestellt.
                Man muss im globalen und im eigentlichen Script was umstellen.
                Im globalen Script die Variable defaultPfad umstellen:

                var defaultPfad         = "0_userdata.0.Ereignisliste.";
                

                Und im eigentlichen Script die Variable Pfad auf genau den gleichen Zweig umstellen:

                var pfad                = "0_userdata.0.Ereignisliste.";
                

                Läuft bis jetzt fehlerfrei.

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

                  Hi,

                  seid dem Admin Update auf 5 kommt bei mir immer im Log folgende Warnung
                  Read-only state "javascript.0.Ereignisliste.Licht.event" has been written without ack-flag with value "Ku Led Aus"

                  Weiß einer welsche Zeile ich anpassen muss damit nicht immer diese Fehlermeldung kommt.

                  Vielen Dank vorab

                  1 Reply Last reply Reply Quote 0
                  • hg6806
                    hg6806 Most Active last edited by

                    Auch ich habe hier die Fehlermeldungen.
                    Gibt es da einen workaround?

                    RK62 1 Reply Last reply Reply Quote 0
                    • RK62
                      RK62 @hg6806 last edited by

                      @hg6806 @MadTrinity
                      In der function dpAnlegen(callback) muss überall write: false raus genommen werden.

                      // VOR ÄNDERUNG:
                      stateListe.push({id: pfad+liste+".eventlistStr", val:"", write: false});
                      // NACH ÄNDERUNG:
                      stateListe.push({id: pfad+liste+".eventlistStr", val:""});
                      

                      Das wirkt sich allerdings erst bei der Neuanlage von Listen aus. Also entweder den Objektbaum löschen und neu anlegen lassen oder die States manuell korrigieren.

                      1 Reply Last reply Reply Quote 0
                      • Martin Blank
                        Martin Blank last edited by

                        Sehr geiles Script. Vielen dank schon mal.
                        Ich hab allerdings zwei fragen.

                        • Kann man events direkt aus dem ical Adapter nutzen?
                        • wie kann man in Blockly ein event erzeugen welches dann in einer liste auftaucht bin da in JS nicht so bewandert.
                        liv-in-sky 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @Martin Blank last edited by

                          @martin-blank
                          @hg6806 @MadTrinity

                          dafür gibt es doch mittlerweile den adapter ereignisliste (eventlist) - ist der nicht das richtige für eure zwecke

                          Martin Blank 1 Reply Last reply Reply Quote 0
                          • Martin Blank
                            Martin Blank @liv-in-sky last edited by

                            @liv-in-sky

                            Ja sehr gut. Hatte ich noch nicht gesehen. Werde ich mir gleich mal anschauen.
                            Kannst du mir denn trotzdem erklären, wie ich mit Hilfe von Blockly ein event erzeugen kann.

                            Lg Martin

                            liv-in-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @Martin Blank last edited by liv-in-sky

                              @martin-blank

                              eignetlich ungern

                              weil

                              das ganze arbeitet mit einem global script - d.h. jedes script bekommt das globale script angehängt, damit du in jedem script die möglichkeit hast, die event function aufzurufen

                              d.h. du mußt in jedem script, indem der wert (event) vorkommt, den event selbst erzeugen - in einem javascript oder einem blockly - das ist sehr aufwendig

                              der eventlist adapter kann einfach definiert werden - wenn ein wert geändert wird - dann schreibe den event - und dann ist es egal, in welchen scripten der wert vorkommt - du brauchst keinen block in einem script schreiben - das wird alles im eventlist adapter definiert

                              um eine globale function in einem blockly aufzurufen, benötigst du eine javascript function, die im blockly eingebunden ist - dh. du musst einen function block nehmen, definieren,. welche werte du übergeben willst und im function block wird dann event() aufgerufen - und das musst du in jedem script machen, indem der event vorkommen könnte - wie gesagt umständlich - aber als das script gemacht wurde, gab es den eventlist adapter nicht und daher war das gut gemacht

                              wenn du mit der zeit scripte anhäufst, wird die verwaltung der aufrufe der events unüberschaubar - kenn ich von einem anderen globalen script bei mir - zusätzlich: wenn das globale script einen fehler hat, wird dieser fehler in jedem script (da angehängt) ausgeführt - das führt leicht zu abstürzen des iob !!!

                              Martin Blank 1 Reply Last reply Reply Quote 0
                              • Martin Blank
                                Martin Blank @liv-in-sky last edited by

                                @liv-in-sky

                                Wow das nenn ich mal eine sehr gute Erklärung da.
                                Ok dann werde ich es weiter mit dem Adapter versuch.

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                905
                                Online

                                31.7k
                                Users

                                79.6k
                                Topics

                                1.3m
                                Posts

                                javascript template
                                28
                                112
                                17018
                                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