Zitat von: grappa24 am 04 Mai 2026, 11:49:11@Dieter: Sind das 2 getrennte Strings am Knoten? Falls ja wie eingerichtet?Das sind 3 WR!

Zitat von: Dr. Boris Neubert am 05 Mai 2026, 10:26:26Es ist Andrés Modul, er war ursprünglich einverstanden, habe aber auf meine Nachfrage neulich nichts wieder gehört.M.E. wäre es kein Verstoß, das einzuchecken, ich habe das hin und wieder auch schon für andere gemacht, und gehe davon aus, dass André sich ggf. gemeldet hätte, wenn er Einwände gegen die grundsätzliche Richtung gehabt hätte. Derzeit sind die Eingriffe auch überschaubar, und falls es Probleme gäbe, fixen wir die eben...
.
So macht das Freude - ich muss mich zwar mehr um das Thema kümmern als eigentlich Zeit dafür ist, aber es kommt immerhin was konstruktives raus, DANKE!Zitat von: bertl am 05 Mai 2026, 16:14:54Eventuell das "FULLY_GetDeviceInfo ($name);" verschieben (wie im diff unten angeführt)!?Habe mal in der "alten" Fassung mit NotifFn-Start nachgesehen - https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/89_FULLY.pm?rev=30558. Da wurde das (m.E. ungünstig, einer der Gründe für den Wechsel zu timer-basiert...) nur im define aufgerufen oder bei expliziter Anforderung. Von daher gäbe es vergleichend keinen Anlass, das noch zu einem anderen Zeitpunkt als einmalig zum FHEM-Start auszuführen. Übersehe ich bei diesem überschlägigen Vergleich was wichtiges?
- $interval = $FULLY_POLL_INTERVAL if $interval == 0;
+ return if !$interval;--- 89_FULLY_ori.pm 2026-05-05 15:07:21.314199202 +0200
+++ 89_FULLY.pm 2026-05-05 16:13:50.860276224 +0200
@@ -243,7 +243,6 @@
if ( !defined $hash->{nextUpdate} ) {
$hash->{nextUpdate} = 'off';
FULLY_Log ($hash, 3, "Opening device $hash->{host}");
- FULLY_GetDeviceInfo ($name);
}
my $disableLevel = IsDisabled($name);
@@ -254,10 +253,12 @@
if ( $disableLevel > 1 ) { # temporarily disabled?
$hash->{nextUpdate} = "disabled $disableLevel";
- my $interval //= AttrVal ($name, 'pollInterval', $hash->{fully}{interval} // $FULLY_POLL_INTERVAL);
+ my $interval = AttrVal ($name, 'pollInterval', $hash->{fully}{interval} // $FULLY_POLL_INTERVAL);
+ $interval = $FULLY_POLL_INTERVAL if $interval == 0;
return InternalTimer(gettimeofday()+$interval, \&FULLY_Start, $hash, 0);
}
+ FULLY_GetDeviceInfo ($name);
return FULLY_SetPolling ($hash, 1);
}