[FHEM Tablet-UI] Dokumentation (Diskussionsthread)

Begonnen von Standarduser, 06 Februar 2017, 18:03:03

Vorheriges Thema - Nächstes Thema

bm7777

Benutzerkonto beantragt.
Ich würde mit

| +-label

anfangen. Später gern weitere.
Raspberry Pi Mod. B
CUL-Stick V3.4

TWART016

Zitat von: Standarduser am 06 Februar 2017, 22:06:10
Nur was soll man sich unter Versionshistorie vorstellen und wer soll das pflegen?
z.B. die Neuheiten von 2.4 / 2.5 / ...

Arbeitet jemand z.B. noch mit 1.x gibt es einen besseren Überblick mit den Veränderungen. Lässt sich natürlich streiten wie ausführlich das gemacht wird. Vielleicht reicht auch der erste Post aus 2.5
https://forum.fhem.de/index.php/topic,65604.msg568058.html#msg568058


viegener

Zitat von: TWART016 am 06 Februar 2017, 23:05:33
z.B. die Neuheiten von 2.4 / 2.5 / ...

Arbeitet jemand z.B. noch mit 1.x gibt es einen besseren Überblick mit den Veränderungen. Lässt sich natürlich streiten wie ausführlich das gemacht wird. Vielleicht reicht auch der erste Post aus 2.5
https://forum.fhem.de/index.php/topic,65604.msg568058.html#msg568058

Und auch Tipps und Tricks was man beim Umstieg auf eine neue Version beachten muss.

Generell wären Tipps und gute Besipiele sehr hilfreich. Es gibt häufig die gleichen Fallen in die man reintappt. Gerade bei Formatierung gibt es da immer wieder Spass...
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Ulm32b

Hier mal ein Beispiel, wie es aussehen könnte: Als Teil (!) der Beschreibung von Switch.
(Die entscheidende Information zur Nutzung von on-for-timer in dummies erhielt ich gerade eben von einem Hero im FHEM-Forum.)

Zeitschaltung für einen Switch
Ein Switch soll auf ,,on" und nach einer definierten Zeit automatisch wieder auf ,,off" geschaltet werden. Auch ein manuelles Ausschalten soll jederzeit möglich sein. Realisiert wird dies durch den FHEM-Befehl ,,on-for-timer xx". Bei dummy-Devices setzt dies voraus, dass das Attribut ,,useSetExtensions 1" gesetzt ist. Bei anderen Devices bitte selbst prüfen.

FHEM:

define Zeitschalter dummy
attr Zeitschalter setList on off
attr Zeitschalter useSetExtensions 1


FTUI (In diesem Beispiel beträgt die Zeitdauer 20 s):
<div data-type="switch" class="cell" data-device="Zeitschalter" data-fhem-cmd='IF ([Zeitschalter:state] eq "off") (set Zeitschalter on-for-timer 20) ELSE (set Zeitschalter off)'></div>

setstate

Zitat von: Ulm32b am 07 Februar 2017, 00:47:02
Hier mal ein Beispiel, wie es aussehen könnte: Als Teil (!) der Beschreibung von Switch.
(Die entscheidende Information zur Nutzung von on-for-timer in dummies erhielt ich gerade eben von einem Hero im FHEM-Forum.)

Zeitschaltung für einen Switch
Ein Switch soll auf ,,on" und nach einer definierten Zeit automatisch wieder auf ,,off" geschaltet werden. Auch ein manuelles Ausschalten soll jederzeit möglich sein. Realisiert wird dies durch den FHEM-Befehl ,,on-for-timer xx". Bei dummy-Devices setzt dies voraus, dass das Attribut ,,useSetExtensions 1" gesetzt ist. Bei anderen Devices bitte selbst prüfen.

FHEM:

define Zeitschalter dummy
attr Zeitschalter setList on off
attr Zeitschalter useSetExtensions 1


