Hauptmenü

FHEM App - Manage your Home

Begonnen von Gisbert, 12 März 2021, 15:05:20

Vorheriges Thema - Nächstes Thema

gvzdus

#375
Die gute Idee kann ja auch von uns kommen :-)

Mein Problem: JS ist nicht meine Welt. In Java würde ich den Mapper als Klasse schreiben:

class mapper extends FhemObject {
   public String getPower { return super.relay_0_power };
   public String setPower(X) { super.setRelay_0_power };
}


als Beispiel für den Shelly.

Hübscher wäre so ewas innerhalb von appOptions:


{ "readmap": { "power" : "this.relay_0_power" }}
{ "writemap": { "power" : "this.relay_0_power = power;" }}


Auf jeden Fall muss neben Umbenennung etwas Mathematik möglich sein, oder Min/Max-Begrenzung.

Du musst ja eigentlich nur das FhemObject durch einen Transformator schicken, der ihm die vom Template nötigen Standardattribute verpasst.

Übrigens: Bei der Farbe würdest Du da wieder verrückt werden ohne Mapper, weil die einen Devices nach RGB, die nächsten nach "Hue", dann wieder welche nach HSV u.s.w. laufen.

Manche kennen ja das HomeBridge-Mapping von alexaFhem. Ich finde es nicht glücklich. Mich stört beim manchen Lösungen in FHEM, dass wieder irgendeine Syntax erfunden wurde, die "Lern mich" schreit. Dann denke ich immer: "Nein, ich bin alt, und kann C, Java und Perl. Muss man jetzt wirklich noch eine spezielle Kurzform erfinden?". Deswegen werde ich auch mit Dingen wie DOIF nicht warm.

Jamo

Hallo und frohe Ostern Jens,
für die Gruppierung von Schaltern hast Du das im Screenshot (ist von deiner Git Seite) gezeigte template verwendet.
Für mich sieht das so aus das dort verschiedene Schalter untereinander unter einer Funktion gelistet sind, und man die Schalter links aus und recht ein schalten kann. Der Zustand ist dann visuell erkennbar, wenn 'an' ist das I rechts dann grün, wenn 'aus' ist der kreis links ausgegraut wie im Bild.

Was für ein Template ist das? Ich finde das nicht, kannst Du mich in die richtige Richtung schubsen? Hinzufügen einer weitere Ebene kann es ja nicht sein, weil das ist ja zum ausklappen und nicht permanent wie im Bild.

Vielleicht wäre das auch ein Ansatz für die Diskussion der Darstellung von 4 Schaltern auf 4 Ebenen.

Danke schonmal.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Benni

Zitat von: Jamo am 02 April 2021, 10:54:23
Was für ein Template ist das?

Das ist ein Panel!

Das links ist nur der Status und das rechts ist ein Button, der entweder mit einem Link oder einem Schaltkommando belegt werden kann. Es wurde für den Button eben ein anderes Icon festgelegt, anstatt ">".

Zitat von: Jamo am 02 April 2021, 10:54:23
Vielleicht wäre das auch ein Ansatz für die Diskussion der Darstellung von 4 Schaltern auf 4 Ebenen.

Das war das, was ich damit gemeint hatte:

Zitat von: Benni am 01 April 2021, 19:57:11
Optional vielleicht ein Panel aufbauen.

gb#

Jamo

Hi Benni, danke, jetzt hats geschnackelt!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Jamo

#379
Hallo Jens,
das Panel ist bei mir auf dem Desktop im Browser für Chrome und Edge (Version 89.0.774.68) und auf dem iPad in Querformat breiter als die anderen Elemente, ist das ein Fehler? Auf dem iPhone / iPad im Hochformat stimmts. Siehe Screenshot.
Danke!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Benni

Hallo Jens,

Mir ist auch noch was aufgefallen, allerdings weiß ich nicht ob es ein Bug ist, oder einfach nur (noch) kein Feature  ;D

Wenn ich ein Device über appOptions mehreren Bereichen oder Gruppen zuordne, wird das Gerät lediglich im jeweils ersten angezeigt. Die Gruppen oder Räume werden aber alle angelegt/angezeigt, das Device wird aber nicht darin angezeigt (s. Screenshots im Anhang!)

