Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Automatischer View Wechsel / zwei unterschiedliche Geräte

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Automatischer View Wechsel / zwei unterschiedliche Geräte

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      m0uh @liv-in-sky last edited by m0uh

      @liv-in-sky also im Fully funktioniert es nach dem neu laden genau 1x danach nicht mehr

      was muss denn im Fully als Start URL drin stehen:

      z.B.:
      http://192.168.178.67:8083/vis/index.html#Wohnung
      http://192.168.178.67:8084/vis/index.html#Dachgeschoss

      oder reicht bei beiden:

      http://192.168.178.67:8083/vis/index.html

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

        @m0uh
        es muss die zugeordnete drinstehen

        ich habe die 1.46play draufgetan - dann war es etwas besser - aber ich muss gestehen, ich habe auch ab und an , dass bei einem tablet der rücksprung ausbleibt - bei einem geht es sehr gut - bei dem zweiten ist manchmal kein rücksprung- dann muss ich nochmal irgendwas drücken und es funktioniert

        unter umständen liegt es an der webview version der tablets

        hast du es mal mit pc getestet - einmal chrome und einen 2ten browser . vorher bei den tablets fully browser schliessen

        M 1 Reply Last reply Reply Quote 0
        • M
          m0uh @liv-in-sky last edited by

          @liv-in-sky Werde später mal updaten und bisschen testen... melde mich dann morgen wieder

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

            @m0uh

            wenn du testest, mache mal unterschedliche zeiten - mit mind 5 sek unterschied - dann schaut es bei mir besser aus !

            M 1 Reply Last reply Reply Quote 0
            • M
              m0uh @liv-in-sky last edited by m0uh

              @liv-in-sky also so leid es mir tut aber ich bekomm es nicht zum laufen.

              So hab ich den Script drin:

               /*SCHALTET ZURÜCK AUF VIEW DES ZIMMERS 1*/
               
              var remindSwitchTab1=false;
              var mySwitchTime1=30000;
              var myTabPort1="8083";
              var myURL1="http://192.168.178.67:8083/vis/index.html#Wohnung"
               
              /*für reload page*/
              if (location.port==myTabPort1) {
                 
                  setTimeout(function() {
                  if (!remindSwitchTab1)  window.location.href = myURL1;
                     console.log("wait");
                 }, mySwitchTime1)
              }
               
              /*nach klick wieder reaktiviert*/
              $(window).click(function(e) {
                 if (!remindSwitchTab1 && location.port==myTabPort1){
                     remindSwitchTab1=true;
                      console.log("in href change 1 timer "+mySwitchTime1+" sek");
                  setTimeout(function() {
                     window.location.href = myURL1;
                     console.log("finished for href change 1");
                     remindSwitchTab1=false;
                     
                 }, mySwitchTime1)
                 
                 }
              });
               
              /*ENDE ----- SCHALTET ZURÜCK AUF VIEW DES ZIMMERS/TABLETS2*/
               
              /*SCHALTET ZURÜCK AUF VIEW DES ZIMMERS 2*/
               
              var remindSwitchTab2=false;
              var mySwitchTime2=10000;
              var myTabPort2="8084";
              var myURL2="http://192.168.178.67:8084/vis/index.html#Dachgeschoss"
               
              /*für reload page*/
              if (location.port==myTabPort2) {
                 
                  setTimeout(function() {
                   if (!remindSwitchTab2)  window.location.href = myURL2;
                     console.log("wait");
                 }, mySwitchTime2)
              }
               
              /*nach klick wieder reaktiviert*/
              $(window).click(function(e) {
                 if (!remindSwitchTab2 && location.port==myTabPort2){
                     remindSwitchTab2=true;
                     console.log("in href change 2 timer "+mySwitchTime2+" sek");
                  setTimeout(function() {
                    window.location.href = myURL2;
                     console.log("finished for href change 2");
                     remindSwitchTab2=false;
                     
                 }, mySwitchTime2)
               
                 }
              });
              

              FullyBrowser beide bei v1.46 & es ist jeweils
              http://192.168.178.67:8083/vis/index.html#Wohnung
              http://192.168.178.67:8084/vis/index.html#Dachgeschoss
              eingetragen

              es wird auf keine anderen Gerät zum selben Zeitpunkt irgendeine VIS Instanz ausgeführt. (auf keinen der 3 Ports)

              Zeit ist auf 30 & 10 Sekunden. OHNE ERFOLG 😞

              WENN ich aber in Chrome im selben Browser 2 Tabs mit den dazugehörigen Ports öffne funktioniert es (auch wenn Sie noch im Fully geöffnet sind).
              Also irgendwas passt nicht... scheint ja irgend eine Einstellung im Fully zu sein.

              liv-in-sky 4 Replies Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @m0uh last edited by

                @m0uh

                ich kann es nur zum teil nachstellen - prüfe auch gerade mit 2 pc browser, handy und 2 tablets

                bis auf ein tablet funktioniert es bei den andren 4'ren

                alle haben verschiedene android systeme

                ich kann den fehler auch nicht definieren - entweder webview oder , wie du sagst, ein setting von fully. wobei ich bei den tablets das selbe setting eingespielt habe

                füge mal zum test in zeile 24 und 57 das hier ein: location.reload(true);

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

                  @m0uh ich überlege nochmal, ob mir eine andere struktur einfällt, um fully zu überlisten

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

                    @m0uh

                    NEUER VERSUCH:

                    erstes script wie gehabt im vis script tab:

                    
                    
                    
                    
                    
                    
                    /*SCHALTET ZURÜCK AUF VIEW DES ZIMMERS 1*/
                    
                    
                    var myTabPort1="8072";
                    var myURL1="http://192.168.178.59:8072/vis/index.html?speedy3#dives"
                    
                    /*für reload page*/
                    if (location.port==myTabPort1) {
                    
                       setInterval(function() {
                        	var Self = this;
                    Self.servConn.getStates('0_userdata.0.vis.visSchaltenTablet1', (error, states) => {  console.log(states['0_userdata.0.vis.visSchaltenTablet1'].val);
                          if(!states['0_userdata.0.vis.visSchaltenTablet1'].val) window.location.href = myURL1;
                    } );
                      
                        
                    }, 10000); 
                       
                       
                    }
                    
                    /*nach klick wieder reaktiviert*/
                    $(window).click(function(e) {
                        if ( location.port==myTabPort1){
                        vis.setValue('0_userdata.0.vis.visSchaltenTablet1',true);
                        vis.setValue('0_userdata.0.vis.visTablet1Port',location.port);
                        }
                       
                    
                    });
                    
                    /*ENDE ----- SCHALTET ZURÜCK AUF VIEW DES ZIMMERS/TABLETS2*/
                    
                    /*SCHALTET ZURÜCK AUF VIEW DES ZIMMERS 2*/
                    
                    
                    var myTabPort2="8082";
                    var myURL2="http://192.168.178.59:8082/vis/index.html?speedy3#111"
                    
                    /*für reload page*/
                    if (location.port==myTabPort2) {
                       
                        setInterval(function() {
                        	var Self = this;
                    Self.servConn.getStates('0_userdata.0.vis.visSchaltenTablet2', (error, states) => {  console.log(states['0_userdata.0.vis.visSchaltenTablet2'].val);
                          if(!states['0_userdata.0.vis.visSchaltenTablet2'].val) window.location.href = myURL2;
                    } );
                      
                        
                    }, 10000);
                    }
                    
                    /*nach klick wieder reaktiviert*/
                    $(window).click(function(e) {
                        if ( location.port==myTabPort2){
                       vis.setValue('0_userdata.0.vis.visSchaltenTablet2',true);
                       vis.setValue('0_userdata.0.vis.visTablet2Port',location.port);
                        }
                    });
                    
                    /*ENDE ----- SCHALTET ZURÜCK AUF VIEW DES ZIMMERS/TABLETS2*/
                    
                    
                    

                    zweites script ist ein blockly:

                    • diesmal ist es wichtig, dass eine seite in nur einem browser läuft !!!! paralleles testen mit pc und tablet ist nicht möglich - also möglich schon, bringt aber das system durcheinander
                    • legt dp unter 0_userdata.0.vis... an - beim ersten start gibt es warnungen im log - dann ist's aber ok
                    • im blockly stellst du die zeit ein, wie lange es brauchen soll, bis umgeschaltet wird (+/- 10 sekunden (das liegt daran, dass die vis längstens 10 sek braucht, um den dp zu scannen - macht aber nix, da du ja im alltäglichen gebrauch, eine längere zeit hast, bis zurückgeschaltet wird

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <block type="control" id="jiT=5gzt@D{jw:lQ/sRj" x="138" y="62">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                       <field name="OID">0_userdata.0.vis.visSchaltenTablet1</field>
                       <field name="WITH_DELAY">FALSE</field>
                       <value name="VALUE">
                         <block type="logic_boolean" id="f6V4kE:Sv(lQq6?b/OXY">
                           <field name="BOOL">FALSE</field>
                         </block>
                       </value>
                       <next>
                         <block type="on" id="47Vgt73D7f*NJ?fzqZ)=">
                           <field name="OID">0_userdata.0.vis.visSchaltenTablet1</field>
                           <field name="CONDITION">true</field>
                           <field name="ACK_CONDITION"></field>
                           <statement name="STATEMENT">
                             <block type="control" id="r=v=$LZ_)hp*[k2~.E?+">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                               <field name="OID">0_userdata.0.vis.visSchaltenTablet1</field>
                               <field name="WITH_DELAY">TRUE</field>
                               <field name="DELAY_MS">20</field>
                               <field name="UNIT">sec</field>
                               <field name="CLEAR_RUNNING">TRUE</field>
                               <value name="VALUE">
                                 <block type="logic_boolean" id="60cF{d0.+g+1R-it_}b7">
                                   <field name="BOOL">FALSE</field>
                                 </block>
                               </value>
                             </block>
                           </statement>
                         </block>
                       </next>
                     </block>
                     <block type="control" id="$%;Pi^,ag:.sGy?9Y_*u" x="863" y="63">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                       <field name="OID">0_userdata.0.vis.visSchaltenTablet2</field>
                       <field name="WITH_DELAY">FALSE</field>
                       <value name="VALUE">
                         <block type="logic_boolean" id="Tf}*u!bzB$c5x)cj,gE/">
                           <field name="BOOL">FALSE</field>
                         </block>
                       </value>
                       <next>
                         <block type="on" id="XK~S*oR`-3UsKv8}:.gO">
                           <field name="OID">0_userdata.0.vis.visSchaltenTablet2</field>
                           <field name="CONDITION">true</field>
                           <field name="ACK_CONDITION"></field>
                           <statement name="STATEMENT">
                             <block type="control" id="Yb3L,,bJRIk:~%63O3b2">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                               <field name="OID">0_userdata.0.vis.visSchaltenTablet2</field>
                               <field name="WITH_DELAY">TRUE</field>
                               <field name="DELAY_MS">15</field>
                               <field name="UNIT">sec</field>
                               <field name="CLEAR_RUNNING">TRUE</field>
                               <value name="VALUE">
                                 <block type="logic_boolean" id="rpb$-Bot}hJhz3dF~53u">
                                   <field name="BOOL">FALSE</field>
                                 </block>
                               </value>
                             </block>
                           </statement>
                         </block>
                       </next>
                     </block>
                     <block type="create" id="HgG4/Uci^Q[F7JzyWH2r" x="112" y="388">
                       <field name="NAME">0_userdata.0.vis.visSchaltenTablet1</field>
                       <value name="VALUE">
                         <block type="logic_boolean" id="Q=U*Oe.0!2h5.$/_z`d(">
                           <field name="BOOL">FALSE</field>
                         </block>
                       </value>
                       <value name="COMMON">
                         <block type="text" id="5xS7/sF`Eu`$+05,%xs~">
                           <field name="TEXT">{     "name": "visSchaltenTablet1",     "role": "",     "type": "boolean",     "desc": "Manuell erzeugt",     "read": true,     "write": true,     "def": false   }</field>
                         </block>
                       </value>
                       <next>
                         <block type="create" id="k,#JlL_@Nk5.mCKE_1]d">
                           <field name="NAME">0_userdata.0.vis.visTablet1Port</field>
                           <value name="VALUE">
                             <block type="text" id="Z?^1C.(4OIS`#cK3Xyhl">
                               <field name="TEXT"></field>
                             </block>
                           </value>
                           <value name="COMMON">
                             <block type="text" id="b/AWg*F,.u3QRJ0VV{vO">
                               <field name="TEXT">{     "name": "visTablet1Port",     "role": "",     "type": "string",     "read": true,     "write": true,     "desc": "Manuell erzeugt",     "def": ""   }</field>
                             </block>
                           </value>
                         </block>
                       </next>
                     </block>
                     <block type="create" id=".RM4[Jv28cn@Pbq1|9@H" x="837" y="363">
                       <field name="NAME">0_userdata.0.vis.visSchaltenTablet2</field>
                       <value name="VALUE">
                         <block type="logic_boolean" id="o7kvz#@SSDlT2q463d|r">
                           <field name="BOOL">FALSE</field>
                         </block>
                       </value>
                       <value name="COMMON">
                         <block type="text" id="ptK02b+_x56Z=%kPz1h/">
                           <field name="TEXT">{     "name": "visSchaltenTablet2",     "role": "",     "type": "boolean",     "desc": "Manuell erzeugt",     "read": true,     "write": true,     "def": false   }</field>
                         </block>
                       </value>
                       <next>
                         <block type="create" id="by8cqSkHx~yLSS=MZ)z8">
                           <field name="NAME">0_userdata.0.vis.visTablet2Port</field>
                           <value name="VALUE">
                             <block type="text" id="cQG;Lj`1x1-rGM`Io%*}">
                               <field name="TEXT"></field>
                             </block>
                           </value>
                           <value name="COMMON">
                             <block type="text" id="3atbKpSXAs6tM+s=or!S">
                               <field name="TEXT">{     "name": "visTablet2Port",     "role": "",     "type": "string",     "read": true,     "write": true,     "desc": "Manuell erzeugt",     "def": ""   }</field>
                             </block>
                           </value>
                         </block>
                       </next>
                     </block>
                    </xml>
                    

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

                      @m0uh läuft bei mir bis jetzt stabil

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        m0uh @liv-in-sky last edited by

                        @liv-in-sky Sorry war leider bisschen beschäftigt... werde das ganze die Woche mal testen und mich bei dir melden!

                        DANKE schon mal!

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

                          @m0uh dachte schon, du hast keine lust mehr 🙂

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            m0uh @liv-in-sky last edited by

                            @liv-in-sky ganz im Gegenteil aber bin derzeit geschäftlich unterwegs und das wird sich jetzt die nächsten 7 Wochen nicht ändern.... ich hoffe du gibst mich bis dahin nicht auf 😛 ich melde mich definitiv wenn ich das ganze mal in Ruhe getestet habe!

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

                              @m0uh hoffentlich vergesse ich bis dahin nicht alles 🙂

                              bei mir funktioniert es mit dem beiden neuen scripten - du meldest dicheinfach , wenn du wieder zeit hast

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              758
                              Online

                              32.0k
                              Users

                              80.4k
                              Topics

                              1.3m
                              Posts

                              3
                              26
                              1501
                              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