[gelöst]attr <HM-CC-RT-DN>_Clima tempListTmpl fehlt

Begonnen von HeikoE, 31 August 2021, 21:58:35

Vorheriges Thema - Nächstes Thema

frank

auch beim hm-cc-tc_climate gibt es probleme mit dem attribut.

das schlimmste: die attribute werden bei manchen entities sogar gelöscht. das kann ja wohl nicht sein. ist es kein attribut für den user?
teilweise kann man es setzen, teilweise aber nicht.
und hminfo meckert auch nur sporadisch.

eine klare linie kann ich (noch) nicht entdecken.
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

Beta-User

Na ja, wenn tempListTmpl kein Attribut "für den User" ist, welches dann...?

Allerdings wird hier versucht, sinnvolle Vorauswahlwerte zu ermitteln, welche ihrerseits wieder unterschiedlich sind, je nachdem, ob HMinfo existiert oder nicht.

Würde vorschlagen, dass wir bzgl. des "random"-Initialisierungs-Problems mal bei diesem Attribut bleiben.

Mein Code-Verständnis:
Das Attribut kommt (auch im laufenden Betrieb) dazu bzw. wird geändert, wenn ein passender setter da ist (#1410 meiner Version):
CUL_HM_AttrAssign($_) if(CUL_HM_SearchCmd($_,"tempTmplSet"));

Solange !init_done geht die Schleife in #1409 ins Leere.

Die einzige Chance innerhalb CUL_HM für CUL_HM_AttrAssign() steht demnach in #7706 als Teil von CUL_HM_updtDeviceModel(), das wiederum aufgerufen wird aus CUL_HM_updateConfig().
Immer ist Voraussetzung, dass der setter da (#1427). Damit macht diese Attributgruppe eine Ausahme vom sonstigen "Rollenmodell".

Soweit so klar. Die spannende Frage ist dann aber: Geht der setter irgendwo (vorübergehend?) verloren? Und warum verhält sich das Testsystem an der Stelle anders als das Echtsystem? Perl? HMinfo? Mal sehen, für's erste mal nur die Darstellung, auch damit ich es ggf. selbst später nochmal nachvollziehen kann...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

frank

moin beta-user,

diesen aufruf verstehe ich nicht (zeile 914), weil er maximal am ende die templist attribute ändern könnte.
sollte hier eventuell eine andere funktion stehen?

        #Beta-User# sonst braucht man nach dem define einen Neustart?
        CUL_HM_AttrInit($hash,'CCU-FHEM');
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

Beta-User

der ist auch falsch, ist mir gestern auch noch aufgefallen, komisch ist nur, dass es geholfen hatte...

Müßte m.E. so lauten:
CUL_HM_AttrAssign($name);
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Beta-User

#19
Beim Durchflözen ab der genannten Stelle CUL_HM_updtDeviceModel() kommt es mir so vor, als würden ein paar Mal Attribute via CUL_HM_AttrAssign() (teilweise auch nicht) gesetzt, ohne vorher die setLst sicher (mit CUL_HM_SetList()) erzeugt zu haben. MAn. muss das aber (mindestens) im "fromUpdate"-Fall sein.

Weitere Infos nach eventuellen abendlichen Tests.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Beta-User

Zitat von: Beta-User am 29 September 2021, 17:05:25
Weitere Infos nach eventuellen abendlichen Tests.
Also: Wie im anderen Thread bereits angemerkt waren die soweit erfolgreich. Das Attribut und die Setter sind jedenfalls bei den wenigen Stichproben im Echtsystem bei den RT-Clima-Kanälen (und weiter auch dem WT) vorhanden.

Jetzt wären also noch folgende spannende Frage:
- hilft das auch bei den "vergessenen" Attributinhalten?
Zitat von: frank am 28 September 2021, 15:05:47
workaround für das "attr param msgReduce:x"

[...]

2. nach jedem fhem restart muss nun noch das attribut explizit erneut gesetzt werden.

- welche Teile kann man ggf. wieder rückbauen, ohne das ganze wieder zum Wackeln zu bringen? (MAn. lohnt der Aufwand nicht wirklich, das näher zu untersuchen, ich fühle mich mit den sortierten Listen nach wie vor wohler...)

- gibt es unerwünschte Nebenwirkungen?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

frank

#21
attr tempListTmpl ist jetzt an allen hm-cc-tc vorhanden und ich konnte überall none setzen.
ob ein restart die attribute leben lässt, bleibt ab zu warten (ist zur zeit zu aufwändig zum testen)

hminfo configcheck findet weiterhin keinen fehler, wenn kein attribut gesetzt ist.
das war damals der grund das attribut mit none zu setzen.


Zitat- hilft das auch bei den "vergessenen" Attributinhalten?
nein, beim virtuellen tc hat sich nichts geändert.
edit: "vergessen" ist vielleicht auch der falsche ausdruck.
da das internal ".AttrList" niemals existiert, existiert das attribut für cul_hm eigentlich auch nicht, oder?
aber glücklicher weise werden hier nicht alle attribute gelöscht.  :)

Zitat- welche Teile kann man ggf. wieder rückbauen
den part wird ggf martin übernehmen, indem er nicht alles übernimmt, denke ich.  ;)
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