hier die appOptions des Device:


{
"template": "light",
"room": "Flur,Testraum1,Testraum2",
"group": "Licht,EG-Licht",
"name": "Flurlicht",
}


Erwartet hätte ich, dass es analog zu FHEM möglich ist, ein Device mehrfach zuordnen zu können (für die FHEM-Attribute habe ich es jetzt nicht getestet)



gb#




tomspatz

Ich greife mal auf mein post von letztens zurück, da ich das immer noch nicht ganz verstehe
.
Zitateines verstehe ich nicht so wirklich  :(
Unter FHEMWEB habe ich einen Raum, "Büro" in dem Raum gibt es Gruppen "Fenster und Türen" Heizung & Temperatur", "Licht", "Steckdosen & Funksteckdosen"
Innerhalb der Gruppen, sind diverse Geräte.
Aus diesem Raum habe ich ALLE Geräte ins FHEMApp übernommen. Somit gibt es unter Bereiche auch den Raum "Büro". Die Sortierung der einzelnen GEräte in dem Raum scheint aber willkürlich zu sein.

Mein Verständniss sagt die Gruppierung aus FHEM, wird in FHEMapp NUR unter Gruppen angezeigt und haben keinerlei Einfluss auf eine "gruppierte" Anzeige unter Bereiche.
Wie lassen sich denn dann die einzelnen devices in einem FHEMapp Bereich definiert anzeigen. Ich sehe die Ansicht eigentlich recht wilkürlich.
Würde diese gerne auch irgendwie sortiert haben wollen.


binford6000

ZitatWie lassen sich denn dann die einzelnen devices in einem FHEMapp Bereich definiert anzeigen. Ich sehe die Ansicht eigentlich recht wilkürlich.
"sortby": "string",               - kann alternativ zum FHEM-Attribut 'sortby' verwendet werden

binford6000

Ich hab mal mein Android Tablet reaktiviert.
Hier werden mir leider keine Bereiche und Gruppen angezeigt und es steht ganz oben (siehe Screenshot)
folgender Fehler:

Loading groups from FHEM failed.
TypeError: m.replaceAll is not a function


Auf dem Tablet läuft fully in Version 1.38. Mit Chrome 79.0.3945.136 das Gleiche.
Unter Windows zum Vergleich alles OK.

Ich habe aber alle ignores in options in der config.json gesetzt:
"options": {
    "ignoreFhemGroup": true,
    "ignoreFhemRoom": true,
    "ignoreFhemSortby": true
  }


VG Sebastian

jemu75

neues Release v3.5.0 - hier ein kleines Osterei - unter der Rubrik offene Wünsche  :P

Features
neu: Im Template Charts können jetzt auch Daten aus DbLog angezeigt werden. siehe
neu: In der mobilen Ansicht (1-spaltiges Layout) kann jetzt optional angezeigt werden, in welcher Gruppe bzw. in welchem Bereich man sich gerade befindet. siehe

ACHTUNG: sichert bitte euren Ordner ../fhemapp/cfg/ bevor ihr das neue Release auf euren Web-Server kopiert und fügt das danach dort wieder ein. Ansonsten geht eure Grundkonfiguration und eigene Templates verloren.

Github der Link: https://github.com/jemu75/fhemApp

jemu75

Zitat von: binford6000 am 02 April 2021, 17:22:25
Ich hab mal mein Android Tablet reaktiviert.
Hier werden mir leider keine Bereiche und Gruppen angezeigt und es steht ganz oben (siehe Screenshot)
folgender Fehler:

Loading groups from FHEM failed.
TypeError: m.replaceAll is not a function


Auf dem Tablet läuft fully in Version 1.38. Mit Chrome 79.0.3945.136 das Gleiche.
Unter Windows zum Vergleich alles OK.

Ich habe aber alle ignores in options in der config.json gesetzt:
"options": {
    "ignoreFhemGroup": true,
    "ignoreFhemRoom": true,
    "ignoreFhemSortby": true
  }


VG Sebastian

Jup, das Problem ist bereits bekannt. Ältere Browser haben ein Problem mit "replaceAll". Ich muss mir dazu noch was einfallen lassen. Sollte aber kein all zu großer Akt sein. ;) Ansonsten passt deine Konfiguration :)

