NEWS
Automatischer View Wechsel / zwei unterschiedliche Geräte
-
Hallo zusammen,
leider habe ich in der Suche nichts passendes gefunden und steh irgendwie am Schlauch.
Also ich besitze 2 Tablets - 1 Wohnzimmer & 1 Dachgeschoss auf beiden läuft der FullyKioskBrowser.
Jetzt möchte ich das sich die Geräte nach 5 Minuten (die 5 Sek. im Blockly sind nur zum testen... keine Lust immer 5 Minuten zu warten) automatisch auf die jeweilige Seite (Wohnung/Dachgeschoss) zurück wechseln.
Leider spielen die Views Ping Pong... was mit meine Skript auch logisch ist. Leider fehlt mir eine Idee wie ich das verhindern kann.
Mein Versuch war es noch über die Fully Instanz zu "verriegeln" aber auch das funktioniert nicht, da die FullyInstanz ja die IP der VIS nutzt und nicht die vom Tablet (zumindest bei dem Datenpunkt). Leider finde ich keinen Datenpunkt unter Objekten den ich nutzen kann um es zu "verriegeln".
Hat jemand eine Idee für mich?
-
Servus @m0uh,
du musst nur eine Oderbedingung vorne mit einbauen. Das heißt du musst abfragen ob der Wert ungleich (Main/Dachgeschoss oder Main/Wohnung ist) und dann auf die current page abfragen. Das dürfte dein Problem meines Erachtens lösen. -
Servus @gutscho,
also einen kleine Schritt bin ich durch die jetzt weiter... ABER wenn ich jetzt im Dachgeschoss auf Wohnung wechsel oder im Wohnzimmer auf Dachgeschoss würde er nicht mehr automatisch zurück wechseln.
Sofern ich dich richtig verstanden habe:
Das nächste Problem ist das beide Aktionen zeitgleich ausgeführt werden, somit schaltet er das eine Tablet auf Wohnung und beim anderen passiert nichts mehr.
Ich würde das irgendwie gerne mit Timeouts realisieren oder so.... also das er z.B. eine Minute auch nach Änderung nix macht und dann z.B. prüft ob es Dachgeschoss / Wohnung ist oder so.... keine Ahnung wie gesagt steh leider bisschen am Schlauch und hab keine Ahnung wie man das am besten Elegant und einfach löst.
Was auch sehr komisch ist.... ich habe das ODER mal entfernt & bei Dachgeschoss die Verzögerung auf 3 Sek. bei Wohnung die Verzögerung auf 10 Sek. - er schaltet aber erst nach 10 Sek. um auf Wohnung um und anschließend beginnt das PING PONG! Sollte er nicht zuerst auf Dachgeschoss umschalten?
-
ich habe mal etwas anderes getestet
ich nutze ungern die instance id - die kann nämlich gelöscht werden (browser cache leeren) und dann muss das script wieder geändert werden
daher mal ein anderer vorschlag:
- das ganze gehört in den script tab des vis-editors
- und du musst für jedes tablet eine zusätzliche web adapter instanz anlegen - die haben dann unterschiedliche ports und die werden abgefragt (du hast dann 3 web instanzen - eine noch für alle anderen rechner,tablets)
pro tablet eines mit unterschiedlichen settings (port, url)
- rot: zeit, wann zurückgeschalten werden soll
- blau: seite die aufgerufen werden soll
- schwarz: port der web adapter instanz
beispiel schaltet nach 10 sek:
-
@liv-in-sky Also Danke erstmal.... hab das jetzt mit 2 Instanzen gemacht brauch keine 3 ABER irgendwie springt der VIEW ganz unregelmäßig zurück und voralle auch während ich z.B. im Menü Switche.
In welchem Format is die Zeit angegeben ?
Wann wird die Zeit zurück gesetzt ? -
in ms - 10000 bedeutet 10 sekunden
-
@m0uh sagte in Automatischer View Wechsel / zwei unterschiedliche Geräte:
t brauch keine 3 ABER
schwer vorzustellen - ich entwickle am pc und sehe mir auch die seiten gleich auf dem pc an - wenn du da keine "3 neutrale instanz" hast, springst die seite !
@m0uh sagte in Automatischer View Wechsel / zwei unterschiedliche Geräte:
VIEW ganz unregelmäßig
hast du längere zeiten eingegeben - i, beispielscript sind es 30 sekunden - die sind gleich um, wenn du auf der seite bist
-
@liv-in-sky Hmm... also ich hab jetzt eine 3. Instanz angelegt. Hab meine Tablets angepasst. Wenn ich ab Browser 3 Tabs öffne funktioniert das ganze problemlos. Scheinbar macht der Fully Kiosk Browser irgendwas anders...
Das komische das Tablet schaltet irgendwann zurück aber nicht nach der definierten Zeit.
-
@m0uh ich muss mal testen mit fully - könnte dauern - mußte die fritzbox wechseln - seitdem habe ich ein paar problemchen im netz - aber ich schau mal
-
-
was noch wichtig ist - du solltest keine der seiten doppelt offen haben (auch nicht beim testen) - also nicht auf port 8082 die definierte default-seite zweimal geöffnet haben
-
@m0uh habe nochmal erwas mit fuly getestet - - zickte ein wenig rum - habe dann app upgedatet - jetzt scheint es zu laufen
-
@liv-in-sky also so hab ich jetzt bei mir in der VIS als Skript drin stehen. 8082 (PC usw.) - 8083 (Dachgeschoss) - 8084 (Wohnzimmer)
Zeit hab ich mal auf 20 Sekunden gestellt nur um zu testen. Dann hab ich festgestellt das es bei mir im Fully gar nicht funktioniert das Umschalten war jedes mal wenn er nach einer gewissen Zeit die Start URL neu läd.Wenn ich im Browser alle 3 VIS mit zugehörigen Ports öffne funktioniert es aber.... Komisich
FullyKiosk Browser Version is 1.45-play & 1.45-fireOS
/*SCHALTET ZURÜCK AUF VIEW DES ZIMMERS 1*/ var remindSwitchTab1=false; var mySwitchTime1=20000; 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=20000; 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) } });
-
@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#Dachgeschossoder reicht bei beiden:
-
@m0uh
es muss die zugeordnete drinstehenich 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
-
@liv-in-sky Werde später mal updaten und bisschen testen... melde mich dann morgen wieder
-
wenn du testest, mache mal unterschedliche zeiten - mit mind 5 sek unterschied - dann schaut es bei mir besser aus !
-
@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
eingetragenes 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. -
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);
-
@m0uh ich überlege nochmal, ob mir eine andere struktur einfällt, um fully zu überlisten