From a4bb02a5cc58310fbca79964f2d351ec32d23ea5 Mon Sep 17 00:00:00 2001 From: jowiemann <> Date: Thu, 2 Mar 2023 04:31:29 +0000 Subject: [PATCH] 72_FRITZBOX.pm: telnet/Fhem on FB disabled git-svn-id: https://svn.fhem.de/fhem/trunk@27290 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/72_FRITZBOX.pm | 41 +++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/fhem/FHEM/72_FRITZBOX.pm b/fhem/FHEM/72_FRITZBOX.pm index 1554c2894..a193b214a 100644 --- a/fhem/FHEM/72_FRITZBOX.pm +++ b/fhem/FHEM/72_FRITZBOX.pm @@ -2784,26 +2784,33 @@ sub FRITZBOX_Readout_Run_Web($) FRITZBOX_Log $hash, 5, "DEBUG: \n" . Dumper ($resultWan->{data}->{scanlist}); - $views = $resultWan->{data}->{scanlist}; - $nbViews = scalar @$views; + $nbViews = 0; + if (defined $resultWan->{data}->{scanlist}) { + $views = $resultWan->{data}->{scanlist}; + $nbViews = scalar @$views; + } - eval { - for(my $i = 0; $i <= $nbViews - 1; $i++) { - my $dName = $resultWan->{data}->{scanlist}->[$i]->{ssid}; - $dName .= " (Kanal: " . $resultWan->{data}->{scanlist}->[$i]->{channel}; - $dName .= ", Band: " . $resultWan->{data}->{scanlist}->[$i]->{bandId} . ")"; + if ($nbViews > 0) { - $rName = $resultWan->{data}->{scanlist}->[$i]->{mac}; - $rName =~ s/:/_/g; - $rName = $nbhPrefix . $rName; - FRITZBOX_Readout_Add_Reading $hash, \@roReadings, $rName, $dName; - delete $oldWanDevice{$rName} if exists $oldWanDevice{$rName}; - } - }; - $rName = "box_wlan_lastScanTime"; - FRITZBOX_Readout_Add_Reading $hash, \@roReadings, $rName, $resultWan->{data}->{lastScantime}; - delete $oldWanDevice{$rName} if exists $oldWanDevice{$rName}; + eval { + for(my $i = 0; $i <= $nbViews - 1; $i++) { + my $dName = $resultWan->{data}->{scanlist}->[$i]->{ssid}; + $dName .= " (Kanal: " . $resultWan->{data}->{scanlist}->[$i]->{channel}; + $dName .= ", Band: " . $resultWan->{data}->{scanlist}->[$i]->{bandId} . ")"; + + $rName = $resultWan->{data}->{scanlist}->[$i]->{mac}; + $rName =~ s/:/_/g; + $rName = $nbhPrefix . $rName; + FRITZBOX_Readout_Add_Reading $hash, \@roReadings, $rName, $dName; + delete $oldWanDevice{$rName} if exists $oldWanDevice{$rName}; + } + }; + $rName = "box_wlan_lastScanTime"; + FRITZBOX_Readout_Add_Reading $hash, \@roReadings, $rName, $resultWan->{data}->{lastScantime}; + delete $oldWanDevice{$rName} if exists $oldWanDevice{$rName}; + } } + # Remove inactive or non existing wan-readings in two steps foreach ( keys %oldWanDevice ) { # set the wan readings to 'inactive' and delete at next readout