FTUI 2.6 - disconnect - missing longpoll events

Begonnen von kvo1, 20 März 2017, 21:44:33

Vorheriges Thema - Nächstes Thema

setstate

Kann passieren, wenn man eins Seite auf hat, wo nur Devices verbaut sind, die selten ein Reading updaten.
Dann macht dieser Check keinen Sinn und man sollte das durch Abschalten oder hohes Timeout anpassen.

dt2510

Die wenigsten Devices machen häufig Updates, da es überwiegend (Licht-)Schalter, Rolläden usw. sind. Welche Einstellung wäre denn sinnvoll um auch über seltenere Updates direkt informiert zu werden ?
Ich möchte nicht erst die Seite refreshen um zu sehen, daß irgendwo jemand ein Licht angeschaltet hat ...

setstate

Nein, nur den Health-Check für das Alter des letzten Updates ändern.

<meta name='longpoll_maxage' content='240'>

Wert in Sekunden.
0 schaltet ganz ab

dt2510


dt2510

Ich habe mal die Konsole im Entwicklermodus aktiviert und ein Video gemacht ... vielleicht kann man da ja erkennen woran es liegt ...

setstate

Setzte mal debug > 0 und mach in einem zweiten Tab oder zweitem Browserfenster die ftui_check.html auf

https://github.com/knowthelist/fhem-tablet-ui/blob/master/www/tablet/ftui_check.html

Vllt. erkennt man dann das Problem.

dt2510

Es kommt jetzt immer ein "Longpoll (Ajax) Re-Started" zwischen den "Retry to connect" Meldungen. In der FTUI-Check erscheinen zeitgleich Einträge zu Includes

125 include #pageRooms2bathroom
126 include [data-wgid="include_4ace-9ef9-b748"]
127 popup [data-wgid="include_87d7-07b8-97e3"]
128 include [data-wgid="include_87d7-07b8-97e3"]
129 chart [data-wgid="include_87d7-07b8-97e3"]
130 symbol [data-wgid="include_d52b-c1f8-8cec"]
131 popup [data-wgid="include_87e0-5286-9b9a"]
132 include [data-wgid="include_87e0-5286-9b9a"]
133 chart [data-wgid="include_87e0-5286-9b9a"]
134 symbol [data-wgid="include_93e7-b130-ba81"]
135 label [data-wgid="include_9ab2-ef42-ab65"]
136 symbol [data-wgid="include_767a-4f62-78e5"]

setstate

Sorry, das kann ich gerade nicht einordnen, was das ist und woher das kommt.

dt2510

Würde der HTML-Code bei der Suche helfen ? Es könnte allerdings auch an meiner Linux/FHEM Installation liegen ... ich habe schon länger die Vermutung, daß bei der Einrichtung meiner Sonos etwas schief gelaufen und das System seitdem deutlich langsamer geworden ist ...

artjom83

#69
komisch, bei mir hat gerade das auskommentieren von
<meta name="longpoll_filter" content=".*">
die Meldungen "Disconnected from FHEM. The connection was closed abnormally, e.g. without sending or receiving a Close control frame"
bzw. "Retry to connect in 10 seconds" beseitigt  😂

Edit:
in folgenden Browsern kommt noch ein "Retry to connect in 10 seconds" bei jedem Pagebutton-Seitenechsel (prefetch verwende ich aufgrund von iframe Grafana-Graphen nicht, da diese im Hintergrund nicht komplett geladen werden):

- Fully (Android). Fully ladet aber auch sehr sehr langsam im Vergleich zu den anderen Browsern.
- Chrome (Mac)
- Firefox (Android)

hier bekomme ich keine Meldungen:
- Safari (Mac)
- Chrome (Android)
- Firefox (Mac)

echt komisch! Bleibe jetzt erst einmal bei Chrome auf meinem Tab.

meikelS

Ich hatte das selbe Problem mit dem permanenten Reconnect. Auch das Aktualisieren der Devices hat nicht funktioniert.


Als ich die Navigation mit Page-Tab Wizards rausgenommen habe, hat es einwandfrei funktioniert.

Don't blame the newbies.

Tobias