jemu75

Zitat von: binford6000 am 02 April 2021, 17:11:46
"sortby": "string",               - kann alternativ zum FHEM-Attribut 'sortby' verwendet werden

Du gibst jedem Template in appOptions über den Parameter sortby bzw. über das FHEM-Attribut sortby einen Sortierschlüssel. Dieser greift dann in der Anzeige - jedoch nur bei den Templates die mit sortby definiert sind. Alle anderen Templates werden danach unsortiert angezeigt. Bei sortby sollte man generell auch folgende Vorüberlegung anstellen. Wenn ich meine Devices auf Basis von Gruppen sortiere, dann kann das bei Darstellung der Bereiche anders sein.

Beispiel:
Licht Wohnzimmer = 1, Licht Küche = 2, Licht Flur = 3 ...
Jalousie Küche = 1, Jalousie Flur = 2, Jalousie Wohnzimmer = 3 ...
Befinde ich mich jetzt im Bereich Küche wird erst die Jalousie und dann das Licht Template angezeigt.
Befinde ich mich hingegen im Bereich Wohnzimmer wird erst das Licht und dann die Jalousie angezeigt.

Lösen kann man dass indem man sich "Nummernbereiche" für Gruppen oder Räume überlegt.
Beispiel:
Licht Wohnzimmer = 1001, Licht Küche = 1002, Licht Flur = 1003 ...
Jalousie Küche = 2001, Jalousie Flur = 2002, Jalousie Wohnzimmer = 2003 ...
Jetzt werden die Templates richtig sortiert, wenn ich eine Gruppe anzeige und zudem immer "nach" Gerätetyp" sortiert angezeigt, wenn ich Bereiche anzeige.

ist etwas "tricky" aber geht.  :D

Jamo

#387
Zitatneu: In der mobilen Ansicht (1-spaltiges Layout) kann jetzt optional angezeigt werden, in welcher Gruppe bzw. in welchem Bereich man sich gerade befindet. siehe
Hallo Jens,
super, danke, schöne Überraschung! So siehts aus, siehe Screenshot (Bereich Arbeit).
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

jemu75

Zitat von: Benni am 02 April 2021, 11:42:08
Das ist ein Panel!

Das links ist nur der Status und das rechts ist ein Button, der entweder mit einem Link oder einem Schaltkommando belegt werden kann. Es wurde für den Button eben ein anderes Icon festgelegt, anstatt ">".

Das war das, was ich damit gemeint hatte:

gb#

Perfekt erklärt  :)

jemu75

Zitat von: Benni am 02 April 2021, 12:59:38
Hallo Jens,

Mir ist auch noch was aufgefallen, allerdings weiß ich nicht ob es ein Bug ist, oder einfach nur (noch) kein Feature  ;D

Wenn ich ein Device über appOptions mehreren Bereichen oder Gruppen zuordne, wird das Gerät lediglich im jeweils ersten angezeigt. Die Gruppen oder Räume werden aber alle angelegt/angezeigt, das Device wird aber nicht darin angezeigt (s. Screenshots im Anhang!)

hier die appOptions des Device:


{
"template": "light",
"room": "Flur,Testraum1,Testraum2",
"group": "Licht,EG-Licht",
"name": "Flurlicht",
}


Erwartet hätte ich, dass es analog zu FHEM möglich ist, ein Device mehrfach zuordnen zu können (für die FHEM-Attribute habe ich es jetzt nicht getestet)



gb#

Mensch, Ostern heißt nicht "Fehler" suchen...  ;D ;D ;D
Also, das ist tatsächlich (noch) kein Feature. Ich habe das bei Verwendung der FHEM Attribute "room" bzw. "group" schon so gebaut. Aber bei appOptions geht das noch nicht. Ich nehme das nach Ostern mit in Angriff.