mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-01-31 06:39:11 +00:00
V0.5 - HMDEV: Es wird nun STATE sinnvoll gesetzt, als Zusammenfasung aller
READINGS HMRPC: Der newDevices-Aufruf wird nun ausgewertet und die uebermittelten Device/Channel-Informationen werden an die HMDEV-Objekte gehanden, als "hmdevinfo"; gleichzeitig wird "hmdevtype" auf den HM-Devicetyp git-svn-id: https://svn.fhem.de/fhem/trunk@1108 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
46a7edb43a
commit
df630c50cf
@ -3,7 +3,7 @@
|
||||
# HomeMatic XMLRPC API Device Provider
|
||||
# Written by Oliver Wagner <owagner@vapor.com>
|
||||
#
|
||||
# V0.4
|
||||
# V0.5
|
||||
#
|
||||
###########################################################
|
||||
#
|
||||
|
@ -2,7 +2,7 @@
|
||||
# HMRPC Device Handler
|
||||
# Written by Oliver Wagner <owagner@vapor.com>
|
||||
#
|
||||
# V0.4
|
||||
# V0.5
|
||||
#
|
||||
################################################
|
||||
#
|
||||
@ -84,6 +84,13 @@ HMDEV_Parse($$)
|
||||
return "UNDEFINED HMDEV_$addr HMDEV $addr";
|
||||
}
|
||||
|
||||
# Let's see whether we can update our devinfo now
|
||||
if(!defined $hash->{devinfo})
|
||||
{
|
||||
$hash->{hmdevinfo}=$hash->{IODev}{devicespecs}{$addr};
|
||||
$hash->{hmdevtype}=$hash->{devinfo}{TYPE};
|
||||
}
|
||||
|
||||
#
|
||||
# Ok update the relevant reading
|
||||
#
|
||||
@ -92,13 +99,25 @@ HMDEV_Parse($$)
|
||||
$hash->{READINGS}{$attrid}{TIME}=TimeNow();
|
||||
# Note that we always trigger a change on PRESS_LONG/PRESS_SHORT events
|
||||
# (they are sent whenever a button is pressed, and there is no change back)
|
||||
# We also never trigger a change on the RSSI readings, for efficiency purposes
|
||||
if(!defined $currentval || ($currentval ne $mp[3]) || ($attrid =~ /^PRESS_/))
|
||||
{
|
||||
if(!($currentval =~ m/^RSSI_/))
|
||||
if(defined $currentval && !($currentval =~ m/^RSSI_/))
|
||||
{
|
||||
push @changed, "$attrid: $mp[3]";
|
||||
}
|
||||
$hash->{READINGS}{$attrid}{VAL}=$mp[3];
|
||||
# Also update the STATE
|
||||
my $state="";
|
||||
foreach my $key (sort(keys(%{$hash->{READINGS}})))
|
||||
{
|
||||
if(length($state))
|
||||
{
|
||||
$state.=" ";
|
||||
}
|
||||
$state.=$key.": ".$hash->{READINGS}{$key}{VAL};
|
||||
}
|
||||
$hash->{STATE}=$state;
|
||||
}
|
||||
$hash->{CHANGED}=\@changed;
|
||||
|
||||
|
@ -2,7 +2,7 @@ HMRPC - xmlrpc-basierte Homematic-Integration fuer fhem
|
||||
=======================================================
|
||||
Von Oliver Wagner <owagner@vapor.com>
|
||||
|
||||
V0.4
|
||||
V0.5
|
||||
|
||||
Uebersicht
|
||||
----------
|
||||
@ -132,6 +132,13 @@ V0.4 - HMRPC: Fehlermeldung statt Abbruch, wenn eine Testverbindung zum
|
||||
HMRPC: PRESS_ loest nun wirklich jedesmal ein changed aus.
|
||||
import_webui: Pattern korrigiert, so dass nun auch die virtuellen
|
||||
Taster erkannt werden
|
||||
|
||||
V0.5 - HMDEV: Es wird nun STATE sinnvoll gesetzt, als Zusammenfasung aller
|
||||
READINGS
|
||||
HMRPC: Der newDevices-Aufruf wird nun ausgewertet und die uebermittelten
|
||||
Device/Channel-Informationen werden an die HMDEV-Objekte gehanden, als
|
||||
"hmdevinfo"; gleichzeitig wird "hmdevtype" auf den HM-Devicetyp
|
||||
|
||||
|
||||
Anhang
|
||||
------
|
||||
|
Loading…
Reference in New Issue
Block a user