dasselbe Problem kenne ich schon seit Monaten. Mit Ajax (longpoll type = 1) klappt es mit FTUI version 2.6.44
Mit einem aktuellen FTUI nicht mehr. Deswegen kann ich auch nicht updaten
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

D3ltorohd

#72
Ich schließe mich hier mal mit an. Ich habe heute mal angefangen Tablet UI zu installieren, soweit scheint es geklappt zu haben. Ich hatte auch das example genutzt, dort dann mal ein wenig herum probiert. Ich hab dann versucht ein Site Menu zu erstellen, was dann auch da war und ich die einzelnen index Seiten anwählen konnte, Teile der Veränderung konnte ich auch sehen im Browser, andere nicht. Dann dachte ich mir probierst du mal den Edge, hab's bis jetzt in Chrome versucht und dort kam auf einmal ständig

"Disconnected from FHEM. The connection was closed abnormally, e.g. without sending or receiving a Close control frame"

Im Chrome nichts zu sehen. Nur im Edge, hab dann ewig viel herum probiert, erst mit pagetab versucht, danach dann pagebutton, aber egal was ich mache, es kommt dieser Fehler.

Hier mal meine Index Seite...

<!DOCTYPE html>
<html>

<head>
    <!--
     /* FHEM tablet ui */
     /*
     * UI builder framework for FHEM
     *
     * Version: 2.5.*
     * URL: https://github.com/knowthelist/fhem-tablet-ui
     *
     * Copyright (c) 2015-2017 Mario Stephan <mstephan@shared-files.de>
     * Under MIT License (http://www.opensource.org/licenses/mit-license.php)
     *
     * - create a new folder named 'tablet' in /<fhem-path>/www
     * - copy all files incl. sub folders into /<fhem-path>/www/tablet
     * - add 'define TABLETUI HTTPSRV ftui ./www/tablet Tablet' in fhem.cfg
     * - Tadaaa! A new fhem ui in http://<fhem-url>:8083/fhem/tablet/
     */
    -->
    <link rel="icon" href="favicon.ico" type="image/x-icon" />

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

    <script src="js/fhem-tablet-ui.js" defer></script>


    <!-- Remove this line to enable for usage with WebViewControl
    <script defer>var wvcDevices = {'12345': 'Tablet'}; var wvcUserCssFile="webviewcontrol.css"</script>
    <script src="../pgm2/cordova-2.3.0.js" defer></script>
    <script src="../pgm2/webviewcontrol.js" defer></script>
    <!-- End for WebViewControl -->

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

