Neues Modul readingsGroup

Begonnen von Niko, 24 August 2013, 11:59:11

Vorheriges Thema - Nächstes Thema

ext23

Ehm sicher das du die aktuelle Version hast? Ich hatte das Problem auch, nach einem Update lief es aber wieder. Zumindest bis gestern, heute hab ich noch kein Update gemacht ;-)
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

Elektrolurch

#1156
Ja. Das Update war von gestern.
Hatte mit der Ergänzung von eventMap extra gewartet, weil ich in einem Beitrag gesehen habe, dass es da mit readingsGroup noch ein Problem gab und Andre die neue Version hochladen wollte.
Das war vor einigen Tagen. Ich müsste also den aktuellen Stand von gestern haben.
P.S.:
Mein derzeitiger Workarround:

attr fritzbox_rg valueFormat {TransformValue("$VALUE");;}

TransformValue macht dann zusätzlich aus on ein, aus off aus und den Rest wird unverändert weitergegeben.

Somit wird nun dauerhaft ein und aus in der rg angezeigt, auch wenn die Seite mit F5 aktualisiert wird.

Warte auf das nächste Update... :-)
configDB und Windows befreite Zone!

Panik

Hallo,

wie kann ich bei einer readingsgroup Definition erreichen, dass die Icons die anklickbar sind aktualisiert werden.
Bis jetzt kann ich nur einmal klicken, es wird an oder ausgeschaltet und dann muss ich die Webseite refreshen ...

define it_Aktoren readingsGroup <Raum | Aktor>,<Status>,<Erfassungszeit> TYPE=TRX_LIGHT:state
attr it_Aktoren group Aktor_Steckdosen
attr it_Aktoren mapping %ROOM | %ALIAS
attr it_Aktoren room Allgemein
attr it_Aktoren valueIcon { state => '%devStateIcon' }


Panik



Raspberry3+,  CUL USB V3 mit V 1.66 CUL868, TRXRFX433, HM-MOD-UART, Phoscon-GW

Elektrolurch

Hallo,

außer dem vorletzten Beitrag zur eventMap, habe ich, wie mein Vorgänger oben, auch eine Frage zum refresh:

Ich habe ein Menü in der rg, mit dem ich die Ansicht umschalten kann. Dabei wird per modify - Befehl die rg mal länger oder kürzer.
Eigentlich sollte doch der modify-Befehl auch den Bildschirm aktualisieren. Tut es aber nicht.
Erst nach F5 sieht man, dass das modify tatsächlich auch ausgeführt wurde.
(aktueller Firefox)
Und wenn ich dies nach dem modify aufrufe:
readingsGroup_updateDevices($defs{"HzAnlage_SOL_P_rg"});

pasiert auch nichts.

Dann habe ich das ausprobiert:
RefreshScreen('WEB');

sub  RefreshScreen($)
{
my ($name) = @_;
FW_directNotify("#FHEMWEB:$name", "location.reload(true);","" );
} # end sub RefreshScree
#####################


Das ging bis vor kurzem noch. Nun fragt Firefox nach, ob ich tatsächlich die Daten neu senden möchte.

Gruß

Elektrolurch
configDB und Windows befreite Zone!

karl0123

Dass sich beim editieren von z.B: value Icon ein neues großes Fenster öffnet, ist ja ganz nett, hat man jedoch Codemirror aktiviert, werden die Änderungen in dem Fenster nicht ins Attribut übernommen.

RoBra81

Habe ich auch schon feststellen müssen - mein aktueller Workaround: nach dem Öffnen des großen Fenster einmal auf Cancel drücken und beim nächsten Öffnen startet der Codemirror nicht und die Änderungen werden übernommen...

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

cotecmania

Zitat von: cotecmania am 01 Februar 2015, 16:38:27
Hallo,

bei mir aktualisieren sich die Werte des DropDowns für desired-temp nicht, wenn ich an einem Thermostat direkt die Vorgabe ändere.
Das müsste laut Forum doch gefixt sein, oder mache ich noch was falsch ?
Die Ist-Temperatur aktualisiert sich von selbst ...

