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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Generisches Fensteroffenskript + Vis

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

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

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

[Vorlage] Generisches Fensteroffenskript + Vis

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascripttemplatemonitoring
768 Beiträge 81 Kommentatoren 222.8k Aufrufe 97 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • crunchipC crunchip

    @dslraser das weiss ich schon, dass der speak DP dafür zu nehmen ist und im blockly kann man in der Nachricht direkt die Lautstärke mitgeben.
    Jedoch
    In dem Fall als Ankündigung ...Commands.announcement
    ich dachte als Variable im Script hinterlegen, so in der Art wie beim Wetterwarnung-Push-Script, nur ist dieses Script anders aufgebaut.
    so in der Art, jedoch weiss ich nicht wie der Befehl dann aussehen soll

    /* Konfiguration Sprachausgabe über Alexa
    /* mehrere Einträge möglich, bei mir ging nur der Echo, 2 dots 2.Gen reagieren nicht auf announcement. */
    var idAlexaSerial       = ['']; // die reine Seriennummer des Echos z.B.: var idAlexaSerial =['G090RV32984110Y', 'G090RV32984110Y']
    var alexaVolumen        = [30]; // Lautstärke die gleiche Anzahl an Einträgen wie bei idAlexaSerial
    

    @fastfoot hier mal ein Beispiel, SprachAusgabe erfolgt ohne Datum und Uhrzeit

    javascript.0 (976) script.js.Benachrichtigung.Fenster_Tür-Status: TempMessageLog=14.07.2020 16:27:32: Küche nicht gelüftet 2 Tage 20 Std. 10 Min.,14.07.2020 16:27:32: Kinderzimmer nicht gelüftet 2 Tage 1 Std. 8 Min.,14.07.2020 16:27:32: Badezimmer nicht gelüftet 2 Tage 6 Std. 9 Min.
    
    F Offline
    F Offline
    fastfoot
    schrieb am zuletzt editiert von
    #313

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

    Küche nicht gelüftet 2 Tage 20 Std. 10 Min.,14.07.2020 16:27:32: Kinderzimmer nicht gelüftet 2 Tage 1 Std. 8 Min.,14.07.2020 16:27:32: Badezimmer nicht gelüftet 2 Tage 6 Std. 9 Min.

    Man bräuchte hier die Original Message, nicht das LOG. Habe es aber herausgefunden, nachdem ich mir ein paar virtuelle Sensoren 'besorgt' habe. Die Nachricht wird leiser, wenn die Sprach-Kommandos zu schnell aufeinanderfolgen, ich denke das muss/sollte man so hinnehmen.

    Mit der Lautstärke könnte man es so lösen:

    const UseAlexa = true; // Sollen Nachrichten via Alexa ausgegeben werden?
    const AlexaId = "G090xxxxxxxx1876"; // Die Alexa Seriennummer.
    const AlexaTmpVolume = 45; // Alexa Lautstärke
    .
    .
    .
                if (UseAlexa) {
                    let tmpMsg = AlexaTmpVolume + ';' + msg;
                    if (AlexaId != "") setState("alexa2.0.Echo-Devices." + AlexaId + ".Commands.announcement"/*announcement*/, tmpMsg);
                };
    
    

    iobroker läuft unter Docker auf QNAP TS-451+
    SkriptRecovery: https://forum.iobroker.net/post/930558

    crunchipC 1 Antwort Letzte Antwort
    1
    • dslraserD dslraser

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

      dann kommt nur noch 1 Raum als Meldung, die anderen Räume werden nicht mit ausgegeben.

      Ich habe die Erfahrung gemacht, das Commands.announcement alles "durch schiebt", auch wenn es zeitgleich gesendet wird und nacheinander ansagt.
      Commands.speak sagt immer das letzte an, was gesendet wurde und bricht eventuell laufende Ansagen ab.

      Wie genau sieht denn die Ansage aus ? (also nicht das Log) Steht der Text noch drinn in Commands.announcement , oder ist das nach der Ansage weg ? Wenn da noch was drinn steht, kannst Du das mal hier posten.
      (Es könnte ja tatsächlich sein, das es mehrere Nachrichten sind und die mit Komma oder Semikolon getrennt sind und dann die zweite Nachricht kommt und die fängt vielleicht mit einer Zahl, irgendwas an, und die verstellt Dir die Lautstärke ?)

      crunchipC Abwesend
      crunchipC Abwesend
      crunchip
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #314

      @dslraser
      in Commands.announcement steht auch nur die letzte Meldung drin.
      und gerade getestet und verglichen, Ausgabe Kinderzimmer und Badezimmer kamen , Küche blieb aber aus, obwohl es im DP steht
      e5f77971-30d7-4023-ac34-3950485fce21-image.png
      irgendwie ist da doch was faul, mal gehts korrekt, mal nicht.
      Ist mir ja auch nur aufgefallen, als ich für mehrere Fenster den VentWarnTime eingerichtet hatte, alle anderen Sprachausgaben kommen ja nicht am Stück

      umgestiegen von Proxmox auf Unraid

      1 Antwort Letzte Antwort
      0
      • F fastfoot

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

        Küche nicht gelüftet 2 Tage 20 Std. 10 Min.,14.07.2020 16:27:32: Kinderzimmer nicht gelüftet 2 Tage 1 Std. 8 Min.,14.07.2020 16:27:32: Badezimmer nicht gelüftet 2 Tage 6 Std. 9 Min.

        Man bräuchte hier die Original Message, nicht das LOG. Habe es aber herausgefunden, nachdem ich mir ein paar virtuelle Sensoren 'besorgt' habe. Die Nachricht wird leiser, wenn die Sprach-Kommandos zu schnell aufeinanderfolgen, ich denke das muss/sollte man so hinnehmen.

        Mit der Lautstärke könnte man es so lösen:

        const UseAlexa = true; // Sollen Nachrichten via Alexa ausgegeben werden?
        const AlexaId = "G090xxxxxxxx1876"; // Die Alexa Seriennummer.
        const AlexaTmpVolume = 45; // Alexa Lautstärke
        .
        .
        .
                    if (UseAlexa) {
                        let tmpMsg = AlexaTmpVolume + ';' + msg;
                        if (AlexaId != "") setState("alexa2.0.Echo-Devices." + AlexaId + ".Commands.announcement"/*announcement*/, tmpMsg);
                    };
        
        
        crunchipC Abwesend
        crunchipC Abwesend
        crunchip
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #315

        @fastfoot perfekt, das klappt schon mal:+1:

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

        wenn die Sprach-Kommandos zu schnell aufeinanderfolgen,

        ist nur blöd, wenn man es eh nicht so laut eingestellt hat, bekommt man den Rest der Meldung gar nicht mit, weil man es gar nimmer hört.

        bleibt nur noch das Phänomen, das ab und an nicht alles Sprachlich ausgegeben wird

        umgestiegen von Proxmox auf Unraid

        dslraserD 1 Antwort Letzte Antwort
        0
        • crunchipC crunchip

          @fastfoot perfekt, das klappt schon mal:+1:

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

          wenn die Sprach-Kommandos zu schnell aufeinanderfolgen,

          ist nur blöd, wenn man es eh nicht so laut eingestellt hat, bekommt man den Rest der Meldung gar nicht mit, weil man es gar nimmer hört.

          bleibt nur noch das Phänomen, das ab und an nicht alles Sprachlich ausgegeben wird

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #316

          @crunchip
          eigentlich bleibt da nur alle anstehenden Nachrichten ein zu sammeln und als eine Nachricht (250 Zeichen Grenze beachten und mit Semikolon trennen) zu senden, oder aber etwas Zeitversetzt einzelne Nachrichten zu senden. Wieviel Zeitversetzt weiß ich aber auch nicht, da ja die Ansagen sicherlich verschieden lang sein können.
          Na ja, da fällt dem Script Ersteller sicher auch noch was ein.

          crunchipC 1 Antwort Letzte Antwort
          0
          • dslraserD dslraser

            @crunchip
            eigentlich bleibt da nur alle anstehenden Nachrichten ein zu sammeln und als eine Nachricht (250 Zeichen Grenze beachten und mit Semikolon trennen) zu senden, oder aber etwas Zeitversetzt einzelne Nachrichten zu senden. Wieviel Zeitversetzt weiß ich aber auch nicht, da ja die Ansagen sicherlich verschieden lang sein können.
            Na ja, da fällt dem Script Ersteller sicher auch noch was ein.

            crunchipC Abwesend
            crunchipC Abwesend
            crunchip
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #317

            @dslraser wenn es ein generelles zeitliches Problem der Ausgabe sein sollte, müssten es andere ja auch haben und nicht nur bei mir der Fall sein.
            Ausser man Lüftet immer schön alle Räume, dann kommen die Meldung ja erst gar nicht zu Stande:blush: und fällt keinem auf

            umgestiegen von Proxmox auf Unraid

            1 Antwort Letzte Antwort
            0
            • D3ltoroxpD Online
              D3ltoroxpD Online
              D3ltoroxp
              schrieb am zuletzt editiert von
              #318

              Ich hab hier auch ein kleines Problem, ich möchte für ein Fenster keine Audioausgabe, dort habe ich für öffnen/schließen false gesetzt und auch überschreiten der Öffnungszeit auf false. Es stellt sich jedes mal wieder auf true um. Hatte schon Script gestoppt, auf false gestellt und dann wieder Script gestartet, sofort wieder auf true. Das gleiche anders rum erst auf false gesetzt dann stop / start Script. Das selbe und wenn ich es nur auf false stelle, stellt es sich selber nach einer Zeit wieder auf true.

              P 1 Antwort Letzte Antwort
              0
              • D3ltoroxpD D3ltoroxp

                Ich hab hier auch ein kleines Problem, ich möchte für ein Fenster keine Audioausgabe, dort habe ich für öffnen/schließen false gesetzt und auch überschreiten der Öffnungszeit auf false. Es stellt sich jedes mal wieder auf true um. Hatte schon Script gestoppt, auf false gestellt und dann wieder Script gestartet, sofort wieder auf true. Das gleiche anders rum erst auf false gesetzt dann stop / start Script. Das selbe und wenn ich es nur auf false stelle, stellt es sich selber nach einer Zeit wieder auf true.

                P Offline
                P Offline
                Pittini
                Developer
                schrieb am zuletzt editiert von
                #319

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

                Ich hab hier auch ein kleines Problem, ich möchte für ein Fenster keine Audioausgabe, dort habe ich für öffnen/schließen false gesetzt und auch überschreiten der Öffnungszeit auf false. Es stellt sich jedes mal wieder auf true um. Hatte schon Script gestoppt, auf false gestellt und dann wieder Script gestartet, sofort wieder auf true. Das gleiche anders rum erst auf false gesetzt dann stop / start Script. Das selbe und wenn ich es nur auf false stelle, stellt es sich selber nach einer Zeit wieder auf true.

                Hmm, da kann ich wenig helfen denk ich. Im Skript is eigentlich nix was das machen könnte, es gibt weder nen setstate auf diese States noch ist iwo forcecreation an.
                Jemand ne Idee?

                dslraserD 1 Antwort Letzte Antwort
                1
                • P Pittini

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

                  Ich hab hier auch ein kleines Problem, ich möchte für ein Fenster keine Audioausgabe, dort habe ich für öffnen/schließen false gesetzt und auch überschreiten der Öffnungszeit auf false. Es stellt sich jedes mal wieder auf true um. Hatte schon Script gestoppt, auf false gestellt und dann wieder Script gestartet, sofort wieder auf true. Das gleiche anders rum erst auf false gesetzt dann stop / start Script. Das selbe und wenn ich es nur auf false stelle, stellt es sich selber nach einer Zeit wieder auf true.

                  Hmm, da kann ich wenig helfen denk ich. Im Skript is eigentlich nix was das machen könnte, es gibt weder nen setstate auf diese States noch ist iwo forcecreation an.
                  Jemand ne Idee?

                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #320

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

                  Jemand ne Idee?

                  Vielleicht hat es damit zu tun ?

                  https://forum.iobroker.net/post/466824

                  P 1 Antwort Letzte Antwort
                  1
                  • dslraserD dslraser

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

                    Jemand ne Idee?

                    Vielleicht hat es damit zu tun ?

                    https://forum.iobroker.net/post/466824

                    P Offline
                    P Offline
                    Pittini
                    Developer
                    schrieb am zuletzt editiert von
                    #321

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

                    Vielleicht hat es damit zu tun ?
                    https://forum.iobroker.net/post/466824

                    @D3ltoroxp
                    Wär ne Möglichkeit, sollte sich ja nach dem update verifizieren lassen.

                    D3ltoroxpD 1 Antwort Letzte Antwort
                    0
                    • P Pittini

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

                      Vielleicht hat es damit zu tun ?
                      https://forum.iobroker.net/post/466824

                      @D3ltoroxp
                      Wär ne Möglichkeit, sollte sich ja nach dem update verifizieren lassen.

                      D3ltoroxpD Online
                      D3ltoroxpD Online
                      D3ltoroxp
                      schrieb am zuletzt editiert von D3ltoroxp
                      #322

                      @Pittini Genau, das scheint es gewesen zu sein. Die gesetzten States bleiben bestehen.

                      Danke @dslraser

                      @Pittini Weil du grad hier bist. Gibt es eine Möglichkeit, die Liste aus deinem Script nutzen um mir von Alexa ansagen zu lassen, welche Fenster alle offen sind ? Wenn ich sie z.b. danach frage, oder wenn man das Haus verlässt `?

                      P 1 Antwort Letzte Antwort
                      1
                      • D3ltoroxpD D3ltoroxp

                        @Pittini Genau, das scheint es gewesen zu sein. Die gesetzten States bleiben bestehen.

                        Danke @dslraser

                        @Pittini Weil du grad hier bist. Gibt es eine Möglichkeit, die Liste aus deinem Script nutzen um mir von Alexa ansagen zu lassen, welche Fenster alle offen sind ? Wenn ich sie z.b. danach frage, oder wenn man das Haus verlässt `?

                        P Offline
                        P Offline
                        Pittini
                        Developer
                        schrieb am zuletzt editiert von
                        #323

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

                        Gibt es eine Möglichkeit, die Liste aus deinem Script nutzen um mir von Alexa ansagen zu lassen, welche Fenster alle offen sind ? Wenn ich sie z.b. danach frage, oder wenn man das Haus verlässt `?

                        Die Daten dazu liegen ja vor in:
                        javascript.0.FensterUeberwachung.RoomsWithOpenWindows
                        javascript.0.FensterUeberwachung.RoomsWithOpenDoors
                        javascript.0.FensterUeberwachung.RoomsWithOpenings

                        Wie man Alexa dazu bringt die Dir vorzulesen weis ich nicht, da ich die Abhörwanze nicht nutze. Aber da kann Dir bestimmt wer anders hier weiterhelfen.

                        S 1 Antwort Letzte Antwort
                        1
                        • P Pittini

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

                          Gibt es eine Möglichkeit, die Liste aus deinem Script nutzen um mir von Alexa ansagen zu lassen, welche Fenster alle offen sind ? Wenn ich sie z.b. danach frage, oder wenn man das Haus verlässt `?

                          Die Daten dazu liegen ja vor in:
                          javascript.0.FensterUeberwachung.RoomsWithOpenWindows
                          javascript.0.FensterUeberwachung.RoomsWithOpenDoors
                          javascript.0.FensterUeberwachung.RoomsWithOpenings

                          Wie man Alexa dazu bringt die Dir vorzulesen weis ich nicht, da ich die Abhörwanze nicht nutze. Aber da kann Dir bestimmt wer anders hier weiterhelfen.

                          S Offline
                          S Offline
                          schittl
                          schrieb am zuletzt editiert von schittl
                          #324

                          @Pittini Erstmal danke für das super Skript. Ich bin dabei dieses mit mein eigenem zu vereinen. Dabei hätte ich eventuell noch 2 Anregungen, die Du noch aufnehmen könntest, welche bestimmt auch für andere Nutzer interessant wären.

                          1. Devices, wo man trotz NoMsgAtPresence = true immer eine Meldung bekommen kann unabhängig Presence
                          2. Wenn man unterwegs ist (Presence false) und es eine Öffnung registriert, dass eine zusätzliche "Alarmvariable" gesetzt werden kann. Zusätzlich Infodevices, die die Alarmauslösung verhindern (z.B. keine Außentüren/Fenster)

                          Ich hatte es in meinem Skript so in der Art eingebunden:

                              // Nur wenn Alarmanlage scharf oder Device Info dann Meldung
                              if (alarm === 1 || alarm === 2 || alarm === 3 || infodevice.indexOf(serial) != -1) {
                                  if (alarm === 1 || alarm === 2) setStateDelayed(idAlarm, 3,  1000);
                              }
                          

                          Ebenfalls ist mir aufgefallen das die Variable PresenceDp nie ausgewertet wird, sondern nur NoMsgAtPresence für Push-Meldungen. Nutze Version 1.6.5.

                          Ist nur ne Anregung/Idee. Ansonsten sehr genial das Skript.

                          HW: Lenovo M920q (Proxmox, ioBroker, RaspMatic & Z2M), QNAP (Docker, Influx), Arduino Mega 2560 R3 (I2C DS18B20 + LED)

                          SW: CT IoBroker, VM RaspMatic(v3.79.6.20241122)

                          P 1 Antwort Letzte Antwort
                          0
                          • S schittl

                            @Pittini Erstmal danke für das super Skript. Ich bin dabei dieses mit mein eigenem zu vereinen. Dabei hätte ich eventuell noch 2 Anregungen, die Du noch aufnehmen könntest, welche bestimmt auch für andere Nutzer interessant wären.

                            1. Devices, wo man trotz NoMsgAtPresence = true immer eine Meldung bekommen kann unabhängig Presence
                            2. Wenn man unterwegs ist (Presence false) und es eine Öffnung registriert, dass eine zusätzliche "Alarmvariable" gesetzt werden kann. Zusätzlich Infodevices, die die Alarmauslösung verhindern (z.B. keine Außentüren/Fenster)

                            Ich hatte es in meinem Skript so in der Art eingebunden:

                                // Nur wenn Alarmanlage scharf oder Device Info dann Meldung
                                if (alarm === 1 || alarm === 2 || alarm === 3 || infodevice.indexOf(serial) != -1) {
                                    if (alarm === 1 || alarm === 2) setStateDelayed(idAlarm, 3,  1000);
                                }
                            

                            Ebenfalls ist mir aufgefallen das die Variable PresenceDp nie ausgewertet wird, sondern nur NoMsgAtPresence für Push-Meldungen. Nutze Version 1.6.5.

                            Ist nur ne Anregung/Idee. Ansonsten sehr genial das Skript.

                            P Offline
                            P Offline
                            Pittini
                            Developer
                            schrieb am zuletzt editiert von
                            #325

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

                            @Pittini Erstmal danke für das super Skript. Ich bin dabei dieses mit mein eigenem zu vereinen. Dabei hätte ich eventuell noch 2 Anregungen, die Du noch aufnehmen könntest, welche bestimmt auch für andere Nutzer interessant wären.

                            1. Devices, wo man trotz NoMsgAtPresence = true immer eine Meldung bekommen kann unabhängig Presence
                            2. Wenn man unterwegs ist (Presence false) und es eine Öffnung registriert, dass eine zusätzliche "Alarmvariable" gesetzt werden kann. Zusätzlich Infodevices, die die Alarmauslösung verhindern (z.B. keine Außentüren/Fenster)

                            Ich hatte es in meinem Skript so in der Art eingebunden:

                                // Nur wenn Alarmanlage scharf oder Device Info dann Meldung
                                if (alarm === 1 || alarm === 2 || alarm === 3 || infodevice.indexOf(serial) != -1) {
                                    if (alarm === 1 || alarm === 2) setStateDelayed(idAlarm, 3,  1000);
                                }
                            

                            Die Vorschläge wären sicher machbar, aber das is mir zu spezifisch, sind eh schon drölfich Einstelloptionen, sollen ja auch Einsteiger ne Chance haben das Skript zu nutzen.

                            Ebenfalls ist mir aufgefallen das die Variable PresenceDp nie ausgewertet wird, sondern nur NoMsgAtPresence für Push-Meldungen. Nutze Version 1.6.5.

                            Das stimmt so nicht, in Zeile 1396 wird ein Trigger draufgelegt, der Wert steht dann in Presence. Von da wird er allerdings tatsächlich nicht weitergenutzt, wird gefixt.

                            S 1 Antwort Letzte Antwort
                            0
                            • P Pittini

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

                              @Pittini Erstmal danke für das super Skript. Ich bin dabei dieses mit mein eigenem zu vereinen. Dabei hätte ich eventuell noch 2 Anregungen, die Du noch aufnehmen könntest, welche bestimmt auch für andere Nutzer interessant wären.

                              1. Devices, wo man trotz NoMsgAtPresence = true immer eine Meldung bekommen kann unabhängig Presence
                              2. Wenn man unterwegs ist (Presence false) und es eine Öffnung registriert, dass eine zusätzliche "Alarmvariable" gesetzt werden kann. Zusätzlich Infodevices, die die Alarmauslösung verhindern (z.B. keine Außentüren/Fenster)

                              Ich hatte es in meinem Skript so in der Art eingebunden:

                                  // Nur wenn Alarmanlage scharf oder Device Info dann Meldung
                                  if (alarm === 1 || alarm === 2 || alarm === 3 || infodevice.indexOf(serial) != -1) {
                                      if (alarm === 1 || alarm === 2) setStateDelayed(idAlarm, 3,  1000);
                                  }
                              

                              Die Vorschläge wären sicher machbar, aber das is mir zu spezifisch, sind eh schon drölfich Einstelloptionen, sollen ja auch Einsteiger ne Chance haben das Skript zu nutzen.

                              Ebenfalls ist mir aufgefallen das die Variable PresenceDp nie ausgewertet wird, sondern nur NoMsgAtPresence für Push-Meldungen. Nutze Version 1.6.5.

                              Das stimmt so nicht, in Zeile 1396 wird ein Trigger draufgelegt, der Wert steht dann in Presence. Von da wird er allerdings tatsächlich nicht weitergenutzt, wird gefixt.

                              S Offline
                              S Offline
                              schittl
                              schrieb am zuletzt editiert von
                              #326

                              @Pittini Ich habe es bei mir so gelöst (Zeile 1396):

                                  if (PresenceDp != "") { //Trigger für Anwesenheitsdatenpunkt erzeugen wenn vorhanden
                                      on("PresenceDp", function (dp) { //Trigger für PresenceDp erzeugen
                                          Presence = dp.state.val;
                                          if (NoMsgAtPresence && Presence) NoMsgAtPresence = false;
                                      });
                                  }
                              

                              Ist aber noch in Testphase...

                              HW: Lenovo M920q (Proxmox, ioBroker, RaspMatic & Z2M), QNAP (Docker, Influx), Arduino Mega 2560 R3 (I2C DS18B20 + LED)

                              SW: CT IoBroker, VM RaspMatic(v3.79.6.20241122)

                              P 1 Antwort Letzte Antwort
                              0
                              • S schittl

                                @Pittini Ich habe es bei mir so gelöst (Zeile 1396):

                                    if (PresenceDp != "") { //Trigger für Anwesenheitsdatenpunkt erzeugen wenn vorhanden
                                        on("PresenceDp", function (dp) { //Trigger für PresenceDp erzeugen
                                            Presence = dp.state.val;
                                            if (NoMsgAtPresence && Presence) NoMsgAtPresence = false;
                                        });
                                    }
                                

                                Ist aber noch in Testphase...

                                P Offline
                                P Offline
                                Pittini
                                Developer
                                schrieb am zuletzt editiert von Pittini
                                #327

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

                                @Pittini Ich habe es bei mir so gelöst (Zeile 1396):

                                    if (PresenceDp != "") { //Trigger für Anwesenheitsdatenpunkt erzeugen wenn vorhanden
                                        on("PresenceDp", function (dp) { //Trigger für PresenceDp erzeugen
                                            Presence = dp.state.val;
                                            if (NoMsgAtPresence && Presence) NoMsgAtPresence = false;
                                        });
                                    }
                                

                                Ist aber noch in Testphase...

                                Das kannste so nicht machen, das ist doppelt unsauber. Erstens isses ne Konstante deren Wert Du gar nicht ändern kannst. Zweitens würde ich das weder im Trigger machen noch überhaupt NoMsgAtPresence ändern, dafür gibts doch Presence.

                                Ich hab das gestern (auch noch Testphase) so gelöst (Ab Zeile 335):

                                function Meldung(msg) {
                                    if (logging) log("Reaching Meldung, msg= " + msg + " NoMsgAtPresence= " + NoMsgAtPresence + " Presence= " + Presence);
                                
                                    if (NoMsgAtPresence && Presence) {
                                        if (logging) log("Meldung blocked cause, NoMsgAtPresence= " + NoMsgAtPresence + " Presence= " + Presence);
                                    }
                                    else {
                                        if (MuteMode != 1 && MuteMode != 2) {
                                            if (UseSay) Say(msg);
                                
                                            if (UseAlexa) {
                                                if (AlexaId != "") setState("alexa2.0.Echo-Devices." + AlexaId + ".Commands.announcement"/*announcement*/, msg);
                                            };
                                        };
                                        if (MuteMode != 2) {
                                            if (UseEventLog) {
                                                WriteEventLog(msg);
                                            };
                                
                                            if (UseTelegram) {
                                                sendTo("telegram.0", "send", {
                                                    text: msg
                                                });
                                            };
                                
                                            if (UseMail) {
                                                sendTo("email", {
                                                    html: msg
                                                });
                                            };
                                        }
                                        setState(praefix + "LastMessage", msg);
                                        WriteMessageLog(msg);
                                    };
                                }
                                
                                
                                1 Antwort Letzte Antwort
                                0
                                • H Offline
                                  H Offline
                                  HoffmannOs
                                  schrieb am zuletzt editiert von
                                  #328

                                  Das Script hängt sich immer auf, ich habe in meiner Homematic den Geräten Gewerken und Räumen zugeordnet, dann kommt der fehler in IOB beim Neustart : ,,script.js.Log.Fensterauswertung: Reaching CreateRoomsWithVentWarnings" Iobroker hängt sich auf, wenn ich dann Manuell in den Aufzählungen bei den Geräten nur den States den Raum und das Gewerk zuordne geht es, gibt es da eine Lösung?

                                  P 1 Antwort Letzte Antwort
                                  0
                                  • H HoffmannOs

                                    Das Script hängt sich immer auf, ich habe in meiner Homematic den Geräten Gewerken und Räumen zugeordnet, dann kommt der fehler in IOB beim Neustart : ,,script.js.Log.Fensterauswertung: Reaching CreateRoomsWithVentWarnings" Iobroker hängt sich auf, wenn ich dann Manuell in den Aufzählungen bei den Geräten nur den States den Raum und das Gewerk zuordne geht es, gibt es da eine Lösung?

                                    P Offline
                                    P Offline
                                    Pittini
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #329

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

                                    Das Script hängt sich immer auf, ich habe in meiner Homematic den Geräten Gewerken und Räumen zugeordnet, dann kommt der fehler in IOB beim Neustart : ,,script.js.Log.Fensterauswertung: Reaching CreateRoomsWithVentWarnings" Iobroker hängt sich auf, wenn ich dann Manuell in den Aufzählungen bei den Geräten nur den States den Raum und das Gewerk zuordne geht es, gibt es da eine Lösung?

                                    Bisher hab ich noch nicht mal Dein Problem verstanden. Grundsätzlich gilt, bitte immer komplettes Log und evtl. Screenshots wo ich seh was wie wo zugeordnet wurde. Und ne klare Fehlerbeschreibung, wann und/oder bei welcher Aktion der Fehler auftritt.

                                    1 Antwort Letzte Antwort
                                    0
                                    • M Offline
                                      M Offline
                                      Mike Hellracer
                                      schrieb am zuletzt editiert von Mike Hellracer
                                      #330

                                      @Pittini
                                      Hi, erst einmal muss ich sagen das ich deine Arbeiten sehr gut finde. Das Skript zur Fenster Auswertung ist super.
                                      Jetzt habe ich noch 2 Fragen:

                                      Muss ich für die Lüftungsempfehlung noch was einstellen?
                                      Die Spalte "Funktion" ist eigentlich für den ganzen Channel gedacht. Da gehört dann auch Batterie, Erreichbarkeit, etc. für das Fenster dazu. (damit werden soweit ich weiß auch die Widgets u. a. vom Material Design Adapter automatisch befüllt)
                                      Wäre es nicht vorteilhafter die Spalte "Rolle" dafür zu verwenden? Diese erfüllt doch genau die von dir gewünschte "Einmaligkeit".
                                      Wie denkst du darüber.
                                      Und wäre es viel Arbeit das Script dahingehend zu ändern bzw. dahingehend konfigurierbar zu machen

                                      M P 2 Antworten Letzte Antwort
                                      0
                                      • M Mike Hellracer

                                        @Pittini
                                        Hi, erst einmal muss ich sagen das ich deine Arbeiten sehr gut finde. Das Skript zur Fenster Auswertung ist super.
                                        Jetzt habe ich noch 2 Fragen:

                                        Muss ich für die Lüftungsempfehlung noch was einstellen?
                                        Die Spalte "Funktion" ist eigentlich für den ganzen Channel gedacht. Da gehört dann auch Batterie, Erreichbarkeit, etc. für das Fenster dazu. (damit werden soweit ich weiß auch die Widgets u. a. vom Material Design Adapter automatisch befüllt)
                                        Wäre es nicht vorteilhafter die Spalte "Rolle" dafür zu verwenden? Diese erfüllt doch genau die von dir gewünschte "Einmaligkeit".
                                        Wie denkst du darüber.
                                        Und wäre es viel Arbeit das Script dahingehend zu ändern bzw. dahingehend konfigurierbar zu machen

                                        M Offline
                                        M Offline
                                        Mike Hellracer
                                        schrieb am zuletzt editiert von Mike Hellracer
                                        #331

                                        @Mike-Hellracer
                                        Kann diesen Post bitte einer löschen
                                        Irgendwas ist bei paste schief gegangen
                                        Danke

                                        1 Antwort Letzte Antwort
                                        0
                                        • M Mike Hellracer

                                          @Pittini
                                          Hi, erst einmal muss ich sagen das ich deine Arbeiten sehr gut finde. Das Skript zur Fenster Auswertung ist super.
                                          Jetzt habe ich noch 2 Fragen:

                                          Muss ich für die Lüftungsempfehlung noch was einstellen?
                                          Die Spalte "Funktion" ist eigentlich für den ganzen Channel gedacht. Da gehört dann auch Batterie, Erreichbarkeit, etc. für das Fenster dazu. (damit werden soweit ich weiß auch die Widgets u. a. vom Material Design Adapter automatisch befüllt)
                                          Wäre es nicht vorteilhafter die Spalte "Rolle" dafür zu verwenden? Diese erfüllt doch genau die von dir gewünschte "Einmaligkeit".
                                          Wie denkst du darüber.
                                          Und wäre es viel Arbeit das Script dahingehend zu ändern bzw. dahingehend konfigurierbar zu machen

                                          P Offline
                                          P Offline
                                          Pittini
                                          Developer
                                          schrieb am zuletzt editiert von Pittini
                                          #332

                                          @Mike-Hellracer sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                                          Muss ich für die Lüftungsempfehlung noch was einstellen?

                                          Wenn Du benachrichtigt werden willst, beim entsprechenden Raum SendVentMsg auf true setzen

                                          Die Spalte "Funktion" ist eigentlich für den ganzen Channel gedacht.

                                          Sagt wer? Steht wo?

                                          Da gehört dann auch Batterie, Erreichbarkeit, etc. für das Fenster dazu. (damit werden soweit ich weiß auch die Widgets u. a. vom Material Design Adapter automatisch befüllt)

                                          Nope, das sind getrennte Funktionen. Is doch eigentlich logisch, dass ein Gerät verschiedene Funktionen haben kann, Batterie z.B. is wieder ne Funktion für mein Batterieskript usw.

                                          Wäre es nicht vorteilhafter die Spalte "Rolle" dafür zu verwenden? Diese erfüllt doch genau die von dir gewünschte "Einmaligkeit".

                                          Rolle wird vom Adapter vergeben, sollte eigentlich nicht verändert werden und ist auch nicht eindeutig.

                                          Wie denkst du darüber.

                                          Siehe oben

                                          Und wäre es viel Arbeit das Script dahingehend zu ändern bzw. dahingehend konfigurierbar zu machen

                                          Vermutlich ja, mach ich mir aber kein Kopp drum, da es diese Änderung mangels sinnhaftigkeit nicht geben wird.

                                          Solltest Du das Problem haben dass Dir der HM Adapter die Funktionen überschreibt welche Du manuell gesetzt hast, einfach im Adapteradmin das syncen abstellen.

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          757

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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