Xiaomi Sauer 2x nacheinander saugen lassen?
Verfasst: 23. Jul 2020 22:02
Moin,
Ich will meinen Xiaomi 1S Sauger nacheinander zwei Räume reinigen lassen. Der erste Raum ist kein Problem:
Danach fährt er wieder ins Dock, nur WIE schicke ich ihn dann ein zweites mal los?
Es git ein Item "StatusState", das z.B. mit "Room Clean", "Returning Dock" oder "Charging" Statusmeldungen gibt, nur wie verwende ich die?
Erweitere ich then
passiert nichts wenn er wieder angedockt ist, weil die Rule ja schon abgearbeitet ist bevor der Sauger wieder im Dock steht.
Ich habe es mit einer zweiten Rule versucht
Also wenn er zurück gekehrt ist und zu laden beginnt, dann wieder los fährt. Funktioniert soweit, ist aber IMO auch doof denn das macht er ja dann immer wenn er in Dock fährt.
Ich habe versucht das dann in if() unter zu bringen,
Aber da hagelt es zig Fehlermeldungen von VSCode, ich denke eine "changed" ist für if() nicht vorgesehen..., oder?
Dann habe ich gedacht einen Timer dazwischen zu bauen, aber das ist ja auch so eine Sache: mal dauert das saugen länger, mal kürzer...
Hat jemand eine Idee, WIE ich den Sauger direkt nach der ersten Reinigung wieder los schicken könnte?
Ach ja, Zonenreinigung mit Koordinaten funktioniert bei mir nicht, ich kann also nicht aus den zwei Räumen einen machen!
Ich will meinen Xiaomi 1S Sauger nacheinander zwei Räume reinigen lassen. Der erste Raum ist kein Problem:
Code: Alles auswählen
rule "test_saugen"
when
Item Robo_Test_B changed // Testschalter EIN
then
Mi_1S_ActionsCommands.sendCommand("app_segment_clean[16]") // Raum 16 saugen
end
Es git ein Item "StatusState", das z.B. mit "Room Clean", "Returning Dock" oder "Charging" Statusmeldungen gibt, nur wie verwende ich die?
Erweitere ich then
Code: Alles auswählen
***
then
Mi_1S_ActionsCommands.sendCommand("app_segment_clean[16]") // Raum 16 saugen
if(Mi_1S_StatusState.state == "Charging") {
Mi_1S_ActionsCommands.sendCommand("app_segment_clean[17]") // Raum 17 saugen
}
***
Ich habe es mit einer zweiten Rule versucht
Code: Alles auswählen
***
when
Item Mi_1S_StatusState changed from "Returning Dock" to "Charging"
***
Ich habe versucht das dann in if() unter zu bringen,
Code: Alles auswählen
***
then
Mi_1S_ActionsCommands.sendCommand("app_segment_clean[16]") // Raum 16 saugen
if(Mi_1S_StatusState changed from "Returning Dock" to "Charging") {
Mi_1S_ActionsCommands.sendCommand("app_segment_clean[17]") // Raum 17 saugen
}
***
Dann habe ich gedacht einen Timer dazwischen zu bauen, aber das ist ja auch so eine Sache: mal dauert das saugen länger, mal kürzer...
Hat jemand eine Idee, WIE ich den Sauger direkt nach der ersten Reinigung wieder los schicken könnte?
Ach ja, Zonenreinigung mit Koordinaten funktioniert bei mir nicht, ich kann also nicht aus den zwei Räumen einen machen!