<body>

    <div class="gridster">
        <ul>
            <li data-row="1" data-col="1" data-sizey="1" data-sizex="1">
                <header>TREND</header>
                <div class="sheet">
                    <div class="row">
                        <div class="cell">
                            <div data-type="symbol" data-device="dummy1" data-icons='["fa-arrow-up","fa-arrow-right","fa-arrow-down"]' data-on-colors='["#32a054","#6666cc","#ad3333"]' data-get-on='["Wert1","Wert2","Wert3"]' class=""></div>
                            <div data-type="label" class="small narrow darker">Status</div>
                        </div>
                    </div>
                </div>
            </li>

            <li data-row="1" data-col="2" data-sizey="1" data-sizex="2">
                <header>BAD</header>
                <div class="sheet">
                    <div class="row">
                        <div class="cell" data-type="thermostat" data-device="BadHeizung_Clima" data-valve="ValvePosition"></div>
                        <div class="cell">
                            <div class="big" data-type="symbol" data-device="BadFenster"></div>
                            <div data-type="label" class="top-narrow  darker small">Fenster</div>
                        </div>
                    </div>
                </div>
            </li>
            <li data-row="4" data-col="2" data-sizey="2" data-sizex="2">
                <header>HOMESTATUS</header>
                <div class="sheet">
                    <div class="row">
                        <div data-type="homestatus" data-device='HomeStatus' data-version='' class="cell"></div>
                    </div>
                </div>
            </li>
            <li data-row="2" data-col="4" data-sizey="2" data-sizex="4">
                <header>WOHNZIMMER</header>
                <div class="sheet">
                    <div class="row">
                        <div class="cell" data-type="thermostat" data-device="WohnzimmerHeizung_Clima" data-valve="ValvePosition" data-get="desired-temp" data-temp="measured-temp"></div>
                        <div class="cell">
                            <div data-type="label" data-device="THSensorWZ" data-get="temperature" data-limits='[-73,19,23]' data-colors='["#6699FF","#aa6900","#bb6242"]' data-unit="%B0C%0A" class="bigger thin"></div>
                            <div>Temperatur</div>
                        </div>
                        <div class="cell">
                            <div data-type="label" data-device="THSensorWZ" data-fix="0" data-part="4" data-limits='[0,40,60]' data-colors='["#bb6242","#aa6900","#bb6242"]' data-unit="%" class="bigger thin"></div>
                            <div>Luftfeuchte</div>
                        </div>
                        <div class="cell">
                            <div data-type="switch" data-device="PowerAV_Sw" class=""></div>
                            <div>SchrankLicht</div>
                        </div>
                    </div>
                    <div class="row">
                        <div class="cell" data-type="thermostat" data-device="WohnzimmerHeizung2_Clima" data-valve="ValvePosition" data-get="desired-temp" data-temp="measured-temp"></div>
                        <div class="cell" data-type="popup" data-width="450px">
                            <div data-type="simplechart" data-device="THSensorWZ" data-logdevice="FileLog_THSensorWZ" data-columnspec="4:temperature" data-minvalue="15" data-maxvalue="25" data-height="60" data-width="90" class="noticks">
                            </div>
                            <div class="dialog">
                                <header>TEMPERATURE</header>
                                <div data-type="simplechart" data-device="THSensorWZ" data-logdevice="FileLog_THSensorWZ" data-columnspec="4:temperature" data-minvalue="15" data-maxvalue="25" data-yticks="2" data-height="250">
                                </div>
                            </div>
                        </div>
                        <div class="cell" data-type="popup" data-width="450px">
                            <div data-type="simplechart" data-device="THSensorWZ" data-logdevice="FileLog_THSensorWZ" data-columnspec="4:humidity" data-minvalue="0" data-maxvalue="100" data-height="60" data-width="90" class="noticks">
                            </div>
                            <div class="dialog">
                                <header>HUMIDITY</header>
                                <div data-type="simplechart" data-device="THSensorWZ" data-logdevice="FileLog_THSensorWZ" data-columnspec="4:humidity" data-minvalue="0" data-maxvalue="100" data-yticks="20" data-height="250">
                                </div>
                            </div>
                        </div>
                        <div class="cell">
                            <div data-type="dimmer" data-device="HUEDevice1" data-get-on="!off" data-get-off="off" data-set="pct"></div>
                            <div>Philips</div>
                        </div>

                    </div>
                </div>
            </li>
            <li data-row="4" data-col="4" data-sizey="2" data-sizex="4">
                <header>MULTIMEDIA</header>
                <div class="sheet">
                    <div class="row-60">
                        <div class="cell">
                            <!--left up -->
                            <div class="sheet">
                                <div class="row">

                                    <div class="cell-25">Badradio</div>
                                    <div class="cell-25x" data-type="switch" data-device="BadRadio" data-icon="fa-music"></div>
                                    <div class="cell-50" data-type="select" data-device="AvReceiverZ2" data-items='["Airplay","Webradio","BD/DVD","PHONO"]' data-get="input" data-set="input"></div>
                                </div>
                                <div class="row">
                                    <div class="cell-25">Radio</div>
                                    <div class="cell-25" data-type="switch" data-device="RadioAtTablet" data-icon="fa-music"></div>
                                    <div class="cell-50" data-type="select" data-device="AvReceiver" data-list="inputs" data-get="input" data-set="input"></div>
                                </div>
                            </div>
                            <!-- end left cell -->
                        </div>
                        <div class="cell">
                            <div class="large top-space" data-type="volume" data-device='AvReceiver' data-get='volume' data-set='volume'></div>
                        </div>
                    </div>
                    <div class="row-40">
                        <div class="cell">
                            <!--left down -->
                            <div class="sheet">
                                <div class="row">
                                    <div class="cell" data-type="push" data-device="WebRadio" data-icon="fa-step-backward" data-set-on="Prev"></div>
                                    <div class="cell" data-type="label" data-device="WebRadio">radio</div>
                                    <div class="cell" data-type="push" data-device="WebRadio" data-icon="fa-step-forward" data-set-on="Next"></div>
                                </div>
                            </div>
                        </div>
                        <div class="cell">
                            <!--right down -->
                            <div class="sheet">
                                <div class="row">
                                    <div class="cell">
                                        <div data-type="switch" data-device="Fernsehen" data-icon="fa-film"></div>
                                        <div>TV</div>
                                    </div>
                                    <div class="cell">
                                        <div data-type="circlemenu">
                                            <ul>
                                                <li>
                                                    <div data-type="push" data-icon="fa-wrench"></div>
                                                </li>
                                                <li>
                                                    <div data-type="push" data-device="AvReceiver" data-set="remoteControl subwoofer-temporary-level -6" data-icon="">-6</div>
                                                </li>
                                                <li>
                                                    <div data-type="push" data-device="AvReceiver" data-set="remoteControl subwoofer-temporary-level -2" data-icon="">-2</div>
                                                </li>
                                                <li>
                                                    <div data-type="push" data-device="AvReceiver" data-set="remoteControl subwoofer-temporary-level 0" data-icon="">0</div>
                                                </li>
                                                <li>
                                                    <div data-type="push" data-device="AvReceiver" data-set="remoteControl subwoofer-temporary-level +3" data-icon="">2</div>
                                                </li>
                                                <li>
                                                    <div data-type="push" data-device="AvReceiver" data-set="remoteControl subwoofer-temporary-level +9" data-icon="">9</div>
                                                </li>
                                                <li>
                                                    <div data-type="push" data-device="AvReceiver" data-set="remoteControl subwoofer-temporary-level +C" data-icon="">12</div>
                                                </li>
                                            </ul>
                                        </div>
                                        <div>Woofer</div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </li>
        </ul>
    </div>
