Letzte Änderung einer Variable auslesen....
Moderator: Co-Administratoren
- roe1974
- Beiträge: 746
- Registriert: 17.10.2017, 16:15
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wien
- Hat sich bedankt: 52 Mal
- Danksagung erhalten: 13 Mal
Letzte Änderung einer Variable auslesen....
Hallo
Ich würde gerne Uhrzeit/Datum der letzten Änderung einer Variable "Bewegung Eingang" auslesen und in eine andere Variable schreiben "Letzte Bewegung Eingang"
Kann mir wer dabei helfen ?
DANKE !
lg Richard
Ich würde gerne Uhrzeit/Datum der letzten Änderung einer Variable "Bewegung Eingang" auslesen und in eine andere Variable schreiben "Letzte Bewegung Eingang"
Kann mir wer dabei helfen ?
DANKE !
lg Richard
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Letzte Änderung einer Variable auslesen....
Ich würde das ja so nicht machen, sondern mit der Bewegungserkennung gleich die entsprechenden Systemvariablen beschreiben
aber das musst du natürlich nicht so tun.
Das Script macht das Gewünschte zu seiner Laufzeit.
Die WriteLines sind zur Erklärung und können auskommentiert oder gelöscht werden.
Alchy
Code: Alles auswählen
object sysvar = dom.GetObject(ID_SYSTEM_VARIABLES).Get("Bewegung Eingang");
object ssysvar = dom.GetObject(ID_SYSTEM_VARIABLES).Get("Letzte Bewegung Eingang");
if (sysvar && ssysvar){
WriteLine("Die Systemvariable: " #sysvar.Name() #" wurde letztmalig : "#sysvar.Timestamp() #" geändert");
ssysvar.State(sysvar.Timestamp());
WriteLine("\t der Wert wurde in " #ssysvar.Name() #" gespeichert");
}else{
WriteLine("Systemvariable(n) nicht vorhanden");
}
Das Script macht das Gewünschte zu seiner Laufzeit.
Die WriteLines sind zur Erklärung und können auskommentiert oder gelöscht werden.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
- AndiN
- Beiträge: 2621
- Registriert: 10.06.2015, 08:54
- Wohnort: Hennef
- Hat sich bedankt: 10 Mal
- Danksagung erhalten: 28 Mal
Re: Letzte Änderung einer Variable auslesen....
Hallo,
ich bin mir nicht ganz sicher. Daher teste mal.
Ist das die Zeit? Die kannst Du ja in Anzeige Sytemvariablen sehen.
Wenn es die Zeit ist, dann wäre der Code
Andi
ich bin mir nicht ganz sicher. Daher teste mal.
Code: Alles auswählen
WriteLine(dom.GetObject("SYSTEMVARIABLE").LastTimestamp());
Wenn es die Zeit ist, dann wäre der Code
Code: Alles auswählen
dom.GetObject("SYSTEMVARIABLE WO DIE ZEIT REIN SOLL").State(dom.GetObject("SYSTEMVARIABLE").LastTimestamp());
Zuletzt geändert von alchy am 23.10.2017, 18:44, insgesamt 1-mal geändert.
Grund: Code in Codetags posten
Grund: Code in Codetags posten
Andi (Greenhorn)
Letzter Reboot: 17.03.24 => FW Update (Uptime:Rekord:153 Tage)
Systeminfos: Raspberry Pi3 Firmware: 3.75.6.20240316 142 Geräte
System angebunden: 3 Roomba 650 - Sprachausgabe via Home24 Media - Pocket Control - Zentrale: Asus TF103 mit Home24 Tablet
Addons: Drucken 2.5 - HQ WebUI 2.5.9 - XML-API 1.22 - CUx-Daemon 2.9.3 - E-Mail 1.7.4 - hm_pdetect 1.11 - VPN cloudmatic
Diverse Links
Letzter Reboot: 17.03.24 => FW Update (Uptime:Rekord:153 Tage)
Systeminfos: Raspberry Pi3 Firmware: 3.75.6.20240316 142 Geräte
System angebunden: 3 Roomba 650 - Sprachausgabe via Home24 Media - Pocket Control - Zentrale: Asus TF103 mit Home24 Tablet
Addons: Drucken 2.5 - HQ WebUI 2.5.9 - XML-API 1.22 - CUx-Daemon 2.9.3 - E-Mail 1.7.4 - hm_pdetect 1.11 - VPN cloudmatic
Diverse Links
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Letzte Änderung einer Variable auslesen....
.LastTimestamp() auf eine Variable gibt (sofern vorhanden) die vorletzte Änderung der Systemvariable aus. Je nach Regaversion wahrscheinlich.
Aber das will der User ja gar nicht.
Alchy
Aber das will der User ja gar nicht.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
- roe1974
- Beiträge: 746
- Registriert: 17.10.2017, 16:15
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wien
- Hat sich bedankt: 52 Mal
- Danksagung erhalten: 13 Mal
Re: Letzte Änderung einer Variable auslesen....
danke !!!
brauche ich, da ich die bewegung über einen POST http bekomme .... von einem nicht HM Gerät
lg Richard
brauche ich, da ich die bewegung über einen POST http bekomme .... von einem nicht HM Gerät
lg Richard
- AndiN
- Beiträge: 2621
- Registriert: 10.06.2015, 08:54
- Wohnort: Hennef
- Hat sich bedankt: 10 Mal
- Danksagung erhalten: 28 Mal
Re: Letzte Änderung einer Variable auslesen....
@Alchy: Mist. Klingt auch verwirrend. Last... den Timestamp hatte ich ausgeblendet. Danke Dir für die Info. Muss gerade mal in meinem System schauen. Da habe ich das vermutlich falsch hinterlegt gehabt, wenn ich damals genauso dachte
Andi
Andi
Andi (Greenhorn)
Letzter Reboot: 17.03.24 => FW Update (Uptime:Rekord:153 Tage)
Systeminfos: Raspberry Pi3 Firmware: 3.75.6.20240316 142 Geräte
System angebunden: 3 Roomba 650 - Sprachausgabe via Home24 Media - Pocket Control - Zentrale: Asus TF103 mit Home24 Tablet
Addons: Drucken 2.5 - HQ WebUI 2.5.9 - XML-API 1.22 - CUx-Daemon 2.9.3 - E-Mail 1.7.4 - hm_pdetect 1.11 - VPN cloudmatic
Diverse Links
Letzter Reboot: 17.03.24 => FW Update (Uptime:Rekord:153 Tage)
Systeminfos: Raspberry Pi3 Firmware: 3.75.6.20240316 142 Geräte
System angebunden: 3 Roomba 650 - Sprachausgabe via Home24 Media - Pocket Control - Zentrale: Asus TF103 mit Home24 Tablet
Addons: Drucken 2.5 - HQ WebUI 2.5.9 - XML-API 1.22 - CUx-Daemon 2.9.3 - E-Mail 1.7.4 - hm_pdetect 1.11 - VPN cloudmatic
Diverse Links
-
- Beiträge: 1184
- Registriert: 09.01.2016, 17:42
- Wohnort: Sauerland
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
Re: Letzte Änderung einer Variable auslesen....
Gilt das nur für Systemvariablen? Ich nutze es auf die item-id eines Kanals vom Fensterkontakt. Bei der Pushnachricht lasse ich mir so ausgeben wann das Fenster geöffnet wurde. Dort passte es nach meiner Meinung. Bin aber auch nicht auf der aktuellen Firmware unterwegs. Die Anleitung ist glaube ich auch von Dir.alchy hat geschrieben:.LastTimestamp() auf eine Variable gibt (sofern vorhanden) die vorletzte Änderung der Systemvariable aus. Je nach Regaversion wahrscheinlich.
Aber das will der User ja gar nicht.
Alchy
Zuletzt geändert von Cash am 23.10.2017, 21:15, insgesamt 1-mal geändert.
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Letzte Änderung einer Variable auslesen....
.LastTimestamp() auf den KANAL eines Sensors gibt dir die letzte Änderung aus.
Allerdings gab es darüber auch so manche Diskussion und Hinweise. .LastDPActionTime() ist dafür die bessere Methode.
Alchy
Allerdings gab es darüber auch so manche Diskussion und Hinweise. .LastDPActionTime() ist dafür die bessere Methode.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Letzte Änderung einer Variable auslesen....
Es ist die richtige Methode.alchy hat geschrieben:Allerdings gab es darüber auch so manche Diskussion und Hinweise. .LastDPActionTime() ist dafür die bessere Methode.
Worauf allerdings kein Verlass ist.alchy hat geschrieben:.LastTimestamp() auf den KANAL eines Sensors gibt dir die letzte Änderung aus.
Wird zum Beispiel bei einem Batterieaktor mit .State() als Abfrage auf den Kanal und/oder einen DP zugegriffen dann ändert sich dieser Zeitstempel auch, obwohl kein neuer Status gesetzt wurde.
.