Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. von wo wird VIS abgefragt?

    NEWS

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    von wo wird VIS abgefragt?

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      Digi-Bit @Homoran last edited by

      @homoran sagte in von wo wird VIS abgefragt?:

      @digi-bit sagte in von wo wird VIS abgefragt?:

      Ich würde gerne irgend wo abfragen von wo aus eine VIS (X) Seite abgefragt wird.
      Also ob vom PC oder TAB mit Fullybrowser oder von sonst wo ............

      von da wo du die vis aufrufst

      Hallo,

      Wo kann man den Abfragen ob ich die VIS Seite vom Tablet oder vom PC mir anzeigen lasse ?

      Kann ich da irgend wo die IP Adresse oder MAC abfragen und wenn wo ?

      mfg

      Digi-Bit

      Homoran Boronsbruder 2 Replies Last reply Reply Quote 0
      • Boronsbruder
        Boronsbruder @Digi-Bit last edited by

        @digi-bit
        im Datenpunkt
        vis.0.control.instance
        steht die ID der Vis-Instanz zur Verfügung

        Weiterhin sind invis.0.control auch noch die aufgerufene Seite und was getan wurde.
        Kann auch zur Steuerung wie z.B. der Remote Umschaltung von Seiten genutzt werden.

        If user changes the view or at start the variables will be filled by the vis with
        
            control.instance: browser instance and ack=true
            control.data: project and view name in form project/view, e.g. main/view (and ack=true)
            control.command: changedView and ack=true
        

        Quelle: GitHUb iobroker.vis readme

        1 Reply Last reply Reply Quote 1
        • Homoran
          Homoran Global Moderator Administrators @Digi-Bit last edited by

          @digi-bit sagte in von wo wird VIS abgefragt?:

          Wo kann man den Abfragen ob ich die VIS Seite vom Tablet oder vom PC mir anzeigen lasse ?

          siehe Antwort von @Boronsbruder.
          Aber ob dir das hilft ist fraglich!

          Ohne ausreichende Informationen ist Helfen schwierig

          1 Reply Last reply Reply Quote 0
          • Boronsbruder
            Boronsbruder @Digi-Bit last edited by

            @digi-bit
            Hier hat BananaJoe auch noch einen Umweg beschrieben um die IP-Adresse zu bestimmen und remote-Befehle auf den Vis auszuführen

            1 Reply Last reply Reply Quote 0
            • D
              Digi-Bit last edited by

              @boronsbruder sagte in von wo wird VIS abgefragt?:

              @digi-bit
              Hier hat BananaJoe auch noch einen Umweg beschrieben um die IP-Adresse zu bestimmen und remote-Befehle auf den Vis auszuführen

              Ja, das kommt so hin.

              Schade ist das man so viel aufwand betreiben muss um auf 2 verschiedenen TABs die selbe seite nur mit anderen Farben darstellen zu können.....

              Nach der IP die irgendwo im Datenblock abgelegt wird im vis adapter oder web wäre da hilfreicher.....

              vieleicht kommt ja irgend wann mal was wo man das einfacher haben kann und vom IOB schon eingebaut .......

              trotzdem danke erstmal !

              mfg

              Digi-Bit

              Homoran liv-in-sky 2 Replies Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @Digi-Bit last edited by

                @digi-bit sagte in von wo wird VIS abgefragt?:

                um auf 2 verschiedenen TABs die selbe seite nur mit anderen Farben darstellen zu können.....

                ich hab immer noch keine Ahnung was du da machst?

                "nur mal eben" on the fly die CSS Daten eines views für ein Ausgabegeröt zu ändern, kannst du doch nicht wirklich meinen?

                D 1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @Digi-Bit last edited by

                  @digi-bit sagte in von wo wird VIS abgefragt?:

                  Nach der IP die irgendwo im Datenblock abgeleg

                  lassen die browser nicht zu - sicherheit!

                  es gibt noch die möglichkeit, 2 oder mehr web adapter instanzen zu nutzen - dann kann der port abgefragt werden und mit einem script wird dann der port ausgelesen und in einen dp geschrieben - d.h. es muss jedes tablet, oder pc,.. eine eigene webinstanz aufrufen - das passiert über die port nummer - auf diese port nummer wird reagiert - via blockly oder wieder ein javascript

                  also ähnlich aufwendig - aber ohne externe installationen

                  D 1 Reply Last reply Reply Quote 1
                  • D
                    Digi-Bit @Homoran last edited by

                    @homoran sagte in von wo wird VIS abgefragt?:

                    @digi-bit sagte in von wo wird VIS abgefragt?:

                    um auf 2 verschiedenen TABs die selbe seite nur mit anderen Farben darstellen zu können.....

                    ich hab immer noch keine Ahnung was du da machst?

                    "nur mal eben" on the fly die CSS Daten eines views für ein Ausgabegeröt zu ändern, kannst du doch nicht wirklich meinen?

                    Grob gesagt will ich : das auf Tablet 1 (im DARK Moden ( (ich hoffe das du da weist was ich meine )) ein Widgets mit Roten rahmen dargestellt wird und auf dem Tablet 2 im "normalen " Modus oder ebent WinPC mit grünen Rahmen. ( das ist jetzt nur ein beispiel )

                    Dazu müsste ich aber wissen auf welchem Tablet die Vis Seite aufgerufen wird.
                    z.b. an Hand einer IP oder sonst einer Erkennung die in irgend einem Objekt steht.

                    So kann ich bei dem Widgets bei "Sichtbarkeit" den Datenpunkt abfragen ob er true oder false ist oder ob eine bestimmte zahl in dem Objekt drin steht das kann man da ja dann einstellen

                    Wenn die IP in irgend einem Objekt stehen würde welche dann die Vis Seite abfragen könnte wäre am besten..... geht aber so wohl nicht wie ich das erlesen habe.

                    mfg

                    Digi-Bit

                    Homoran 1 Reply Last reply Reply Quote 0
                    • D
                      Digi-Bit @liv-in-sky last edited by

                      @liv-in-sky sagte in von wo wird VIS abgefragt?:

                      @digi-bit sagte in von wo wird VIS abgefragt?:

                      Nach der IP die irgendwo im Datenblock abgeleg

                      lassen die browser nicht zu - sicherheit!

                      es gibt noch die möglichkeit, 2 oder mehr web adapter instanzen zu nutzen - dann kann der port abgefragt werden und mit einem script wird dann der port ausgelesen und in einen dp geschrieben - d.h. es muss jedes tablet, oder pc,.. eine eigene webinstanz aufrufen - das passiert über die port nummer - auf diese port nummer wird reagiert - via blockly oder wieder ein javascript

                      also ähnlich aufwendig - aber ohne externe installationen

                      Hi,

                      Ja das habe ich auch schon gelesen ......

                      Ist eine überlegung wert .........

                      den auf einen Tab im Dark Modus sehen die Seiten einfach scheisse aus 😞

                      mfg
                      Digi-Bit

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @Digi-Bit last edited by Homoran

                        @digi-bit sagte in von wo wird VIS abgefragt?:

                        Grob gesagt will ich : das auf Tablet 1 (im DARK Moden ( (ich hoffe das du da weist was ich meine )) ein Widgets mit Roten rahmen dargestellt wird und auf dem Tablet 2 im "normalen " Modus oder ebent WinPC mit grünen Rahmen.

                        also doch!
                        Diese Informationen liegen als CSS Daten im vis-views.json vor.

                        um das zu realisieren müsste -wie vermutet- mal eben on the fly dieses JSON angepasst werden.

                        Das ist unrealistisch.
                        Da solltest du eher mit Instanzenspezifischen views arbeiten. (wie auch immer das funktioniert)

                        ob es mit der Sichtbarkeit funktioniert wäre zu testen.
                        Immerhin scheint vis die Instanz zu kennen
                        Screenshot_20230212-155135_Firefox.jpg

                        D 2 Replies Last reply Reply Quote 0
                        • D
                          Digi-Bit @Homoran last edited by

                          @homoran sagte in von wo wird VIS abgefragt?:

                          @digi-bit sagte in von wo wird VIS abgefragt?:

                          Grob gesagt will ich : das auf Tablet 1 (im DARK Moden ( (ich hoffe das du da weist was ich meine )) ein Widgets mit Roten rahmen dargestellt wird und auf dem Tablet 2 im "normalen " Modus oder ebent WinPC mit grünen Rahmen.

                          also doch!
                          Diese Informationen liegen als CSS Daten im vis-views.json vor.

                          um das zu realisieren müsste -wie vermutet- mal eben on the fly dieses JSON angepasst werden.

                          Das ist unrealistisch.
                          Da solltest du eher mit Instanzenspezifischen views arbeiten. (wie auch immer das funktioniert)

                          Das ist aber schade das man den DARK Modus eines Handy oder Tablet nicht bei VIS berücksichtigen kann ;-(

                          vielleicht erbarmen die Leute die VIS 2 grade bauen sich mal dort eine Möglichkeit einzubauen.

                          mfg

                          Digi-Bit

                          Homoran OliverIO Jey Cee 3 Replies Last reply Reply Quote 0
                          • D
                            Digi-Bit @Homoran last edited by

                            @homoran sagte in von wo wird VIS abgefragt?:

                            @digi-bit sagte in von wo wird VIS abgefragt?:

                            Grob gesagt will ich : das auf Tablet 1 (im DARK Moden ( (ich hoffe das du da weist was ich meine )) ein Widgets mit Roten rahmen dargestellt wird und auf dem Tablet 2 im "normalen " Modus oder ebent WinPC mit grünen Rahmen.

                            Da solltest du eher mit Instanzenspezifischen views arbeiten. (wie auch immer das funktioniert)

                            ob es mit der Sichtbarkeit funktioniert wäre zu testen.
                            Immerhin scheint vis die Instanz zu kennen
                            Screenshot_20230212-155135_Firefox.jpg

                            das ist keine Lösung weil sich ab und an diese auf den Selben Tablet ändern tut und das bringt dann bei "Sichtbarkeit" 0 wert

                            p.s. das Widgets renn bei mir auf der Hauptseite daher kann ich das sehen

                            mfg

                            1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @Digi-Bit last edited by

                              @digi-bit sagte in von wo wird VIS abgefragt?:

                              Das ist aber schade das man den DARK Modus eines Handy oder Tablet nicht bei VIS berücksichtigen kann ;-(

                              vielleicht solltest du mal mit den Themes spielen.

                              @digi-bit sagte in von wo wird VIS abgefragt?:

                              weil sich ab und an diese auf den Selben Tablet ändern tut

                              nur wenn du mit anderem Browser zugreifst

                              D 1 Reply Last reply Reply Quote 0
                              • D
                                Digi-Bit @Homoran last edited by

                                @homoran sagte in von wo wird VIS abgefragt?:

                                @digi-bit sagte in von wo wird VIS abgefragt?:

                                Das ist aber schade das man den DARK Modus eines Handy oder Tablet nicht bei VIS berücksichtigen kann ;-(

                                vielleicht solltest du mal mit den Themes spielen.

                                @digi-bit sagte in von wo wird VIS abgefragt?:

                                weil sich ab und an diese auf den Selben Tablet ändern tut

                                nur wenn du mit anderem Browser zugreifst

                                ne, leider nicht ich habe auf den TABs fullybrowser und ebent grade wurde wieder dies geändert.

                                "hier klicken bla bla..... "

                                wäre auch zu schön ....

                                mfg

                                Digi-Bit

                                Homoran 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @Digi-Bit last edited by

                                  @digi-bit sagte in von wo wird VIS abgefragt?:

                                  fullybrowser

                                  security sucks 😂

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    Digi-Bit @Homoran last edited by

                                    @homoran sagte in von wo wird VIS abgefragt?:

                                    security sucks

                                    aber sowas von manchmal ................

                                    liv-in-sky 1 Reply Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @Digi-Bit last edited by

                                      @digi-bit

                                      kopiere das im vis editor in das script tab

                                         
                                            if (location.port=="8082") {
                                                
                                        $('.vis-view').css({
                                           'background-image': ' linear-gradient(#c6c6dc,#a8b4d6, #fabf67,#f9a05a)',
                                         })}
                                         else{
                                         $('.vis-view').css({
                                           'background-image': ' linear-gradient(90deg, rgba(194,50,167,1) 0%, rgba(69,113,175,1) 49%, rgba(84,141,159,1) 100%)',
                                         })
                                         
                                         }
                                         
                                         vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port', location.port);
                                      
                                      
                                      
                                      

                                      du brauchst eigentlich nur

                                      vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port', location.port);
                                      

                                      das andere ist für den hintergrund - ich habe es einfach mal drin gelassen

                                      du legst eine 2te web adapter instanz an mit einem noch freien port und einen dp (bei mir: 0_userdata.0.CONTROL-OWN.AAATEST.vis-port - kannst du selbst bestimmen) - dann sollte der dp (typ zeichenkette) gesetzt werden mit der port number, die das tablet nutzt und du kannst daruf reagieren

                                      oder du willst einen boolean dp, dann:

                                       if (location.port=="8082") {
                                         vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port',true);
                                      
                                      	}
                                      
                                      
                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        Digi-Bit @liv-in-sky last edited by

                                        @liv-in-sky sagte in von wo wird VIS abgefragt?:

                                        @digi-bit

                                        kopiere das im vis editor in das script tab

                                         
                                            if (location.port=="8082") {
                                                
                                          $('.vis-view').css({
                                             'background-image': ' linear-gradient(#c6c6dc,#a8b4d6, #fabf67,#f9a05a)',
                                           })}
                                         else{
                                         $('.vis-view').css({
                                             'background-image': ' linear-gradient(90deg, rgba(194,50,167,1) 0%, rgba(69,113,175,1) 49%, rgba(84,141,159,1) 100%)',
                                           })
                                         
                                         }
                                         
                                         vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port', location.port);
                                        
                                        
                                        
                                        

                                        du brauchst eigentlich nur

                                        vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port', location.port);
                                        

                                        das andere ist für den hintergrund - ich habe es einfach mal drin gelassen

                                        du legst eine 2te web adapter instanz an mit einem noch freien port und einen dp (bei mir: 0_userdata.0.CONTROL-OWN.AAATEST.vis-port - kannst du selbst bestimmen) - dann sollte der dp (typ zeichenkette) gesetzt werden mit der port number, die das tablet nutzt und du kannst daruf reagieren

                                        oder du willst einen boolean dp, dann:

                                         if (location.port=="8082") {
                                           vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port',true);
                                        
                                        	}
                                        
                                        

                                        Erstmal danke das sich welche melden mit Ideen !!!!!!

                                        naja.... ist eine Idee.....aber unterm strich auch doof weil:

                                        TAB 1 = Normal Mode

                                        TAB 2 = Dark Mode

                                        ich habe ein Widgets gedoppelt und lass das eine bei Port 8081 anzeigen und das andere bei 8082

                                        soweit geht das wenn ich die Seite am jeweiligen TAB aktualisiere.

                                        Nur.... wen ich die Seite an TAB 2 aktualisiere dann verschwindet das Widgets beim TAB 1, das ist dann Blank...

                                        Also unterm strich auch blöd ..................

                                        gibt es noch was besseres ?

                                        mfg

                                        Digi-Bit

                                        liv-in-sky 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @Digi-Bit last edited by liv-in-sky

                                          @digi-bit

                                          verstehe - eine ganz andere habe ich nicht

                                          ist logisch, dass das passiert - hatte ich nicht drangedacht 😞

                                          habe schon was, was funktioniert - ist aber etwas aufwendiger - man müßte die einzelnen widgets alle in einem script pflegen

                                          das ganze funktioniert nicht über sichtbarkeit, sondern über den z-index (evtl ging auch opacity)

                                          die änderung des z-index sieht man hier:

                                          waitForElement($('body'),'#w00009', 'dummy', 'dummy', function () {
                                          
                                            // Widget ist geladen, auf das Widget klicken, w02705 ist die ID von meinem basic - Screen Resolution Widget
                                          
                                           console.log("jetzt")
                                          
                                             // und in einen Datenpunkt schreiben
                                          
                                            
                                             
                                             
                                               $('#w00009').click(function(){
                                            vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port', location.port);
                                            vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port-sichtbar', false);
                                            console.log(location.port);
                                             setTimeout( () => { 
                                                vis.setValue('0_userdata.0.CONTROL-OWN.AAATEST.vis-port-sichtbar',true); 
                                             }, 6000);
                                             
                                             
                                          });
                                          
                                           /*  }, 3000);*/
                                          
                                          }, 0, true);
                                          
                                          waitForElement($('body'),'#w00382', 'dummy', 'dummy', function () {
                                          
                                            // Widget ist geladen, auf das Widget klicken, w02705 ist die ID von meinem basic - Screen Resolution Widget
                                          
                                           console.log("jetzt test für verschieden widgets pro tablet")
                                           console.log("port :"+location.port);
                                             // und in einen Datenpunkt schreiben
                                          
                                            var myport=location.port
                                            if(myport=="8072"){
                                             setTimeout( () => {
                                              console.log("update")
                                              $("#w00382").css('z-index', 30);
                                              $("#w00382").text("z-index"+",30 bei tablet 2");
                                             }, 100);}
                                            
                                             
                                          
                                             
                                             
                                          
                                          
                                           /*  }, 3000);*/
                                          
                                          }, 0, true);
                                          

                                          in zeile 39 wird der z-index angepaßt, wenn der port 8082. im widget ist das "normal-mode" widget um einen z-index wert höher (z.b 6)
                                          das darunter liegende widget für den dark-mode hat den z-index 5 - ist also darunter und nicht zu sehen

                                          das script ändert den z-index beim port 8072 und somit erscheint das dark-mode widget, weil es einen z-index von 30 bekommt - die sichtbarkeit wird nicht genutzt

                                          script-vis23.gif

                                          dummerweise müßte für jedes widget die/eine function waitForElement ... angelegt werden - bei vielen widgets sehr nervig

                                          die function waitForElement ... wird benötigt, weil sichergestellt sein muss, dass das widget fertig geladen ist bevor der z-index geändert wird

                                          D 2 Replies Last reply Reply Quote 0
                                          • D
                                            Digi-Bit @liv-in-sky last edited by

                                            @liv-in-sky

                                            Ich muss also das Script für jedes Widgets einmal einfügen.... ( die Daten für JEDES Widgets Pro einfügen dem Widgets anpassen....)

                                            ähm....mein Projekt ist fast 200 MB gross und denke mal das ich min. 300 Seiten habe (eher mehr ) da brauch ich ja
                                            Monate für 🤢

                                            dann fang ich m al an..... hust....

                                            Jedenfalls ein dickes DANKE für deine Bemühungen.....

                                            vielleicht kann man ja in weiter Zukunft mal was in VIS2 einbauen wo man sowas einfacher händeln kann....

                                            mfg

                                            Digi-Bit

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            807
                                            Online

                                            32.1k
                                            Users

                                            80.6k
                                            Topics

                                            1.3m
                                            Posts

                                            vis widgets visualisierung web-adapter
                                            8
                                            68
                                            5335
                                            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