FTUI (In diesem Beispiel beträgt die Zeitdauer 20 s):
<div data-type="switch" class="cell" data-device="Zeitschalter" data-fhem-cmd='IF ([Zeitschalter:state] eq "off") (set Zeitschalter on-for-timer 20) ELSE (set Zeitschalter off)'></div>

So etwas wäre für mich aber unter "Speziallösungen" zu suchen  (mit Link vom/zum Switch). Die Standard-Section zum Switch sollte nur die Standards enthalten. "Keep it simple!" ist mir wichtig

hobu

Für die Einleitung/Basics ein Vorschlag:
Um den Aufbau einer FTUI-Seite schneller/einfacher zu verstehen, wäre eine grafische Darstellung des Zusammenhangs von cols, rows und den Pixel-Werten der 'Kacheln' hilfreich.
Raspberry Pi (Model B)
HM-CFG-USB, HM-CC-RT-DN, HM-LC-SW1-FM, HM-Dis-WM55, HM-FK-SCO

setstate

Zitat von: hobu am 07 Februar 2017, 08:57:53
Für die Einleitung/Basics ein Vorschlag:
Um den Aufbau einer FTUI-Seite schneller/einfacher zu verstehen, wäre eine grafische Darstellung des Zusammenhangs von cols, rows und den Pixel-Werten der 'Kacheln' hilfreich.

<zustimm>

Hatte ich auch auf meiner "Müsste man mal machen"-Liste

Standarduser

Falls es der eine oder andere noch nicht mitbekommen hat:
Ich schreibe im ersten Beitrag die Gedanken, die hier geäußert werden, mit, damit sich alle einen Überblick verschaffen können, wie der aktuelle Stand aussieht.

Außerdem hab ich mir schonmal Gedanken gemacht, wie der Seitenaufbau der Widget-Doku aussehen könnte.

Vielleicht etwas in dieser Richtung:


WIDGET NAME

Beschreibung, wofür es verwendet werden kann, usw.
--------------------------------------------------------

+------+ +------+ +------+ +------+
|      | |      | |      | |      |
| Bild | | Bild | | Bild | | Bild |
|      | |      | |      | |      |
+------+ +------+ +------+ +------+
Kurze Beschreibung je Bild, mit welchen Attributen diese
Darstellung erreicht werden kann.

WIDGET-SPEZIFIESCHE ATTRIBUTE
zum Beispiel data-get, data-set, data-icons, ...

Attribut | Beschreibung
---------+---------------------------------
Attr.1   | Beschreibung 1
Attr.2   | Beschreibung 2
Attr.3   | Beschreibung 3
...      | ...


ALLGEMEINE ATTRIBUTE
Formatierungsmöglichkeiten, usw.

Attribut | Beschreibung
---------+---------------------------------
Attr.1   | Beschreibung 1
Attr.2   | Beschreibung 2
Attr.3   | Beschreibung 3
...      | ...


BEISPIELE
inkl. eventuell benötigter Definition in FHEM

drhirn

Seitenname auf jeden Fall: FTUI Widget Select, FTUI Widget Label, usw. Das garantiert eine alphabetische Auflistung.

Kategorie: FHEM Tablet UI

Hoggle

Die Dokumentation von FTUI ist für viele die Hürde, die genommen werden muß. Nicht jeder, der sein Haus/Wohnung automatisieren möchte, ist in der Lage, Wünsche in fhem abzubilden und in FTUI darzustellen, ohne sich bei jedem neuen Problem neu einzulesen.
Selbst die recht einfache Struktur von FHEM und FTUI verwirrt häufig Neueinsteiger bzw. Nicht-Programmierer wie auch ich einer bin.

Aus diesem Grund würde ich mich dazu bereit erklären, die erstellten Beiträge auf Verständlichkeit zu überprüfen. Ich glaube einfach, das durch eine gute, aber vor allem einfach zu verstehende Doku ein großes Potential liegt, fhem zu pushen.

