Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Vorlage] Generisches Fensteroffenskript + Vis

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Generisches Fensteroffenskript + Vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Pittini Developer @dodi666 last edited by

      @dodi666 sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

      Deine Antworten lesen sich so, als würdest du dich persönlich angegriffen fühlen.

      Sorry, sollte nicht so rüberkommen, wenngleich, bedenke bitte ich krieg auch Wünsche per PM, FB, Git usw. Und wenn ich zu drölfzigten mal mich über die Türgeschichte auslassen muss, wurde es halt mal etwas harscher. Nicht persönlich gemeint.

      D 1 Reply Last reply Reply Quote 0
      • D
        dodi666 @Pittini last edited by

        @Pittini Na dann, bin ich ja nicht alleine mit meinem Wunsch 🙂

        1 Reply Last reply Reply Quote 0
        • B
          Bibo*13 last edited by

          Hi Pittini, danke für das skript. Superjob
          Ich habe nur ein Problem. Wenn ich SendWarnMsg von true auf false setzen möchte verweigert er mir das. Er macht also garnix und lässt hartnäckig true drinn stehen. Woran kann das liegen?

          B 1 Reply Last reply Reply Quote 0
          • B
            Bibo*13 @Bibo*13 last edited by

            @Bibo-13 Ok. nehme die Frage zurück. Nach Iobroker restart klappt alles. Sorry

            1 Reply Last reply Reply Quote 0
            • E
              e-i-k-e last edited by

              Hallo,

              Ich erhalte immer folgende Meldungen im log.

              javascript.0	2020-05-12 06:40:29.436	error	(354) at processTimers (internal/timers.js:492:7)
              javascript.0	2020-05-12 06:40:29.435	error	(354) at listOnTimeout (internal/timers.js:551:17)
              javascript.0	2020-05-12 06:40:29.435	error	(354) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1983:34)
              javascript.0	2020-05-12 06:40:29.435	error	(354) at Object.<anonymous> (script.js.common.Fensterauswertung:520:73)
              javascript.0	2020-05-12 06:40:29.435	error	(354) at Meldung (script.js.common.Fensterauswertung:206:21)
              javascript.0	2020-05-12 06:40:29.435	error	(354) Error in callback: ReferenceError: Say is not defined
              javascript.0	2020-05-12 06:40:29.434	info	(354) script.js.common.Fensterauswertung: Reaching Meldung, msg= Schlafzimmerfenster seit 10 Stunden 43 Minuten geöffnet!
              javascript.0	2020-05-12 06:40:29.414	error	(354) at processTimers (internal/timers.js:492:7)
              javascript.0	2020-05-12 06:40:29.414	error	(354) at listOnTimeout (internal/timers.js:551:17)
              javascript.0	2020-05-12 06:40:29.414	error	(354) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1983:34)
              javascript.0	2020-05-12 06:40:29.414	error	(354) at Object.<anonymous> (script.js.common.Fensterauswertung:520:73)
              javascript.0	2020-05-12 06:40:29.414	error	(354) at Meldung (script.js.common.Fensterauswertung:206:21)
              javascript.0	2020-05-12 06:40:29.414	error	(354) Error in callback: ReferenceError: Say is not defined
              

              Wo liegt bei mir der Fehler?

              K 1 Reply Last reply Reply Quote 0
              • K
                kilasat @e-i-k-e last edited by

                @e-i-k-e

                6eb33034-1bbc-4659-92ea-f56436927530-image.png

                stelle die Funktion mal auf false, siehe Bild.

                1 Reply Last reply Reply Quote 0
                • E
                  e-i-k-e last edited by

                  Ist deaktiviert, nutze diese Funktion auch gar nicht.
                  Verwende nur die Kombination mit Telegramm.

                  P 1 Reply Last reply Reply Quote 0
                  • P
                    Pittini Developer @e-i-k-e last edited by

                    @e-i-k-e sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                    Ist deaktiviert, nutze diese Funktion auch gar nicht.

                    Ich würde @e-i-k-e zustimmen wollen. Zeig mal Deine Skripteinstellungen.

                    AxelF1977 1 Reply Last reply Reply Quote 0
                    • AxelF1977
                      AxelF1977 @Pittini last edited by AxelF1977

                      @Pittini ich bekomme im Script folgende Fehlermeldungen

                      20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
                      20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
                      20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
                      20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
                      20:27:29.302 error javascript.0 (23702) at main (script.js.Fenster.Alle.Fensteroffenerkennung:198:5)
                      20:27:29.302 error javascript.0 (23702) at Object.<anonymous> (script.js.Fenster.Alle.Fensteroffenerkennung:161:13)

                      Im Script selber habe ich nichts verändert, außer in Zeile 22 UseSay zu deaktiveren.

                      Vor 5 min auf Git gezogen

                      Daher sehe ich nicht in VIS, und aktualisieren tut er Stati auch nicht

                      Dominik F. 1 Reply Last reply Reply Quote 0
                      • Dominik F.
                        Dominik F. @AxelF1977 last edited by

                        @AxelF1977

                        Nur um folgendes auszuschließen:

                        Wenn noch nicht geschehen, allen gewünschten Sensoren einen Raum und eine Funktion zuweisen. Die Funktion muss vorher in den Aufzählungen hinzugefügt werden und könnte z.B. "Verschluss" lauten. Soll ein anderer Begriff verwendet werden, muss dies dann auch im Script, Zeile 11 geändert werden. Nach der Zuweisung, bzw. dem anlegen neuer Aufzählungspunkte ist es oft hilfreich die JS Instanz neu zu starten da diese bei Aufzählungsänderungen gerne mal "zickt" was dann zu Skriptfehlern führt.

                        Hast du das bei dir eingestellt und befolgt?

                        AxelF1977 1 Reply Last reply Reply Quote 0
                        • AxelF1977
                          AxelF1977 @Dominik F. last edited by AxelF1977

                          @Dominik-F alle Sensoren haben die Funktion Verschluss, aber auch noch 2 weiter, für andere Scripte. Die sind auch in den Aufzählungen, das passt.

                          Die Instanz wurde 1x neu und das Script selber 4x neu gestartet.

                          Die Ordnerstrucktur wurde im Javascripm Ordner auch anglegt, hier mal Auszüge

                          ebc0c06b-cc51-4e76-ad29-961c7666b5db-image.png
                          c7592d80-c9b7-4de1-bdd4-1f4ebeffef57-image.png

                          P 1 Reply Last reply Reply Quote 0
                          • P
                            Pittini Developer @AxelF1977 last edited by

                            @AxelF1977 Ein Raum namens undefined läßt auf einen nicht zugeweisen Raum, aber zugeordnetem Verschluss schließen. Um mehr zu sagen mußt mir die Infos geben die ich jedem immer aus der Nase ziehen muß.
                            Was steht im Skriptlog? Wie sieht die Zuordnung der Funktion und Räume in der Objektliste aus? Welche Einstellungen sind im Skript? Wann tritt der Fehler auf, bei Start oder wenn ne Nachricht geschickt wird?
                            Du kannst versuchsweise mal den kompletten Skriptchannel löschen. Wird er wieder mit nem undefined Raum angelegt, dann kontrollier Deine Raumzuweisungen. Wenn Du der Meinung bist das da alles paßt, dann melde Dich mit obengenannten Infos wieder.

                            AxelF1977 1 Reply Last reply Reply Quote 0
                            • AxelF1977
                              AxelF1977 @Pittini last edited by AxelF1977

                              @Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
                              Um mehr zu sagen mußt mir die Infos geben die ich jedem immer aus der Nase ziehen muß.

                              Was steht im Skriptlog?

                              Musst Du doch gar nicht, stand doch schon weiter oben

                              Log vom Script (unterhalb)

                              @Pittini ich bekomme im Script folgende Fehlermeldungen

                              20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
                              20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
                              20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
                              20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
                              20:27:29.302 error javascript.0 (23702) at main (script.js.Fenster.Alle.Fensteroffenerkennung:198:5)
                              20:27:29.302 error javascript.0 (23702) at Object.<anonymous> (script.js.Fenster.Alle.Fensteroffenerkennung:161:13)

                              Im Script selber habe ich nichts verändert, außer in Zeile 22 UseSay zu deaktiveren.

                              Vor 5 min auf Git gezogen

                              Daher sehe ich nichts in VIS, und aktualisieren tut er Stati auch nicht

                              @Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                              @AxelF1977 Ein Raum namens undefined läßt auf einen nicht zugeweisen Raum, aber zugeordnetem Verschluss schließen. Um mehr zu sagen mußt mir die Infos geben die ich jedem immer aus der Nase ziehen muß.
                              Was steht im Skriptlog? Wie sieht die Zuordnung der Funktion und Räume in der Objektliste aus?

                              ff8da450-12e6-4a0c-8f86-1a8c6615817f-image.png

                              @Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                              Welche Einstellungen sind im Skript?

                              Im Script selber habe ich nichts verändert, außer in Zeile 22 UseSay zu deaktiveren. Der Fehler tritt im Log laufend auf, also immer wenn das Script durch läuft.

                              Der Raum namens undefines kann 2 Gründe haben. Einmal gibt es eine Dachlucke, wo ich den State per Skript erzeuge, aus der Prozentangabe des Schalters, der ein Rolladenschalter ist, de rhat von hause aus keinen state (false/true), sondern level 0-100%

                              3e7d8915-1eef-4c47-b4ac-40b0c8b87bf3-image.png

                              Der Raum Küche heißt einmal Küche, einmal Kitchen. Wegen einem anderen Skript, muss ich das leider so beibehalten. Zumindest bis ich das Script Heizung gegen den Adapter tausche.

                              Das ist die Lage

                              P 1 Reply Last reply Reply Quote 0
                              • P
                                Pittini Developer @AxelF1977 last edited by Pittini

                                @AxelF1977 sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                                Musst Du doch gar nicht, stand doch schon weiter oben
                                Log vom Script (unterhalb)

                                Da muß doch mehr stehen als diese 6 Zeilen, ich brauch das ganze Log, nicht nur den Fehlerteil. Am besten das Log beim Skriptstart. Und wenn da was rotes oder gelbes auftaucht (was ja der Fall ist), das Iobroker Log dazu.

                                Der Raum namens undefines kann 2 Gründe haben. Einmal gibt es eine Dachlucke, wo ich den State per Skript erzeuge, aus der Prozentangabe des Schalters, der ein Rolladenschalter ist, de rhat von hause aus keinen state (false/true), sondern level 0-100%

                                Ist dem Skript egal wie der State erzeugt wird. Wohin schreibt das Skript denn den Wert? Is das eingesonderter DP im javascript.0 channel? Wenn ja, zeig mal das ganze als Screenshot inkl. des/der darüberliegenden Channels und inkl. der rechten Spalten mit Bleistift/Mülleimer/Schraubenschlüssel, ich hab so den Verdacht dasses da hängt.

                                Und wenn Du schon selber sagst dasses zwei Gründe haben kann, dann verifizier das doch mal indem Du einen mal den "Verschluss" wegnimmst und dann dem 2ten. Wo der Fehler dann weg ist, das ist der Bösewicht und man kann da gezielter Ursachenforschung betreiben.

                                AxelF1977 1 Reply Last reply Reply Quote 1
                                • AxelF1977
                                  AxelF1977 @Pittini last edited by

                                  @Pittini danke für die Ausführliche Antwort. Ich werde alles nach dem Feierabend einstellen.

                                  Danke

                                  AxelF1977 1 Reply Last reply Reply Quote 0
                                  • AxelF1977
                                    AxelF1977 @AxelF1977 last edited by

                                    @Pittini ich habe jetzt mal alle Räume und Funktionen bereinigt.

                                    Das war alles murks. Da ich nun auf den Heatingcontroll Adapter umgestiegen bin, der jetzt läuft, konnte ich die Benennung von Küche und Kitchen ändern. Ich habe die Funktionen teils über den ganzen Raum gehabt, anstatt nur bei dem einzelnen Datenpunkt.

                                    Nachdem das alles geschehen war, läuft das Script.

                                    Danke für die Denkanstöße und die unermüdliche Hilfe.

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      kilasat last edited by

                                      @Pittini habe eben den JS Adapter upgadeted und seit dem kommen die Öffnungszeiten anders als früher:

                                      neu
                                      60d1d028-1b16-4cad-99bf-87a495255293-grafik.png

                                      früher

                                      e14ad358-6dc8-4697-bea3-92547f080c8c-grafik.png

                                      P 1 Reply Last reply Reply Quote 0
                                      • P
                                        Pittini Developer @kilasat last edited by

                                        @kilasat sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                                        habe eben den JS Adapter upgadeted und seit dem kommen die Öffnungszeiten anders als früher:

                                        Ja, normal wenn die Fenster bei Skriptstart schon offen waren nimmt er den Zeitstempel und macht seine 3 Meldungen oder was Du halt eingestellt hast mit den korrekten Daten. Its not a Bug, its a Feature.

                                        K 1 Reply Last reply Reply Quote 2
                                        • K
                                          kilasat @Pittini last edited by

                                          @Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                                          @kilasat sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                                          habe eben den JS Adapter upgadeted und seit dem kommen die Öffnungszeiten anders als früher:

                                          Ja, normal wenn die Fenster bei Skriptstart schon offen waren nimmt er den Zeitstempel und macht seine 3 Meldungen oder was Du halt eingestellt hast mit den korrekten Daten. Its not a Bug, its a Feature.

                                          Ja perfekt. Hat brav aufgehört und läuft wie ein Uhrwerk.

                                          1 Reply Last reply Reply Quote 0
                                          • A
                                            al-79 last edited by

                                            @Pittini
                                            Moin Moin,
                                            ich lese gerade dieses Script von Beitrag 1 bis jetzt 167 durch.
                                            Habe selbst dieses Script noch in Testnutzung. Testnutzung weil ich eigentlich zwei Bereiche separat abdecken möchte:
                                            1x Obergeschoss und 1x ALLE Kontakte zusammen.
                                            Heißt Script1 nur die OG's und Script2 alle Kontakte (EG, OG, Anbauten, Garage etc etc) - genutzt werden ausschließlich die Kontakte von Homematic.
                                            Das Script1 (OG) funktioniert nun endlich... Ich musste jeden Kontakt im ioBorker von Hand anpassen, da die Räume immer Chanel-weise zugeordnet wurden und nicht nur der eigentliche Kontakt - egal sei's drum Script1 = OK 🤘

                                            Nun zum Problemkind Script2
                                            Hier wird immer ein altes CuxD-Gerät gemeldet, welches sich weder auf der CCU3 noch im ioBroker-Adapter von Homematic zu finden lässt.

                                            2.6.2020, 14:09:31.389	[info ]: javascript.0 (840) script.js.home.Fensterscript-v2-all: getObject(id=hm-rpc.1.CUX2801002.13, enumName=rooms) => does not exist
                                            2.6.2020, 14:09:31.391	[error]: javascript.0 (840) script.js.home.Fensterscript-v2-all: script.js.home.Fensterscript-v2-all:103
                                            2.6.2020, 14:09:31.391	[error]: javascript.0 (840)     at script.js.home.Fensterscript-v2-all:103:57
                                            

                                            Wie gesagt es gibt kein CUX2801002.xx-Gerät.
                                            2020-06-02_143714.png

                                            Zu meinem Aufbau:

                                            • Kontakte im OG gehören den Räumen TFK-OG und TFK-Alle an
                                            • Kontakte im EG gehören den Räumen TFK-EK und TFK-Alle an
                                            • ioBroker läuft in ESXi-VM mit 8GB auf nem Intel i3
                                            • Homematic in eine RaspberryMatic auf CCU3-Basis

                                            Frage:
                                            Kann ich überhaupt zwei Script-Instanzen diese Scriptes laufen lassen?
                                            Wieso könnte sich das Script an einem nicht vorhandenen Gerät aufhängen?

                                            Grüße al-79

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            543
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            768
                                            175392
                                            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