Neues Modul readingsGroup

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

Vorheriges Thema - Nächstes Thema

frank

hallo andre,

ich habe probleme mit freezes (perfmon) bei einer readingsgoup, die seit den veränderungen im juni auftreten. mit der version 8462 scheint noch alles halbwegs normal zu laufen. seit dem müssen sich die verarbeitungszeiten bei einer readingsänderung mindestens verdoppelt haben, sodass nun bei jeder readingsänderung freezes auftauchen, sobald die readingsgroup sichtbar ist.

könntest du mal einen blick riskieren, ob es eventuell möglich ist, ein paar optimierungen zu finden. irgend etwas muss in den neuen versionen ja "hakeln". die readingsgroup ist bestimmt seit frühjahr des jahres unverändert und fehler/warnungen werden mit der aktuellen version auch nicht gemeldet.
http://forum.fhem.de/index.php/topic,40635.msg328563.html#msg328563

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

justme1968

hab dir im anderen thread geantwortet.

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

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

Elektrolurch

Hallo,

wollte heute mal die
set name visibility hide
ausprobieren.

1. Dabei ist mir aufgefallen, dass wohl in der Commandref beim set-Befehl das "visibility" in der Beschreibung fehlt (oder es wird mir nicht vorgelesen)

2. set name visibility hide

hat leider nicht zum Ergebnis, dass die rg ausgeblendet wird.  Habe ich das falsch verstanden, dass mit dem set name visibility show/hide nicht die Sichtbarkeit in einer Seite ein- oder ausgeschaltet werden kann??
Eine Fehlermeldung gibt es jedenfalls nicht.
Möchte in Abhängigkeit von den in der ersten rg angezeigten Werte die weiteren rgs ein- bzw. ausblenden.


Elektrolurch
configDB und Windows befreite Zone!

Elektrolurch

Hallo,

das mit visibility klappt nicht, ich habe jetzt disable auf 3 gesetzt und damit bekomme ich die gewünschte (ausgeblendete) Darstellung. Was visibility machen soll, ist mir nicht klar.

Habe da noch ein anderes Problem:

Mit folgender Definition möchte ich das Icon für Shuffle und Repeat nur dann anzeigen, wenn currentNormalAudio = 1 ist, beim Radio-Stram macht ja "zufällige Wiedergabe" oder "Wiederholen" keinen Sinn.
   DEF        SonosCC:!Previous,transportState,!Next,!VolumeD,!VolumeU,Loudness,!Mute,<{ReadingsVal($DEVICE,'currentNormalAudio',0)?'Shuffle':undef}>@currentNormalAudio,<{ReadingsVal($DEVICE,'currentNormalAudio',0)?'Repeat':undef}>@currentNormalAudio

Und wenn

     2015-09-20 15:29:44   currentNormalAudio 1

werden die beiden Icons trotzdem nicht angezeigt.
Ich habe die CommandRef so verstanden, dass

<{perl Ausdruck, der den Readingnamen zurückliefrt}> ist und
@reading2 das reading ist, dass auch longpoll triggert.
Die Anzeige soll sich sowohl aktualisieren, wenn Shuffle oder Repeat sich ändert, als auch wenn der Audiostream umgeschaltet wird (ein/ausblenden der Icons)

Was mache ich da falsch?

Elektrolurch
configDB und Windows befreite Zone!

Elektrolurch

Hallo,

attr SonosCC_rg0 valueSuffix {'state.on' => '<br><span style="text-align:center">ein<br>$ROOM</span>','state.off' => '<br><span style="text-align:center">aus<br>$ROOM</span>' }

Weder $ROOM noch %ROOM werden ersetzt. Auf dem Screen erscheint an der entsprechenden Stelle nur "$ROOM".


Geht die Ersetzung für ValueSuffix nicht?

Für den vorigen Post habe ich auch noch keine Lösung gefunden.

Elektrolurch
configDB und Windows befreite Zone!

justme1968

bis jetzt wird ROOM (und GROUP) nur für mapping, valueIcon und nameIcon unterstützt. das muss ich noch vereinheitlichen.

visibility ist dazu da eine readingsGroup (oder einen teil davon) ein und aus zu blenden. du musst aber auch das visibility attribut passend setzen.

das mit dem icons schaue ich mir an.

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

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

Elektrolurch

Ok. Danke. Hatte schon im Code von Lookup2 nachgesehen.
Habe mir über eine sub einen Workaround gebastelt. Wäre allerdings schön, wenn das tatsächlich einheitlich wäre. Ich muss mir ja wg. Screenreader zu jedem Icon noch einen Text basteln, da brauche ich schon ziemlich häufig das valueSuffix. Hier in dem Fall sollte der Raumname der Schalter angezeigt werden.

Mit dem visibility Attribut hatte ich auch schon herumgespielt, aber mit wenig Erfolg.
Derzeit setze ich für die rgs, die ein-/ausgeblendet werden sollen, disable auf 3 und rufe die js-Funktion für den Screenaufbau auf.
Die hat allerdings den Nachteil, dass bei meinem Firefox (aktuelle Version) eine Nachfrage kommt, wenn zwei Fenster offen sind und dann wird das Fenster im Hintergrund nach vorne gepoppt und fhem ist dann nicht mehr das aktive Fenster. So ganz ist das noch nicht zufriedenstellend..