Teilweise wird auf eine gestellte Frage im Forum mit, aus meinem Verständnis, kryptischen Formulierungen geantwortet und das sicherlich nicht absichtlich, sondern aus dem Wissen des Könnens heraus. Viele Aspekte, die für die Profis selbstverständlich sind, werden von Anfängern nur mit Fragezeichen versehen.
Das Wiki ist jetzt schon eine gute Anlaufstation und auch im Github findet man Starthilfe, aber eine komplette Doku an einem zentralen Ort wäre der Hammer.

Nur als Anregung: Im getting startet sollten vielleicht doch die Standardklassen aus der "Standard"-CSS Datei benannt werden, also welche es gibt und wie diese benannt wurden. Am wichtigsten sind allerdings die Möglichkeiten der Positionierung von Widgets auf den unterschiedlichen Plattformen (PC, Tablet, Smartphone, etc.).

Mist, abgeschweift. eigentlich wollte ich mich ja nur als Lektor anbiedern :o


drhirn

Ich hab da mal ein Beispiel erstellt: FTUI Widget Select.

Bezüglich FHEM-Code bin ich noch ziemlich unschlüssig. Im Falle der aktuellen Beispiele beim Select-Widget wäre das eine Zeile für den Receiver (schafft jeder) und eine ewig lange Abhandlung bezüglich der Lichtszenen (bringt nichts). Bin mir also nicht sicher, ob eine FHEM-Definition zu den Beispielen wirklich Sinn macht.

Standarduser

Ob es Sinn macht oder nicht, ist sicher individuell vom Widget selbst abhängig.
Bei komplexen Steuerungen von Dummys und Timern wird man das sicher benötigen, beim Select eher nicht.

Sonst finde ich es ganz gut, nur der Seitenname ist echt ungünstig gewählt. Besser wäre https://wiki.fhem.de/wiki/FHEM_Tablet_UI/Widget_Select, ähnlich wie https://wiki.fhem.de/wiki/FHEM_Tablet_UI/FAQ.

Was fehlt, sind die Attribute, mit denen man das Aussehen steuern kann (zweite Tabelle).

Standarduser

Und was mir auch gerade auffällt:
Wir sprechen zwar immer von FTUI, aber korrekt ist eigentlich FHEM Tablet-UI. Die Überschrift sollte also FHEM Tablet-UI Widget: Select lauten.
Den Seitentitel würde ich wie zuvor geschrieben benennen.

setstate

Und  zu Beginn ein Minimal Code Beispiel
Bei dem AV Receiver Beispiel fragt man sich als Newbie bestimmt, "inline"?, "wider"? "w2"? Muss dass immer dabei sein? Gehört das zum Widget?

drhirn

Der Seitenname ist schon gut so. Ein "/" ist in MediaWiki ein Zeichen für Unterseiten. Die sind aber im FHEM-Wiki (und in Standard-Installationen von MediaWiki) nicht aktiviert. Ich habe das gestern mit den FHEM-Wiki-Leuten besprochen, wir belassen es auch dabei.
In deinem Fall wäre der Seitenname dann FHEM_Tablet_UI/Widget_Select, das ist ziemlich lang und eigentlich kaum merkbar. Deshalb finde ich meine Version eigentlich hübscher und praktischer.
Die Seite nur Widget_Select zu nennen fände ich deswegen kritisch, weil es ja sein könnte, dass mit einem anderen Modul irgendwann auch Widgets erstellt werden können. Das könnte zu Konflikten führen. Deswegen habe ich noch das FTUI_ davor gestellt.

Attribute, mit denen man das Aussehen steuern kann? Da gibt's ja eh nur die CSS-Klassen. Und die stehen ja in der Tabelle. Die müssen wir nicht jedes Mal extra beschreiben. Reicht, wenn wir das auf der Hauptseite machen.
Oder habe ich dich falsch verstanden?