34_SWAP.pm: added event for SystemState changes

git-svn-id: https://svn.fhem.de/fhem/trunk@11969 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
justme-1968 2016-08-15 10:49:00 +00:00
parent 110a7c254d
commit 1574ca7f45

View File

@ -58,12 +58,13 @@ my %default_registers = (
0x0A => { name => 'PeriodicTxInterval', size => 2, direction => OUT }, 0x0A => { name => 'PeriodicTxInterval', size => 2, direction => OUT },
); );
my %system_sate = ( my %system_state = (
0x00 => 'RESTART', 0x00 => 'RESTART',
0x01 => 'RXON', 0x01 => 'RXON',
0x02 => 'RXOFF', 0x02 => 'RXOFF',
0x03 => 'SYNC', 0x03 => 'SYNC',
0x04 => 'LOWBAT', 0x04 => 'LOWBAT',
0x05 => 'FLASH',
); );
my $developers = {}; my $developers = {};
@ -1050,7 +1051,11 @@ SWAP_Parse($$)
$rhash->{"SWAP_".$rid."-".$default_registers{$reg}->{name}} = $data; $rhash->{"SWAP_".$rid."-".$default_registers{$reg}->{name}} = $data;
} }
if( $reg == 0x09 if( $reg == 0x03 ) {
$data = $system_state{$data} if( defined($system_state{$data}) );
DoTrigger( $rname, "$default_registers{$reg}->{name}: $data" );
} elsif( $reg == 0x09
&& $data eq "FF" ) { && $data eq "FF" ) {
my $addr = SWAP_findFreeAddress($hash,$data); my $addr = SWAP_findFreeAddress($hash,$data);
if( $addr ne $data ) { if( $addr ne $data ) {