define HM_Thermostate readingsGroup CUL_HM_HM_CC_RT_DN_......:<%hc_wht_regler>,<{AttrVal($DEVICE,"alias",$DEVICE)}>,measured-temp@{$DEVICE."_Clima"},desired-temp@{$DEVICE."_Clima"},battery,ValvePosition@{$DEVICE."_Clima"} TYPE=MAX:<%hc_wht_regler>,<{AttrVal($DEVICE,"alias",$DEVICE)}>,temperature,desiredTemperature,battery,valveposition
attr HM_Thermostate commands {'desired-temp' => 'desired-temp:', 'desiredTemperature' => 'desiredTemperature:off,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,on'}
attr HM_Thermostate fp_Tablet 30,820,0,
attr HM_Thermostate mapping { "desired-temp" => " "}
attr HM_Thermostate noheading 1
attr HM_Thermostate room Heizung
attr HM_Thermostate valueFormat { 'valveposition' => "%.0f%", 'desiredTemperature' => "%.1f&deg;;C", 'temperature' => "%.1f&deg;;C", 'ValvePosition' => "%.0f%", 'desired-temp' => "%.1f&deg;;C", 'measured-temp' => "%.1f&deg;;C"}
attr HM_Thermostate valueIcon {'battery.ok' => 'batteryfull_32', 'battery.low' => 'batteryleer_32'}
attr HM_Thermostate group Thermostate


Wie bekomme ich es hin, dass die Vorgaben im DropDown wieder automatisch ohne manuellen Refresh angepasst werden ?

Gruss
Joe
FHEM auf RaspberryPI B (buster)
2xCUL868 für MAX/Slow_RF, HM-LAN, JeeLink
MAX!/HM-Thermostate, FS20/HM-Rolladenschalter, FS20-EM, LevelJet-Ölstandsmessung, PCA301, IT, KM271, IPCAM, FireTAB10 FTUI

marvin78

Zitat von: justme1968 am 05 Februar 2015, 12:48:17
das ist inzwischen (fast) repariert. siehe hier: http://forum.fhem.de/index.php/topic,33226.msg256778.html#msg256778.

gruss
  andre

Nicht wirklich. Ich habe die neuen Dateien eingespielt und das Verhalten ist kaum anders (hin und wieder funktioniert es allerdings). Komplett ärgerlich ist, dass Codemirror offenbar nach einem Cancel dann gar nicht mehr geladen wird. Auch im DEF Bereich bleibt die textarea "unbehandelt". Zudem gibt es im Fenster doppelte Scrollbalken. Das ist auch gerade angenehm und insgesamt aktuell eher eine unkomfortable und ärgerliche Änderung auch wenn ich die Idee begrüße.

Elektrolurch

Hallo Andre,

mal eine Frage: Ich muss mir ja die fhem-Oberfläche einerseits barrierefrei gestalten, andererseits wären auch ein paar nette Ikons für den WAF wichtig.
Leider sind die Ikonen (als Statusanzeige) für einen Screenreader nicht so geeignet :-)
Was ich jetzt gerne hätte, wäre für ein und das selbe Reading einmal das valueIcon in der Zeile und dahinter den Wert als Text.

Eine Idee, wie ich das bewerkstelligen könnte?
Danke.

Gibt es zu dem Problem aus Beitrag 1156 bzw. dem davor (eventMap wird bei Aktualisierung von readings über set / readingsBulkupdate in der rg berücksichtigt, nicht aber wenn die Seite neu aufgebaut wird. Habe daher mal ein, mal on dort stehen) schon eine Erkenntnis?


Gruß

Elektrolurch
configDB und Windows befreite Zone!

justme1968

#1165
die eventMap geschichte muss ich mir noch mal in ruhe anschauen. eigentlich sollte es mit dem letzten bzw. vorletzten update behoben sein.

du kannst mit einem passenden valueSuffix attribut hinter das icon noch einen text schreiben. z.b. einfach $VALUE.

wenn du weisst wie man die svg icons mit einem alternativen text für deinen screen reader versehen kann würde ich das in die readingsGroup einbauen bzw. einen patch für fhem insgesamt schreiben.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Elektrolurch

Hallo Andre,
<cite>
du kannst mit einem passenden valueSuffix attribut hinter das icon noch einen text schreiben. z.b. einfach $VALUE.
</cite>
Na, ein Tipp vom Profi, da wäre ich jetzt einfach nicht drauf gekommen, dabei liegt es sooooo nahe... Super, damit werde ich jetzt viel Spaß haben, denn ich mache ja jetzt das Ganze WAF-friendly, also a bisserl mit Bildchen und so...
<cite>
wenn du weisst wie man die svg icons mit einem alternativen text für deinen screen reader versehen kann würde ich das in die readingGroup einbauen bzw. einen patch für fhem insgesamt schreiben.
</cite>

