Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Control.instance abfragen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Control.instance abfragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      PerpetuumMobile last edited by

      Hiermit kann ich für alle geöffneten Browser Fenster die View umschalten:

      whoami = "FFFFFFFF";
      setState("vis.0.control.instance", whoami);
      setState("vis.0.control.data",     'Board');
      setState("vis.0.control.command",  'changeView');
      

      3 Browser offen (FireFox, Chrome & Safari) => klappt

      Ich möchte dies aber nur für MEIN Browser Fenster - daher versuche ich:

      whoami = getState( "vis.0.control.instance.state");
      setState("vis.0.control.instance", whoami);
      setState("vis.0.control.data",     'Board');
      setState("vis.0.control.command",  'changeView');
      

      Damit ändert sich die View zwar nicht mehr in allen Browsern, aber ich bekomme das Verhalten

      3 Browser offen (FireFox, Chrome & Safari)

      2 machen changeView (FireFox & Chrome) - Safari nicht - auch wenn ich das Script aus Safari triggere

      Daher meine Frage => Wie finde ich die korrekte vis.0.control.instance für exakt meine Session?

      danke

      PerpetuumMobile

      PS. dies ist meine erste Frage - bitte bei Dummheit um Nachsicht

      1 Reply Last reply Reply Quote 0
      • P
        pix last edited by

        Genau das würde ich auch gern wissen. Gibt es vielleicht ein Widget, das die Instanz anzeigt?

        http://forum.iobroker.net/viewtopic.php?f=30&t=1477&p=12676&hilit=ipad+instanz#p12676

        Pix

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

          In der nächste Version wird basic-Screen-Resolution das zeigen:
          48_img_001.png

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

            @PerpetuumMobile:

            Hiermit kann ich für alle geöffneten Browser Fenster die View umschalten:

            whoami = "FFFFFFFF";
            setState("vis.0.control.instance", whoami);
            setState("vis.0.control.data",     'Board');
            setState("vis.0.control.command",  'changeView');
            

            3 Browser offen (FireFox, Chrome & Safari) => klappt

            Ich möchte dies aber nur für MEIN Browser Fenster - daher versuche ich:

            whoami = getState( "vis.0.control.instance.state");
            setState("vis.0.control.instance", whoami);
            setState("vis.0.control.data",     'Board');
            setState("vis.0.control.command",  'changeView');
            

            Damit ändert sich die View zwar nicht mehr in allen Browsern, aber ich bekomme das Verhalten

            3 Browser offen (FireFox, Chrome & Safari)

            2 machen changeView (FireFox & Chrome) - Safari nicht - auch wenn ich das Script aus Safari triggere

            Daher meine Frage => Wie finde ich die korrekte vis.0.control.instance für exakt meine Session?

            danke

            PerpetuumMobile

            PS. dies ist meine erste Frage - bitte bei Dummheit um Nachsicht `
            Du muss Instance ID selbst definieren oder hier rauslesen:
            48_img_003.png

            1 Reply Last reply Reply Quote 0
            • P
              PerpetuumMobile last edited by

              Vielen Dank Bluefox !

              Mit Hilfe deiner Antwort hab ich es nun folgendermassen gelöst, daß nur noch jenes Browser Fenster wechselt, in dem ich die Aktion starte:

              Im on( ) Teil des Scripts gebe ich nun auch den Wert der Variable "Test" mit:

              createState("javascript.0.vis.Test", false);
              on( 'javascript.0.vis.Test' ,      function (obj) { 
                  if (!(obj.newState.val === false )) {
                      view_wechsel(obj.newState.val); 
                  }
              } );
              
              

              Diesen Wert verwende ich um die gewünschte control.instance zu steuern

              function view_wechsel (wert) {
                  setState("javascript.0.vis.Test", false);    // auf false setzen, damit nächste Änderung wieder auslöst
                  var whoami = wert; 
                  whoami = whoami.replace (/\"/g, "");    // Anführungszeichen löschen
                  setState("vis.0.control.instance", whoami);
                  setState("vis.0.control.data",     'Board');
                  setState("vis.0.control.command",  'changeView'); 
              }
              
              

              Was noch fehlt, ist die Variable "Test" korrekt zu setzen.

              Dazu habe ich ein (basic - HTML) Widget mit folgendem Inhalt erstellt:

              Ich hoffe das ist nicht allzu umständlich & es hilft vielleicht jemandem weiter

              Tom

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

                @PerpetuumMobile:

                Ich hoffe das ist nicht allzu umständlich & es hilft vielleicht jemandem weiter

                Tom `

                Konnte auch so gelöst werden:

                Aber es ist cool, wie du das gelöst hast. 😉

                1 Reply Last reply Reply Quote 0
                • P
                  PerpetuumMobile last edited by

                  @Bluefox:

                  @PerpetuumMobile:

                  Ich hoffe das ist nicht allzu umständlich & es hilft vielleicht jemandem weiter

                  Tom `

                  Konnte auch so gelöst werden:

                  Aber es ist cool, wie du das gelöst hast. 😉 > Danke - funktioniert perfekt 😉 `

                  1 Reply Last reply Reply Quote 0
                  • P
                    pix last edited by

                    Hallo Bluefox,
                    @Bluefox:

                    In der nächste Version wird basic-Screen-Resolution das zeigen: `
                    habe das Update gemacht. Danke für die Entwicklung.

                    Auf dem Desktop funktioniert es unter Chrome.

                    Leider nicht unter Safari (OS X El Capitan) und auch nicht auf dem iPad (iOS 9, Safari).

                    Kann das jemand bestätigen?

                    Kann leider keinen Screenshot einstellen. Default_view, Breite und Höhe werden korrekt angezeigt. Hinter "Instance:" wird nichts angezeigt.

                    Gruß

                    Pix

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

                      Ich kann an dieser Stelle leider nichts machen. Wie sieht es in Safari/Desktop aus?

                      1 Reply Last reply Reply Quote 0
                      • P
                        pix last edited by

                        Hallo,

                        @Bluefox:

                        Wie sieht es in Safari/Desktop aus? `
                        so (keine Anzeige):
                        261_bildschirmfoto_2015-10-29_um_14.49.49.jpg

                        Allerdings wird die Instanz im Edit-Modus von VIS angezeigt 🙂 :
                        261_bildschirmfoto_2015-10-29_um_14.53.11.jpg

                        Das müsste korrigiert werden können.

                        Gruß

                        Pix

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

                          @pix:

                          Hallo,

                          @Bluefox:

                          Wie sieht es in Safari/Desktop aus? `
                          so (keine Anzeige):
                          filename="Bildschirmfoto 2015-10-29 um 14.49.49.jpg" index="1">~~

                          Allerdings wird die Instanz im Edit-Modus von VIS angezeigt 🙂 :
                          filename="Bildschirmfoto 2015-10-29 um 14.53.11.jpg" index="0">~~

                          Das müsste korrigiert werden können.

                          Gruß

                          Pix `
                          Man muss mindestens ein mal in Edit-Modus vis aufrufen. Dann wird auch instanz erzeugt. Danach ist die Instanz auch in Run-Time modus sichtbar.

                          1 Reply Last reply Reply Quote 0
                          • P
                            pix last edited by

                            Hallo,
                            @Bluefox:

                            Man muss mindestens ein mal in Edit-Modus vis aufrufen. Dann wird auch instanz erzeugt. Danach ist die Instanz auch in Run-Time modus sichtbar. `

                            auch das hat bisher keinen Erfolg gebracht.

                            Um Webseiten im Vollbild auf dem iPad darzustellen kann man sie dem "homescreen" zufügen. Das ist praktisch ein eigner Browser nur für diese Webseite ohne Adresszeile und Navigation. Wenn ich nun die VIS-edit.html auf diese Weise auf den Homescreen lege, dann wird mir eine Instanz angezeigt und bei Auslösung die View neu geladen. Im Anzeige MOdus (VIS index.html#Viewname) wird mir aber keine Instanz angezeigt. Auch die Instanz aus dem Edit-Modus funktioniert nicht, da das eigene Fenster von VIS edit.html wie ein eigener Browser eine eigne Nummer erzeugt.

                            Wer zeigt seine Views auf einem iPad und steuert über control.instance?

                            Gruß,

                            Pix

                            1 Reply Last reply Reply Quote 0
                            • P
                              pix last edited by

                              Hallo,

                              ich habe mal PerpetuumMobiles Script oben verwendet, um die Instanz auszulesen. Vom Desktop und normalen iOS 9 Safari wird die Instanz in die Variable 0.VIS.Test geschrieben. Leider aber nicht beim iOS Safari im Homescreen. 😢

                              Inhalt der Variable: null

                              Gruß

                              Pix

                              EDIT: Der Datenpunkt vis.0.control.instance hat den Inhalt notdefined

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              972
                              Online

                              31.7k
                              Users

                              79.7k
                              Topics

                              1.3m
                              Posts

                              3
                              13
                              3038
                              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