Gruß und schönes Wk.

Elektrolurch
configDB und Windows befreite Zone!

smeagel

Hallöchen,

ich habe hier ein ,vielleicht, ganz triviales Problemchen....

Ich möchte in einer rg alle Devices haben, welche mit Temperatur im alias anfangen.

Ich habe mir schon überall den Wolf gesucht aber komme leider nicht weiter -
gibt es hier jemand der mir vielleicht weiterhelfen könnte?


Danke & Gruß, Smeagel

grappa24

PERL WARNING: Argument "%EVTPART1" isn't numeric in sprintf at ./FHEM/33_readingsGroup.pm line 525

Diesen Fehler habe ich seit dem heutigen update. Liegt das am Code selbst oder an einem falschen Einsatz meinerseits?

VG Dieter
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

justme1968

das EVTPART in der readingsGroup geht ist mehr oder weniger zufall und nicht direkt beabsichtigt. du solltest $VALUE oder $NUM verwenden.

ansonsten schau mal ob jetzt $EVTPART1 geht. ist teil der featurelevel 5.7 umstellung in fhem.

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

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

grappa24

Zitat von: justme1968 am 24 November 2015, 11:04:06ansonsten schau mal ob jetzt $EVTPART1 geht. ist teil der featurelevel 5.7 umstellung in fhem.
mit $EVTPART1 gehts, danke Andre - da hatte sich doch glatt ein altes Stück Code versteckt ... :o
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

moonsorrox

ich habe mir eine Readingsgroup erstellt die bisher auch richtig angezeigt hat.

Jetzt habe ich den Terrassen Sensor ausgetauscht weil der auch den Luftdruck anzeigt, diesen bekomme ich aber nicht in der readingsgroup zum anzeigen, wo liegt mein Fehler..?


DEF der readingsgroup:
Temperatur_Norden:,<Temperatur>,temperature,<Luftfeuchte>,humidity Temperatur_Terrasse:,<Temperatur>,temperature,<Luftfeuchte>,humidity,<Helligkeit>,luminosity,<Luftdruck>pressure

valueFormat der readingsgroup:
{ temperature => "%.1f °C", humidity => "%.1f %%", luminosity => "%.1f Lx", pressure => "%i mbar" }


valueStyle der readingsgroup:
{ if($DEVICE eq "Eingang Norden" && $READING eq "temperature" && $VALUE > 30) { 'style="color:red"'}elsif($DEVICE eq "Eingang Norden" && $READING eq "temperature" && $VALUE > 22) { 'style="color:orange"'}elsif($DEVICE eq "Eingang Norden" && $READING eq "temperature" && $VALUE < 5) { 'style="color:blue"'}elsif($DEVICE eq "Terrasse Süden" && $READING eq "temperature" && $VALUE > 30) { 'style="color:red"'}elsif($DEVICE eq "Terrasse Süden" && $READING eq "temperature" && $VALUE > 22) { 'style="color:orange"'}elsif($DEVICE eq "Terrasse Süden" && $READING eq "temperature" && $VALUE < 5) { 'style="color:blue"'}elsif($READING eq "humidity" && $VALUE > 65) { 'style="color:red"'}elsif($READING eq "humidity" && $VALUE > 60) { 'style="color:orange"'}elsif($READING eq "luminosity" && $VALUE < 20) { 'style="color:red"'}elsif($READING eq "luminosity" && $VALUE < 150) { 'style="color:orange"'}elsif($READING eq "pressure" && $VALUE < 1000) { 'style="color:red"'}elsif($READING eq "pressure" && $VALUE < 900) { 'style="color:orange"'}else{'style="color:lightgreen"'} }

Frage am Rande, wie habt ihr eure Werte definiert, also ab wann rot, orange, blau und grün angezeigt wird.
Wäre mal interessant zu wissen besonders grad jetzt bei dem Luftdruckwert da ich den bisher nicht hatte.
Kann ich auch vor den Werten jeweils noch ein Icon anzeigen..?
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

grappa24

Zitat von: moonsorrox am 25 November 2015, 13:45:26
Frage am Rande, wie habt ihr eure Werte definiert, also ab wann rot, orange, blau und grün angezeigt wird.
Wäre mal interessant zu wissen besonders grad jetzt bei dem Luftdruckwert da ich den bisher nicht hatte.
Hier mal meine Abstufungen:
Luftfeuchte: blau unter 40%, dann grün bis 60%, darüber rot
Temperatur: blau unter 6 °C, dann grün bis 24°C, darüber rot
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

moonsorrox

Den Fehler habe ich jetzt gefunden...!  ;)
Hier fehlt ein Komma "<Luftdruck>,pressure"

Zitat von: grappa24 am 25 November 2015, 14:49:58
Hier mal meine Abstufungen:
Luftfeuchte: blau unter 40%, dann grün bis 60%, darüber rot
Temperatur: blau unter 6 °C, dann grün bis 24°C, darüber rot

ja OK Danke
Ich habe das jetzt mal angepaßt mit 6 °C da wir grad 5,2 ° haben, aber hier wird nichts blau  :-\
Irgendwo da oben in meinem Code noch ein Fehler drin ?
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

gero

Heißt dein Device "Temperatur_Terrasse" oder "Terrasse Süden"? Ich nehme an die vergleichst im valueStyle auf den alias und nicht den Devicenamen.

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor