mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-17 23:46:03 +00:00
00_CUL.pm/16_STACKABLE_CC.pm: support noansi's TSSTACKED (Forum #57806)
git-svn-id: https://svn.fhem.de/fhem/trunk@12973 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
e686d93552
commit
159bb41f69
@ -45,14 +45,17 @@ my %sets = (
|
||||
|
||||
my @ampllist = (24, 27, 30, 33, 36, 38, 40, 42); # rAmpl(dB)
|
||||
|
||||
my $sccMods = "STACKABLE_CC:TSSTACKED"; # for noansi
|
||||
my $culNameRe = "^(CUL|TSCUL)\$";
|
||||
|
||||
my $clientsSlowRF = ":FS20:FHT.*:KS300:USF1000:BS:HMS: ".
|
||||
":CUL_EM:CUL_WS:CUL_FHTTK:CUL_HOERMANN: ".
|
||||
":ESA2000:CUL_IR:CUL_TX:Revolt:IT:UNIRoll:SOMFY: ".
|
||||
":STACKABLE_CC:CUL_RFR::CUL_TCM97001:CUL_REDIRECT:";
|
||||
my $clientsHomeMatic = ":CUL_HM:HMS:CUL_IR:STACKABLE_CC:";
|
||||
my $clientsMAX = ":CUL_MAX:HMS:CUL_IR:STACKABLE_CC:";
|
||||
my $clientsWMBus = ":WMBUS:HMS:CUL_IR:STACKABLE_CC:";
|
||||
my $clientsKOPP_FC = ":KOPP_FC:HMS:CUL_IR:STACKABLE_CC:";
|
||||
":$sccMods:CUL_RFR::CUL_TCM97001:CUL_REDIRECT:";
|
||||
my $clientsHomeMatic = ":CUL_HM:HMS:CUL_IR:$sccMods:";
|
||||
my $clientsMAX = ":CUL_MAX:HMS:CUL_IR:$sccMods:";
|
||||
my $clientsWMBus = ":WMBUS:HMS:CUL_IR:$sccMods:";
|
||||
my $clientsKOPP_FC = ":KOPP_FC:HMS:CUL_IR:$sccMods:";
|
||||
|
||||
my %matchListSlowRF = (
|
||||
"1:USF1000" => "^81..(04|0c)..0101a001a5ceaa00....",
|
||||
@ -76,6 +79,7 @@ my %matchListSlowRF = (
|
||||
"J:SOMFY" => "^Y[r|t|s]:?[A-F0-9]+",
|
||||
"K:CUL_TCM97001" => "^s[A-F0-9]+",
|
||||
"L:CUL_REDIRECT" => "^o+",
|
||||
"M:TSSTACKED"=>"^\\*",
|
||||
);
|
||||
|
||||
my %matchListHomeMatic = (
|
||||
@ -83,6 +87,7 @@ my %matchListHomeMatic = (
|
||||
"8:HMS" => "^810e04....(1|5|9).a001", # CUNO OneWire HMS Emulation
|
||||
"D:CUL_IR" => "^I............",
|
||||
"H:STACKABLE_CC"=>"^\\*",
|
||||
"M:TSSTACKED"=>"^\\*",
|
||||
);
|
||||
|
||||
my %matchListMAX = (
|
||||
@ -90,6 +95,7 @@ my %matchListMAX = (
|
||||
"8:HMS" => "^810e04....(1|5|9).a001", # CUNO OneWire HMS Emulation
|
||||
"D:CUL_IR" => "^I............",
|
||||
"H:STACKABLE_CC"=>"^\\*",
|
||||
"M:TSSTACKED"=>"^\\*",
|
||||
);
|
||||
|
||||
my %matchListWMBus = (
|
||||
@ -97,6 +103,7 @@ my %matchListWMBus = (
|
||||
"8:HMS" => "^810e04....(1|5|9).a001", # CUNO OneWire HMS Emulation
|
||||
"D:CUL_IR" => "^I............",
|
||||
"H:STACKABLE_CC"=>"^\\*",
|
||||
"M:TSSTACKED"=>"^\\*",
|
||||
);
|
||||
|
||||
my %matchListKOPP_FC = (
|
||||
@ -104,6 +111,7 @@ my %matchListKOPP_FC = (
|
||||
"8:HMS" => "^810e04....(1|5|9).a001", # CUNO OneWire HMS Emulation
|
||||
"D:CUL_IR" => "^I............",
|
||||
"H:STACKABLE_CC"=>"^\\*",
|
||||
"M:TSSTACKED"=>"^\\*",
|
||||
);
|
||||
|
||||
|
||||
@ -180,7 +188,7 @@ CUL_Define($$)
|
||||
my $x = $1;
|
||||
foreach my $d (keys %defs) {
|
||||
next if($d eq $name);
|
||||
if($defs{$d}{TYPE} eq "CUL") {
|
||||
if($defs{$d}{TYPE} =~ m/$culNameRe/) {
|
||||
if(uc($defs{$d}{FHTID}) =~ m/^$x/) {
|
||||
my $m = "$name: Cannot define multiple CULs with identical ".
|
||||
"first two digits ($x)";
|
||||
@ -1131,7 +1139,7 @@ CUL_prefix($$$)
|
||||
{
|
||||
my ($isadd, $hash, $msg) = @_;
|
||||
my $t = $hash->{TYPE};
|
||||
while($t ne "CUL") {
|
||||
while($t !~ m/$culNameRe/) {
|
||||
$msg = CallFn($hash->{NAME}, $isadd ? "AddPrefix":"DelPrefix", $hash, $msg);
|
||||
$hash = $hash->{IODev};
|
||||
last if(!$hash);
|
||||
|
@ -46,7 +46,7 @@ STACKABLE_CC_Define($$)
|
||||
|
||||
my $io = $defs{$a[2]};
|
||||
return "$a[2] is not a CUL/STACKABLE_CC"
|
||||
if(!$io || !($io->{TYPE} eq "CUL" || $io->{TYPE} eq "STACKABLE_CC"));
|
||||
if(!$io || $io->{TYPE} !~ m/^(CUL|TSCUL|STACKABLE_CC|TSSTACKED)$/);
|
||||
|
||||
return "$io->{NAME} has alread a stacked device: $io->{STACKED}"
|
||||
if($io->{STACKED});
|
||||
|
Loading…
x
Reference in New Issue
Block a user