diff --git a/fhem/FHEM/00_CM11.pm b/fhem/FHEM/00_CM11.pm index 46b17107b..4ffcb7b98 100755 --- a/fhem/FHEM/00_CM11.pm +++ b/fhem/FHEM/00_CM11.pm @@ -102,7 +102,7 @@ CM11_Initialize($) $hash->{SetFn} = "CM11_Set"; $hash->{StateFn} = "CM11_SetState"; $hash->{AttrList}= "do_not_notify:1,0 dummy:1,0 " . - "model:CM11 loglevel:0,1,2,3,4,5,6"; + "model:CM11"; } ##################################### sub @@ -152,8 +152,7 @@ CM11_Reopen($) my $name = $hash->{NAME}; my $dev = $hash->{DeviceName}; $hash->{PortObj}->close(); -# Log 1, "Device $dev closed"; - Log3($name, 1, "Device $dev closed"); + Log3($name, 1, "Device $dev closed"); for(;;) { sleep(5); if($^O =~ m/Win/) { @@ -162,8 +161,7 @@ CM11_Reopen($) $hash->{PortObj} = new Device::SerialPort($dev); } if($hash->{PortObj}) { -# Log 1, "Device $dev reopened"; - Log3($name, 1, "Device $dev reopened"); + Log3($name, 1, "Device $dev reopened"); $hash->{FD} = $hash->{PortObj}->FILENO if($^O !~ m/Win/); CM11_DoInit($hash->{NAME}, $hash->{ttytype}, $hash->{PortObj}); return; @@ -193,16 +191,14 @@ CM11_Define($$) $hash->{STATE} = "defined"; if($dev eq "none") { -# Log 1, "CM11 device is none, commands will be echoed only"; - Log3($name, 1, "CM11 device is none, commands will be echoed only"); + Log3($name, 1, "CM11 device is none, commands will be echoed only"); $attr{$name}{dummy} = 1; return undef; } $hash->{DeviceName} = $dev; $hash->{PARTIAL} = ""; -# Log 3, "CM11 opening CM11 device $dev"; - Log3($name, 3, "CM11 opening CM11 device $dev"); + Log3($name, 3, "CM11 opening CM11 device $dev"); if ($^O=~/Win/) { require Win32::SerialPort; $po = new Win32::SerialPort ($dev); @@ -212,14 +208,12 @@ CM11_Define($$) } if(!$po) { my $msg = "Can't open $dev: $!"; -# Log(3, $msg) if($hash->{MOBILE}); - Log3($name, 3, $msg) if($hash->{MOBILE}); + Log3($name, 3, $msg) if($hash->{MOBILE}); return $msg if(!$hash->{MOBILE}); $readyfnlist{"$name.$dev"} = $hash; return ""; } -# Log 3, "CM11 opened CM11 device $dev"; -Log3($name, 3, "CM11 opened CM11 device $dev"); + Log3($name, 3, "CM11 opened CM11 device $dev"); $hash->{PortObj} = $po; if( $^O !~ /Win/ ) { @@ -249,8 +243,7 @@ CM11_Undef($$) $defs{$d}{IODev} == $hash) { my $lev = ($reread_active ? 4 : 2); -# Log GetLogLevel($name,$lev), "deleting port for $d"; - Log3($name, $lev, "deleting port for $d"); + Log3($name, $lev, "deleting port for $d"); delete $defs{$d}{IODev}; } } @@ -273,8 +266,7 @@ CM11_LogReadWrite($@) { my ($rw,$hash, $msg, $trlr) = @_; my $name= $hash->{NAME}; -# Log GetLogLevel($name,5), - Log3($name, 5, "CM11 device " . $name . ": $rw " . + Log3($name, 5, "CM11 device " . $name . ": $rw " . sprintf("%2d: ", length($msg)) . unpack("H*", $msg)); } @@ -323,14 +315,12 @@ CM11_ReadDirect($$) $nfound = select($rin, undef, undef, $to); if($nfound < 0) { next if ($! == EAGAIN() || $! == EINTR() || $! == 0); -# Log GetLogLevel($name,3), "$prefix Select error $nfound / $!"; - Log3($name, 3, "$prefix Select error $nfound / $!"); + Log3($name, 3, "$prefix Select error $nfound / $!"); return undef; } } if(!$nfound) { -# Log GetLogLevel($name,3), "$prefix Timeout reading $arg"; - Log3($name, 3, "$prefix Timeout reading $arg"); + Log3($name, 3, "$prefix Timeout reading $arg"); return undef; } @@ -349,8 +339,7 @@ CM11_Write($$$) my $prefix= "CM11 device $name:"; if(!$hash || !defined($hash->{PortObj})) { -# Log GetLogLevel($name,3), - Log3($name, 3, "$prefix device is not active, cannot send"); + Log3($name, 3, "$prefix device is not active, cannot send"); return; } @@ -377,15 +366,12 @@ CM11_Write($$$) my $checksum_r= unpack('C', $checksum); if($checksum_w ne $checksum_r) { -# Log 5, - Log3($name, 5, "$prefix wrong checksum (send: $checksum_w, received: $checksum_r)"); + Log3($name, 5, "$prefix wrong checksum (send: $checksum_w, received: $checksum_r)"); return 0 if(!$try); my $nexttry= 6-$try; -# Log 5, - Log3($name, 5, "$prefix retrying (" . $nexttry . "/5)"); + Log3($name, 5, "$prefix retrying (" . $nexttry . "/5)"); } else { -# Log 5, "$prefix checksum correct, OK for transmission"; - Log3($name, 5, "$prefix checksum correct, OK for transmission"); + Log3($name, 5, "$prefix checksum correct, OK for transmission"); last; } } @@ -397,12 +383,10 @@ CM11_Write($$$) my $ready= CM11_ReadDirect($hash, "ready"); return 0 if(!defined($ready)); # read failure if($ready ne $msg_ifrdy) { -# Log GetLogLevel($name,3), - Log3($name, 3, "$prefix strange ready signal (" . unpack('C', $ready) . ")"); + Log3($name, 3, "$prefix strange ready signal (" . unpack('C', $ready) . ")"); return 0 } else { -# Log 5, "$prefix ready"; - Log3($name, 5, "$prefix ready"); + Log3($name, 5, "$prefix ready"); } # we are fine @@ -438,17 +422,14 @@ sub CM11_Get($@) my $v = join(" ", @a); my $name = $hash->{NAME}; -# Log GetLogLevel($name,2), "CM11 get $v"; Log3($name, 2, "CM11 get $v"); my $statusmsg= CM11_GetInterfaceStatus($hash); if(!defined($statusmsg)) { $v= "error"; -# Log 2, "CM11 error, device is irresponsive." Log3($name, 2, "CM11 error, device is irresponsive.") } else { my $msg= unpack("H*", $statusmsg); -# Log 5, "CM11 got ". $msg; Log3($name, 5, "CM11 got ". $msg); if($a[1] eq "fwrev") { @@ -487,8 +468,7 @@ CM11_Set($@) my $v = join(" ", @a); my $name = $hash->{NAME}; -# Log GetLogLevel($name,2), "CM11 set $v"; - Log3($name, 2, "CM11 set $v"); + Log3($name, 2, "CM11 set $v"); if($a[1] eq "reopen") { CM11_Reopen($hash); @@ -555,7 +535,6 @@ CM11_Read($) # USB troubleshooting if(!defined($buf) || length($buf) == 0) { my $dev = $hash->{DeviceName}; -# Log 1, "USB device $dev disconnected, waiting to reappear"; Log3($name, 1, "USB device $dev disconnected, waiting to reappear"); $hash->{PortObj}->close(); DoTrigger($name, "DISCONNECTED"); @@ -577,8 +556,7 @@ CM11_Read($) # concatenate yet unparsed message and newly received data my $x10data = $hash->{PARTIAL} . $buf; CM11_LogRead($hash,$buf); -# Log 5, "$prefix Data: " . unpack('H*',$x10data); - Log3($name, 5, "$prefix Data: " . unpack('H*',$x10data)); + Log3($name, 5, "$prefix Data: " . unpack('H*',$x10data)); # normally the while loop will run only once while(length($x10data) > 0) { @@ -590,7 +568,6 @@ CM11_Read($) # to start with, a single 0x5a is received if( substr($x10data,0,1) eq $msg_pollpc ) { # CM11 polls PC -# Log 5, "$prefix start of message"; Log3($name, 5, "$prefix start of message"); CM11_SimpleWrite($hash, $msg_pollack); # PC ready $x10data= substr($x10data,1); # $x10data now empty @@ -611,16 +588,13 @@ CM11_Read($) # a single 0xa5 is a power-fail macro download poll if( substr($x10data,0,1) eq $msg_pollpcpf ) { # CM11 polls PC -# Log 5, "$prefix power-fail poll"; - Log3($name, 5, "$prefix power-fail poll"); + Log3($name, 5, "$prefix power-fail poll"); # the documentation wrongly says that the macros should be downloaded # in fact, the time must be set! if(CM11_SetInterfaceTime($hash)) { -# Log 5, "$prefix power-fail poll satisfied"; - Log3($name, 5, "$prefix power-fail poll satisfied"); + Log3($name, 5, "$prefix power-fail poll satisfied"); } else { -# Log 5, "$prefix power-fail poll satisfaction failed"; - Log3($name, 5, "$prefix power-fail poll satisfaction failed"); + Log3($name, 5, "$prefix power-fail poll satisfaction failed"); } $x10data= substr($x10data,1); # $x10data now empty next; @@ -628,8 +602,7 @@ CM11_Read($) # a single 0x55 is a leftover from a failed transmission if( substr($x10data,0,1) eq $msg_ifrdy ) { # CM11 polls PC -# Log 5, "$prefix skipping leftover ready signal"; - Log3($name, 5, "$prefix skipping leftover ready signal"); + Log3($name, 5, "$prefix skipping leftover ready signal"); $x10data= substr($x10data,1); next; } @@ -648,7 +621,6 @@ CM11_Read($) # $x10data now contains $len data bytes my $databytes= unpack('H*', substr($x10data,0)); -# Log 5, "$prefix message complete " . Log3($name, 5, "$prefix message complete " . "(length $len, mask $mask, data $databytes)"); @@ -686,7 +658,6 @@ CM11_Read($) unpack("H*", $command); } $hash->{$housecode_func}= $x10func; -# Log 5, "$prefix $housecode_func: " . Log3($name, 5, "$prefix $housecode_func: " . $hash->{$housecode_func}); # dispatch message to clients @@ -713,7 +684,6 @@ CM11_Read($) $unitcodes= ""; } $hash->{$housecode_unit}= "$unitcodes$unitcode"; -# Log 5, "$prefix $housecode_unit: " . Log3($name, 5, "$prefix $housecode_unit: " . $hash->{$housecode_unit}); } @@ -745,8 +715,7 @@ CM11_Ready($$) } return undef if(!$po); -# Log 1, "USB device $dev reappeared"; - Log3($name, 1, "USB device $dev reappeared"); + Log3($name, 1, "USB device $dev reappeared"); $hash->{PortObj} = $po; if( $^O !~ /Win/ ) { $hash->{FD} = $po->FILENO; @@ -838,7 +807,6 @@ CM11_Ready($$)
diff --git a/fhem/FHEM/02_HTTPSRV.pm b/fhem/FHEM/02_HTTPSRV.pm index 8a989fe7d..63ed142f0 100644 --- a/fhem/FHEM/02_HTTPSRV.pm +++ b/fhem/FHEM/02_HTTPSRV.pm @@ -19,7 +19,7 @@ HTTPSRV_addExtension($$$$) { my ($name,$func,$link,$friendlyname)= @_; my $url = "/$link"; - Log 3, "Registering HTTPSRV $name for URL $url..."; + Log3 $name, 3, "Registering HTTPSRV $name for URL $url..."; $data{FWEXT}{$url}{deviceName}= $name; $data{FWEXT}{$url}{FUNC} = $func; $data{FWEXT}{$url}{LINK} = $link; @@ -32,7 +32,7 @@ HTTPSRV_removeExtension($) { my $url = "/$link"; my $name= $data{FWEXT}{$url}{deviceName}; - Log 3, "Unregistering HTTPSRV $name for URL $url..."; + Log3 $name, 3, "Unregistering HTTPSRV $name for URL $url..."; delete $data{FWEXT}{$url}; } @@ -44,7 +44,7 @@ HTTPSRV_Initialize($) { $hash->{DefFn} = "HTTPSRV_Define"; $hash->{UndefFn} = "HTTPSRV_Undef"; #$hash->{AttrFn} = "HTTPSRV_Attr"; - $hash->{AttrList} = "loglevel:0,1,2,3,4,5 directoryindex"; + $hash->{AttrList} = "directoryindex"; #$hash->{SetFn} = "HTTPSRV_Set"; return undef; diff --git a/fhem/FHEM/02_RSS.pm b/fhem/FHEM/02_RSS.pm index 099264a30..9848e3828 100644 --- a/fhem/FHEM/02_RSS.pm +++ b/fhem/FHEM/02_RSS.pm @@ -39,7 +39,7 @@ RSS_Initialize($) { my ($hash) = @_; $hash->{DefFn} = "RSS_Define"; #$hash->{AttrFn} = "RSS_Attr"; - $hash->{AttrList}= "loglevel:0,1,2,3,4,5 size bg tmin"; + $hash->{AttrList}= "size bg tmin"; $hash->{SetFn} = "RSS_Set"; @@ -281,7 +281,6 @@ RSS_itemImg { my ($width,$height)= $I->getBounds(); my ($swidth,$sheight)= (int($scale*$width), int($scale*$height)); #Debug "RSS placing $arg ($swidth x $sheight) at ($x,$y)"; - Log 5, "RSS placing $arg ($swidth x $sheight) at ($x,$y)"; $S->copyResampled($I,$x,$y,0,0,$swidth,$sheight,$width,$height); } @@ -318,10 +317,10 @@ RSS_evalLayout($$@) { if($line=~ s/\\$//) { $cont= $line; undef $line; } next unless($line); $cont= ""; - #Log 5, "$name: evaluating >$line<"; + #Debug "$name: evaluating >$line<"; # split line into command and definition my ($cmd, $def)= split("[ \t]+", $line, 2); - #Log 5, "CMD= \"$cmd\", DEF= \"$def\""; + ##Debug, "CMD= \"$cmd\", DEF= \"$def\""; if($cmd eq "rgb") { $def= "\"$def\"" if(length($def) == 6 && $def =~ /[[:xdigit:]]{6}/); $params{rgb}= AnalyzePerlCommand(undef, $def); @@ -332,7 +331,7 @@ RSS_evalLayout($$@) { } elsif($cmd eq "text") { ($x,$y,$text)= split("[ \t]+", $def, 3); my $txt= AnalyzePerlCommand(undef, $text); - #Log 5, "$name: ($x,$y) $txt"; + #Debug "$name: ($x,$y) $txt"; RSS_itemText($S,$x,$y,$txt,%params); } elsif($cmd eq "line") { ($x1,$y1,$x2,$y2)= split("[ \t]+", $def, 4); @@ -351,7 +350,7 @@ RSS_evalLayout($$@) { my $arg= AnalyzePerlCommand(undef, $arg); RSS_itemImg($S,$x,$y,$scale,$imgtype,$srctype,$arg,%params); } else { - Log 1, "$name: Illegal command $cmd in layout definition."; + Log3 $name, 1, "$name: Illegal command $cmd in layout definition."; } } diff --git a/fhem/FHEM/09_BS.pm b/fhem/FHEM/09_BS.pm index b657a7f5d..843968154 100644 --- a/fhem/FHEM/09_BS.pm +++ b/fhem/FHEM/09_BS.pm @@ -22,7 +22,7 @@ BS_Initialize($) $hash->{UndefFn} = "BS_Undef"; $hash->{ParseFn} = "BS_Parse"; $hash->{AttrList} = "do_not_notify:1,0 showtime:0,1 ". - "ignore:1,0 model:BS loglevel:0,1,2,3,4,5,6 " . $readingFnAttributes; + "ignore:1,0 model:BS " . $readingFnAttributes; } @@ -85,7 +85,7 @@ BS_Parse($$) my $def= $modules{BS}{defptr}{$dev}; if(!defined($def)) { $sensor =~ s/^0//; - Log 3, "BS Unknown device $sensor, please define it"; + Log3 $hash, 3, "BS Unknown device $sensor, please define it"; return "UNDEFINED BS_$sensor BS $sensor"; } @@ -112,7 +112,7 @@ BS_Parse($$) readingsBeginUpdate($def); readingsBulkUpdate($def, "state", $state); - #Log GetLogLevel($name, 4), "BS $name: $state"; + #Debug "BS $name: $state"; readingsBulkUpdate($def, "brightness", $brightness); readingsBulkUpdate($def, "lux", $lux); readingsBulkUpdate($def, "flags", $flags); @@ -186,7 +186,6 @@ BS_Parse($$) diff --git a/fhem/FHEM/11_OWDevice.pm b/fhem/FHEM/11_OWDevice.pm index b88f2b17b..701c1a559 100644 --- a/fhem/FHEM/11_OWDevice.pm +++ b/fhem/FHEM/11_OWDevice.pm @@ -352,7 +352,7 @@ OWDevice_Initialize($) $hash->{UndefFn} = "OWDevice_Undef"; $hash->{AttrFn} = "OWDevice_Attr"; - $hash->{AttrList} = "IODev uncached trimvalues polls interfaces model loglevel:0,1,2,3,4,5 ". + $hash->{AttrList} = "IODev uncached trimvalues polls interfaces model ". $readingFnAttributes; } @@ -397,7 +397,7 @@ OWDevice_ReadFromServer($$@) !$iohash->{TYPE} || !$modules{$iohash->{TYPE}} || !$modules{$iohash->{TYPE}}{ReadFn}) { - Log 5, "No I/O device or ReadFn found for $dev"; + Log3 $hash, 5, "No I/O device or ReadFn found for $dev"; return; } @@ -431,7 +431,7 @@ OWDevice_ReadValue($$) { if(defined($value)) { $value= trim($value) if(AttrVal($hash,"trimvalues",1)); } else { - Log 3, $hash->{NAME} . ": reading $reading did not return a value"; + Log3 $hash, 3, $hash->{NAME} . ": reading $reading did not return a value"; } } @@ -517,14 +517,14 @@ OWDevice_Attr($@) if($attrName eq "polls") { my @polls= split(",", $attrVal); $hash->{fhem}{polls}= \@polls; - Log 5, "$name: polls: " . join(" ", @polls); + Log3 $name, 5, "$name: polls: " . join(" ", @polls); } elsif($attrName eq "interfaces") { if($attrVal ne "") { $hash->{fhem}{interfaces}= join(";",split(",",$attrVal)); - Log 5, "$name: interfaces: " . $hash->{fhem}{interfaces}; + Log3 $name, 5, "$name: interfaces: " . $hash->{fhem}{interfaces}; } else { delete $hash->{fhem}{interfaces} if(defined($hash->{fhem}{interfaces})); - Log 5, "$name: no interfaces"; + Log3 $name, 5, "$name: no interfaces"; } } } @@ -613,15 +613,15 @@ OWDevice_Define($$) AssignIoPort($hash) if(!defined($hash->{IODev}->{NAME})); if(defined($hash->{IODev}->{NAME})) { - Log 4, "$name: I/O device is " . $hash->{IODev}->{NAME}; + Log3 $name, 4, "$name: I/O device is " . $hash->{IODev}->{NAME}; } else { - Log 1, "$name: no I/O device"; + Log3 $name, 1, "$name: no I/O device"; } $hash->{fhem}{address}= $a[2]; if($#a == 3) { $hash->{fhem}{interval}= $a[3]; - Log 5, "$name: polling every $a[3] seconds"; + Log3 $name, 5, "$name: polling every $a[3] seconds"; } my ($interface, $gettersref, $settersref, $pollsref, $stateref, $alerting)= OWDevice_GetDetails($hash); my @getters= @{$gettersref}; @@ -630,18 +630,18 @@ OWDevice_Define($$) my @state= @{$stateref}; if($interface ne "") { $hash->{fhem}{interfaces}= $interface; - Log 5, "$name: interfaces: $interface"; + Log3 $name, 5, "$name: interfaces: $interface"; } $hash->{fhem}{getters}= $gettersref; - Log 5, "$name: getters: " . join(" ", @getters); + Log3 $name, 5, "$name: getters: " . join(" ", @getters); $hash->{fhem}{setters}= $settersref; - Log 5, "$name: setters: " . join(" ", @setters); + Log3 $name, 5, "$name: setters: " . join(" ", @setters); $hash->{fhem}{polls}= $pollsref; - Log 5, "$name: polls: " . join(" ", @polls); + Log3 $name, 5, "$name: polls: " . join(" ", @polls); $hash->{fhem}{state}= $stateref; - Log 5, "$name: state: " . join(" ", @state); + Log3 $name, 5, "$name: state: " . join(" ", @state); $hash->{fhem}{alerting}= $alerting; - Log 5, "$name: alerting: $alerting"; + Log3 $name, 5, "$name: alerting: $alerting"; $hash->{fhem}{bus}= OWDevice_ReadFromServer($hash,"find",$hash->{fhem}{address}); $attr{$name}{model}= OWDevice_ReadValue($hash, "type"); @@ -810,7 +810,6 @@ OWDevice_Define($$)
  • polls: a comma-separated list of readings to poll. This supersedes the list of default readings to poll.
  • interfaces: supersedes the interfaces exposed by that device.
  • model: preset with device type, e.g. DS18S20.
  • -
  • loglevel
  • eventMap
  • readingFnAttributes
  • diff --git a/fhem/FHEM/20_X10.pm b/fhem/FHEM/20_X10.pm index 20864d6ca..0ae2ad024 100755 --- a/fhem/FHEM/20_X10.pm +++ b/fhem/FHEM/20_X10.pm @@ -132,8 +132,7 @@ X10_Initialize($) $hash->{UndefFn} = "X10_Undef"; $hash->{ParseFn} = "X10_Parse"; $hash->{AttrList} = "IODev do_not_notify:1,0 " . - "dummy:1,0 showtime:1,0 model:lm12,lm15,am12,tm13 " . - "loglevel:0,1,2,3,4,5,6"; + "dummy:1,0 showtime:1,0 model:lm12,lm15,am12,tm13"; } @@ -174,7 +173,7 @@ X10_StateMachine($$$$) $bright= $hash->{BRIGHT}; } else { $bright= 0; } - #Log 1, $hash->{NAME} . " initial state ($onoff,$bright)"; + #Log3 $hash, 1, $hash->{NAME} . " initial state ($onoff,$bright)"; if($onoff) { # initial state (on,bright) @@ -202,7 +201,7 @@ X10_StateMachine($$$$) if($bright< 0) { $bright= 0 }; } } - #Log 1, $hash->{NAME} . " final state ($onoff,$bright)"; + #Log3 $hash, 1, $hash->{NAME} . " final state ($onoff,$bright)"; $hash->{ONOFF}= $onoff; $hash->{BRIGHT}= $bright; @@ -237,7 +236,7 @@ X10_Do_On_Till($@) my $hms_till = sprintf("%02d:%02d:%02d", $hr, $min, $sec); my $hms_now = sprintf("%02d:%02d:%02d", $lt[2], $lt[1], $lt[0]); if($hms_now ge $hms_till) { - Log 4, "on-till: won't switch as now ($hms_now) is later than $hms_till"; + Log3 $hash, 4, "on-till: won't switch as now ($hms_now) is later than $hms_till"; return ""; } @@ -289,7 +288,7 @@ X11_Write($$$) undef $function; # do not use after this point my $prefix= "X10 device $name:"; - Log 5, "$prefix sending X10:$housecode;$unitcode;$x10func $dim"; + Log3 $name, 5, "$prefix sending X10:$housecode;$unitcode;$x10func $dim"; my ($hc_b, $hu_b, $hf_b); my ($hc, $hu, $hf); @@ -371,7 +370,7 @@ X10_Set($@) X11_Write($hash, $function, $dim) if(!IsDummy($a[0])); my $v = join(" ", @a); - Log GetLogLevel($a[0],2), "X10 set $v"; + Log3 $a[0], 2, "X10 set $v"; (undef, $v) = split(" ", $v, 2); # Not interested in the name... my $tn = TimeNow(); @@ -475,7 +474,7 @@ X10_Parse($$) } # no units for that housecode if($unitcodes eq "") { - Log 3, "X10 No units with housecode $housecode, command $command, " . + Log3 $hash, 3, "X10 No units with housecode $housecode, command $command, " . "please define one"; push(@list, "UNDEFINED X10_$housecode X10 lm15 $housecode ?"); @@ -489,7 +488,7 @@ X10_Parse($$) if(!int(@unitcodes)) { # command without unitcodes, this happens when a single on/off is sent # but no unit was previously selected - Log 3, "X10 No unit selected for housecode $housecode, command $command"; + Log3 $hash, 3, "X10 No unit selected for housecode $housecode, command $command"; push(@list, "UNDEFINED X10_$housecode X10 lm15 $housecode ?"); return @list; @@ -517,10 +516,10 @@ X10_Parse($$) $h->{READINGS}{state}{TIME} = $tn; $h->{READINGS}{state}{VAL} = $value; X10_StateMachine($h, $tn, $function, $arg); - Log GetLogLevel($name,2), "X10 $name $value"; + Log3 $hash, 2, "X10 $name $value"; push(@list, $name); } else { - Log 3, "X10 Unknown device $housecode $unitcode, command $command, " . + Log3 $hash, 3, "X10 Unknown device $housecode $unitcode, command $command, " . "please define it"; push(@list, "UNDEFINED X10_$housecode X10 lm15 $housecode $unitcode"); @@ -643,7 +642,6 @@ X10_Parse($$)
  • dummy
  • showtime
  • model (lm12,lm15,am12,tm13)
  • -
  • loglevel
  • IODev

  • eventMap

  • diff --git a/fhem/FHEM/57_Calendar.pm b/fhem/FHEM/57_Calendar.pm index 9e6a67b7e..6424b056b 100644 --- a/fhem/FHEM/57_Calendar.pm +++ b/fhem/FHEM/57_Calendar.pm @@ -31,11 +31,6 @@ use HttpUtils; package main; -sub debug($) { - my ($msg)= @_; - Log 1, "DEBUG: " . $msg; -} - ##################################### # @@ -53,18 +48,18 @@ sub new { bless $self, $class; $self->{type}= $type; $self->{entries}= []; - #main::debug "NEW: $type"; + #main::Debug "NEW: $type"; return($self); } sub addproperty { my ($self,$line)= @_; # TRIGGER;VALUE=DATE-TIME:20120531T150000Z - #main::debug "line= $line"; + #main::Debug "line= $line"; my ($property,$parameter)= split(":", $line,2); # TRIGGER;VALUE=DATE-TIME 20120531T150000Z - #main::debug "property= $property parameter= $parameter"; + #main::Debug "property= $property parameter= $parameter"; my ($key,$parts)= split(";", $property,2); - #main::debug "key= $key parts= $parts"; + #main::Debug "key= $key parts= $parts"; $parts= "" unless(defined($parts)); $parameter= "" unless(defined($parameter)); if($key eq "EXDATE") { @@ -74,8 +69,8 @@ sub addproperty { PARTS => "$parts", VALUE => "$parameter" }; - #main::debug "ADDPROPERTY: ". $self ." key= $key, parts= $parts, value= $parameter"; - #main::debug "WE ARE " . $self->{properties}{$key}{VALUE}; + #main::Debug "ADDPROPERTY: ". $self ." key= $key, parts= $parts, value= $parameter"; + #main::Debug "WE ARE " . $self->{properties}{$key}{VALUE}; } sub value { @@ -95,12 +90,12 @@ sub parse { sub parseSub { my ($self,$ln,@ical)= @_; - #main::debug "ENTER @ $ln"; + #main::Debug "ENTER @ $ln"; while($ln<$#ical) { my $line= $ical[$ln]; chomp $line; $line =~ s/[\x0D]//; # chomp will not remove the CR - #main::debug "$ln: $line"; + #main::Debug "$ln: $line"; $ln++; last if($line =~ m/^END:.*$/); if($line =~ m/^BEGIN:(.*)$/) { @@ -111,7 +106,7 @@ sub parseSub { $self->addproperty($line); } } - #main::debug "BACK"; + #main::Debug "BACK"; return $ln; } @@ -165,10 +160,10 @@ sub start { sub setState { my ($self,$state)= @_; - #main::debug "Before setState $state: States(" . $self->uid() . ") " . $self->{_previousState} . " -> " . $self->{_state}; + #main::Debug "Before setState $state: States(" . $self->uid() . ") " . $self->{_previousState} . " -> " . $self->{_state}; $self->{_previousState}= $self->{_state}; $self->{_state}= $state; - #main::debug "After setState $state: States(" . $self->uid() . ") " . $self->{_previousState} . " -> " . $self->{_state}; + #main::Debug "After setState $state: States(" . $self->uid() . ") " . $self->{_previousState} . " -> " . $self->{_state}; return $state; } @@ -176,7 +171,7 @@ sub setMode { my ($self,$mode)= @_; $self->{_previousMode}= $self->{_mode}; $self->{_mode}= $mode; - #main::debug "After setMode $mode: Modes(" . $self->uid() . ") " . $self->{_previousMode} . " -> " . $self->{_mode}; + #main::Debug "After setMode $mode: Modes(" . $self->uid() . ") " . $self->{_previousMode} . " -> " . $self->{_mode}; return $mode; } @@ -234,7 +229,7 @@ sub isDeleted { sub stateChanged { my ($self)= @_; - #main::debug "States(" . $self->uid() . ") " . $self->{_previousState} . " -> " . $self->{_state}; + #main::Debug "States(" . $self->uid() . ") " . $self->{_previousState} . " -> " . $self->{_state}; return $self->{_state} ne $self->{_previousState} ? 1 : 0; } @@ -250,20 +245,20 @@ sub modeChanged { sub tm { my ($t)= @_; return undef if(!$t); - #main::debug "convert >$t<"; + #main::Debug "convert >$t<"; my ($year,$month,$day)= (substr($t,0,4), substr($t,4,2),substr($t,6,2)); if(length($t)>8) { my ($hour,$minute,$second)= (substr($t,9,2), substr($t,11,2),substr($t,13,2)); my $z; $z= substr($t,15,1) if(length($t) == 16); - #main::debug "$day.$month.$year $hour:$minute:$second $z"; + #main::Debug "$day.$month.$year $hour:$minute:$second $z"; if($z) { return main::fhemTimeGm($second,$minute,$hour,$day,$month-1,$year-1900); } else { return main::fhemTimeLocal($second,$minute,$hour,$day,$month-1,$year-1900); } } else { - #main::debug "$day.$month.$year"; + #main::Debug "$day.$month.$year"; return main::fhemTimeLocal(0,0,0,$day,$month-1,$year-1900); } } @@ -283,7 +278,7 @@ sub tm { sub d { my ($d)= @_; - #main::debug "Duration $d"; + #main::Debug "Duration $d"; my $sign= 1; my $t= 0; @@ -301,13 +296,13 @@ sub d { $t+= $1*3600+$2*60+$3; } $t*= $sign; - #main::debug "sign: $sign dw: $dw dt: $dt t= $t"; + #main::Debug "sign: $sign dw: $dw dt: $dt t= $t"; return $t; } sub dt { my ($t0,$value,$parts)= @_; - #main::debug "t0= $t0 parts= $parts value= $value"; + #main::Debug "t0= $t0 parts= $parts value= $value"; if(defined($parts) && $parts =~ m/VALUE=DATE/) { return tm($value); } else { @@ -332,11 +327,11 @@ sub ts0 { sub plusNMonths($$) { my ($tm, $n)= @_; my ($second,$minute,$hour,$day,$month,$year,$wday,$yday,$isdst)= localtime($tm); - #main::debug "Adding $n months to $day.$month.$year $hour:$minute:$second= " . ts($tm); + #main::Debug "Adding $n months to $day.$month.$year $hour:$minute:$second= " . ts($tm); $month+= $n; $year+= int($month / 12); $month %= 12; - #main::debug " gives $day.$month.$year $hour:$minute:$second= " . ts(main::fhemTimeLocal($second,$minute,$hour,$day,$month,$year)); + #main::Debug " gives $day.$month.$year $hour:$minute:$second= " . ts(main::fhemTimeLocal($second,$minute,$hour,$day,$month,$year)); return main::fhemTimeLocal($second,$minute,$hour,$day,$month,$year); } @@ -380,7 +375,7 @@ sub fromVEvent { my @keywords= qw(FREQ INTERVAL UNTIL COUNT BYMONTHDAY BYDAY BYMONTH); foreach my $k (keys %r) { if(not($k ~~ @keywords)) { - main::Log 2, "Calendar: RRULE $rrule is not supported"; + main::Log3 undef, 2, "Calendar: RRULE $rrule is not supported"; } } @@ -514,7 +509,7 @@ sub advanceToNextOccurance { } elsif($self->{freq} eq "YEARLY") { $nextstart= plusNMonths($nextstart, 12*$self->{interval}); } else { - main::Log 1, "Calendar: event frequency '" . $self->{freq} . "' not implemented"; + main::Log3 undef, 1, "Calendar: event frequency '" . $self->{freq} . "' not implemented"; return; } @@ -527,7 +522,7 @@ sub advanceToNextOccurance { my $duration = $self->{end} - $self->{start}; $self->{start} = $nextstart; $self->{end} = $self->{start} + $duration; - main::Log 5, "Next time of $self->{summary} is: start " . ts($self->{"start"}) . ", end " . ts($self->{"end"}); + main::Log3 undef, 5, "Next time of $self->{summary} is: start " . ts($self->{"start"}) . ", end " . ts($self->{"end"}); return 1; } @@ -570,13 +565,13 @@ sub nextTime { unshift @times, $self->{alarm} if($self->{alarm}); @times= sort grep { $_ > $t } @times; -# main::debug "Calendar: " . $self->asFull(); -# main::debug "Calendar: Start " . main::FmtDateTime($self->{start}); -# main::debug "Calendar: End " . main::FmtDateTime($self->{end}); -# main::debug "Calendar: Alarm " . main::FmtDateTime($self->{alarm}) if($self->{alarm}); -# main::debug "Calendar: times[0] " . main::FmtDateTime($times[0]); -# main::debug "Calendar: times[1] " . main::FmtDateTime($times[1]); -# main::debug "Calendar: times[2] " . main::FmtDateTime($times[2]); +# main::Debug "Calendar: " . $self->asFull(); +# main::Debug "Calendar: Start " . main::FmtDateTime($self->{start}); +# main::Debug "Calendar: End " . main::FmtDateTime($self->{end}); +# main::Debug "Calendar: Alarm " . main::FmtDateTime($self->{alarm}) if($self->{alarm}); +# main::Debug "Calendar: times[0] " . main::FmtDateTime($times[0]); +# main::Debug "Calendar: times[1] " . main::FmtDateTime($times[1]); +# main::Debug "Calendar: times[2] " . main::FmtDateTime($times[2]); if(@times) { return $times[0]; @@ -652,20 +647,20 @@ sub updateFromCalendar { $event->fromVEvent($vevent); $uid= $event->uid(); - #main::debug "Processing event $uid."; + #main::Debug "Processing event $uid."; #foreach my $ee ($self->events()) { - # main::debug $ee->asFull(); + # main::Debug $ee->asFull(); #} if(defined($self->event($uid))) { # the event already exists - #main::debug "Event $uid already exists."; + #main::Debug "Event $uid already exists."; $event->setState($self->event($uid)->state()); # copy the state from the existing event $event->setMode($self->event($uid)->mode()); # copy the mode from the existing event - #main::debug "Our lastModified: " . ts($self->event($uid)->lastModified()); - #main::debug "New lastModified: " . ts($event->lastModified()); + #main::Debug "Our lastModified: " . ts($self->event($uid)->lastModified()); + #main::Debug "New lastModified: " . ts($event->lastModified()); if($self->event($uid)->lastModified() != $event->lastModified()) { $event->setState("updated"); - #main::debug "We set it to updated."; + #main::Debug "We set it to updated."; } else { $event->setState("known") } @@ -699,8 +694,7 @@ sub Calendar_Initialize($) { $hash->{UndefFn} = "Calendar_Undef"; $hash->{GetFn} = "Calendar_Get"; $hash->{SetFn} = "Calendar_Set"; - $hash->{AttrList}= "loglevel:0,1,2,3,4,5 ". - $readingFnAttributes; + $hash->{AttrList}= $readingFnAttributes; } ################################### @@ -709,7 +703,7 @@ sub Calendar_Wakeup($) { my ($hash) = @_; my $t= time(); - Log 4, "Calendar " . $hash->{NAME} . ": Wakeup"; + Log3 $hash, 4, "Calendar " . $hash->{NAME} . ": Wakeup"; Calendar_GetUpdate($hash) if($t>= $hash->{fhem}{nxtUpdtTs}); @@ -740,7 +734,7 @@ sub Calendar_CheckTimes($) { my $eventsObj= $hash->{fhem}{events}; my $t= time(); - Log 4, "Calendar " . $hash->{NAME} . ": Checking times..."; + Log3 $hash, 4, "Calendar " . $hash->{NAME} . ": Checking times..."; # we now run over all events and update the readings my @allevents= $eventsObj->events(); @@ -752,7 +746,7 @@ sub Calendar_CheckTimes($) { my @startedevents= grep { $_->isStarted($t) } @allevents; my $event; - #main::debug "Updating modes..."; + #main::Debug "Updating modes..."; foreach $event (@upcomingevents) { $event->setMode("upcoming"); } foreach $event (@alarmedevents) { $event->setMode("alarm"); } foreach $event (@startedevents) { $event->setMode("start"); } @@ -797,25 +791,25 @@ sub Calendar_GetUpdate($) { $hash->{fhem}{lstUpdtTs}= $t; $hash->{fhem}{lastUpdate}= FmtDateTime($t); - Log 4, "Calendar " . $hash->{NAME} . ": Updating..."; + Log3 $hash, 4, "Calendar " . $hash->{NAME} . ": Updating..."; my $url= $hash->{fhem}{url}; my $ics= GetFileFromURLQuiet($url); #my $ics= CustomGetFileFromURL(0, $url, undef, undef, 1); if(!defined($ics)) { - Log 1, "Calendar " . $hash->{NAME} . ": Could not retrieve file at URL"; + Log3 $hash, 1, "Calendar " . $hash->{NAME} . ": Could not retrieve file at URL"; return 0; } # we parse the calendar into a recursive ICal::Entry structure my $ical= ICal::Entry->new("root"); $ical->parse(split("\n",$ics)); - #main::debug "*** Result:\n"; - #main::debug $ical->asString(); + #main::Debug "*** Result:\n"; + #main::Debug $ical->asString(); my @entries= @{$ical->{entries}}; if($#entries<0) { - Log 1, "Calendar " . $hash->{NAME} . ": Not an ical file at URL"; + Log3 $hash, 1, "Calendar " . $hash->{NAME} . ": Not an ical file at URL"; $hash->{STATE}= "Not an ical file at URL"; return 0; }; @@ -823,7 +817,7 @@ sub Calendar_GetUpdate($) { my $root= @{$ical->{entries}}[0]; my $calname= "?"; if($root->{type} ne "VCALENDAR") { - Log 1, "Calendar " . $hash->{NAME} . ": Root element is not a VCALENDAR"; + Log3 $hash, 1, "Calendar " . $hash->{NAME} . ": Root element is not a VCALENDAR"; $hash->{STATE}= "Root element is not a VCALENDAR"; return 0; } else { @@ -834,7 +828,7 @@ sub Calendar_GetUpdate($) { $hash->{STATE}= "Active"; # we now create the events from it - #main::debug "Creating events..."; + #main::Debug "Creating events..."; my $eventsObj= $hash->{fhem}{events}; $eventsObj->updateFromCalendar($root); $hash->{fhem}{events}= $eventsObj; @@ -878,7 +872,7 @@ sub Calendar_Set($@) { Calendar_Wakeup($hash); return undef; } else { - return "Unknown argument $cmd, choose one of update"; + return "Unknown argument $cmd, choose one of update:noArg"; } } @@ -961,7 +955,7 @@ sub Calendar_Define($$) { $hash->{fhem}{interval}= $interval; $hash->{fhem}{events}= Calendar::Events->new(); - #main::debug "Interval: ${interval}s"; + #main::Debug "Interval: ${interval}s"; $hash->{fhem}{nxtUpdtTs}= 0; Calendar_Wakeup($hash); @@ -1158,7 +1152,7 @@ sub Calendar_Undef($$) {

    You can also do some logging:

    - define LogErna notify MyCalendar:modeAlarmed.*2767324dsfretfvds7dsfn3e4­dsa234r234sdfds6bh874­googlecom.* { Log 1, "ALARM name=%NAME event=%EVENT part1=%EVTPART0 part2=%EVTPART1" } + define LogErna notify MyCalendar:modeAlarmed.*2767324dsfretfvds7dsfn3e4­dsa234r234sdfds6bh874­googlecom.* { Log3 %NAME, 1, "ALARM name=%NAME event=%EVENT part1=%EVTPART0 part2=%EVTPART1" }

    @@ -1186,7 +1180,7 @@ sub Calendar_Undef($$) {

    You can also do some logging:

    - define LogActors notify MyCalendar:mode(Started|Ended).* { my $reading= "%EVTPART0";; my $uid= "%EVTPART1";; my $actor= fhem("get MyCalendar summary $uid");; Log 1, "Actor: $actor, Reading $reading" } + define LogActors notify MyCalendar:mode(Started|Ended).* { my $reading= "%EVTPART0";; my $uid= "%EVTPART1";; my $actor= fhem("get MyCalendar summary $uid");; Log 3 %NAME, 1, "Actor: $actor, Reading $reading" }

    diff --git a/fhem/FHEM/59_Weather.pm b/fhem/FHEM/59_Weather.pm index 31e713cc8..449c7f759 100755 --- a/fhem/FHEM/59_Weather.pm +++ b/fhem/FHEM/59_Weather.pm @@ -128,7 +128,7 @@ sub Weather_Initialize($) { $hash->{UndefFn} = "Weather_Undef"; $hash->{GetFn} = "Weather_Get"; $hash->{SetFn} = "Weather_Set"; - $hash->{AttrList}= "loglevel:0,1,2,3,4,5 localicons ". + $hash->{AttrList}= "localicons ". $readingFnAttributes; } @@ -165,7 +165,7 @@ sub Weather_UpdateReading($$$$) { my ($hash,$prefix,$key,$value)= @_; - #Log 1, "DEBUG WEATHER: $prefix $key $value"; + #Debug "DEBUG WEATHER: $prefix $key $value"; my $unitsystem= $hash->{READINGS}{unit_system}{VAL}; @@ -232,7 +232,7 @@ sub Weather_RetrieveData($) foreach my $l (split("<",$xml)) { - #Log 1, "DEBUG WEATHER: line=\"$l\""; + #Debug "DEBUG WEATHER: line=\"$l\""; next if($l eq ""); # skip empty lines $l =~ s/(\/|\?)?>$//; # strip off /> and > my ($tag,$value)= split(" ", $l, 2); # split tag data=..... at the first blank @@ -344,7 +344,7 @@ sub Weather_GetUpdate($) my $humidity= $hash->{READINGS}{humidity}{VAL}; my $wind= $hash->{READINGS}{wind}{VAL}; my $val= "T: $temperature H: $humidity W: $wind"; - Log GetLogLevel($hash->{NAME},4), "Weather ". $hash->{NAME} . ": $val"; + Log3 $hash, 4, "Weather ". $hash->{NAME} . ": $val"; readingsBulkUpdate($hash, "state", $val); readingsEndUpdate($hash, defined($hash->{LOCAL} ? 0 : 1)); # DoTrigger, because sub is called by a timer instead of dispatch diff --git a/fhem/FHEM/80_M232.pm b/fhem/FHEM/80_M232.pm index a01adaa81..c8955f694 100644 --- a/fhem/FHEM/80_M232.pm +++ b/fhem/FHEM/80_M232.pm @@ -32,7 +32,7 @@ M232_Initialize($) $hash->{UndefFn} = "M232_Undef"; $hash->{GetFn} = "M232_Get"; $hash->{SetFn} = "M232_Set"; - $hash->{AttrList}= "model:m232 loglevel:0,1,2,3,4,5"; + $hash->{AttrList}= "model:m232"; } ##################################### @@ -46,17 +46,17 @@ M232_Define($$) my $dev = $a[2]; if($dev eq "none") { - Log 1, "M232 device is none, commands will be echoed only"; + Log3 $hash, 1, "M232 device is none, commands will be echoed only"; return undef; } - Log 3, "M232 opening device $dev"; + Log3 $hash, 3, "M232 opening device $dev"; my $po; if ($^O eq 'MSWin32') { eval ("use Win32::SerialPort;"); if ($@) { $hash->{STATE} = "error using Modul Win32::SerialPort"; - Log 1,"Error using Device::SerialPort"; + Log3 $hash, 1,"Error using Device::SerialPort"; return "Can't use Win32::SerialPort $@\n"; } $po = new Win32::SerialPort ($dev, 1); @@ -65,18 +65,18 @@ M232_Define($$) eval ("use Device::SerialPort;"); if ($@) { $hash->{STATE} = "error using Modul Device::SerialPort"; - Log 1,"Error using Device::SerialPort"; + Log3 $hash, 1,"Error using Device::SerialPort"; return "Can't Device::SerialPort $@\n"; } $po = new Device::SerialPort ($dev, 1); } if (!$po) { $hash->{STATE} = "error opening device"; - Log 1,"Error opening Serial Device $dev"; + Log3 $hash, 1,"Error opening Serial Device $dev"; return "Can't open Device $dev: $^E\n"; } - Log 3, "M232 opened device $dev"; + Log3 $hash, 3, "M232 opened device $dev"; $po->close(); $hash->{DeviceName} = $dev; @@ -96,7 +96,7 @@ M232_Undef($$) $defs{$d}{IODev} == $hash) { my $lev = ($reread_active ? 4 : 2); - Log GetLogLevel($name,$lev), "deleting port for $d"; + Log3 $hash, $lev, "deleting port for $d"; delete $defs{$d}{IODev}; } } @@ -272,7 +272,7 @@ M232GetData($$) $serport=new Device::SerialPort ($dev, 1); } if(!$serport) { - Log 3, "M232: Can't open $dev: $!"; + Log3 $hash, 3, "M232: Can't open $dev: $!"; return undef; } $serport->reset_error(); @@ -283,7 +283,7 @@ M232GetData($$) $serport->handshake('none'); $serport->write_settings; $hash->{po}=$serport; - Log 4, "M232: Sending $d"; + Log3 $hash, 4, "M232: Sending $d"; my $rm = "M232: ?"; @@ -319,7 +319,7 @@ M232GetData($$) if($out eq $MSGACK) { $rm= "M232: acknowledged"; - Log 4, "M232: return value \'" . $retval . "\'"; + Log3 $hash, 4, "M232: return value \'" . $retval . "\'"; $status= "ACK"; } elsif($out eq $MSGNACK) { $rm= "M232: not acknowledged"; @@ -340,7 +340,7 @@ DONE: $serport->close(); undef $serport; delete $hash->{po} if exists($hash->{po}); - Log 4, $rm; + Log3 $hash, 4, $rm; return $ret; } @@ -423,7 +423,6 @@ DONE: Attributes
    diff --git a/fhem/FHEM/81_M232Counter.pm b/fhem/FHEM/81_M232Counter.pm index 3131dcb4d..a563a46ee 100644 --- a/fhem/FHEM/81_M232Counter.pm +++ b/fhem/FHEM/81_M232Counter.pm @@ -28,7 +28,7 @@ M232Counter_Initialize($) $hash->{SetFn} = "M232Counter_Set"; $hash->{DefFn} = "M232Counter_Define"; - $hash->{AttrList} = "dummy:1,0 model:M232Counter loglevel:0,1,2,3,4,5"; + $hash->{AttrList} = "dummy:1,0 model:M232Counter"; } ################################### @@ -47,7 +47,7 @@ M232Counter_GetStatus($) my $d = IOWrite($hash, "z"); if(!defined($d)) { my $msg = "M232Counter $name tick count read error"; - Log GetLogLevel($name,2), $msg; + Log3 $name, 2, $msg; return $msg; } @@ -96,7 +96,7 @@ M232Counter_GetStatus($) my $ret = IOWrite($hash, "Z1"); if(!defined($ret)) { my $msg = "M232Counter $name reset error"; - Log GetLogLevel($name,2), $msg; + Log3 $name, 2, $msg; return $msg; } } @@ -143,7 +143,7 @@ M232Counter_GetStatus($) } $hash->{STATE} = $value; - Log GetLogLevel($name,4), "M232Counter $name: $value $hash->{UNIT}"; + Log3 $name, 4, "M232Counter $name: $value $hash->{UNIT}"; return $hash->{STATE}; } @@ -192,7 +192,7 @@ M232Counter_Calibrate($@) my $ret = IOWrite($hash, "Z1"); if(!defined($ret)) { my $rm = "M232Counter $name read error"; - Log GetLogLevel($name,2), $rm; + Log3 $name, 2, $rm; } return $rm; @@ -331,7 +331,6 @@ M232Counter_Define($$) Attributes
    diff --git a/fhem/FHEM/82_M232Voltage.pm b/fhem/FHEM/82_M232Voltage.pm index 4adf603e3..f4c8a2a51 100644 --- a/fhem/FHEM/82_M232Voltage.pm +++ b/fhem/FHEM/82_M232Voltage.pm @@ -25,7 +25,7 @@ M232Voltage_Initialize($) $hash->{GetFn} = "M232Voltage_Get"; $hash->{DefFn} = "M232Voltage_Define"; - $hash->{AttrList} = "dummy:1,0 model:M232Voltage loglevel:0,1,2,3,4,5"; + $hash->{AttrList} = "dummy:1,0 model:M232Voltage"; } ################################### @@ -43,7 +43,7 @@ M232Voltage_GetStatus($) my $d = IOWrite($hash, "a" . $hash->{INPUT}); if(!defined($d)) { my $msg = "M232Voltage $name read error"; - Log GetLogLevel($name,2), $msg; + Log3 $name, 2, $msg; return $msg; } @@ -60,7 +60,7 @@ M232Voltage_GetStatus($) } $hash->{STATE} = $value; - Log GetLogLevel($name,4), "M232Voltage $name: $value $hash->{UNIT}"; + Log3 $name, 4, "M232Voltage $name: $value $hash->{UNIT}"; return $hash->{STATE}; } @@ -160,7 +160,6 @@ M232Voltage_Define($$) Attributes