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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Generisches Fensteroffenskript + Vis

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

      @Pittini Ich habe nun von Max auf Homematic IP umgestellt, soweit alles angepasst und den Räumen und der Funktion hinzugefügt. Es funktioniert soweit auch alles. Aber in der Log kommt folgendes .

      warn	javascript.0 (657) script.js.VIS.Torstatus: Unknown Gatestate unknown detected at hm-rpc.0.00155A49A4F577.1.STATE, please check your configuration
      

      Wie bekomme ich das weg, oder wo liegt da der Fehler ? Das Script funktioniert auch in der VIS.

      8d8733cc-c896-4f7c-b645-b4c0872999e7-image.png

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

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

        Wie bekomme ich das weg, oder wo liegt da der Fehler ? Das Script funktioniert auch in der VIS.

        Evtl. weg nach JS Adapter neustart, mal versuchen pls.
        Die Meldung kommt aus der Extrawurstfunktion für HM Devices, offenbar hat er beim starten den Zustandstext nicht mitgekriegt. Zeig mal ein komplettes startlog bitte.

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

          @Pittini So das ist alles nach dem start.

          javascript.0	2020-09-26 17:34:47.754	info	(657) script.js.VIS.Torstatus: Reaching CreateRoomsWithVentWarnings
          javascript.0	2020-09-26 17:34:47.753	info	(657) script.js.VIS.Torstatus: RoomsWithTiltedGates: Keine Tor gekippt
          javascript.0	2020-09-26 17:34:47.753	info	(657) script.js.VIS.Torstatus: Reaching CreateRoomsWithTiltedGatesList
          javascript.0	2020-09-26 17:34:47.752	info	(657) script.js.VIS.Torstatus: RoomsWithOpenGates: Hoftor 1 offene Tor
          javascript.0	2020-09-26 17:34:47.751	info	(657) script.js.VIS.Torstatus: Reaching CreateRoomsWithOpenGatesList
          javascript.0	2020-09-26 17:34:47.745	info	(657) script.js.VIS.Torstatus: Reaching CreateRoomsWithVentWarnings
          javascript.0	2020-09-26 17:34:47.745	info	(657) script.js.VIS.Torstatus: Room 2 = kleine Garage is open or disabled, no vent warning set
          javascript.0	2020-09-26 17:34:47.745	info	(657) script.js.VIS.Torstatus: Reaching VentCheck x=2 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1601105662897
          javascript.0	2020-09-26 17:34:47.744	info	(657) script.js.VIS.Torstatus: Reaching CreateRoomsWithVentWarnings
          javascript.0	2020-09-26 17:34:47.744	info	(657) script.js.VIS.Torstatus: Room 1 = Garage is open or disabled, no vent warning set
          javascript.0	2020-09-26 17:34:47.744	info	(657) script.js.VIS.Torstatus: Reaching VentCheck x=1 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1601103785991
          javascript.0	2020-09-26 17:34:47.743	info	(657) script.js.VIS.Torstatus: Reaching CreateRoomsWithVentWarnings
          javascript.0	2020-09-26 17:34:47.742	info	(657) script.js.VIS.Torstatus: Room 0 = Hoftor is open or disabled, no vent warning set
          javascript.0	2020-09-26 17:34:47.741	info	(657) script.js.VIS.Torstatus: Reaching VentCheck x=0 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1601130787684
          javascript.0	2020-09-26 17:34:47.740	info	(657) script.js.VIS.Torstatus: Offene Tor gesamt= 1
          javascript.0	2020-09-26 17:34:47.739	info	(657) script.js.VIS.Torstatus: reaching CheckGates, SensorVal[2]=unknown SensorOldVal= TempRoom=kleine Garage
          javascript.0	2020-09-26 17:34:47.739	info	(657) script.js.VIS.Torstatus: Reaching GetRoom x=2
          javascript.0	2020-09-26 17:34:47.739	warn	(657) script.js.VIS.Torstatus: Unknown Gatestate undefined detected at hm-rpc.0.00155A49A4F577.1.STATE, please check your configuration
          javascript.0	2020-09-26 17:34:47.738	info	(657) script.js.VIS.Torstatus: hm-rpc.0.00155A49A4F577.1.STATE hat Zustandstext CLOSED, Wert= 0 Wert wird durch Zustandstext ersetzt
          javascript.0	2020-09-26 17:34:47.737	info	(657) script.js.VIS.Torstatus: Reaching CheckForHmShit val=0 typof val=string x=2 Sensor[x]=hm-rpc.0.00155A49A4F577.1.STATE
          javascript.0	2020-09-26 17:34:47.737	info	(657) script.js.VIS.Torstatus: Offene Tor gesamt= 1
          javascript.0	2020-09-26 17:34:47.736	info	(657) script.js.VIS.Torstatus: reaching CheckGates, SensorVal[1]=unknown SensorOldVal= TempRoom=Garage
          javascript.0	2020-09-26 17:34:47.735	info	(657) script.js.VIS.Torstatus: Reaching GetRoom x=1
          javascript.0	2020-09-26 17:34:47.734	warn	(657) script.js.VIS.Torstatus: Unknown Gatestate undefined detected at hm-rpc.0.00155A49A4F40C.1.STATE, please check your configuration
          javascript.0	2020-09-26 17:34:47.734	info	(657) script.js.VIS.Torstatus: hm-rpc.0.00155A49A4F40C.1.STATE hat Zustandstext OPEN, Wert= 1 Wert wird durch Zustandstext ersetzt
          javascript.0	2020-09-26 17:34:47.733	info	(657) script.js.VIS.Torstatus: Reaching CheckForHmShit val=1 typof val=string x=1 Sensor[x]=hm-rpc.0.00155A49A4F40C.1.STATE
          javascript.0	2020-09-26 17:34:47.732	info	(657) script.js.VIS.Torstatus: Offene Tor gesamt= 1
          javascript.0	2020-09-26 17:34:47.731	info	(657) script.js.VIS.Torstatus: Setting Interval to Room:Hoftor
          javascript.0	2020-09-26 17:34:47.730	info	(657) script.js.VIS.Torstatus: SendWarnMsg=true TempRoomIndex=0
          javascript.0	2020-09-26 17:34:47.729	info	(657) script.js.VIS.Torstatus: RoomOpenGatesCount für Hoftor=1
          javascript.0	2020-09-26 17:34:47.728	info	(657) script.js.VIS.Torstatus: reaching CheckGates, SensorVal[0]=open SensorOldVal= TempRoom=Hoftor
          javascript.0	2020-09-26 17:34:47.727	info	(657) script.js.VIS.Torstatus: Reaching GetRoom x=0
          javascript.0	2020-09-26 17:34:47.724	info	(657) script.js.VIS.Torstatus: Reaching CheckForHmShit val=true typof val=string x=0 Sensor[x]=zigbee.0.00158d000322aefd.opened
          javascript.0	2020-09-26 17:34:47.722	info	(657) script.js.VIS.Torstatus: x=2=kleine Garage SendWarnMsg=true SendVentMsg=true SendOpenCloseMsg=false
          javascript.0	2020-09-26 17:34:47.721	info	(657) script.js.VIS.Torstatus: x=1=Garage SendWarnMsg=true SendVentMsg=true SendOpenCloseMsg=false
          javascript.0	2020-09-26 17:34:47.721	info	(657) script.js.VIS.Torstatus: x=0=Hoftor SendWarnMsg=true SendVentMsg=true SendOpenCloseMsg=true
          javascript.0	2020-09-26 17:34:47.718	info	(657) script.js.VIS.Torstatus: CreateStates fertig!
          javascript.0	2020-09-26 17:34:47.690	info	(657) script.js.VIS.Torstatus: registered 0 subscriptions and 0 schedules
          javascript.0	2020-09-26 17:34:47.644	info	(657) script.js.VIS.Torstatus: Raum 2 = kleine Garage
          javascript.0	2020-09-26 17:34:47.643	info	(657) script.js.VIS.Torstatus: Sensor[2] hm-rpc.0.00155A49A4F577.1.STATE gehört zu Raum kleine Garage
          javascript.0	2020-09-26 17:34:47.642	info	(657) script.js.VIS.Torstatus: Raum 1 = Garage
          javascript.0	2020-09-26 17:34:47.641	info	(657) script.js.VIS.Torstatus: Sensor[1] hm-rpc.0.00155A49A4F40C.1.STATE gehört zu Raum [object Object]
          javascript.0	2020-09-26 17:34:47.640	info	(657) script.js.VIS.Torstatus: Raum 0 = Hoftor
          javascript.0	2020-09-26 17:34:47.639	info	(657) script.js.VIS.Torstatus: Sensor[0] zigbee.0.00158d000322aefd.opened gehört zu Raum Hoftor
          javascript.0	2020-09-26 17:34:47.584	info	(657) Start javascript script.js.VIS.Torstatus
          

          hab eben auch mal noch den js Adapter neu gestartet, aber kam direkt wieder der Fehler.
          Er zählt zwar auch irgendwie mit, aber bei Last Message kommt auch nichts, von wegen kleine Garage geöffnet oder geschlossen. Denke das hängt mit an der Fehlermeldung ?

          Hat er Probleme mit OPEN(1) und CLOSED(0) ?

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

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

            Hat er Probleme mit OPEN(1) und CLOSED(0) ?

            Nein, deswegen gibts ja extra die HM Abfrage.
            Da tauchen ja etliche Ungereimtheiten auf, nur, ganz ehrlich, Du hast Änderungen am Skript gemacht, ich seh umbenannte Funktionsnamen, geänderte Logmeldungen, da bin ich raus, mit dem Originalskript helf ich Dir gern weiter.

            D3ltoroxp 2 Replies Last reply Reply Quote 0
            • D3ltoroxp
              D3ltoroxp @Pittini last edited by

              @Pittini Ursprünglich war deins ja für Fenster, ich habe das nur umgeschrieben auf Tür und Tor. Sonst habe ich an deinem Script nichts geändert. Dieses Script lief ja auch. Ich habe lediglich, die alten Max Kontakte durch HM IP Kontakte getauscht und diese in die Räume und Funktionen gepackt, mehr nicht. Das heißt das Script lief vorher einwandfrei und die Änderungen habe ich schon mehrere Wochen / Monate drin. Es muss was mit diesen HM IP Geräten zu tun haben. Ganz sicher, denn mehr habe ich wie gesagt nicht geändert, seitdem es läuft.

              Habe ja nur die Textausgaben geändert mit Notepad++ / Suchen - ersetzten.

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

                @Pittini Ich habe jetzt noch mal die HM IP Kontakte rausgeschmissen und nen freien Xiaomi Kontakt benutzt, sofort funktioniert es wieder. Er zählt, es gibt keine Fehlermeldung und LastMessage schreibt auch das passende.
                Aber was soll an den HM IP Kontakten anders sein ? Open / Close steht ja auch drin, das er drauf reagieren soll, genau so wie auf 1 oder 0.

                Könntest du mir nicht dennoch versuchen weiter zu helfen, wie du siehst klappt das mit den Xiaomi Kontakten und auch mit den alten Max Kontakten, nur diese HM IP Kontakte machen Probleme.

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

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

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

                  Hat er Probleme mit OPEN(1) und CLOSED(0) ?

                  Nein, deswegen gibts ja extra die HM Abfrage.
                  Da tauchen ja etliche Ungereimtheiten auf, nur, ganz ehrlich, Du hast Änderungen am Skript gemacht, ich seh umbenannte Funktionsnamen, geänderte Logmeldungen, da bin ich raus, mit dem Originalskript helf ich Dir gern weiter.

                  Ok, 😖 scheint doch bei mir ein Fehler drin zu sein. Habe mal die neuste Version von Git gezogen und die HM IP Kontakte angelegt und es gibt keine Wanrs oder Erros und es wird sauber gezählt und der Text generiert.

                  Ich habe auch gesehen, du hast Türen hinzugefügt. Das ist schon mal super. Ich hätte noch eine Bitte, könntest du vllt Tore auch noch mit hinzufügen, habe Garagen und Hoftore, das würde ich gerne noch mit überwachen. Gerade das Hoftor ist super wichtig, wegen dem Hund. Ich weiß nicht wieviel Arbeit das macht, dein Script um Tore zu erweitern, aber ich würde mich freuen wenn du dir das mal überlegen würdest.

                  Dennoch komisch das es mit den anderen Kontakten wunderbar geklappt hat, was ich umgeändert habe.

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

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

                    Ok, scheint doch bei mir ein Fehler drin zu sein. Habe mal die neuste Version von Git gezogen und die HM IP Kontakte angelegt und es gibt keine Wanrs oder Erros und es wird sauber gezählt und der Text generiert.

                    Genau deswegen kein Support für geänderte Skripte.

                    Ich habe auch gesehen, du hast Türen hinzugefügt. Das ist schon mal super. Ich hätte noch eine Bitte, könntest du vllt Tore auch noch mit hinzufügen, habe Garagen und Hoftore, das würde ich gerne noch mit überwachen. Gerade das Hoftor ist super wichtig, wegen dem Hund. Ich weiß nicht wieviel Arbeit das macht, dein Script um Tore zu erweitern, aber ich würde mich freuen wenn du dir das mal überlegen würdest.

                    Ähmm, ein Tor ist auch ne Tür, also diese Erweiterung wirds nicht geben

                    Dennoch komisch das es mit den anderen Kontakten wunderbar geklappt hat, was ich umgeändert habe.

                    Nein, nicht komisch. Wenn Du nen Fehler in der HM Funktion gebaut hast, diese aber bisher nicht genutzt wurde, dann greift der Fehler halt erst wenn Du nen HM Kontakt hinzufügst. Suchen und Ersetzen is cool, aber kann ins Auge gehen wenn dabei Sachen mitgeändert werden die nicht geändert werden sollten. Auch wenn man ein Skript umschreibt, gibt es keinen Grund Logmeldungen oder Funktionsnamen zu ändern.

                    D3ltoroxp JB_Sullivan 2 Replies Last reply Reply Quote 0
                    • D3ltoroxp
                      D3ltoroxp @Pittini last edited by

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

                      Ähmm, ein Tor ist auch ne Tür, also diese Erweiterung wirds nicht geben

                      Naja, ist dann aber verwirrend, weil ich Hoftore habe aber auch ne Hoftür. Hoftore kann ich dann per Tablet oder Alexa öffnen/schließen, die Tür nicht. An der Garage das selbe, Garantetor oder Tür.

                      Geht mir eigentlich nur um den Text, das es dann auch passend in der Message steht, wenns das Tor ist, sollte nicht Garagentür stehen. Muss ich mal schauen, wie ich das anstelle.

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

                        @Pittini

                        Ich habe heute damit begonnen alle Aliase zu verwenden. Dadurch bekomme ich in deinem Skript eine Fehlermeldung die ich nicht greifen kann.

                        Hier erstmal die Einstellungen unter Funktionen. Der Unterschied ist jetzt das Fenster/Tuer nun nicht mehr direkt auf den Datenpunkt zugreift, sondern auf den Alias Datenpunkt.

                        2020-10-04 20_24_57-enums - ioBroker.png

                        Das scheint auch alles soweit zu funktionoieren. Nur den NUKI Datenpunkt will er nicht so wirklich akzeptieren, was folgende Fehlermeldung zu Folge hat. Hast du ggf. einen Tip für mich wo ich (noch) suchen kann?

                        Hier die Fehlermeldung:

                        javascript.0	2020-10-04 20:14:13.629	error	(12508) at processImmediate (timers.js:658:5)
                        javascript.0	2020-10-04 20:14:13.628	error	(12508) at tryOnImmediate (timers.js:676:5)
                        javascript.0	2020-10-04 20:14:13.628	error	(12508) at runCallback (timers.js:705:18)
                        javascript.0	2020-10-04 20:14:13.628	error	(12508) at Immediate.setImmediate (C:\iobroker\GLT\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:236:41)
                        javascript.0	2020-10-04 20:14:13.628	error	(12508) at change (C:\iobroker\GLT\node_modules\iobroker.js-controller\lib\adapter.js:5346:46)
                        javascript.0	2020-10-04 20:14:13.627	error	(12508) at Array.forEach (<anonymous>)
                        javascript.0	2020-10-04 20:14:13.625	error	(12508) at aliases.(anonymous function).targets.forEach.target (C:\iobroker\GLT\node_modules\iobroker.js-controller\lib\adapter.js:5352:41)
                        javascript.0	2020-10-04 20:14:13.624	error	(12508) at Object.stateChange (C:\iobroker\GLT\node_modules\iobroker.javascript\main.js:472:25)
                        javascript.0	2020-10-04 20:14:13.624	error	(12508) at Object.callback (C:\iobroker\GLT\node_modules\iobroker.javascript\lib\sandbox.js:1055:38)
                        javascript.0	2020-10-04 20:14:13.624	error	(12508) at Object.<anonymous> (script.js.common.Fensterueberwachung:1327:30)
                        javascript.0	2020-10-04 20:14:13.623	error	(12508) Error in callback: TypeError: Cannot read property 'search' of null
                        javascript.0	2020-10-04 20:14:06.487	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.486	warn	(12508) script.js.common.Fensterueberwachung: Unknown Windowstate undefined detected at alias.0.TFK.NUKI_geschlossen, please check your configuration
                        javascript.0	2020-10-04 20:14:06.485	warn	(12508) at process._tickCallback (internal/process/next_tick.js:68:7)
                        javascript.0	2020-10-04 20:14:06.485	warn	(12508) at promise.then (C:\iobroker\GLT\node_modules\standard-as-callback\built\index.js:19:49)
                        javascript.0	2020-10-04 20:14:06.485	warn	(12508) at tryCatcher (C:\iobroker\GLT\node_modules\standard-as-callback\built\utils.js:11:23)
                        javascript.0	2020-10-04 20:14:06.485	warn	(12508) at (anonymous function).get (C:\iobroker\GLT\node_modules\iobroker.objects-redis\index.js:1:93703)
                        javascript.0	2020-10-04 20:14:06.484	warn	(12508) at adapterObjects.getObject (C:\iobroker\GLT\node_modules\iobroker.js-controller\lib\adapter.js:2870:21)
                        javascript.0	2020-10-04 20:14:06.484	warn	(12508) at C:\iobroker\GLT\node_modules\iobroker.javascript\lib\sandbox.js:1885:38
                        javascript.0	2020-10-04 20:14:06.484	warn	(12508) at Object.<anonymous> (script.js.common.Fensterueberwachung:255:13)
                        javascript.0	2020-10-04 20:14:06.484	warn	(12508) at InitialSort (script.js.common.Fensterueberwachung:291:5)
                        javascript.0	2020-10-04 20:14:06.483	warn	(12508) at main (script.js.common.Fensterueberwachung:323:5)
                        javascript.0	2020-10-04 20:14:06.483	warn	(12508) at init (script.js.common.Fensterueberwachung:308:45)
                        javascript.0	2020-10-04 20:14:06.463	warn	(12508) getState "alias.0.TFK.NUKI_geschlossen" not found (3)
                        javascript.0	2020-10-04 20:14:06.462	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.458	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Stube-1 TempRoomIndex=8
                        javascript.0	2020-10-04 20:14:06.458	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.456	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Küche TempRoomIndex=7
                        javascript.0	2020-10-04 20:14:06.456	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.454	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Flur TempRoomIndex=3
                        javascript.0	2020-10-04 20:14:06.454	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.452	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Keller TempRoomIndex=4
                        javascript.0	2020-10-04 20:14:06.452	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.450	info	(12508) script.js.common.Fensterueberwachung: SendWindowWarnMsg=true TempRoomIndex=9
                        javascript.0	2020-10-04 20:14:06.448	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.448	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                        javascript.0	2020-10-04 20:14:06.446	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.445	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                        javascript.0	2020-10-04 20:14:06.444	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.443	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                        javascript.0	2020-10-04 20:14:06.441	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.441	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                        javascript.0	2020-10-04 20:14:06.439	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                        javascript.0	2020-10-04 20:14:06.439	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                        javascript.0	2020-10-04 20:14:06.427	info	(12508) script.js.common.Fensterueberwachung: registered 0 subscriptions and 0 schedules
                        javascript.0	2020-10-04 20:14:06.404	info	(12508) script.js.common.Fensterueberwachung: starting Fensterskript, Version 1.6.5
                        javascript.0	2020-10-04 20:14:06.389	info	(12508) Start javascript script.js.common.Fensterueberwachung
                        

                        Im Fehlerlog steht, das er kein State für das NUKI finden kann. Es ist aber da und es ist true.

                        2020-10-04 20_31_34-objects - ioBroker.png

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

                          @JB_Sullivan Dürfte genau dieses Problem sein: https://github.com/Pittini/iobroker-Fensterauswertung/issues/22

                          Mach nen korrekten channel, dann klappts.

                          CKMartens created this issue in Pittini/iobroker-Fensterauswertung

                          closed Fehlermeldung beim Öffnen/Schließen #22

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

                            @Pittini

                            HMMM - OK, der Threadersteller dort sagt, er weiß Bescheid - ich weiß es nicht. Wie sieht ein korrekter Channel aus und warum wird nur der EINE Nuki DP, der ja Struktur mäßig genauso angelegt ist wie anderen, angemeckert und bei allen anderen funktioniert es ?

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

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

                              @Pittini

                              HMMM - OK, der Threadersteller dort sagt, er weiß Bescheid - ich weiß es nicht. Wie sieht ein korrekter Channel aus und warum wird nur der EINE Nuki DP, der ja Struktur mäßig genauso angelegt ist wie anderen, angemeckert und bei allen anderen funktioniert es ?

                              Ein korrekter channel hat Namen und rechts in der Objektliste den Bleistift und Schraubenschlüssel. Du kannst mit nem Einzeilerskript aus dem "falschen" nen richtigen machen.

                              setObject("Die_Id_von_Deinem_Channel" , { type: 'channel', common: { name: "Wie der Channel heißen soll" }, native: {} });
                              
                              
                              JB_Sullivan 1 Reply Last reply Reply Quote 1
                              • JB_Sullivan
                                JB_Sullivan @Pittini last edited by

                                @Pittini
                                Dann würde ich sagen, er ist korrekt

                                2020-10-06 12_30_39-objects - ioBroker.png

                                Allerdings hat er im Vergleich mit den anderen eine eigenartige State Struktur

                                2020-10-06 12_31_26-objects - ioBroker.png

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

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

                                  Dann würde ich sagen, er ist korrekt

                                  Nein, isser nicht. Du redest vom tatsächlich korrekten Datenpunkt. Ich rede vom übergeordnetem Channel und der ist deutlich sichtbar nicht korrekt.
                                  Der "komische" Datenpunkt is dann ein anderes Thema, wozus da 5 States braucht weis ich auch ned.

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

                                    @Pittini

                                    Hmm - mir sagt "Channel" nichts. Was ist mit Channel bzw. Objekt gemeint? Bei dem Beispiel oben TFK?

                                    Also wäre das so richtig?

                                    setObject("alias.0.TFK" , { type: 'channel', common: { name: "TFK" }, native: {} });

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

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

                                      Also wäre das so richtig?

                                      Ja.

                                      Was "channel", "device", etc. bedeuten und wofür se gut sind steht da:
                                      https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/objectsschema.md

                                      Kurz mal das relevante rauskopiert:

                                      Object types
                                      state - parent should be of type channel, device, instance or host
                                      channel - object to group one or more states. Parent should be device.
                                      device - object to group one or more channels or state. Should have no parent except adapter instance namespace.
                                      enum - objects holding a array in common.members that points to states, channels, devices or files. enums can have a parent enum (tree-structure possible)
                                      host - a host that runs a controller process
                                      adapter - the default config of an adapter. presence also indicates that the adapter is successfully installed. (suggestion: should have an attribute holding an array of the hosts where it is installed)
                                      instance - instance of adapter. Parent has to be of type adapter
                                      meta - rarely changing meta information that a adapter or his instances needs
                                      config - configurations
                                      script - scripts
                                      user - users
                                      group - groups
                                      chart - charts
                                      folder - a bunch of devices or may be other things.

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

                                        @Pittini
                                        OK, also eine Fehlermeldung habe ich jetzt nicht mehr im Log. Aber die Tür wird nicht erkannt. Die Tür hat zwei Kontakte - einmal ein Xiaomi Aqara TFK
                                        welcher erkannt wird und einmal der NUKI eigene (der mit den komischen States)

                                        Dieser wird nicht erkannt.

                                        2020-10-06 15_07_33-vis.png

                                        javascript.0	2020-10-06 14:59:52.619	info	(12508) script.js.common.Fensterueberwachung: SendDoorWarnMsg=true TempRoomIndex=3
                                        javascript.0	2020-10-06 14:59:52.619	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.618	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Stube-1 TempRoomIndex=8
                                        javascript.0	2020-10-06 14:59:52.617	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.616	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Küche TempRoomIndex=7
                                        javascript.0	2020-10-06 14:59:52.616	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.615	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Flur TempRoomIndex=3
                                        javascript.0	2020-10-06 14:59:52.614	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.613	info	(12508) script.js.common.Fensterueberwachung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Keller TempRoomIndex=4
                                        javascript.0	2020-10-06 14:59:52.613	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.612	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.611	info	(12508) script.js.common.Fensterueberwachung: SendWindowWarnMsg=true TempRoomIndex=6
                                        javascript.0	2020-10-06 14:59:52.610	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.610	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                                        javascript.0	2020-10-06 14:59:52.609	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.608	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                                        javascript.0	2020-10-06 14:59:52.606	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.605	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                                        javascript.0	2020-10-06 14:59:52.604	info	(12508) script.js.common.Fensterueberwachung: Alle Türen geschlossen.
                                        javascript.0	2020-10-06 14:59:52.603	info	(12508) script.js.common.Fensterueberwachung: Alle Fenster geschlossen.
                                        javascript.0	2020-10-06 14:59:52.587	info	(12508) script.js.common.Fensterueberwachung: registered 0 subscriptions and 0 schedules
                                        javascript.0	2020-10-06 14:59:52.569	info	(12508) script.js.common.Fensterueberwachung: starting Fensterskript, Version 1.6.5
                                        javascript.0	2020-10-06 14:59:52.550	info	(12508) Start javascript script.js.common.Fensterueberwachung
                                        

                                        Da ich das Skript von @paul53 zum anlegen der Alias DP`s verwende wäre es sicher hilfreich, wenn man dem Skript noch deine Zeile mit hinzu fügt. Für mich als Java Laie ist halt nur die Frage WO. Einfach oben drüber? So ->

                                        //Channel Eigenschaft setzen
                                        setObject("alias.0.xxxxxxxxx" , { type: 'channel', common: { name: "yyyyyyyy" }, native: {} });
                                        // Original-Datenpunkt
                                        const idOrigin = 'mein Quell Datenpunkt'
                                         
                                        // Alias-Datenpunkt
                                        const idAlias = 'mein.Ziel.Alias';
                                        var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom;
                                        // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
                                        // nameAlias = 'Licht Haustür';
                                        // desc = 'per Script erstellt';
                                        // typeAlias = 'boolean'; // oder 'number'
                                        // read = "val == 'Ein' ? true : false"; // Erkennung "Aus" --> false erfolgt automatisch  
                                        // write = "val ? 'Ein' : 'Aus'";
                                        // role = 'switch';
                                        // min = 0; // nur Zahlen
                                        // max = 100; // nur Zahlen
                                        // unit = '%'; // nur für Zahlen
                                        // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                                        custom = []; // verhindert doppelte Ausführung von history, telegram, mqtt-client, ...
                                         
                                        function createAlias(idSrc, idDst) {
                                           if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
                                           else {
                                              var obj = {};
                                              obj.type = 'state';
                                              obj.common = getObject(idSrc).common;
                                              obj.common.alias = {};
                                              obj.common.alias.id = idSrc;
                                              if(typeAlias) obj.common.type = typeAlias;
                                              if(obj.common.read !== false && read) obj.common.alias.read = read;
                                              if(obj.common.write !== false && write) obj.common.alias.write = write;
                                              if(nameAlias) obj.common.name = nameAlias;
                                              if(role) obj.common.role = role;
                                              if(desc) obj.common.desc = desc;
                                              if(min !== undefined) obj.common.min = min;
                                              if(max !== undefined) obj.common.max = max;
                                              if(unit) obj.common.unit = unit;
                                              if(states) obj.common.states = states;
                                              if(custom && obj.common.custom) obj.common.custom = custom;
                                              obj.native = {};
                                              setObject(idDst, obj);
                                           } 
                                        }
                                        
                                        P 1 Reply Last reply Reply Quote 0
                                        • P
                                          Pittini Developer @JB_Sullivan last edited by

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

                                          Einfach oben drüber? So ->

                                          Das klappt so 100% nicht. Das gehört in die Funktion, wenn, dann sollte das @paul53 machen, weil sonst wärs bei Dir bei nem Skriptupdate wieder weg.

                                          Zum Thema Nuki, zeig mal pls komplettes startlog und sag mir welcher state für Tür auf/zu jetzt der richtige ist von den 5.

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

                                            @Pittini Eine kleine Frage, könnte man hier noch eine extra Zeit für Türen hinzufügen ?

                                            const ZeitBisNachricht = 900000 // 300000 ms = 5 Minuten - Zyklus- bzw. Ablaufzeit für Türoffenwarnung/en
                                            

                                            Bei den Fenstern reicht das z.b. alle 5 oder 10 min, bei den Türen, wäre 1 min Taktung z.b. besser, wegen Hund usw.

                                            Wenn das zu aufwändig ist, müsste ich das Script halt zwei mal nutzen, einmal nur für Fenster und einmal nur für Türen.

                                            Könnte man für Tür und Fenster vllt noch separate Benachrichtigungseinstellungen hinzufügen ? Also z.b. Ansage über Alexa für Türen, aber nicht für Fenster. Schalte ich die Benachrichtigung ab, bekomme ich den Text auch nicht mehr mit x min geöffnet. Das wäre aber nicht schlecht.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            449
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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