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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    jarvis v2.2.0 - just another remarkable vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Hansi1234 @SKB last edited by

      @skb das hab ich auch. Ist evtl bei v3 anders. Kann ich nicht beantworten. Warte noch auf ne stable

      M 1 Reply Last reply Reply Quote 0
      • M
        MCU @Hansi1234 last edited by

        @hansi1234 Mal auf "abbrechen" geklickt?

        H SKB 2 Replies Last reply Reply Quote 0
        • H
          Hansi1234 @MCU last edited by

          @mcu noch nie 😄
          Bin aber zur Zeit nicht daheim zum testen

          1 Reply Last reply Reply Quote 0
          • SKB
            SKB Developer Most Active @MCU last edited by

            @mcu, @Hansi1234 Abbrechen klappt, jedoch kommt das Fenster beim Reload wieder.

            M 1 Reply Last reply Reply Quote 0
            • M
              MCU @SKB last edited by

              @skb Habe gerade kein v2. Kannst du mir die Struktur der Settings schicken mit Inhalt.

              SKB 1 Reply Last reply Reply Quote 0
              • SKB
                SKB Developer Most Active @MCU last edited by

                @mcu den Datenpunkt settings von Jarvis?

                M 1 Reply Last reply Reply Quote 0
                • M
                  MCU @SKB last edited by

                  @skb Ja.

                  SKB 1 Reply Last reply Reply Quote 0
                  • SKB
                    SKB Developer Most Active @MCU last edited by

                    @mcu

                    {
                      "_isSmallScreen": false,
                      "_isMobile": false,
                      "_isTablet": false,
                      "token": "34f3e454dab3493c4f9d54645be194bc",
                      "sendUsageData": true,
                      "joyrideIntroduction": true,
                      "joyrideConfiguration": true,
                      "configTab": "layout",
                      "configGroupDevices": "function",
                      "configExpertMode": false,
                      "columnsOnMediumScreenSizes": "3",
                      "themeDarkMode": true
                    }
                    
                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MCU @SKB last edited by MCU

                      @skb Danke. Aber ich dachte da wäre ein Notification-DP drin. Welcher Browser war das bei Dir?

                      SKB 1 Reply Last reply Reply Quote 0
                      • Diginix
                        Diginix @MCU last edited by

                        @mcu sagte in jarvis v2.2.0 - just another remarkable vis:

                        @diginix Das geht nicht, auch nicht mit v3.
                        Man kann aber versuchen die Farbe aus einer root-Variable zu ziehen:

                        In CSS muss dann diese definiert werden:

                        :root {
                          --mein-bg-color: green;
                        }
                        
                        {"default":{"color":"var(--mein-bg-color)"}}
                        

                        Habe ich noch nicht, muss gleich mal machen.

                        EDIT: mit v3 funktioiniert es, v2 kann gerade nicht testen. Du vielleicht?

                        Funktioniert perfekt mit v2.

                        1 Reply Last reply Reply Quote 1
                        • SKB
                          SKB Developer Most Active @MCU last edited by

                          @mcu Diese hätte ich noch.Screenshot_20210929-231241_Chrome.jpg

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            MCU @SKB last edited by MCU

                            @skb Bei welchem Browser hast du das Problem? Alle?
                            Ist der Browser so eingestellt, das er nach der Sitzung die Browser-Daten komplett löscht? Dann verliert er natürlich dei Info, das man schon mal "Abbrechen" geklickt hat.
                            Habe jetzt bei Chrome,Firefox,Edge probiert. Erhalte nur einmal die Nachfrage bzgl Notifications. Klicke auf Abbrechen und dann nach F5, bekomme ich keine Nachfrage mehr.

                            SKB 1 Reply Last reply Reply Quote 0
                            • SKB
                              SKB Developer Most Active @MCU last edited by

                              @mcu Also beim Fully Kiosk kann ich nicht akzeptieren sondern nur Abbrechen drücken.
                              Die anderen Browser frieren auf meinem Tablet nach x Stunden Laufzeit ein und die Oberfläche reagiert nicht mehr.
                              Aktuell läuft das Kiosk prima.
                              Ich schaue nochmal in die Reload Daten.
                              Ist aber eigentlich nicht notwendig, Jarvis neu zu laden, oder?

                              1 Reply Last reply Reply Quote 0
                              • S
                                Smart81 @Diginix last edited by

                                @diginix

                                Perfekt ! Das war das Problem 🙂 Vielen Dank diginix !!!!

                                Allerdings hast du natürlich recht , ich kann den map64 wert gar nicht für meine Ring anwenden 😞
                                Datenpunkt: ring.0.doorbell_83834915.snapshot_file

                                Wert: /opt/iobroker/iobroker-data/ring_0/snapshot/snapshot83834915_1632981871393.jpg

                                (Dieser wird immer wieder neu geschrieben sobald a) eine Aktivität ist oder ich den snapshotrequest file button drücke)

                                Eine aktualisierung kann man triggern , jedoch wenn ich diese nun in einen von mir erstellen Datenpunkt schreibe , weiss ich nicht was man noch dazu schreiben müsste 😕

                                Diginix 1 Reply Last reply Reply Quote 0
                                • Diginix
                                  Diginix @Smart81 last edited by

                                  @smart81 Theoretisch könnte das reichen:

                                  <img src="hier der Wert aus dem Datenpunkt mit dem Pfad zum Bild" />
                                  
                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    Smart81 @Diginix last edited by Smart81

                                    @diginix

                                    Hey !

                                    Das wäre ja einfach , aber wie weiss er denn das er das letzte jpg dazu nutzen soll?

                                    sprich , es sind immer andere Namen die das nächste Bild hat leider

                                    Im pfad befindet sich jpgs und mp4 dateien , aber anzeigen tun er beides nicht 😕

                                    snip.PNG

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      MCU @Smart81 last edited by MCU

                                      @smart81 Zeig doch mal was du in den DP für jarvis schickst.

                                      Jarvis kann keine relative Pfade verarbeiten. Man muss einen HTTP-Server haben, damit jarvis direkt auf das File zugreifen kann: http://192.168.178.xx/ring/imageA.jpg oder man kopiert die Daten in /vis.0-Verzeichnis. Von dort kann jarvis die Daten auch lesen: http://192.168.178.xx:8082/vis.0/....

                                      Wie lautet das Objekt für jarvis? 0_userdata.0......

                                      S 1 Reply Last reply Reply Quote 1
                                      • SKB
                                        SKB Developer Most Active last edited by SKB

                                        Gibt es eigentlich auch die Möglichkeit, JSON Daten in einen Datenpunkt zu schreiben?

                                        Hintergrund: Der Roomba Adapter benötigt sowas:

                                        {
                                          "command": "stop",
                                          "time": 0,
                                          "initiator": "Skript",
                                          "timestamp":0
                                        }
                                        

                                        Dieser Ansatz klappt leider nicht:

                                        {
                                          '{"command":"start"}': 'Starten',
                                        }
                                        

                                        Danke!

                                        M 1 Reply Last reply Reply Quote 0
                                        • S
                                          Smart81 @MCU last edited by

                                          @mcu

                                          Hallo mcu !

                                          Vielen Dank für die Hilfe 🙂

                                          Mein Object heißt so: 0_userdata.0.Camera das hatte ich als Datenpunkt für die ring angelegt.

                                          Lieben Gruß

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            MCU @Smart81 last edited by

                                            @smart81
                                            Kleines Experiment: Ist noch nicht 100%ig. Müssen wir zusammen machen.
                                            IP anpassen: const serverIP = '192.168.178.xx'; / IP anpassen /

                                            // **********************************************
                                            // script zur Erstellung eines DP mit html-Inhalt
                                            // für die Darstellung von einem image oder einem
                                            // video in jarvis
                                            // **********************************************
                                            // createState('0_userdata.0.jarvis.ringDP', {read: true, write: true, name: "Ring-DP", type: "string", role: "text", def: "" });
                                            // /opt/iobroker/iobroker-data/files/vis.0/Anruferbild.jpg
                                            // /media/shares/bilder/Anruferbild.jpg
                                            
                                            const jarvisDP = '0_userdata.0.Camera';
                                            const ringDP = 'ring.0.doorbell_83834915.snapshot_file';
                                            const serverIP = '192.168.178.xx';  /* IP anpassen */
                                            let dataBild = '';
                                            let dataText = 'Ring';
                                            var fs = require('fs');
                                            
                                            on({id: ringDP, change: "any"}, function (obj) {
                                               let value = obj.state.val;
                                               // Kopieren der Daten in vis.0
                                               if (value.indexOf('http')>=0){
                                                   makeHtml(value);
                                               }else
                                               {    
                                                   const bild1 = fs.readFileSync(value);
                                                   if (value.indexOf('jpg')>0){
                                                       log(value);
                                                       // Wechsel Bild
                                                       // Auslesen der Verzeichnisse und filename
                                                       let filename = filenameSuche(value);
                                                       log("Filename: " +filename);
                                                       if (dataText == 'Bild1'){
                                                           dataText = 'Bild2';
                                                       }else{
                                                           dataText = 'Bild1';
                                                       }
                                                       if (dataText == 'Bild1'){
                                                           writeFile('vis.0','/main/ring/' + filename, bild1,function(){});  
                                                       }else{
                                                           writeFile('vis.0','/main/ring/' + filename, bild1,function(){});  
                                                       }
                                                       log('http://'+serverIP+':8082/vis.0/main/ring/'+filename);
                                                       setTimeout(function(){
                                                           // Bildname toggeln, da sonst jarvis nicht aktualisiert
                                                           if (dataText == 'Bild1'){
                                                               makeHtml('http://'+serverIP+':8082/vis.0/main/ring/'+filename);
                                                           }else{
                                                               makeHtml('http://'+serverIP+':8082/vis.0/main/ring/'+filename);
                                                           }
                                                           
                                                       },3000);
                                                       //makeHtml('http://'+serverIP+':8082/vis.0/main/ring/bild.jpg');
                                                   }
                                                   if (value.indexOf('mp4')>0){
                                                       log(value);
                                                       writeFile('vis.0','/main/ring/video.mp4', bild1,function(){});
                                                       if (dataText == 'Bild1'){
                                                               dataText = 'Bild2';
                                                           }else{
                                                               dataText = 'Bild1';
                                                           }
                                                       setTimeout(function(){
                                                           makeHtml('http://'+serverIP+':8082/vis.0/main/ring/video.mp4');
                                                       },3000);
                                                   }
                                               }
                                            });
                                            //makeHtml('http://192.168.178.89:8082/vis.0/main/ring/bild.jpg');
                                            
                                            function filenameSuche(data){
                                               let slash = String(data).lastIndexOf('/');
                                               let verzeichnis = data.substr(0,slash);
                                               log(verzeichnis);
                                               return data.substr(slash+1,data.length);
                                            }
                                            
                                            
                                            
                                            
                                            function makeHtml(data){
                                               //Rest nicht verändern
                                               let datasrc = data; // 'http://192.168.178.89/download/Just the Way You Are.mp3'
                                               let dataId = 'video1';
                                               let startTime = '';
                                               let imagealt = dataText;
                                               let imgwidth = '100%'; // auto, %, px
                                               let imgheight= 'auto'; // auto, % , px
                                               let videoposter = dataBild;  //'http://192.168.178.89/download/Wecker.gif';
                                               let autoPlay = ''; // autoplay
                                               let loop = ''; //loop
                                               let preload = 'none';
                                               let muted = ''; //muted
                                               let htmlCode ='';
                                            
                                               htmlCode += '<div>';
                                               if (datasrc != null || datasrc != undefined) {
                                                   if (datasrc.indexOf('.mp4')>0 ||datasrc.indexOf('.ogg')>0 || datasrc.indexOf('.mp3')>0 ){
                                                       htmlCode += '<video id="'+ dataId +'"';
                                                       htmlCode += ' poster="'+ videoposter +'" ';
                                                       htmlCode +=  autoPlay;
                                                       htmlCode += ' alt="' + imagealt + '"';
                                                       htmlCode += loop;
                                                       htmlCode += ' preload="'+ preload +'"';
                                                       htmlCode += muted;
                                                       htmlCode += ' width="'+ imgwidth + '"';
                                                       htmlCode += ' height="' + imgheight + '" controls>';
                                                       if (datasrc.indexOf('.mp3')>0){
                                                           if (startTime!=''){
                                                               htmlCode += '<source src="'+ datasrc + '#t=' + startTime + '" type ="audio/mp3"';
                                                           }else{
                                                               htmlCode += '<source src="'+ datasrc + '" type ="audio/mp3"';
                                                           }
                                                       }else{
                                                           if (startTime!=''){
                                                               htmlCode += '<source src="'+ datasrc + '#t=' + startTime +'" type ="video/mp4"';
                                                           }else{
                                                               htmlCode += '<source src="'+ datasrc +'" type ="video/mp4"';
                                                           }
                                                       }
                                                       htmlCode += '</video>';
                                                   }else{
                                                       htmlCode += '<img width="' + imgwidth + '" height="'+imgheight+'" ';
                                                       htmlCode += 'src ="'+ datasrc +'" alt="'+ imagealt +'" >';
                                                   }
                                               }
                                               htmlCode += '</div>';
                                               //log(htmlCode);
                                               setState(jarvisDP,htmlCode);
                                            }
                                            
                                            

                                            S 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            433
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

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