Anfangsstatus für Anzeigen / longpoll / shortpoll ???

Begonnen von rasti, 09 April 2016, 16:38:28

Vorheriges Thema - Nächstes Thema

rasti

Hallo,

ich benutze die Tablet UI sowohl an einem festmontierten Android Tablet als
auch über meinen Notebook.

Ein (kleines) Problem ist, dass beim Label-Widget der Wert eines Devices beim ersten
Öffnen des Browsers nicht angezeigt wird, sondern nur dann, wenn einmal eine
Änderung des Devicestatus in FHEM stattgefunden hat.

Beipiel :
- ich stelle einen neuen Radiosender über das Circlemenü auf dem Tablet ein, der
  wird dann auf derselben Seite per Labelwidget angezeigt. Und zwar so :
<li data-row="2" data-col="1" data-sizex="2" data-sizey="1" class="semitransparent">
<header>Radiostationen</header><br>
<div data-type="label" data-device="mpdradiostation" class="cell big marquee" style=" color:#FF0000"></div>
Aktueller Sender
</li>

Das geht auch, der Radiosender wird angezeigt.
- Mache ich nun einen Browser auf dem Notebook auf, wird erstmal mit der Seite kein Sender angezeigt.
Erst wenn ich im Notebook-Browswer zu einem anderen Radiosender wechsele, wird der dann auch
auf dem Notebook anngezeigt. Auf dem Android-Tablet wird aber weiterhin der alte Sender angezeigt,
bis ich eben am Tablet was neues einschalte.

Ähnliches Verhalten zeigen Buttons, die in Tablet UI erstmal immer "ausgeschaltet" sind. D.h. auf der Seite findet sich
dieser Schalter hier :
<li data-row="1" data-col="2" data-sizex="1" data-sizey="1" class="semitransparent">
<header>Verst&auml;rker</header>
<div data-type="switch" data-device="FS20_Steckdose_2" class="cell" data-icon="fa-music"></div>
         <div data-type="label" class="cell">Verst&auml;rker an/aus</div>
         

Selbst wenn der in fhem auf ON steht, muss ich den ich Tablet UI erst nochmal Anschalten, damit der Schalter
in Tablet UI als angeschaltet erscheint. Problem hier auch, wenn ich einmal am Notebook und einmal am Tablet
tätig bin.

Der Header sieht so aus,
<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes" />
     <meta name="widget_base_width" content="145">
    <meta name="widget_base_height" content="145">
    <meta name="mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="longpoll" content="1"> <!-- 1=longpoll;0=shortpoll every 30sec -->
    <meta name="debug" content="0"> <!-- 1=output to console;0=no output -->
      <meta name="fhemweb_url" content="http://192.168.178.6:8083/fhem">

    <link rel="stylesheet" href="/tablet/lib/jquery.gridster.min.css" />
    <link rel="stylesheet" href="/tablet/css/fhem-tablet-ui.css" />
    <link rel="stylesheet" href="/tablet/lib/font-awesome.min.css" />
    <link rel="stylesheet" href="/tablet/lib/jquery.toast.min.css" />

   <link rel="stylesheet" href="/tablet/lib/openautomation.css" />
<link rel="stylesheet" href="/tablet/lib/fhemSVG.css" />

    <!-- define your personal style here, it wont be overwritten  -->
    <!-- link rel="stylesheet" href="/tablet/css/fhem-green-ui.css" / -->
    <link rel="stylesheet" href="/fhem/tablet/css/fhem-tablet-ui-user.css" />

    <script src="/pgm2/jquery.min.js" defer></script>
    <script src="/tablet/lib/jquery.toast.min.js" defer></script>
    <script src="/tablet/lib/jquery.gridster.min.js" defer></script>
    <script src="/tablet/js/fhem-tablet-ui.js" defer></script>


    <title>FHEM-Tablet-UI</title>
</head>
<body>

Seiten werden über Apache ausgeliefert.

Woran liegt das ?

Gruss

Ralf

setstate

#1
Das klingt danach, dass longpoll nicht funktioniert. Aber eingeschaltet ist es, wie man sieht.
Es muss ein Fehler in der JS Ausführung passieren. Siehst du Fehler-Meldungen in der Console?

In der neuen Version 2.1 habe ich heute noch einen HealthCheck eingebaut, der aller 60 Minuten ein Bericht über den Short und Longpoll-Status auf der Console ausgibt, wenn der debuglevel>0 ist.


--------- start healthCheck --------------
Longpoll: true
Longpoll objects there: true
Longpoll curent line: 240
Longpoll last event before: 3 Sekunde(n)
Shortpoll interval: 900
Shortpoll last run before: 1 Minute(n) 56 Sekunde(n)
FHEM dev/par count: 4667
Page length: 83301
Widgets count: 107
--------- end healthCheck ---------------


rasti

Hallo setstate.

danke dir.

In der Konsole kommen bei debug=1 keine Meldungen.

Da steht nur:
- start longpoll in 0.1 s
- longpoll started
- full refresh done in 0.3s for 4 readings

Gruss

Ralf