Hauptmenü

FTUI 2.6

Begonnen von setstate, 11 Februar 2017, 14:59:21

Vorheriges Thema - Nächstes Thema

uniqueck

Zitat von: setstate am 11 Februar 2017, 14:59:21
Achtung! Hier kommt wieder ein Update zum  ;D "Zerschießen" ;D  eurer Oberflächen

Also: Bitte nicht sofort auf im Alltag genutzte Systeme ungetestet ausrollen.

Neu:
- Longpoll: WebSocket als Standard, AJAX als Fallback oder per meta setting auswählbar 
Ihr müsst im FHEM websocket anschalten
attr WEB longpoll websocket
- Flexible Base Directory Ermittlung wieder eingebaut. War mit 2.5.1 entfernt worden.
   Damit kann man jetzt wieder seine HTML Seiten in Unterordner stecken und über die Angabe der fhem-tablet-ui.min.js bzw. fhem-tablet-ui.js im Header wird das Basisverzeichnis ermittelt.
- Per data-bind kann man jetzt auch auf interne FTUi-Variablen zugreifen, um deren Inhalt in der Oberfläche darzustellen.
  Siehe index_state.html in examples
- einige wenige CSS Änderungen
zum Beispiel anstatt "bigger thin" für Labels muss man jetzt "great thin" benutzen, um das gleiche Ergebnis zu erzielen. "bigger" ist 200%, "great" ist 450%


<div class="cell">
    <div class="bigger line-normal">FTUI</div>
    <div class="" data-bind="ftui.version"></div>
</div>


Hi setstate,

würde es dir eigentlich etwas ausmachen, wenn du neue minor / major Versionen von FTUI rausbringst, hierfür immer einen neuen Branch anzulegen?
Vorteil wäre es müssen nicht alle aktualisieren, wenn sie das nicht wirklich wollen, sofern sie FTUI mit update add in den normalen Update Prozess von FHEM eingeklinkt haben, des Weiteren können ja dann Tester mit der neuen URL auf das Control File, die neue Version schon testen.

Also als Beispiel:
FTUI 2.5.x -> Branch ftui_2.5
FTUI 2.6.x -> Branch ftui_2.6

Zumindestens dann solange den alten Branch da lassen, bis zum Beispiel 2.7 erscheint, dann würde ich 2.5 auslaufen lassen.
Bzgl. Support soll das natürlich nicht heißen, dass alle alten Versionen bis in alle Ewigkeiten
witer mit Bugfixes versorgt werden, ich würde es eher als Einfrieren sehen, jetzt kommt neue Version und an der alten wird nix mehr gemacht.

Ansonsten vielen Dank für deine unermüdliche Arbeit.

Gruß Constantin

Aeroschmelz

#181
Hallo,

das meteogram scheint in der Version 2.6 nicht mehr zu funktionieren. Hier erscheint eine leere Seite:


<div data-type="popup" data-height="360px" data-width="890px" class="">
      <div data-type="switch" class="cell small" data-icon="fa-line-chart"></div><div data-type="label" class="cell darker">Meteogram</div>
          <div class="dialog phone-width">
            <div class="center">
              <div id="container" data-type="meteogram" data-title="" data-location="Tyskland/Baden-W&uuml;rttemberg/XXXXX"  data-device="dummy" style="width: 720px; height: 279px; margin: 0 0"></div>     
            </div>
          </div>
        </div>


Bei den Pagebuttons fehlt immer an den gleichen Stellen der graue Hintergrund im Menü, siehe Screenshot. Die Angabe von data-background-icon="fa-circle" bringt aber auch keine Änderung


