Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. jarvis v2.2.0 - just another remarkable vis

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    jarvis v2.2.0 - just another remarkable vis

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

      @dabbeljuh
      Schaut besser aus!
      Danke 🙂

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

        @Zefau
        Es wurde ja bereits über den Feature Request "Benachrichtigungen" gesprochen. Zu diesem Zweck nutze ich derzeit das tolle Script von @Tirador:
        https://forum.iobroker.net/topic/32207/script-messagehandler-nachrichten-protokollieren-vis

        Im Grund erfüllt das bereits alle Anforderungen an ein Benachrichtigungssystem bis auf die passende Optik der Ausgabe für jarvis. Aber auch das sollte sich relativ einfach lösen lassen. Zumindest hab ich es mal quick and dirty für nen ersten Test umsetzen können. 😉

        Was mir derzeit noch fehlt, ist die Möglichkeit der Funktionsaufrufe zum Löschen von Meldungen aus jarvis heraus, da ich die Click-Events der Buttons nicht abfangen kann. Das kannst du aber wahrscheinlich einfacher direkt in deinem Code umsetzen, als dass ich hier wurstele.

        C 1 Reply Last reply Reply Quote 1
        • S
          smarteshome2020 @dabbeljuh last edited by

          @dabbeljuh sagte in jarvis v2.1.0 - just another remarkable vis:

          {"default":"mdi-battery-50",">80":"mdi-battery","<20":"mdi-battery-20 blink"}

          Danke, ich habe es gefunden, wobei sich da etwas von Beta 18 auf jetzt Beta 30 verändert hat. Jetzt geht es nur noch wenn "Batterie" der primäre Datenpunkt ist, Das war vorher anders.

          c442fc81-c1cc-4ad2-92dd-4f59cc600f31-image.png

          251a48b6-bc8f-44e5-80a9-0a4a92db30b6-image.png

          dabbeljuh 1 Reply Last reply Reply Quote 1
          • dabbeljuh
            dabbeljuh @smarteshome2020 last edited by

            @smarteshome2020, gut zu wissen, danke für den Hinweis.

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

              @Zefau: ist es möglich die aktuell gültige Farbe z.B. aus themeColorSecondary in den Json-Stil-Einstellungen der Geräte zu verwenden?

              Hintergrund/UseCase: Um etwas hervorzuheben, kann man ja mit Hilfe von { "color": "..." } etwas einfärben. Da die Farbe so jedoch statisch gesetzt wird, muss man entweder eine Farbe finden, die sowohl im Light- wie auch im Dark-Mode passt, oder man hätte eben die Möglichkeit z.B. die global definierte themeColorSecondary zu verwenden. Diese ändere ich wie auch die themeColorPrimary per Blockly-Script.

              Ich habe schon diverse Versuche gemacht, leider ohne Erfolg. Oder weiß jemand, wie man in der Json-Stil-Einstellung eines Geräts bereits im CSS definierte Farben abrufen kann?

              N dabbeljuh Zefau 3 Replies Last reply Reply Quote 0
              • N
                nolimitek @DNC74 last edited by

                Hi

                Ich habe den google shared locations adapter im Einsatz
                Möchte gerne die Koordinaten auf der Map anzeigen lassen
                Jedoch gibt der Adapter long und lat in 2 extra Datenpunkten aus.

                Kann ich mit Blockly was bauen damit long und lat in einem weiteren Datenpunkt richtig dargestellt werden

                Besten Dank

                lg
                Chris

                dabbeljuh flkontakt 2 Replies Last reply Reply Quote 0
                • dabbeljuh
                  dabbeljuh @DNC74 last edited by

                  Hi @DNC74, das wird wohl erst möglich sein, wenn @Zefau es explizit gangbar macht.

                  Bei den Icons kann man ja bereits eigene CSS-Klassen mittels Json mitgeben und diese werden unmittelbar ins Html geschrieben. Bei den Texten wird momentan jeweils eine CSS-Klasse generiert, die dann z.B. die angegebene Farbe enthält. Von daher würde ich sagen, prinzipiell machbar, aber eben nur durch entsprechende Erweiterung.

                  1 Reply Last reply Reply Quote 0
                  • dabbeljuh
                    dabbeljuh @nolimitek last edited by

                    Hallo @nolimitek, vor diesem Problem stand ich die Tage auch und hab mir ein kleines JS gebastelt. Nicht schön, aber wirksam. 😉 Vielleicht kannst du das ja als Grundlage verwenden:

                    // Speichert GPS-Koordinaten im von jarvis benötigten Format
                    
                    /**
                     *  Benötigte Datenpunkte innerhalb von "Objekte" erstellen
                     */
                    function createDP() {
                        createState('javascript.0.GPS.xxx', "", {
                            name: "Standort xxx",
                            desc: 'Standort xxx',
                            read: true, 
                            write: true,        
                            type: "string",
                        });
                    }
                    
                    /**
                     *  Position in DP schreiben
                     */
                    function writeGPS() {
                        // Aktuelle Position auslesen
                        var lat = getState("xxx.gpsLatitude").val;
                        var long = getState("xxx.gpsLongitude").val;
                        var coord = lat + "," + long;
                        // DP befüllen
                        setState("javascript.0.GPS.xxx", coord);
                    }
                    
                    /**
                     *  DP erstellen, falls noch nicht vorhanden
                     */
                    if (getState("javascript.0.GPS.xxx").val == undefined
                    || getState("javascript.0.GPS.xxx").val == '')
                    {
                        createDP();
                        writeGPS();
                    }
                    
                    /**
                     *  Bei Veränderungen die aktuelle Position auslesen
                     */
                    on({id: 'xxx.gpsLatitude', change: "ne"}, function () {
                      writeGPS();
                    });
                    
                    Johannes Bauerstatter 1 Reply Last reply Reply Quote 1
                    • Zefau
                      Zefau @DNC74 last edited by

                      @DNC74 sagte in jarvis v2.1.0 - just another remarkable vis:

                      ist es möglich die aktuell gültige Farbe z.B. aus themeColorSecondary in den Json-Stil-Einstellungen der Geräte zu verwenden?

                      Ja, siehe https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties mittels

                      a96ce697-2346-47a3-b650-3459f37a5ea0-image.png

                      dabbeljuh DNC74 2 Replies Last reply Reply Quote 2
                      • Johannes Bauerstatter
                        Johannes Bauerstatter @dabbeljuh last edited by

                        Hallo, ich hab jetzt soweit ziemlich alles gelesen, mir ist aber noch nicht klar, ob ich alle Objekte einlesen kann? Raum und Funktion nutze ich nicht. Einlesen würde ich gern die MQTT - Objekte, Aliase, Userdata.0 und Sonoff-Objekte.

                        Zefau 1 Reply Last reply Reply Quote 0
                        • flkontakt
                          flkontakt @nolimitek last edited by flkontakt

                          @nolimitek hatte die gleiche Aufgabenstellung, hier eine einfache Lösung RE: Wie 2 Werte per Blockly in einen Datenpunkt schreiben?

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

                          N 1 Reply Last reply Reply Quote 1
                          • Zefau
                            Zefau @Johannes Bauerstatter last edited by

                            @Johannes-Bauerstatter sagte in jarvis v2.1.0 - just another remarkable vis:

                            MQTT - Objekte, Aliase, Userdata.0 und Sonoff-Objekte.

                            Der Importer unterstützt alias mit bestimmter Struktur (Kanal = Gerät). Userdata geht nicht. Sonoff geht. MQTT kommt mit v2.2

                            Johannes Bauerstatter 1 Reply Last reply Reply Quote 0
                            • sigi234
                              sigi234 Forum Testing Most Active @Zefau last edited by sigi234

                              @Zefau

                              Hallo, wie kann ich von meinen Yamaha Receiver die Lautstärke regeln lassen.
                              Ich muss wo Min und Max einstellen können, da ich da -80 und 0 als Wert in 5 er Schritten setzen muss.

                              Der DP ist

                              {
                                "from": "system.adapter.admin.0",
                                "ts": 1527413940928,
                                "common": {
                                  "name": "VOL",
                                  "type": "string",
                                  "role": "state",
                                  "custom": {
                                    "history.0": {
                                      "enabled": true,
                                      "changesOnly": true,
                                      "debounce": "1000",
                                      "maxLength": "10",
                                      "retention": 0,
                                      "changesRelogInterval": 5,
                                      "changesMinDelta": 0,
                                      "aliasId": ""
                                    }
                                  }
                                },
                                "native": {},
                                "acl": {
                                  "object": 1636,
                                  "owner": "system.user.admin",
                                  "ownerGroup": "system.group.administrator",
                                  "state": 1636
                                },
                                "_id": "yamaha.0.Realtime.MAIN.VOL",
                                "type": "state"
                              }
                              

                              Beispiel:

                              Screenshot (3019).png

                              DNC74 1 Reply Last reply Reply Quote 0
                              • dabbeljuh
                                dabbeljuh @Zefau last edited by

                                Danke @Zefau, gut zu wissen.

                                Demnach dann: {"color":"var(--secondary)"}

                                1 Reply Last reply Reply Quote 1
                                • Johannes Bauerstatter
                                  Johannes Bauerstatter @Zefau last edited by

                                  @Zefau Vielen Dank für die Info.

                                  1 Reply Last reply Reply Quote 0
                                  • A
                                    Aru last edited by

                                    Nabend,

                                    Ich suche nach einer Möglichkeit über Jarvis einen Wert in einen Datenpunkt zu füllen. Ist das Möglich? Ich arbeite in einem Schichtsystem und habe unterschiedliche scripte die Schichtabhängig arbeiten. Ich würde gerne direkt in der Oberfläche mit 1-2 Klicks die Schicht für die Woche festlegen finde aber keine passende Möglichkeit.

                                    Zefau 1 Reply Last reply Reply Quote 0
                                    • DNC74
                                      DNC74 @Zefau last edited by DNC74

                                      @Zefau Klasse, funktioniert 👍

                                      So kann dann z.B. der Entsorgungskalender aussehen:

                                      • 1 Tag vor Abholung
                                        • das Icon wechselt auf das "Abhol-Icon" und fängt an in der passenden Farbe zu "glühen"
                                        • der Text für die Resttage wird fett geschrieben
                                      • am Tag der Abholung
                                        • das Icon blinkt zusätzlich für 10 Sekunden
                                        • der Text für die Resttage wird fett und in der sekundären Farbe geschrieben

                                      Entsorgungskalender.gif

                                        "ec4d61d9-112e-489d-8c3c-9159e03a6c52": {
                                          "id": "ec4d61d9-112e-489d-8c3c-9159e03a6c52",
                                          "function": "other",
                                          "states": {
                                            "daysLeft": {
                                              "state": {
                                                "node": "trashschedule.0.type.Altpapier_blau.daysLeft"
                                              },
                                              "icon": {
                                                "0": "delete-restore blink2s5x",
                                                "1": "delete-restore",
                                                "default": "delete-empty"
                                              },
                                              "unit": {
                                                "default": "Tage",
                                                "=1": "",
                                                "=0": ""
                                              },
                                              "label": "verbeibende Tage",
                                              "bodyElement": null,
                                              "iconStyle": {
                                                "default": {
                                                  "fontSize": "48px"
                                                },
                                                "<=1": {
                                                  "fontSize": "48px",
                                                  "text-shadow": "0 0 25px blue"
                                                }
                                              },
                                              "stateStyle": {
                                                "0": {
                                                  "color": "var(--secondary)",
                                                  "fontWeight": "bold"
                                                },
                                                "<=1": {
                                                  "fontWeight": "bold"
                                                }
                                              },
                                              "display": {
                                                "0": "heute",
                                                "1": "morgen"
                                              }
                                            },
                                            "nextDate": {
                                              "state": {
                                                "node": "trashschedule.0.type.Altpapier_blau.nextDateFormat"
                                              },
                                              "label": "Datum",
                                              "icon": "calendar",
                                              "iconStyle": ""
                                            }
                                          },
                                          "options": {},
                                          "attributes": {
                                            "_created": 1609527230666,
                                            "_updated": 1609599916081
                                          },
                                          "name": "Abfall Altpapier",
                                          "label": "Altpapier (blau)",
                                          "icon": "delete-empty",
                                          "hash": 1609599916082,
                                          "suppressPopup": true
                                        },
                                        "ec4d61d9-112e-489d-8c3c-9159e03a6c52_4cfab": {
                                          "id": "ec4d61d9-112e-489d-8c3c-9159e03a6c52_4cfab",
                                          "function": "other",
                                          "states": {
                                            "daysLeft": {
                                              "state": {
                                                "node": "trashschedule.0.type.Bioabfall_gruen.daysLeft"
                                              },
                                              "icon": {
                                                "0": "delete-restore blink2s5x",
                                                "1": "delete-restore",
                                                "default": "delete-empty"
                                              },
                                              "unit": {
                                                "default": "Tage",
                                                "=1": "",
                                                "=0": ""
                                              },
                                              "label": "verbeibende Tage",
                                              "bodyElement": null,
                                              "iconStyle": {
                                                "default": {
                                                  "fontSize": "48px"
                                                },
                                                "<=1": {
                                                  "fontSize": "48px",
                                                  "text-shadow": "0 0 25px green"
                                                }
                                              },
                                              "stateStyle": {
                                                "0": {
                                                  "color": "var(--secondary)",
                                                  "fontWeight": "bold"
                                                },
                                                "<=1": {
                                                  "fontWeight": "bold"
                                                }
                                              },
                                              "display": {
                                                "0": "heute",
                                                "1": "morgen"
                                              }
                                            },
                                            "nextDate": {
                                              "state": {
                                                "node": "trashschedule.0.type.Bioabfall_gruen.nextDateFormat"
                                              },
                                              "label": "Datum",
                                              "icon": "calendar",
                                              "iconStyle": ""
                                            }
                                          },
                                          "options": {},
                                          "attributes": {
                                            "_created": 1609527230666,
                                            "_updated": 1609605254477
                                          },
                                          "name": "Abfall Bio",
                                          "label": "Biotonne (grün)",
                                          "icon": "delete-empty",
                                          "hash": 1609605254477,
                                          "suppressPopup": true
                                        },
                                        "ec4d61d9-112e-489d-8c3c-9159e03a6c52_9099b": {
                                          "id": "ec4d61d9-112e-489d-8c3c-9159e03a6c52_9099b",
                                          "function": "other",
                                          "states": {
                                            "daysLeft": {
                                              "state": {
                                                "node": "trashschedule.0.type.Restmuell_schwarz.daysLeft"
                                              },
                                              "icon": {
                                                "0": "delete-restore blink2s5x",
                                                "1": "delete-restore",
                                                "default": "delete-empty"
                                              },
                                              "unit": {
                                                "default": "Tage",
                                                "=1": "",
                                                "=0": ""
                                              },
                                              "label": "verbeibende Tage",
                                              "bodyElement": null,
                                              "iconStyle": {
                                                "default": {
                                                  "fontSize": "48px"
                                                },
                                                "<=1": {
                                                  "fontSize": "48px",
                                                  "text-shadow": "0 0 25px var(--text)"
                                                }
                                              },
                                              "stateStyle": {
                                                "0": {
                                                  "color": "var(--secondary)",
                                                  "fontWeight": "bold"
                                                },
                                                "<=1": {
                                                  "fontWeight": "bold"
                                                }
                                              },
                                              "display": {
                                                "0": "heute",
                                                "1": "morgen"
                                              }
                                            },
                                            "nextDate": {
                                              "state": {
                                                "node": "trashschedule.0.type.Restmuell_schwarz.nextDateFormat"
                                              },
                                              "label": "Datum",
                                              "icon": "calendar",
                                              "iconStyle": ""
                                            }
                                          },
                                          "options": {},
                                          "attributes": {
                                            "_created": 1609527230666,
                                            "_updated": 1609610552738
                                          },
                                          "name": "Abfall Restmüll",
                                          "label": "Restmüll (schwarz)",
                                          "icon": "delete-empty",
                                          "hash": 1609610552739,
                                          "suppressPopup": true
                                        },
                                        "ec4d61d9-112e-489d-8c3c-9159e03a6c52_86c10": {
                                          "id": "ec4d61d9-112e-489d-8c3c-9159e03a6c52_86c10",
                                          "function": "other",
                                          "states": {
                                            "daysLeft": {
                                              "state": {
                                                "node": "trashschedule.0.type.Wertstoff_rot.daysLeft"
                                              },
                                              "icon": {
                                                "0": "delete-restore blink2s5x",
                                                "1": "delete-restore",
                                                "default": "delete-empty"
                                              },
                                              "unit": {
                                                "default": "Tage",
                                                "=1": "",
                                                "=0": ""
                                              },
                                              "label": "verbeibende Tage",
                                              "bodyElement": null,
                                              "iconStyle": {
                                                "default": {
                                                  "fontSize": "48px"
                                                },
                                                "<=1": {
                                                  "fontSize": "48px",
                                                  "text-shadow": "0 0 25px red"
                                                }
                                              },
                                              "stateStyle": {
                                                "0": {
                                                  "color": "var(--secondary)",
                                                  "fontWeight": "bold"
                                                },
                                                "<=1": {
                                                  "fontWeight": "bold"
                                                }
                                              },
                                              "display": {
                                                "0": "heute",
                                                "1": "morgen"
                                              }
                                            },
                                            "nextDate": {
                                              "state": {
                                                "node": "trashschedule.0.type.Wertstoff_rot.nextDateFormat"
                                              },
                                              "label": "Datum",
                                              "icon": "calendar",
                                              "iconStyle": ""
                                            }
                                          },
                                          "options": {},
                                          "attributes": {
                                            "_created": 1609527230666,
                                            "_updated": 1609531575579
                                          },
                                          "name": "Abfall Wertstoff",
                                          "label": "Wertstoff (rot)",
                                          "icon": "delete-empty",
                                          "hash": 1609531575580,
                                          "suppressPopup": true
                                        },
                                        "ec4d61d9-112e-489d-8c3c-9159e03a6c52_ff8a0": {
                                          "id": "ec4d61d9-112e-489d-8c3c-9159e03a6c52_ff8a0",
                                          "function": "other",
                                          "states": {
                                            "daysLeft": {
                                              "state": {
                                                "node": "trashschedule.0.type.Sperrmuell.daysLeft"
                                              },
                                              "icon": {
                                                "0": "delete-restore blink2s5x",
                                                "1": "delete-restore",
                                                "default": "delete-empty"
                                              },
                                              "unit": {
                                                "default": "Tage",
                                                "=1": "",
                                                "=0": ""
                                              },
                                              "label": "verbeibende Tage",
                                              "bodyElement": null,
                                              "iconStyle": {
                                                "default": {
                                                  "fontSize": "48px"
                                                },
                                                "<=1": {
                                                  "fontSize": "48px",
                                                  "text-shadow": "0 0 25px magenta"
                                                }
                                              },
                                              "stateStyle": {
                                                "0": {
                                                  "color": "var(--secondary)",
                                                  "fontWeight": "bold"
                                                },
                                                "<=1": {
                                                  "fontWeight": "bold"
                                                }
                                              },        
                                              "display": {
                                                "0": "heute",
                                                "1": "morgen"
                                              }
                                            },
                                            "nextDate": {
                                              "state": {
                                                "node": "trashschedule.0.type.Sperrmuell.nextDateFormat"
                                              },
                                              "label": "Datum",
                                              "icon": "calendar",
                                              "iconStyle": ""
                                            }
                                          },
                                          "options": {},
                                          "attributes": {
                                            "_created": 1609527230666,
                                            "_updated": 1609531539033
                                          },
                                          "name": "Abfall Sperrmüll",
                                          "label": "Sperrmüll",
                                          "icon": "delete-empty",
                                          "hash": 1609531539034,
                                          "suppressPopup": true
                                        }
                                      

                                      /* Blinking Icons */
                                      .blink {
                                         animation: blinker 2s linear infinite;
                                      }
                                      .blink1s {
                                         animation: blinker 1s linear infinite;
                                      }
                                      .blink2s5x {
                                         animation: blinker 2s linear 5;
                                      }
                                      
                                      @keyframes blinker {
                                         50% { opacity: 0; }
                                      }
                                      

                                      Danke @dabbeljuh 👍

                                      T W C 3 Replies Last reply Reply Quote 2
                                      • T
                                        Torrid @DNC74 last edited by

                                        @DNC74
                                        wie hast du das "glühen" realisiert?

                                        DNC74 1 Reply Last reply Reply Quote 0
                                        • DNC74
                                          DNC74 @Torrid last edited by DNC74

                                          @Torrid schau in den Spoiler "Geräte im json-Format" und du findest

                                          "text-shadow": "0 0 25px blue"
                                          

                                          siehe auch https://www.w3schools.com/css/css3_shadows.asp

                                          Johannes Bauerstatter 1 Reply Last reply Reply Quote 1
                                          • Johannes Bauerstatter
                                            Johannes Bauerstatter @DNC74 last edited by

                                            Großes Lob an den Entwickler. Das Ding ist sehr schnell einsatzfähig und sehr intuitiv.

                                            Ein kleines Problem hab ich noch:
                                            Wie muss ich einen Schalter definieren, damit dieser meinen Alias mit 0 oder 1 schaltet:

                                            e71eeaac-b574-4010-a6cb-dbcdff8f729b-image.png

                                            DNC74 Zefau 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            505
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            jarvis material material ui materialdesign vis visualisierung visualization
                                            316
                                            6126
                                            3711797
                                            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