</body>

</html>


Lasse ich es so, kommt kein Fehler. Sobald ich eines der beiden Menü Widgets benutze wars das.

Ich füge mein SiteMenu hiermit hinzu.

<li data-row="1" data-col="1" data-sizex="1" data-sizey="6" data-template="/fhem/tablet/nav_left.html"></li>

<!DOCTYPE html>
<html>
<head>
</head>
<body>
    <header>MENU</header>
    <div class="sheet">
<div class="row">
<div data-type="pagetab" data-url="index_1.html" data-icon="fa-home" data-on-color="red" class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab" data-url="index_2.html" data-icon="fa-sliders" data-on-color="red" class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab" data-url="index_3.html" data-icon="fa-music" data-on-color="red" class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab" data-url="index_4.html" data-icon="fa-hotel" data-on-color="red" class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab" data-url="index_5.html" data-icon="fa-music" data-on-color="red" class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab" data-url="index_6.html" data-icon="fa-database" data-on-color="red" class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab" data-url="index_7.html" data-icon="fa-fax" data-on-color="red" class="cell"></div>
</div>
</div>
</div>
</body>
</html>


Das wars dann.

Funktioniert das Tablet UI nicht mehr richtig, passiert da überhaupt noch was, oder sollte man auf was anderes umsteigen ?

Bin leider komplett neu in dem Thema, inklusive FHEM, ich weiß nicht obs an mir liegt, oder am TabletUI ?

Oder liegt das am Edge, weil hab mal eben noch Firefox probiert und auch hier gibt es diese Meldung nicht, er scheint, das was ich in den Seiten eintrage auch zu nehmen. Hab die ganze Zeit in der Index versucht was zu ändern, aber der nimmt ja dann automatisch index1 als Hauptseite, daher hat der nie meine Änderungen genommen. Packe ich die in Index1 zeigt er mir sie auch an.

Oder muss ich gar das noch mit installieren ? HTTPSRV Modul ?
Base : Intel NUC Debian 9, FHEM aktuell || Zigbee (Coordinator FW Z-Stack 1.2 default Koenkk) || MaxCUL (culfw V 1.67 nanoCUL868) || SIGNALduino 433MHz (V 3.3.2.1-rc8 ) || Shelly s1