<header>Menü</header>
  <div data-type="circlemenu" data-direction="right-half" data-circle-radius="80" class="top-space-3x circlemenu">
  <ul>
  <li><div data-type="symbol" data-icon="fa-mixcloud" data-on-background-color="#aa6900" data-off-background-color="#505050" data-on-color="#2A2A2A" data-off-color="#2A2A2A" data-background-icon="fa-circle" class="normal"></div></li></li>
      <li><div id="wetter_vorhersage" data-type="pagebutton" data-on-background-color="#aa6900)" data-url="index_weather.html" data-icon="oa-weather_cloudy" data-on-color="#2A2A2A"></div></li>
  <li><div id="wetter_pollen" data-type="pagebutton" data-on-background-color="#aa6900" data-url="index_pollen.html" data-icon="oa-weather_pollen" data-on-color="#2A2A2A"> </div></li>
  <li><div id="wetter_statistik" data-type="pagebutton" data-on-background-color="#aa6900" data-url="index_weatherstatistik.html" data-icon="oa-weather_station" data-on-color="#2A2A2A"></div      ></li>
    </ul>
  </div>     
  </div><div class="cell darker">Wetter</div>
   
  <div data-type="circlemenu" data-direction="right-half" data-circle-radius="80" class="top-space-2x circlemenu">
  <ul>
  <li><div data-type="symbol" data-icon="oa-sani_heating" data-on-background-color="#aa6900" data-off-background-color="#505050" data-on-color="#2A2A2A" data-off-color="#2A2A2A" data-background-icon="fa-circle" class="normal"></div></li></li>
  <li><div id="heizung1" data-type="pagebutton" data-on-background-color="#aa6900" data-url="index_heizung.html" data-icon="oa-sani_heating_automatic" data-on-color="#2A2A2A"> </div></li>
  <li><div id="heizung2" data-type="pagebutton" data-on-background-color="#aa6900" data-url="index_heizung2.html" data-icon="oa-temp_inside" data-on-color="#2A2A2A"></div></li>
      <li><div id="heizung3" data-type="pagebutton" data-on-background-color="#aa6900" data-url="index_heizung3.html" data-icon="oa-temp_inside" data-on-color="#2A2A2A"></div></li>
    </ul>
  </div>   
  </div><div class="cell darker">Heizung</div>

  <div data-type="pagebutton" data-color="#aa6900" data-url="index_strom.html" data-icon="oa-measure_power_meter" class="top-space-2x normal"></div>
  <div class="cell darker">Strom</div>
   
  <div data-type="pagebutton" data-color="#aa6900" data-url="index_system.html" data-icon="fa-linux" class="top-space-2x normal"></div>
  <div class="cell darker">System</div>

Grafkox

#182
Bezüglich der vielkritisierten Updates:

Ich habe die Beiträge zu 2.4, 2.5 und 2.6 nun die ganze Zeit verfolgt und wollte mal meine zwei Cent loswerden:

Ich habe jetzt 3 Tablet -UI Instanzen:

  • tablet: (QA) das ist der Defaultordner wo die normalen
    Updates reinlaufen, hier liegen keine eigenen html-Dateien
  • tablet-test: hier habe ich meine html-Dateien liegen und sehe nach dem kopieren der Dateien nach einem Update,  ob mein UI zuschossen ist. Hier nehme ich auch die notwendigen Anpassungen an den html-Dateien vor
  • tablet-prod: das ist mein Produktivsystem, hierhin kopiere ich alle angepassten html-Dateien aus tablet-test, wenn wieder alles passt

So umgeht man recht simpel einem versehentlichem "Zerschießen" seiner Liveumgebung.

Ich denke man sollte nicht zu viel von Leuten verlangen, die das hier alles in der eigenen Freizeit entwickeln und dann kostenlos für die breite Masse auch noch zur Verfügung stellen (Sonst könnte die Updatequelle ja auch irgendwann mal versiegen). Man sollte halt auch mal selber schauen, was man machen kann, damit man die individuellen und umfangreichen Anpassungen vor einem Update sichert (Ist bei eigenständigem Customizing bei kostenpflichtiger Software nicht anders).

Daher an dieser Stelle nochmals einen fetten Dank an Setstate für deine unermüdliche Arbeit und den Support. Mach bitte weiter so!!!

Gruß

Thorsten
Raspberry Pi 3 mit Fhem 5.9, Tablet UI 2.6, SIGNALduino, Somfy RTS, Fritzbox 7490, IT-Steckdosen, Hikvision Kameras, Xiaomi Sensoren, Tecalor THZ, E3/DC

Aeroschmelz

Hallo Thorsten,

kannst du mal den header deiner Dateien posten bzw. mehr Details nennen, wie das im Detail funktioniert.

Danke.

Viele Grüsse
Marcus

Grafkox

Ich habe es eigentlich nur so gemacht, wie in der index-exampel.html mit der damaligen eval Version beschrieben ist und unter fhem/www/ mehrere Ordner analog meinem Post gemacht. Es wird halt immer nur der Ordner /tablet beim normalen github-Update berücksichtigt.

Mehr hab ich auch nicht gemacht oder abgesichert, bin auch kein wirklicher Techy.
Raspberry Pi 3 mit Fhem 5.9, Tablet UI 2.6, SIGNALduino, Somfy RTS, Fritzbox 7490, IT-Steckdosen, Hikvision Kameras, Xiaomi Sensoren, Tecalor THZ, E3/DC

Aeroschmelz

Pagebuttons verhalten sich in der 2.6 anders, gehen aber. Problem behoben nachdem ich mal in die Doku gesehen habe ;-)


<div data-type="pagebutton"
          data-url="index_pollen.html"
          data-active-pattern=".*index_pollen.html"
          data-icon = "oa-weather_pollen"
          data-background-icon="fa-circle"
          data-on-color="#2A2A2A"
          data-on-background-color="#aa6900"
          data-off-color="#2A2A2A"
          data-off-background-color="#505050"
          class="normal">
        </div>
        <div class="cell darker">Pollen</div>

