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. Visualisierung
  4. VIS Sammlung von Views - gibt's das schon wo?

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    12
    1
    315

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

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

VIS Sammlung von Views - gibt's das schon wo?

Geplant Angeheftet Gesperrt Verschoben Visualisierung
226 Beiträge 88 Kommentatoren 167.0k Aufrufe 13 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.
  • andreA Offline
    andreA Offline
    andre
    Developer
    schrieb am zuletzt editiert von
    #31

    @eric2905:

    Aber da gibt es doch bereits was - zwar nicht als Bereich, aber als Webseite : https://iobroker.net:8080/ `
    Ja, ist bekannt. Was für mich aber viel reizvoller wäre, ist auch der Austausch zu meiner vorgestellten View/ zu meinem vorgestellten Projekt.

    Die reine "Präsentation" ist gut zum Vorstellen der Möglichkeiten von ioBroker bzw. Vis, für den Lerneffekt und das Abgucken aber eher nicht geeignet.

    MfG, André

    Gesendet mit Tapatalk.

    Bitte keine Support-Fragen per PN! Nutzt die öffentliche Kanäle damit auch andere von den Antworten profitieren können!

    1 Antwort Letzte Antwort
    0
    • etvE Offline
      etvE Offline
      etv
      schrieb am zuletzt editiert von
      #32

      …es wäre dann hier wie die Projektvorstellungen auf dem Homematic Forum. Der Austausch ist dadurch eher gegeben, als auf der Webseite, da man dort nicht nachfragen kann...

      Aber, es wäre eine gute Idee in der neuen Rubrik ev. einen angepinnten Beitrag zu haben, der auf diese Webseite hin weist und kurz erklärt, wie man dort sein Projekt einstellen kann, denn natürlich ist diese Webseite für die Verbreitung/Bewerbung von ioBroker wichtig und wahrscheinlich auch sinnvoller als das Forum - einfach zwischen den beiden verlinken, wäre meines Erachtens ideal...

      Grüße

      etv

      …ist schon sehr lange begeisterter ioBroker Nutzer! 1x zu Hause und 1x auf der Alm. ioBroker ist das 'Hirn' des Smarthome und steuert HomeMatic und Shellys, loggt was so passiert, zeigt es auf Tabletts schön an und ermöglicht mir via Cloud Adapter den Fernzugriff...

      1 Antwort Letzte Antwort
      0
      • fischi87F Offline
        fischi87F Offline
        fischi87
        schrieb am zuletzt editiert von
        #33

        Hallo, hab auch mal ein paar Seiten zu 80 % fertig gestellt.
        909_img_0057.png
        909_img_0058.png
        909_img_0059.png
        909_img_0060.png

        L 2 Antworten Letzte Antwort
        0
        • etvE Offline
          etvE Offline
          etv
          schrieb am zuletzt editiert von
          #34

          das mit dem roten "Rahmen" schaut cool aus, wie hast du da den weichen Rand gemacht?

          Grüße

          etv

          …ist schon sehr lange begeisterter ioBroker Nutzer! 1x zu Hause und 1x auf der Alm. ioBroker ist das 'Hirn' des Smarthome und steuert HomeMatic und Shellys, loggt was so passiert, zeigt es auf Tabletts schön an und ermöglicht mir via Cloud Adapter den Fernzugriff...

          1 Antwort Letzte Antwort
          0
          • S Offline
            S Offline
            simpixo
            schrieb am zuletzt editiert von
            #35

            Was ist denn "Magic Mirror" das was ich denke!? Ein Spiegel hinter dem ein Bildschirm angebracht ist!?

            Gesendet von meinem iPhone mit Tapatalk

            1 Antwort Letzte Antwort
            0
            • fischi87F Offline
              fischi87F Offline
              fischi87
              schrieb am zuletzt editiert von
              #36

              @ simpixo: ja genau das ist so ein teil liegt aber leider vorerst so da, muss noch den rahmen bauen. das Programm ist fertig.

              @etv: du hast, rechts bei schatten eine Feld mit box-shadow dort schreibst du, wie in meinen fall "0px 0px 20px 1px red" rein danach kannst du es deinen wünschen anpassen.

              (Danke an Bluefox)

              Mit freundlichen Grüßen
              909_screenshot_2015-12-31_15.35.43.png

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                simpixo
                schrieb am zuletzt editiert von
                #37

                Hast du da eine Anleitung!? Sieht gut aus….

                Gesendet von meinem iPhone mit Tapatalk

                1 Antwort Letzte Antwort
                0
                • fischi87F Offline
                  fischi87F Offline
                  fischi87
                  schrieb am zuletzt editiert von
                  #38

                  eine Anleitung nicht direkt habe es mir umgeschrieben vom Entwickler, dieser aus der nl ist.

                  hier der link aber sei dir gesagt so einfach ist das nicht und nimmt viel zeit in Anspruch.

                  falls du Hilfe brauchst, pn, kein Thema!

                  http://michaelteeuw.nl/post/80391333672 … the-mirror

                  1 Antwort Letzte Antwort
                  0
                  • etvE Offline
                    etvE Offline
                    etv
                    schrieb am zuletzt editiert von
                    #39

                    @fischi87:

                    @etv: du hast, rechts bei schatten eine Feld mit box-shadow dort schreibst du, wie in meinen fall "0px 0px 20px 1px red" rein danach kannst du es deinen wünschen anpassen.

                    (Danke an Bluefox) `

                    …super, danke dir!! Man sollte mal mehr mit den ganzen Feldern einfach nur rumspielen, da ist sicher noch unglaublich viel Potential drinnen!!

                    Grüße

                    etv

                    …ist schon sehr lange begeisterter ioBroker Nutzer! 1x zu Hause und 1x auf der Alm. ioBroker ist das 'Hirn' des Smarthome und steuert HomeMatic und Shellys, loggt was so passiert, zeigt es auf Tabletts schön an und ermöglicht mir via Cloud Adapter den Fernzugriff...

                    1 Antwort Letzte Antwort
                    0
                    • fischi87F Offline
                      fischi87F Offline
                      fischi87
                      schrieb am zuletzt editiert von
                      #40

                      Oh ja, hab vieles durch Langeweile und probieren erfahren :-)

                      1 Antwort Letzte Antwort
                      1
                      • S Offline
                        S Offline
                        simpixo
                        schrieb am zuletzt editiert von
                        #41

                        Welchen Spiegel benutzt du da genau!? Hast du eine Bezugsquelle! Finde in Moment nur Spiegelfolie [emoji30]

                        Gesendet von meinem iPhone mit Tapatalk

                        1 Antwort Letzte Antwort
                        0
                        • fischi87F Offline
                          fischi87F Offline
                          fischi87
                          schrieb am zuletzt editiert von
                          #42

                          ich werde mir normales Glas schneiden lassen und Spionage-foilie verwenden. Hab auch noch nichts ausprobiert aber ich denke so wert ich dies tun.

                          sowas zb: http://www.d-c-fix.com/spionagefolie-5336.html

                          Mit freundlichen Grüßen

                          1 Antwort Letzte Antwort
                          0
                          • OreiderO Offline
                            OreiderO Offline
                            Oreider
                            schrieb am zuletzt editiert von
                            #43

                            Hi zusammen,

                            @fischi87: Wie hast du den Ping Adapter eingebunden? Wie genau muss ich hier vorgehen? Klappt bei mir nicht richtig.

                            Gruß Tom

                            1 Antwort Letzte Antwort
                            0
                            • fischi87F Offline
                              fischi87F Offline
                              fischi87
                              schrieb am zuletzt editiert von
                              #44

                              Installiert hast du den Adapter?

                              Hab erstmal meinem magicmirror ne feste io vergeben diese dann mit dem plus Zeichen in der config des pingadapters erstellt. Jetzt müsstest du unter Objekte/pinadapter diese ip bzw den Namen sehen.

                              Oder meinst du in der vis?

                              hier der code für die vis:

                              [{"tpl":"tplMfdSocket","data":{"oid":"ping.0.RaspberryPi.192_168_178_24","visibility-cond":"==","visibility-val":1,"asButton":false,"icon_off":"/icons-open-icon-library-png/actions/dialog-cancel-4.png","icon_on":"/icons-open-icon-library-png/actions/dialog-ok-2.png"},"style":{"left":"280px","top":"80px","background":"rgba(0, 0, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box","width":"51px","height":"48px"},"widgetSet":"jqui-mfd"},{"tpl":"tplRedNumber","data":{"oid":"hm-rega.0.13919","visibility-cond":"==","visibility-val":1,"type":"circle","html_append_singular":"","html_append_plural":" °C"},"style":{"left":"200px","top":"30px","width":"62px","height":"35px","background":"0px","border-width":"0px","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplFrame","data":{"visibility-cond":"==","visibility-val":1,"title":"Raspberry-Pi:","title_color":"#FFFFFF","title_top":"13","title_left":"15","header_height":"0","header_color":"black","title_font":""},"style":{"left":"30px","top":"20px","width":"315px","height":"55px","border-width":"","border-style":"","border-color":"","border-radius":"40px","box-shadow":"0px 0px 20px 1px red","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplFrame","data":{"visibility-cond":"==","visibility-val":1,"title":"Magic-Mirror:","title_color":"#FFFFFF","title_top":"13","title_left":"15","header_height":"0","header_color":"black","title_font":""},"style":{"left":"30px","top":"80px","width":"315px","height":"55px","border-width":"","border-style":"","border-color":"","border-radius":"40px","box-shadow":"0px 0px 20px 1px red","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplMfdSocket","data":{"oid":"ping.0.RaspberryPi.192_168_178_23","visibility-cond":"==","visibility-val":1,"asButton":false,"icon_off":"/icons-open-icon-library-png/actions/dialog-cancel-4.png","icon_on":"/icons-open-icon-library-png/actions/dialog-ok-2.png","visibility-oid":"ping.0.RaspberryPi.192_168_178_23"},"style":{"left":"280px","top":"20px","background":"rgba(0, 0, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box","width":"51px","height":"48px"},"widgetSet":"jqui-mfd"},{"tpl":"tplFrame","data":{"visibility-cond":"==","visibility-val":1,"title":"CCU 2","title_color":"#FFFFFF","title_top":"13","title_left":"15","header_height":"0","header_color":"black","title_font":""},"style":{"left":"30px","top":"140px","width":"315px","height":"55px","border-width":"","border-style":"","border-color":"","border-radius":"40px","box-shadow":"0px 0px 20px 1px red","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplMfdSocket","data":{"oid":"ping.0.RaspberryPi.192_168_178_38","visibility-cond":"==","visibility-val":1,"asButton":false,"icon_off":"/icons-open-icon-library-png/actions/dialog-cancel-4.png","icon_on":"/icons-open-icon-library-png/actions/dialog-ok-2.png","visibility-oid":"","invert_state":false,"invert_icon":false},"style":{"left":"280px","top":"140px","background":"rgba(0, 0, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box","width":"51px","height":"48px"},"widgetSet":"jqui-mfd"}]
                              

                              Mfg

                              1 Antwort Letzte Antwort
                              0
                              • P Offline
                                P Offline
                                pix
                                schrieb am zuletzt editiert von
                                #45

                                Hallo und gutes Neues Jahr!

                                Jetzt habe ich mich mal durchgerungen, einige meiner VIS Views zu zeigen.

                                Strom: 261_bildschirmfoto_2016-01-02_um_21.04.06.jpg
                                Systemübersicht: 261_bildschirmfoto_2016-01-02_um_21.04.59.png
                                Drucker: 261_bildschirmfoto_2016-01-02_um_21.05.19.jpg
                                ISS (derzeit kein Einlesen der Daten, da Feed offline): 261_bildschirmfoto_2016-01-02_um_21.03.03.jpg
                                TV Progamm (noch mit dem Testknopf für Harmony :lol: ): 261_bildschirmfoto_2016-01-02_um_21.02.32.jpg
                                Stellvertretender Raum Schlafzimmer: 261_bildschirmfoto_2016-01-02_um_21.05.40.jpg
                                Schlafzimmer Fenstereinstellungen (Untermenüpunkt): 261_bildschirmfoto_2016-01-02_um_21.05.54.jpg
                                Verkehr: 261_bildschirmfoto_2016-01-02_um_21.01.57.png
                                LED16 Anzeige: 261_bildschirmfoto_2016-01-02_um_21.26.48.png
                                Optin - hauptsächlich zum Ein/Ausschalten von Benachrichtigungen per Sayit/Pushover: 261_bildschirmfoto_2016-01-02_um_21.17.46.jpg
                                Die Views sind für eine iPad Air 1 im Querformat gebaut. Für unsere iPhones habe ich abgespeckte Views für das Nötigste gebaut.

                                Die Optin Seite habe ich heute erst umgebaut, etwas modernisiert. Da stecken natürlich viel Arbeit und sehr viel Variablen drin.

                                Viele Grüße,

                                Pix

                                ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                1 Antwort Letzte Antwort
                                0
                                • fischi87F Offline
                                  fischi87F Offline
                                  fischi87
                                  schrieb am zuletzt editiert von
                                  #46

                                  Servus

                                  coole views!

                                  kannst du mir erklären wie man den status der Druckerpatronen ermitteln kann bzw auslesen?

                                  Mit freundlichen Grüßen

                                  1 Antwort Letzte Antwort
                                  0
                                  • P Offline
                                    P Offline
                                    pix
                                    schrieb am zuletzt editiert von
                                    #47

                                    Drucker:

                                    http://forum.iobroker.net/viewtopic.php?t=910#p6931

                                    Gruß

                                    Pix

                                    Gesendet mit Tapatalk

                                    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                    1 Antwort Letzte Antwort
                                    0
                                    • OreiderO Offline
                                      OreiderO Offline
                                      Oreider
                                      schrieb am zuletzt editiert von
                                      #48

                                      @fischi87:

                                      Installiert hast du den Adapter?

                                      Hab erstmal meinem magicmirror ne feste io vergeben diese dann mit dem plus Zeichen in der config des pingadapters erstellt. Jetzt müsstest du unter Objekte/pinadapter diese ip bzw den Namen sehen.

                                      Oder meinst du in der vis?

                                      hier der code für die vis:

                                      [{"tpl":"tplMfdSocket","data":{"oid":"ping.0.RaspberryPi.192_168_178_24","visibility-cond":"==","visibility-val":1,"asButton":false,"icon_off":"/icons-open-icon-library-png/actions/dialog-cancel-4.png","icon_on":"/icons-open-icon-library-png/actions/dialog-ok-2.png"},"style":{"left":"280px","top":"80px","background":"rgba(0, 0, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box","width":"51px","height":"48px"},"widgetSet":"jqui-mfd"},{"tpl":"tplRedNumber","data":{"oid":"hm-rega.0.13919","visibility-cond":"==","visibility-val":1,"type":"circle","html_append_singular":"","html_append_plural":" °C"},"style":{"left":"200px","top":"30px","width":"62px","height":"35px","background":"0px","border-width":"0px","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplFrame","data":{"visibility-cond":"==","visibility-val":1,"title":"Raspberry-Pi:","title_color":"#FFFFFF","title_top":"13","title_left":"15","header_height":"0","header_color":"black","title_font":""},"style":{"left":"30px","top":"20px","width":"315px","height":"55px","border-width":"","border-style":"","border-color":"","border-radius":"40px","box-shadow":"0px 0px 20px 1px red","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplFrame","data":{"visibility-cond":"==","visibility-val":1,"title":"Magic-Mirror:","title_color":"#FFFFFF","title_top":"13","title_left":"15","header_height":"0","header_color":"black","title_font":""},"style":{"left":"30px","top":"80px","width":"315px","height":"55px","border-width":"","border-style":"","border-color":"","border-radius":"40px","box-shadow":"0px 0px 20px 1px red","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplMfdSocket","data":{"oid":"ping.0.RaspberryPi.192_168_178_23","visibility-cond":"==","visibility-val":1,"asButton":false,"icon_off":"/icons-open-icon-library-png/actions/dialog-cancel-4.png","icon_on":"/icons-open-icon-library-png/actions/dialog-ok-2.png","visibility-oid":"ping.0.RaspberryPi.192_168_178_23"},"style":{"left":"280px","top":"20px","background":"rgba(0, 0, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box","width":"51px","height":"48px"},"widgetSet":"jqui-mfd"},{"tpl":"tplFrame","data":{"visibility-cond":"==","visibility-val":1,"title":"CCU 2","title_color":"#FFFFFF","title_top":"13","title_left":"15","header_height":"0","header_color":"black","title_font":""},"style":{"left":"30px","top":"140px","width":"315px","height":"55px","border-width":"","border-style":"","border-color":"","border-radius":"40px","box-shadow":"0px 0px 20px 1px red","font-style":"italic","font-variant":"small-caps","font-size":"x-large"},"widgetSet":"basic"},{"tpl":"tplMfdSocket","data":{"oid":"ping.0.RaspberryPi.192_168_178_38","visibility-cond":"==","visibility-val":1,"asButton":false,"icon_off":"/icons-open-icon-library-png/actions/dialog-cancel-4.png","icon_on":"/icons-open-icon-library-png/actions/dialog-ok-2.png","visibility-oid":"","invert_state":false,"invert_icon":false},"style":{"left":"280px","top":"140px","background":"rgba(0, 0, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box","width":"51px","height":"48px"},"widgetSet":"jqui-mfd"}]
                                      

                                      Mfg `

                                      Vielen Dank!

                                      Genau den VIS Code meinte ich.

                                      Top :-)

                                      1 Antwort Letzte Antwort
                                      0
                                      • blauholstenB Offline
                                        blauholstenB Offline
                                        blauholsten
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #49

                                        @pix

                                        Erstmal Glückwunsch zu deinen views! Du hast dort einer immer wiederkehrende Funktionalität in deinen views , das über zwei Elemente Zeiten zu verstellen (+/-).

                                        Könntest du mal Posten wie du das script mäßig gelöst hast? Ich hätte zwar eine Idee, aber…..

                                        Dann hast du dir auch die Möglichkeit geschaffen (push/Sprache) an und ab zu schalten. Löst du das im script dann immer mit if Abfrage n?

                                        Gesendet vom Smartphone

                                        Entwickler vom: - Viessman Adapter
                                        - Alarm Adapter

                                        1 Antwort Letzte Antwort
                                        0
                                        • P Offline
                                          P Offline
                                          pix
                                          schrieb am zuletzt editiert von
                                          #50

                                          Hallo blauholsten,
                                          @blauholsten:

                                          Erstmal Glückwunsch zu deinen views! ` Vielen Dank, das freut mich!
                                          @blauholsten:

                                          Du hast dort einer immer wiederkehrende Funktionalität in deinen views , das über zwei Elemente Zeiten zu verstellen (+/-).

                                          Könntest du mal Posten wie du das script mäßig gelöst hast? ` Die Steuerelemente sind die "increment-Widgets" aus VIS. 261_bildschirmfoto_2016-01-03_um_13.22.33.jpg Damit werden die Variablen (Typ Nummer) erhöht oder gesenkt. Die Schrittweite und den Max/Min-Wert in die jeweilige Richtung kann man vorgeben.

                                          In diesem Beispiel ist das der untere Grenzwert für die Luftfeuchte im Schlafzimmer. Wenn der unterschritten wird, gibt es eine Nachricht. Statt ihn einfach mit var grenzwert = 40 vorzugeben, habe ich mit createState ein Objekt erstellt (javascript.0.Alarm.Schlafzimmer.Luftfeuchte.Grenzwert). Dieses Objekt lässt sich dann mit den Widgets bedienen.

                                          @blauholsten:

                                          Dann hast du dir auch die Möglichkeit geschaffen (push/Sprache) an und ab zu schalten. Löst du das im script dann immer mit if Abfrage n? ` Ja, das ist eine von mir sehr häufig verwendete Möglichkeit. Manchmal möchte ich das System "leise" haben, dann kann ich schnell in VIS die entsprechenden Meldung (Push oder Sayit) abschalten. DWD Meldungen setzen eine bestimmte Stärke (Severity) voraus. Da muss ich etwas ausholen. Hier nochmal das Skript zur Luftfeuchte:

                                          ! ````
                                          /* Schlafzimmer Alarm Luftfeuchte
                                          ! Skript meldet, wenn Luftfeuchte im Schlafzimmer unter Grenzwert sinkt

                                          • bei Anwesenheit per Sayit
                                          • bei Abwesenheit per Push
                                            OptIn Variablen werden angelegt
                                            Grezwert Variable wird angelegt

                                          ! todo: Pushover Priorität per VIS-Eingabe setzen
                                          Sayit-Lautstärke per VIS setzen
                                          ! erstellt: 25.04.2015 von pix
                                          geändert: 25.04.2015
                                          30.05.2015 Optin Variable Unterkategorie erstellt
                                          03.06.2015 Sayit-Ansage auf 40% Lautstärke gesetzt
                                          13.07.2015 umbenannt in Schlafzimmer_Alarm_uftfeuchte
                                          18.07.2015 Sayit als globale Funktion eingeführt
                                          09.12.2015 Optin Ordnerstruktur optimiert
                                          Grenzwertvariable neu platziert
                                          Alarmvariable erstellt
                                          ! */
                                          // Erstellen der Variablen
                                          createState('Alarm.Schlafzimmer.Luftfeuchte', false, {
                                          name: 'Schlafzimmer - niedrige Luftfeuchte',
                                          desc: 'niedrige Luftfeuchte im Schlafzimmer wird gemeldet',
                                          type: 'boolean',
                                          read: true,
                                          write: true
                                          });
                                          createState('Alarm.Schlafzimmer.Luftfeuchte.Grenzwert.unten', 40, {
                                          name: 'Schlafzimmer Luftfeuchte unterer Grenzwert',
                                          desc: 'Grenzwert, dessen Unterschreitung zu Alarmierung führt',
                                          type: 'number',
                                          unit: '%',
                                          read: true,
                                          write: true
                                          });
                                          createState('Optin.Schlafzimmer.Luftfeuchte.Push', true, {
                                          name: 'Optin Schlafzimmer niedrige Luftfeuchte melden',
                                          desc: 'Soll eine zu niedrig Luftfeuchte im Schlafzimmer gemeldet werden?',
                                          type: 'boolean',
                                          read: true,
                                          write: true
                                          });
                                          createState('Optin.Schlafzimmer.Luftfeuchte.Sayit', true, {
                                          name: 'Optin Schlafzimmer niedrige Luftfeuchte ansagen',
                                          desc: 'Soll eine zu niedrige Luftfeuchte im Schlafzimmer angesagt werden?',
                                          type: 'boolean',
                                          read: true,
                                          write: true
                                          });
                                          ! var idFeuchte = "hm-rpc.0.HEQ012345.1.HUMIDITY"/Thermostat Schlafzimmer Sensoren.HUMIDITY/,
                                          idGrenzwert = "javascript.0.Alarm.Schlafzimmer.Luftfeuchte.Grenzwert.unten",
                                          idAlarm = "javascript.0.Alarm.Schlafzimmer.Luftfeuchte",

                                          idAnwesenheit = "javascript.0.Anwesenheit"/*Status Anwesenheit*/,
                                          idNachtruhe = "javascript.0.Nachtruhe"/*Status Nachtruhe*/,
                                          
                                          optin_beschreibung = "Schlafzimmer Luftfeuchte",
                                          idOptinSayit = "javascript.0.Optin.Schlafzimmer.Luftfeuchte.Sayit",
                                          idOptinPush = "javascript.0.Optin.Schlafzimmer.Luftfeuchte.Push";
                                          

                                          ! // Pushmeldung
                                          function meldung_push (text, titel, prio) {
                                          var optin_push = getState(idOptinPush).val;
                                          if (optin_push) { // wenn Optin
                                          sendTo("pushover", {
                                          message: text,
                                          title: titel,
                                          priority: prio
                                          });
                                          } // Ende Optin
                                          }
                                          // Sayit
                                          function meldung_sayit (ansage) {
                                          var optin_sayit = getState(idOptinSayit).val;
                                          if (optin_sayit) { // wenn Optin
                                          sayit(ansage); // globale Funktion
                                          } // Ende Optin
                                          }
                                          ! // Meldung absetzen
                                          on( {
                                          id: idAlarm,
                                          change: 'ne'
                                          }, function(obj) {
                                          var anwesenheit = getState(idAnwesenheit).val,
                                          nachtruhe = getState(idNachtruhe).val,
                                          grenzwert = getState(idGrenzwert).val,
                                          luftfeuchte = getState(idFeuchte).val,
                                          status,
                                          betreff = "ioBroker Meldung";
                                          if (obj.newState.val === true) {
                                          if (anwesenheit === 0) { // wenn abwesend
                                          status = 'Die Luftfeuchte im Schlafzimmer sinkt unter den Grenzwert von ' + grenzwert + ' Prozent und liegt aktuell bei ' + luftfeuchte + ' Prozent. Bitte nach der Rückkehr den VENTA einschalten.';
                                          meldung_push(status, betreff, 0);
                                          log(status, 'info');
                                          } else if (anwesenheit === 1) { // wenn anwesend
                                          if (nachtruhe !== 1) { // wenn nicht Nachtruhe
                                          status = 'Die Luftfeuchte im Schlafzimmer sinkt unter den Grenzwert von ' + grenzwert + ' Prozent und liegt aktuell bei ' + luftfeuchte + ' Prozent. Bitte den VENTA einschalten.';
                                          meldung_sayit('40;Die Luftfeuchte im Schlafzimmer sinkt unter den Grenzwert von ' + grenzwert + ' Prozent.');
                                          meldung_push(status, betreff, 0);
                                          } else { // bei Nachtruhe
                                          status = 'Die Luftfeuchte im Schlafzimmer sinkt während dieser Nachtruhe unter den Grenzwert von ' + grenzwert + ' Prozent und liegt aktuell bei ' + luftfeuchte + ' Prozent.';
                                          } // Ende Nachtruhe
                                          } // Ende Anwesenheit
                                          } // Ende Meldung
                                          log(status, "info");
                                          });
                                          ! // -------------------------------
                                          // Auslöser
                                          // Niedrige Feuchte führt zu Alarm
                                          on( {
                                          id: idFeuchte,
                                          change: 'ne'/,
                                          valLt: 40
                                          /
                                          }, function(data) {
                                          var grenzwert = getState(idGrenzwert).val;
                                          if (data.newState.val < grenzwert) {
                                          setState(idAlarm, true);
                                          } else {
                                          setState(idAlarm, false);
                                          }
                                          });
                                          ! // ----------------------------------
                                          // Grenzwert setzen - Logging
                                          on( {
                                          id: idGrenzwert,
                                          change: 'ne'
                                          }, function (data) {
                                          log('Der Grenzwert <schlafzimmer luftfeuchte=""> wurde auf ' + data.newState.val + ' Prozent gesetzt ', 'info');
                                          });
                                          ! // Opt In setzen - Logging
                                          on( {
                                          id: idOptinPush,
                                          change: 'ne'
                                          }, function (obj) {
                                          log('Opt in Variable <' + optin_beschreibung + ' Push> auf <' + obj.newState.val + '> gesetzt ', 'info');
                                          });
                                          ! on( {
                                          id: idOptinSayit,
                                          change: 'ne'
                                          }, function (obj) {
                                          log('Opt in Variable <' + optin_beschreibung + ' Sayit> auf <' + obj.newState.val + '> gesetzt ', 'info');
                                          });</schlafzimmer>

                                          Neben den Objekten für den Grenzwert und den Alarm (boolean) werden jeweils für Push(-over) und Sayit eine Optin-Variable (boolean) erstellt.
                                          
                                          Die Funktionen "meldung_push" und "meldung_sayit", sowie ganz unten der Subscribe of diese Objekte zum Loggen sind in allen Skripten gleich. "meldung_push" und "meldung_sayit" fragen ab, ob eine Benachrichtigung gewünscht wird und geben dann die Nachricht weiter (Push an den Pushover Adapter, Sayit an eine globale Funktion sayit, welche dann an den Sayit-Adapter weiterreicht).
                                          
                                          Der eigentliche Auslöser des Alarms ist ein kleines Skript, dass bei entsprechender Luftfeuchte die Alarmvariable auf true setzt. Ein zweiter Subscribe (darüber) reagiert auf die Alarmvariable und setzt je nach Anwesenheit (Boolean, aber mit Nummern 0 und 1) und Nachtruhe (dito) die jeweilige Meldung ab. Die 0/1-Variante bei diesen Variablen ist noch ein Überbleibsel aus CCU.IO Zeiten und wird demnächst auf boolean umgestellt (richtig viel Arbeit!).
                                          
                                          Ein kleines Skript, dass nur eine Meldung bei Unterschreiten eines Wertes schicken soll, wächst so natürlich schnell auf rund 150 Zeilen. Das ist aber egal. Genug Power ist ja da. Mir ist eine gleichbleibende Struktur wichtig.
                                          
                                          Dieses Skript kann ich noch gut um die Möglichkeit erweitern, die Priorität der Pushnachricht auch per VIS einzugeben. Vielleicht mache ich das noch 8-)
                                          
                                          Gruß
                                          
                                          Pix

                                          ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                          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

                                          583

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          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