FHEM Forum

Allgemeine Informationen => Wiki => Thema gestartet von: pizmus am 27 Juli 2018, 00:04:26

Titel: DevIo: Verbesserungsvorschläge für Beispiel-Code
Beitrag von: pizmus am 27 Juli 2018, 00:04:26
Hallo zusammen,
danke für die tolle Doku zu DevIo! Mit den Beispielen konnte ich in kurzer Zeit die Kommunikation zu einer für mich neuen Hardware ausprobieren. Dabei sind mir noch Kleinigkeiten aufgefallen, die man verbessern könnte:


Gruß,
pizmus
Titel: Antw:DevIo: Verbesserungsvorschläge für Beispiel-Code
Beitrag von: Markus Bloch am 29 Juli 2018, 17:05:46
Vielen Dank für die Hinweise. Habe ich im Wiki übernommen.

Viele Grüße

Markus
Titel: Antw:DevIo: Verbesserungsvorschläge für Beispiel-Code
Beitrag von: pizmus am 09 September 2018, 22:55:50
Hallo Markus,
hier noch ein kleiner Nachtrag: Die Callback-Funktion, die DevIo_OpenDev(...) übergeben werden kann, ist in dem Beispiel-Code nicht ganz korrekt. Ich habe beobachtet, dass die Funktion immer wieder auch mit $error=undef oder $error="" aufgerufen wird. In einer anderen Implementierung (72_FB_CALLMONITOR) habe ich gesehen, dass $error vor der Ausgabe als String noch auf "true" geprüft wird. Für mich scheint das auch zu funktionieren. Der Beispiel-Code könnte also so aussehen:

sub MY_MODULE_Callback($$)
{
    my ($hash, $error) = @_;
    my $name = $hash->{NAME};

    if ($error) {
        # create a log entry with the error message
        Log3 $name, 5, "MY_MODULE ($name) - error while connecting: $error";
    }
   
    return undef;
}


Optimal wäre es, wenn die Aufrufe der Callback-Funktion mit $error=false im Wiki erklärt würden.

Viele Grüße,
pizmus