2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-10 03:06:37 +00:00
fhem-mirror/fhem/FHEM/18_CUL_HOERMANN.pm
rudolfkoenig 6b68453575 Adding Id: to the modules
git-svn-id: https://svn.fhem.de/fhem/trunk@1098 2b470e98-0d58-463d-a4d8-8e2adae1ed80
2011-11-12 07:51:08 +00:00

63 lines
1.4 KiB
Perl
Executable File

##############################################
# $Id$
package main;
use strict;
use warnings;
sub
CUL_HOERMANN_Initialize($)
{
my ($hash) = @_;
$hash->{Match} = "^R..........";
$hash->{DefFn} = "CUL_HOERMANN_Define";
$hash->{ParseFn} = "CUL_HOERMANN_Parse";
$hash->{AttrList} = "IODev do_not_notify:1,0 ignore:0,1 " .
"showtime:1,0 loglevel:0,1,2,3,4,5,6";
}
#############################
sub
CUL_HOERMANN_Define($$)
{
my ($hash, $def) = @_;
my @a = split("[ \t][ \t]*", $def);
my $u = "wrong syntax: define <name> CUL_HOERMANN housecode " .
"addr [fg addr] [lm addr] [gm FF]";
return "wrong syntax: define <name> CUL_HOERMANN 10-digit-hex-code"
if(int(@a) != 3 || $a[2] !~ m/^[a-f0-9]{10}$/i);
$modules{CUL_HOERMANN}{defptr}{$a[2]} = $hash;
$hash->{STATE} = "Defined";
return undef;
}
sub
CUL_HOERMANN_Parse($$)
{
my ($hash, $msg) = @_;
# Msg format: R0123456789
my $cde = substr($msg, 1, 10);
my $def = $modules{CUL_HOERMANN}{defptr}{$cde};
if($def) {
my $name = $def->{NAME};
$def->{CHANGED}[0] = "toggle";
$def->{READINGS}{state}{TIME} = TimeNow();
$def->{READINGS}{state}{VAL} = "toggle";
Log GetLogLevel($name,4), "CUL_HOERMANN $name toggle";
return $name;
} else {
Log 3, "CUL_HOERMANN Unknown device $cde, please define it";
return "UNDEFINED CUL_HOERMANN_$cde CUL_HOERMANN $cde";
}
}
1;