diff --git a/fhem/FHEM/lib/openzwave_deviceconfig.xml.gz b/fhem/FHEM/lib/openzwave_deviceconfig.xml.gz index cf85c4d27..073d52945 100644 Binary files a/fhem/FHEM/lib/openzwave_deviceconfig.xml.gz and b/fhem/FHEM/lib/openzwave_deviceconfig.xml.gz differ diff --git a/fhem/FHEM/lib/openzwave_manufacturer_specific.xml b/fhem/FHEM/lib/openzwave_manufacturer_specific.xml index 65449c5f0..4ff675856 100644 --- a/fhem/FHEM/lib/openzwave_manufacturer_specific.xml +++ b/fhem/FHEM/lib/openzwave_manufacturer_specific.xml @@ -4,7 +4,10 @@ + + + @@ -30,29 +33,34 @@ + - - - - - - + + + + + + + + - - - - - + + + + + + + @@ -62,6 +70,7 @@ + @@ -72,15 +81,19 @@ + + + + @@ -91,6 +104,14 @@ + + + + + + + + @@ -99,6 +120,9 @@ + + + @@ -112,12 +136,14 @@ + + + - @@ -126,6 +152,9 @@ + + + @@ -140,30 +169,45 @@ + + + + - - - - - - - - - + + + + - + + + + + + + + + + + + + + + - - + + + + @@ -174,13 +218,16 @@ + + + @@ -194,13 +241,14 @@ - + + @@ -208,21 +256,30 @@ + + - + + + + + + + + @@ -258,6 +315,11 @@ + + + + + @@ -286,9 +348,13 @@ + + + + @@ -298,6 +364,7 @@ + @@ -319,9 +386,19 @@ - + + + + + + + + + + + @@ -335,6 +412,10 @@ + + + + @@ -347,6 +428,13 @@ + + + + + + + @@ -355,34 +443,46 @@ + + - - - + + + + + + + + + - + + - + + + + @@ -392,13 +492,21 @@ + + + + + - - + + + + + @@ -420,6 +528,7 @@ + @@ -429,6 +538,12 @@ + + + + + + @@ -441,6 +556,9 @@ + + + @@ -474,11 +592,19 @@ + + + + - + + + + + @@ -488,17 +614,18 @@ - - - + - - - + + + + + + @@ -506,6 +633,7 @@ + @@ -516,15 +644,29 @@ + + + + + + + + + + + + + + + + - - - - - - - + + + + + diff --git a/fhem/contrib/zwave_configconvert.pl b/fhem/contrib/zwave_configconvert.pl index 984b2dcbc..f0fd847e0 100644 --- a/fhem/contrib/zwave_configconvert.pl +++ b/fhem/contrib/zwave_configconvert.pl @@ -1,8 +1,35 @@ #!/usr/bin/perl -# Usage: contrib/zwave_configconvert.pl priv/zwave/open-zwave-read-only/config | -# gzip > FHEM/lib/openzwave_deviceconfig.xml.gz -# +# Details in Forum #35416 + +if(@ARGV == 0 || ($ARGV[0] =~ m/^-/ && $ARGV[0] ne "-d")) { + print "Usage:\n". + " cd open-zwave\n". + " perl .../contrib/zwave_configconvert.pl config |\n". + " gzip > .../FHEM/lib/openzwave_deviceconfig.xml.gz\n". + "or\n". + " cd open-zwave\n". + " gzip -d < .../FHEM/lib/openzwave_deviceconfig.xml.gz |\n". + " perl .../contrib/zwave_configconvert.pl -d\n"; + exit 1; +} + +if($ARGV[0] eq "-d") { + while(my $l = ) { + next if($l !~ m/config/$f") || die("open config/$f: $!\n"); + print FH $l; + while($l = ) { + print FH $l; + last if($l =~ m,,); + } + close(FH); + } + exit(0); +} print '', "\n"; print "\n"; @@ -16,20 +43,20 @@ foreach my $file (`find $ARGV[0] -name \*.xml`) { while(my $l = ) { next if($l =~ m/^<\?xml/); chomp($l); - $l =~ s/^/; + $l =~ s/^/; $l =~ s/\r//g; - $l =~ s/^[ \t]*//g; - $l =~ s/[ \t]*$//g; + $l =~ s/\t/ /g; + #$l =~ s/^ *//g; + $l =~ s/ *$//g; next if($l eq ""); if($l !~ m/>$/ || $l =~ m/^$/) { $buffer .= " ".$l; next; } if($buffer && $l =~ m/>$/) { $l = "$buffer $l"; $buffer=""; } $l =~ s///g; - $l =~ s/^[ \t]*//g; - $l =~ s/[ \t]*$//g; - print "$l\n" if($l); + $l =~ s/ *$//g; + print $l,"\n" if($l); } close(FH); print $buffer if($buffer); - print "\n"; # Some files are not NL terminated! + print "\n"; # One empty line between products } print "\n";