From a96b30a4a1221b6a2b417555326ffd128262bdd8 Mon Sep 17 00:00:00 2001
From: moises <>
Date: Thu, 30 Aug 2018 20:15:10 +0000
Subject: [PATCH] 72_XiaomiDevice: vacuum events
git-svn-id: https://svn.fhem.de/fhem/trunk@17236 2b470e98-0d58-463d-a4d8-8e2adae1ed80
---
fhem/CHANGED | 2 +-
fhem/FHEM/72_XiaomiDevice.pm | 10 +++++++++-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/fhem/CHANGED b/fhem/CHANGED
index 61656f4d0..4384be997 100644
--- a/fhem/CHANGED
+++ b/fhem/CHANGED
@@ -1,6 +1,6 @@
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
# Do not insert empty lines here, update check depends on it.
- - feature: 72_XiaomiDevice: resume zoned cleanup
+ - feature: 72_XiaomiDevice: vacuum events, resume zoned cleanup
- feature: 51_MOBILEALERTS: Added MA10120PRO
- feature: 51_MOBILEALERTS: Added TFA30.3060.01.IT
- change: 89_FULLY: Set start URL and bug fixes
diff --git a/fhem/FHEM/72_XiaomiDevice.pm b/fhem/FHEM/72_XiaomiDevice.pm
index b8747205e..d2b2fc844 100755
--- a/fhem/FHEM/72_XiaomiDevice.pm
+++ b/fhem/FHEM/72_XiaomiDevice.pm
@@ -1582,7 +1582,7 @@ sub XiaomiDevice_GetUpdate($)
if( defined($attr{$name}) && defined($attr{$name}{subType}) && $attr{$name}{subType} eq "VacuumCleaner")
{
$hash->{helper}{packet}{$packetid} = "get_status";
- XiaomiDevice_WriteJSON($hash, '{"id":'.$packetid.',"method":"get_status","params":[""]}' );
+ XiaomiDevice_WriteJSON($hash, '{"id":'.$packetid.',"method":"get_prop","params":["get_status"]}' );
}
elsif( defined($attr{$name}) && defined($attr{$name}{subType}) && $attr{$name}{subType} eq "AirPurifier")
{
@@ -2247,6 +2247,10 @@ sub XiaomiDevice_ParseJSON($$)
return undef if(ref($json->{result}) ne "ARRAY");
return undef if(ref($json->{result}[0]) ne "HASH");
+ if (defined($json->{result}[0]{events})) {
+ readingsSingleUpdate( $hash, "event", $json->{result}[0]{events}[0], 1 ) if(defined($json->{result}[0]{events}[0]));
+ }
+
my $laststate = ReadingsVal($name, "state","-");
if(($laststate ne "Docked" && $laststate ne "Charging") && defined($json->{result}[0]{state}) && $json->{result}[0]{state} eq "8")
{
@@ -3158,6 +3162,10 @@ sub XiaomiDevice_DbLog_splitFn($) {
Error code
+
event
(VacuumCleaner)
+ consumables_X
(VacuumCleaner)