dancatt

Hallo zusammen,

wollte gerade meine profile umstellen und mit Entsetzen gesehen dass
attr RT_Clima tempListTmpl Winter.cfg:1_04_GT
nicht geht. Noch gibt es hier keinen Fix der im SVN ist, korrekt?

Vielen Dank.

Gruß Daniel
Cubietruck: FHEM-Server 6.0

Homematic: HM-USB-CFG2, HM-CFG-LAN, HM-LC-SW1-FM, HM-LC-Sw1-Pl-DN-R1, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-SC-2, HM-SEC-SD, HM-PB-6-WM55

Beta-User

Nope, Martin hat sich noch nicht gemeldet.

Aktuelle gepatchte Fassungen sind in https://forum.fhem.de/index.php/topic,123198.0.html zu finden
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

dancatt

Zitat von: Beta-User am 04 Oktober 2021, 10:47:20
Nope, Martin hat sich noch nicht gemeldet.

Aktuelle gepatchte Fassungen sind in https://forum.fhem.de/index.php/topic,123198.0.html zu finden

Da überschreibe ich mir aber nicht das Problem mit dem HMLAN und dem Internal "Clients", oder?
Cubietruck: FHEM-Server 6.0

Homematic: HM-USB-CFG2, HM-CFG-LAN, HM-LC-SW1-FM, HM-LC-Sw1-Pl-DN-R1, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-SC-2, HM-SEC-SD, HM-PB-6-WM55

Beta-User

Ich gehe nicht davon aus. Basis war die letzte svn-Version gewesen, von daher glaube ich nicht, dass du dir damit eine Regression einbaust...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

dancatt

Also bei mir geht es immer noch nicht. Es kommt die Meldung
value Winter.cfg:1_04_GT illegal. Choose one of:none,defaultWeekplan,
Im Frühjahr ging das noch alles als ich auf Sommer umgestellt habe.
Cubietruck: FHEM-Server 6.0

Homematic: HM-USB-CFG2, HM-CFG-LAN, HM-LC-SW1-FM, HM-LC-Sw1-Pl-DN-R1, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-SC-2, HM-SEC-SD, HM-PB-6-WM55

Beta-User

#27
Die Datei existiert?
(Ich hatte das nur im HMinfo-Umfeld gesehen, und das sah soweit ok aus).

Und zu welchem Zeitpunkt kommt das? Laufender Betrieb oder startup-Phase?

EDIT: OK, kann das nachstellen, wenn HMinfo da ist. Dann sperrt das das Attribut gegen alles, was von woanders her kommt.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

dancatt

Die Datei liegt im FHEM Ordner. War zuerst in der configDB. Habe sie aber exportiert. Macht keinen Unterschied.
Das passiert zur Laufzeit. Ich führe den Befehl aus.
Cubietruck: FHEM-Server 6.0

Homematic: HM-USB-CFG2, HM-CFG-LAN, HM-LC-SW1-FM, HM-LC-Sw1-Pl-DN-R1, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-SC-2, HM-SEC-SD, HM-PB-6-WM55

Beta-User

Hmm, glaube einen hotfix gefunden zu haben...

Ca. Zeile 1284 sollte was ergänzt werden (die ersten zwei sind schon da):
return undef if (!$attrOpt || $attrOpt =~ m/^multiple|textField-/); # any value allowed
  return undef if(grep/^$attrVal$/,split(",",$attrOpt));   # attrval is valid option
  return undef if $attrFound && $attrName eq 'tempListTmpl'; #Beta-User: https://forum.fhem.de/index.php/topic,122726.msg1177787.html#msg1177787


Wenn du magst, kannst du auch die Versionen aus https://forum.fhem.de/index.php/topic,123136.msg1177795.html#msg1177795 testen. Da kann ich aber zu Risiken und Nebenwirkungen noch mehr oder weniger nichts sagen...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files