Leider noch nicht so ganz genau.
Mein Handy hat auch einen Screenreader, und der hat mir bei manchen svg-Ikons einen "Copywrite-Text vorgelesen. Ich habe dann mal das Ikon im Text-Editor gesucht und festgestellt, das der Text dort frei steht und kein Tag hat. Wenn ich den ändere auf ein/aus wird das dann auf dem Handy vorgelesen, aber nicht auf dem Window-PC.
Merkwürdigerweise werden aber die Standard-FS20 on und off Ikonen mit ein und aus vorgelesen, wie das geht, habe ich aber noch nicht herausgefunden, wenn ich nämlich per defStateIkon ein anderes Ikon dort hin versetze, liest er nichts mehr vor.

Aber zurück zum svg: Habe mir in den letzten Tagen (endlich mal) css angesehen und bin dabei auch noch mal durch html gegangen. Im Prinzip enthält die ja auch Tags für die Barrierefreiheit, welche davon aber wirklich aktiv durch einen Screenreader unterstützt werden, muss ich mal herausfinden. Es geht so um "Ersatztexte" für Symbole im Text. Das könnte man dann in die svg hinzufügen und hätte vmtl. eine durch Screenreader zusätzlich unterstützte Sprachausgabe.
Mal sehen... die Arbeit geht nie aus und die Ideen auch nicht... :-)

Im übrigen bringt mich das eventMap auch manchmal zum verzweifeln, habe jetzt doch bei den Ikonen alle Varianten mit on bzw. ein usw durchgespielt, bis die Standardglühlampe durch was anderes ersetzt war....

Gruß

Elektrolurch
configDB und Windows befreite Zone!

Elektrolurch

Hallo,

noch mal einen Tipp gesucht:

in der Def. einer rg steht:
<%meinIkon>,<Überschrift> ...

In der ersten Spalte erscheint das Ikon, in der zweiten der Text. Ergibt aber leider eine etwas große Lücke. Hätte gerne, dass das Ikon und der Text direkt in einer Spalte wären.

<&Ikonname&nbsp;Überschrift>...
geht leider nicht, da erscheint dann gar nichts mehr....

Tipp?

Gruß

Elektrolurch
configDB und Windows befreite Zone!

justme1968

statt <%meinIkon>,<Überschrift>,... kannst du inzwischen das hier schreiben:meineRg:!meinIkon,...

du nimmst den namen der readingsGroup und zeigst davon das reading mit namen meinIkon an. das ! ist dafür da das das reading auch wenn es nicht da ist angezeigt wird. da meinIkon jetzt ein normales reading ist greifen alle mappings für die readings und du kannst du das icon mit valueIcon zuweisen und die überschrift mit valueSuffix dahinter hängen.

du musst auch nicht mehr auf nicht erlaubte zeichen wie komma oder doppelpunkte achten. in den meisten fällen ist die neue schreibweise mit !sehr viel flexibler. du kannst z.b. auch einfach der readingGroup mit setreading ein passendes reading verpassen und so dynamisch überschriften ändern.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Newbee

Hallo,

habe folgende readingsGroup bei mir eingebunden.

define HM_Comp readingsGroup <Gerät>,<Name>,<Model>,<S/N> TYPE=CUL_HM:+NAME,?model,D-serialNr
attr HM_Comp room Maintenance


Mit folgendem Ergebnis.

HM_Comp         
Gerät                   Name                  Model                       S/N
AP_Door                   AP_Door                  HM-SEC-SC-2            XXX
AT_Switch_Attic_F   AT_Switch_Attic_F   HM-PB-2-WM55-2   XXX

und die andere Variante ist wie folgt.

define HM_Comp_SN readingsGroup .*:D-serialNr
attr HM_Comp_SN room Maintenance


Mit diesem Ergebnis.

HM_Comp_SN      
AP_Door:D-serialNr                   XXX   2015-01-20 12:20:26
AT_Switch_Attic_F:D-serialNr   XXX   2015-01-20 12:20:26

Ich habe nun einige Kombinationen probiert um die beiden zusammen zu führen und bin wohl einfach zu .....  :o

Ich hätte gerne die obere Variante mit Überschrift, aber nur auf die readings mit einem Wert bei D-serialNr der unteren Variante.

Vielen Dank vorab.

Gruß Newbee
Intel-NUC mit ubuntu server 20.04; FHEM 6.0
HM, Dect, Netatmo, Hue