FHEM Forum

FHEM - Hardware => FRITZ!Box => Thema gestartet von: elektron-bbs am 13 Januar 2023, 21:59:03

Titel: 72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: elektron-bbs am 13 Januar 2023, 21:59:03
Bei der FRITZ!Box 4020 (ohne DSL-Modem) erscheinen diese Zeilen regelmäßig im Log:

2023.01.12 08:44:36.162 2: FRITZBOX [FritzBox: TR064_Cmd.5828] - ERROR: TR064 error 820:Internal Error (service='WANDSLInterfaceConfig:1', control='wandslifconfig1', action='GetInfo')
2023.01.12 08:44:36.166 1: PERL WARNING: Argument "" isn't numeric in division (/) at ./FHEM/72_FRITZBOX.pm line 2478.
2023.01.12 08:44:36.166 1: PERL WARNING: Argument "" isn't numeric in division (/) at ./FHEM/72_FRITZBOX.pm line 2480.


Die Perl-Warnungen lassen sich noch unterdrücken durch das Attribut "disableBoxReadings", die Fehlermeldung allerdings nur durch "verbose 1", was nicht gerade Sinn der Sache ist.
Ich lade noch ein "list FRITZBOX" (gekürzt) mit hoch.

Auf einem anderen System mit einer  FRITZ!Box 7590 tauchen nach dem Update diese Zeilen regelmäßig im Log auf:

sh: curl: Kommando nicht gefunden.
sh: curl: Kommando nicht gefunden.
sh: curl: Kommando nicht gefunden.


Da ich schon vorgewarnt war, das das FritzBox-Modul heftig umgebaut wurde, konnte ich den Verursacher schnell finden. Nach Installation von curl lief das auch dann problemlos.

Es wäre schön, wenn diese Meldungen mit einem eval oder ähnlich abgefangen würden und vielleicht eine Zeile in dieser Art im Log erscheint:

FritzBox_7390: curl not installed, please install with e.g. apt install curl
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: RalfRog am 14 Januar 2023, 14:45:39
Das neue aus dem Fork entstandene Modul ist erst ein paar Tage (Mitte der Woche) aktiv.
Hast du die Meldungen erst neu? => dann muss Jörg ran.

Sonst versuche doch mal das aktualisierte Modul.

Gruß Ralf
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: elektron-bbs am 14 Januar 2023, 14:58:12
Es ist die am 10.01.2023 veröffentlichte Version:

72_FRITZBOX.pm 27016 2023-01-10 10:25:11Z jowiemann
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: RalfRog am 14 Januar 2023, 15:01:35
Dann berichte dein Problem vielleicht gleich dort:

https://forum.fhem.de/index.php/topic,118150.0.html

Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: RalfRog am 14 Januar 2023, 15:08:04
Da (72_FRITZBOX.pm) ist gegenüber Tupols Original im Rahmen eines Forks eine ganze Menge an Funktionalität dazu gekommen und Jörg hat nur eine 75er (evtl. 74er) zum selber testen.

Tupol hat sich etwas aus FHEM zurück gezogen.
Daher pflegt momentan Jörg als Maintainer das Modul auf Basis des Forks weiter.
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: JoWiemann am 14 Januar 2023, 19:34:56
Hallo,

ich würde den Thread gerne für Boxen ohne DSL Modem weiterführen wollen. Anbei eine Beta, wo ich die angegeben Themen versucht habe zu fixen. Eine Warnung für curl, wenn nicht verfügbar, war da noch der einfachere Teil.

Grüße Jörg

PS: Ich werde mir die nächsten Tage mal die Zeit nehmen und die Box Tabelle von AVM und verfügbare Infos auf das Modul abgleichen. Wird aber etwas dauern.
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: elektron-bbs am 18 Januar 2023, 20:45:39
Ich habe mich mal belesen, kein DSL-Modem haben wohl die Fritzbox-Modelle 4020, 4040 und 4060.

Seit dieser Verison:
FVERSION    72_FRITZBOX.pm:0.270680/2023-01-16

sieht die Fehlermeldung jetzt so aus:
2023.01.17 10:23:47.467 2: FRITZBOX [FritzBox: Readout_Run_Web.2507] - ERROR: Curl-> $VAR1 = {
          'UPnPError' => {
                           'errorCode' => '820',
                           'errorDescription' => 'Internal Error'
                         }
        };


Ich habe diese Änderung vorgenommen, um die zur Fehlermeldung führende Abfrage abzufangen:


alt:
      if ($avmModel =~ "Box") {
neu:
      if ($avmModel =~ "Box" && $avmModel !~ "40[2,4,6]0") { # 4020, 4040, 4060 ohne Modem


Außerdem habe ich die Ausgabe des Readings "box_uptime" dem von "box_uptimeConnect" angeglichen:


alt:
   FRITZBOX_Readout_Add_Reading $hash, \@roReadings, "box_uptime", $Sek . " sec = " . $Tag . "T $Std:" . substr("0".$result->{box_uptimeMinutes},-2) . ":00"; #unless((grep { /^(box_uptime)$/ } @reading_list));
neu:
   FRITZBOX_Readout_Add_Reading $hash, \@roReadings, "box_uptime", $Sek . " sec = " . $Tag . "T " . substr("0".$Std,-2) . ":" . substr("0".$result->{box_uptimeMinutes},-2) . ":00"; #unless((grep { /^(box_uptime)$/ } @reading_list));


Ist es Absicht, das hier ein nicht existierendes Verzeichnis angegeben wird,


            $m3uFileURL = "http://$ip:$port/fhem/images/$name.m3u"     if defined $ip && defined $port;


oder sollte es besser so sein?


            $m3uFileURL = "http://$ip:$port/fhem/www/images/$name.m3u"     if defined $ip && defined $port;
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: JoWiemann am 19 Januar 2023, 08:04:04
Hallo elektron-bbs,

vielen Dank für die Rückmeldungen. Habe ich so übernommen.

$m3uFileURL = "http://$ip:$port/fhem/images/$name.m3u" ist gefühlt schon seit Jahrzehnten im Modul. Vermute, dass hier die fehlende Konsistenz in den default Verzeichnissen nicht aufgefallen ist.

Grüße Jörg
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: RalfRog am 19 Januar 2023, 09:40:26
Prima wenn auch die "Altlasten" verschwinden, die man im Log als "war schon immer da" abhakt.

Allerdings sehe ich bei der 07.50.3 und 07.50.4 nicht, dass die Uptime Readings unterschiedlich sind  :o

box_uptime                   2119380 sec = 24T 12:43:00
box_uptimeConnect     25102 sec = 0T 06:58:20
   
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: elektron-bbs am 19 Januar 2023, 17:03:12
box_uptime wurde ohne führende Null bei den Stunden, wenn < 10 ausgegeben.
Titel: Antw:72_FRITZBOX.pm:0.270160/2023-01-10 und FRITZ!Box 4020 (ohne DSL-Modem)
Beitrag von: RalfRog am 19 Januar 2023, 17:58:45
Jo...   jetzt seh ich es auch  :)

Da machen Mensch und Maschine bei der Auswertung vermutlich einen Unterschied. Hätt ich nie gesehen  8)