ext23

Moin, nach dem FHEM Update heute bekomme ich immer rote Meldungen: ShortPoll Request failes, parse error siehe Anhang
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

gloob

Hab leider gerade das gleiche Problem. Jemand eine Idee?


in den Index Datei habe ich:



<meta name="longpoll_type" content="websocket">



und in FHEM

attr WEB longpoll websocket
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Familienpapi

muss mich leider anschließen. Irgendetwas passt zwischen TabletUI und FHEM 5.8 nicht zusammen.
Hier meine Definitionen:
define WEBtablet FHEMWEB 8084 global
attr WEBtablet JavaScripts codemirror/fhem_codemirror.js
attr WEBtablet codemirrorParam {"theme":"blackboard", "lineNumbers":true}
attr WEBtablet editConfig 0
attr WEBtablet endPlotNow 1
attr WEBtablet longpoll websocket
attr WEBtablet group Web
attr WEBtablet room zConfig
attr WEBtablet stylesheetPrefix darktouchpad

define WEBtablet_allowed allowed
attr WEBtablet_allowed allowedCommands get,set,jsonlist2
attr WEBtablet_allowed group Web
attr WEBtablet_allowed room zConfig
attr WEBtablet_allowed validFor WEBtablet
attr WEBtablet_allowed basicAuth [my_Auth]

define TABLETUI1 HTTPSRV FTUI/ ./www/tabletStable Tablet-Ansicht
attr TABLETUI1 room zConfig
attr TABLETUI1 group Web

define TABLETUI2 HTTPSRV FTUI_Dev/ ./www/tablet Tablet-Test
attr TABLETUI2 room zConfig
attr TABLETUI2 group Web


Funktioniert in beiden Umgebungen nicht mehr. Also liegt die Vermutung bei FHEM Update auf V5.8.
FHEM@RPi4, piVCCU3@RPi3 (nur Homematic IP), boot via USB NVME SSD, keine SDs,
FTUI 3, HMCCU, MQTT(Mosquitto), MobileAlerts, JeelinkV3c868 (LaCrosse), ZWAVE(+), TelegramBot, eigene Heizungssteuerung, Configurable Firmata
ESP8266 MQTT mit eigener Firmware / Framework

setstate

Geht bis jetzt nur, wenn das Device genau "WEB" heißt. Wusste nicht, das ihr fleißig umbenennt.

Muss ich nochmal überarbeiten...

gloob

#190
Mein device heißt genau WEB


Internals: CONNECTS   381 CSRFTOKEN  fhem_447816549692733 DEF        8083 global FD         6 NAME       WEB NR         5 NTFY_ORDER 50-WEB PORT       8083 STATE      Initialized TYPE       FHEMWEB Attributes: JavaScripts codemirror/fhem_codemirror.js editConfig 1 longpoll   websocket menuEntries rereadcfg,cmd=rereadcfg,restart,cmd=shutdown+restart,update,cmd=update,updatecheck,cmd=update+check,backup,cmd=backup, plotEmbed  0 sortRooms  Wohnzimmer Kinderzimmer Schlafzimmer Küche Bad Pflanzen Tanken LEDs CUL Homematic MySensors Presence System stylesheetPrefix darktouchpad


Hab an den "default" Devices nichts geändert.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

klausw

Seit Feature Level 5.8 wird an die URL hinten ein csrfToken angehängt.
Details gibt es unter Neuigkeiten zu lesen.
FTUI kann das csrfToken vermutlich noch nicht verarbeiten.
Als vorübergehende Lösung kannst du das Attribut csrfToken deiner FHEMWEB Instanz auf none setzen.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

gloob

Zitat von: klausw am 20 Februar 2017, 12:43:00
Seit Feature Level 5.8 wird an die URL hinten ein csrfToken angehängt.
Details gibt es unter Neuigkeiten zu lesen.
FTUI kann das csrfToken vermutlich noch nicht verarbeiten.
Als vorübergehende Lösung kannst du das Attribut csrfToken deiner FHEMWEB Instanz auf none setzen.

Vielen Dank. Das hilft mir zumindest für den Moment.

Jetzt gibt es nur noch:
Try to reconnect in 10 seconds.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

setstate

Was sagt die Webconsole über den re-connect Grund?

Familienpapi

Vielen Dank für die schnelle Hilfe. Funktioniert. Eine reconnect Meldung habe ich nicht.
FHEM@RPi4, piVCCU3@RPi3 (nur Homematic IP), boot via USB NVME SSD, keine SDs,
FTUI 3, HMCCU, MQTT(Mosquitto), MobileAlerts, JeelinkV3c868 (LaCrosse), ZWAVE(+), TelegramBot, eigene Heizungssteuerung, Configurable Firmata
ESP8266 MQTT mit eigener Firmware / Framework