Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Moderator: Co-Administratoren
-
- Beiträge: 163
- Registriert: 03.12.2014, 19:28
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Hallo zusammen,
ich stehe gerade auf dem Schlauch.
Ich habe folgendes vor:
Ich habe einen Saug- Wischroboter von Dream den 20L.
Ich möchte eine Kombination aus Programm und Script.
Das Programm sagt: rufe das Script alle 2 Tage auf, oder Wenn Anwesenheit Variabel auf Abwesend geht.
Das Script prüft eine Zeit die in der Variablen Dreambot_Last_Start, wann der Roboter das letzte mal gelaufen ist. Ist dies unter 48h macht der Roboter nix.
Ist es über 48h läuft der Roboter los.
Ich steure den Roboter über Alexa. also ist der Startbefhel für den Roboter:
string list;
! Starte den Roboter
list = dom.GetObject('SB-Ankuendigung').Value();
list="";
list = list # "sage starte das Reinigen mit Dreame-Bot";
dom.GetObject('SB-Ankuendigung').State(list);
string textcmd = dom.GetObject(ID_SYSTEM_VARIABLES).Get("SB-Ankuendigung").Value();
system.Exec("/usr/local/addons/alexa/alexa.sh -d 'Wohnzimmer' -e textcommand:'" #textcmd.ToUTF8() #"' &");
Ich bräuchte Hilfe bei der Umsetzung und der Verbesserung des Scripts.
Ich habe schon eine System Variable mit SB-Ankuendigung & Dreambot_Last_Start vom Typ Zeichenkette.
Bitte Hilfe...
Danke
ich stehe gerade auf dem Schlauch.
Ich habe folgendes vor:
Ich habe einen Saug- Wischroboter von Dream den 20L.
Ich möchte eine Kombination aus Programm und Script.
Das Programm sagt: rufe das Script alle 2 Tage auf, oder Wenn Anwesenheit Variabel auf Abwesend geht.
Das Script prüft eine Zeit die in der Variablen Dreambot_Last_Start, wann der Roboter das letzte mal gelaufen ist. Ist dies unter 48h macht der Roboter nix.
Ist es über 48h läuft der Roboter los.
Ich steure den Roboter über Alexa. also ist der Startbefhel für den Roboter:
string list;
! Starte den Roboter
list = dom.GetObject('SB-Ankuendigung').Value();
list="";
list = list # "sage starte das Reinigen mit Dreame-Bot";
dom.GetObject('SB-Ankuendigung').State(list);
string textcmd = dom.GetObject(ID_SYSTEM_VARIABLES).Get("SB-Ankuendigung").Value();
system.Exec("/usr/local/addons/alexa/alexa.sh -d 'Wohnzimmer' -e textcommand:'" #textcmd.ToUTF8() #"' &");
Ich bräuchte Hilfe bei der Umsetzung und der Verbesserung des Scripts.
Ich habe schon eine System Variable mit SB-Ankuendigung & Dreambot_Last_Start vom Typ Zeichenkette.
Bitte Hilfe...
Danke
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
-
- Beiträge: 2506
- Registriert: 13.02.2012, 20:23
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 310 Mal
- Danksagung erhalten: 121 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Vielleicht kannst du damit was anfangen, das oberste skript ist für dich relevant.
Wobei ich meinen täglich fahren lasse
Wobei ich meinen täglich fahren lasse
if (system.Date("%d-%m").ToString() == dom.GetObject("Robrock_Heute").Value())
{
WriteLine("Heute, schon gestartet also mach nix!!");
}else{
WriteLine("Heute noch nicht, also los");
string tmpA ="http://IP-IoBroker:8087/set/mihome-vacu ... value=true";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O - '"#tmpA#"'");
string tmpA ="http://IP-IoBroker:8087/set/mihome-vacu ... value=true";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O - '"#tmpA#"'");
string tmpA ="http://IP-IoBroker:8087/set/mihome-vacu ... value=true";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O - '"#tmpA#"'");
string sTime = system.Date("%d-%m"); !Hier wird Datum abgefragt und Variable zugeordnet
var sTimeString = sTime.ToString(sTime);
dom.GetObject('Robrock_Heute').State(sTimeString);
}
-
- Beiträge: 163
- Registriert: 03.12.2014, 19:28
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Danke für die Hilfe..
Aber ich bin einfach zu blöd das für mich umzubauen..
Irgendwo hier ist ein Fehler:
Aber ich bin einfach zu blöd das für mich umzubauen..
Irgendwo hier ist ein Fehler:
Code: Alles auswählen
string sTime = system.Date("%d-%m"); !Hier wird Datum abgefragt und Variable zugeordnet
var sTimeString = sTime.ToString(sTime);
var lastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp().ToString();
var timeDifference = sTimeString - lastBotStart
if (timeDifference >= (48 * 3600))
{
WriteLine("Heute, schon gestartet also mach nix!!");
}else
{
list = dom.GetObject('SB-Ankuendigung').Value();
string list;
list="";
list = list # "sage starte das Reinigen mit Dreame-Bot";
dom.GetObject('SB-Ankuendigung').State(list);
string textcmd = dom.GetObject(ID_SYSTEM_VARIABLES).Get("SB-Ankuendigung").Value();
system.Exec("/usr/local/addons/alexa/alexa.sh -d 'Wohnzimmer' -e textcommand:'" #textcmd.ToUTF8() #"' &");
dom.GetObject('Dreambot_Last_Start').State(sTimeString);
}
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
- Henke
- Beiträge: 1538
- Registriert: 27.06.2022, 20:51
- System: CCU
- Hat sich bedankt: 144 Mal
- Danksagung erhalten: 313 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Was genau macht das Script nicht?
Absturz, Fehler,...
Die Berechnung der Zeit wird so nicht klappen. Differenzen werden mit dem Zeitstempel/Zahl berechnet, nicht mit Zeichenketten.
Was ist bei dir "a47" - "x"?
Absturz, Fehler,...
Die Berechnung der Zeit wird so nicht klappen. Differenzen werden mit dem Zeitstempel/Zahl berechnet, nicht mit Zeichenketten.
Was ist bei dir "a47" - "x"?
-
- Beiträge: 163
- Registriert: 03.12.2014, 19:28
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Skriptfehler...
Wahrscheinlich genau deswegen wie du schon sagst.
ich bin leider kein Programmierter.. ich kann das lesen und interpretieren, aber ich muss mir das zusammen googlen.
ich möchte das der Roboter nicht vor Ablauf von 48 Stunden fährt.
Deswegen die 48.
Wie wäre denn das richtige skript?
Wahrscheinlich genau deswegen wie du schon sagst.
ich bin leider kein Programmierter.. ich kann das lesen und interpretieren, aber ich muss mir das zusammen googlen.
ich möchte das der Roboter nicht vor Ablauf von 48 Stunden fährt.
Deswegen die 48.
Wie wäre denn das richtige skript?
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
- Henke
- Beiträge: 1538
- Registriert: 27.06.2022, 20:51
- System: CCU
- Hat sich bedankt: 144 Mal
- Danksagung erhalten: 313 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Zeitberechnung gibt es genug Beispiele im Forum.
Auf die Schnelle: viewtopic.php?f=43&t=42113&p=418831&hil ... en#p418831
Auf die Schnelle: viewtopic.php?f=43&t=42113&p=418831&hil ... en#p418831
-
- Beiträge: 163
- Registriert: 03.12.2014, 19:28
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Danke für den Link.
Verstehen tue ch es aber nicht, weil es ist doch string.
string sTime = system.Date("%d-%m"); !Hier wird Datum abgefragt und Variable zugeordnet
var sTimeString = sTime.ToString(sTime);
var lastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp().ToString();
!var timeDifference = sTimeString - lastBotStart
Was mache ich denn falsch?
Verstehen tue ch es aber nicht, weil es ist doch string.
string sTime = system.Date("%d-%m"); !Hier wird Datum abgefragt und Variable zugeordnet
var sTimeString = sTime.ToString(sTime);
var lastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp().ToString();
!var timeDifference = sTimeString - lastBotStart
Was mache ich denn falsch?
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
-
- Beiträge: 163
- Registriert: 03.12.2014, 19:28
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Ich bräuchte immer noch Hilfe... ich versteh einfach nicht, warum das nicht klappt
string jetzt = system.Date("%F %T");
var varLastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp();
var timediff = jetzt - lastBotStart
das hier klappt auch nicht... obwohl alles strings sind...
string jetzt = system.Date("%F %T");
string varLastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp();
string timediff = jetzt - varLastBotStart
string jetzt = system.Date("%F %T");
var varLastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp();
var timediff = jetzt - lastBotStart
das hier klappt auch nicht... obwohl alles strings sind...
string jetzt = system.Date("%F %T");
string varLastBotStart = dom.GetObject('Dreambot_Last_Start').LastTimestamp();
string timediff = jetzt - varLastBotStart
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
- Baxxy
- Beiträge: 11037
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 632 Mal
- Danksagung erhalten: 2287 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Ich würde den Zeitstempel im "Standard-Format" in die SysVar schreiben und nutzen.
Die Timestamps der SysVar sind eher unpraktisch da sie erstmal die letzte Zentralen-Start-Zeit (.Timestamp) bzw. irgendwann 1970 (.LastTimestamp) hergeben.
Rechnen im Script dann mit dem Unix-Timestamp (Integer / Sekunden).
Beispiel:
Zwischenspeicherung des Alex-Kommandos in einer SysVar ist nicht nötig denke ich, nutze das aber selbst nicht.
Die Timestamps der SysVar sind eher unpraktisch da sie erstmal die letzte Zentralen-Start-Zeit (.Timestamp) bzw. irgendwann 1970 (.LastTimestamp) hergeben.
Rechnen im Script dann mit dem Unix-Timestamp (Integer / Sekunden).
Beispiel:
Code: Alles auswählen
object oSpeicher_SV = dom.GetObject (ID_SYSTEM_VARIABLES).Get ("Dreambot_Last_Start");
integer iDiffHours = 48;
if (!oSpeicher_SV) {quit;}
time sLastStart_Val = oSpeicher_SV.Value().ToTime();
time sAkt_Time = localtime;
integer iAkt_Timestamp = sAkt_Time.ToInteger();
integer iLastBotStart = sLastStart_Val.ToInteger();
integer iTimeDiffSeconds = iAkt_Timestamp - iLastBotStart;
if (iTimeDiffSeconds >= ((iDiffHours * 3600) - 120)) {
string sAlexaCommand = "sage starte das Reinigen mit Dreame-Bot";
system.Exec("/usr/local/addons/alexa/alexa.sh -d 'Wohnzimmer' -e textcommand:'" #sAlexaCommand.ToUTF8() #"' &");
oSpeicher_SV.State(sAkt_Time);
}
Zuletzt geändert von Baxxy am 09.02.2024, 15:07, insgesamt 1-mal geändert.
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen
-
- Beiträge: 163
- Registriert: 03.12.2014, 19:28
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: Dream Saug und Wischroboter Zeitgesteuert starten, Stoppen
Hallo Baxxy,
das Script sieht erstmal gut aus..
kannst du mir das näher erklären? Ich verstehe nicht ganz wie es funktioniert.
Danke
das Script sieht erstmal gut aus..
kannst du mir das näher erklären? Ich verstehe nicht ganz wie es funktioniert.
Danke
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------