From 3d8fd03f9aeeaf1b5919dc0b898c4e794da84f51 Mon Sep 17 00:00:00 2001 From: tpoitzsch Date: Sun, 30 Nov 2014 10:08:05 +0000 Subject: [PATCH] FRITZBOX: bugfix git-svn-id: https://svn.fhem.de/fhem/trunk@7100 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/72_FRITZBOX.pm | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/fhem/FHEM/72_FRITZBOX.pm b/fhem/FHEM/72_FRITZBOX.pm index 3e1d2c7a0..daa516930 100644 --- a/fhem/FHEM/72_FRITZBOX.pm +++ b/fhem/FHEM/72_FRITZBOX.pm @@ -836,8 +836,8 @@ FRITZBOX_Ring_Run($) } push @cmdArray, "ctlmgr_ctl w telcfg settings/DialPort ".$ringWithIntern if $ringWithIntern != 0 ; - $result = FRITZBOX_Exec_Exec( $hash, \@cmdArray ) - if @cmdArray > 0; + $result = FRITZBOX_Exec( $hash, \@cmdArray ) + if int( @cmdArray ) > 0; #Preparing 2nd command array to ring and reset everything FRITZBOX_Log $hash, 4, "Ringing $intNo for $duration seconds"; @@ -1009,9 +1009,9 @@ FRITZBOX_Exec($$) } elsif (ref \$cmd eq "REF") { - if (int @{$cmd} >0 ) + if ( int (@{$cmd}) > 0 ) { - FRITZBOX_Log $hash, 5, "Execute '".(join " | ", @{$cmd})."'"; + FRITZBOX_Log $hash, 5, "Execute " . int ( @{$cmd} ) . " command(s): '" . join( " | ", @{$cmd} ) . "'"; my $cmdStr = join "\necho ' |#|'\n", @{$cmd}; $cmdStr .= "\necho ' |#|'"; my $result = qx($cmdStr); @@ -1022,9 +1022,17 @@ FRITZBOX_Exec($$) $resultArray[$_] =~ s/\s$//; } @{$cmd} = (); - FRITZBOX_Log $hash, 5, "Result '".join (" | ", @resultArray)."' (count: ".int (@resultArray).")"; + FRITZBOX_Log $hash, 5, "Received ".int(@resultArray)." answer(s): '".join (" | ", @resultArray)."'"; return \@resultArray; } + else + { + FRITZBOX_Log $hash, 4, "No shell command to execute."; + } + } + else + { + FRITZBOX_Log $hash, 1, "Error: wrong perl parameter"; } }