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

    • Update NodeJS best practise, supported 14, 16 und 18!

    • Update js-controller 4.0.24 (Stable)

    • Fehler 25, 217 oder "ENOTEMPTY" bei Adapter-Install/Update

    jarvis v2.2.0 - just another remarkable vis

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

      @hansi1234 Mal auf "abbrechen" geklickt?

      H S 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
        • S
          SKB Developer @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.

            S 1 Reply Last reply Reply Quote 0
            • S
              SKB Developer @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.

                S 1 Reply Last reply Reply Quote 0
                • S
                  SKB Developer @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?

                    S 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
                      • S
                        SKB Developer @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.

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            SKB Developer @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
                                    • S
                                      SKB Developer 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
                                          • M
                                            MCU @SKB last edited by MCU

                                            @skb Also man müsste also in DP dann für Starten schreiben: ??

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

                                            und für Stoppen

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

                                            Welche Version nutzt du v2 oder v3?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.3k
                                            Online

                                            29.2k
                                            Users

                                            63.4k
                                            Topics

                                            968.0k
                                            Posts

                                            jarvis material material ui materialdesign vis visualisierung visualization
                                            313
                                            6085
                                            142753
                                            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-2021
                                            logo