Fensterstatus abfragen

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Antworten
dr.sneeze
Beiträge: 3
Registriert: 25.11.2018, 14:51

Fensterstatus abfragen

Beitrag von dr.sneeze » 25.11.2018, 15:26

Moin,
eigentlich möchte ich eine mail verschicken, wenn ein Fenster sänger als 15 Minuten geöffnet ist, jedoch scheitere ich schon an der Abfrage des Sensors.
Hardware: CCU2 mit Firmware 2.35.16, Türsensor HM-Sec-SC-2 (Gerät ist "WZ Schiebetuer" genannt, Kanal ist "WZSchiebetuer" genannt).

Ich scheitere schon an dem Simpel-Script:
var tuerstatus = dom.GetObject("WZSchiebetuer").Value();
WriteLine(tuerstatus);

Ergibt: false, egal ob Tür offen oder zu.

Das Gleiche bei Abfrage über .State()

Bei einem Neigungssensor am Garagentor bekomme ich immer ein Value() = 0, egal ob offen oder geschlossen. In dem CCU2 Webend wird der Status bei beiden Sensoren immer korrekt angezeigt.

Mehrere Stunden Suche im forum und im weiten web haben mich nicht weiter gebracht. Ich wäre sehr dankbar füe einen kleinen Klaps in die richtige Richtung.

66er
Beiträge: 3083
Registriert: 23.08.2015, 11:06
System: CCU
Hat sich bedankt: 116 Mal
Danksagung erhalten: 111 Mal

Re: Fensterstatus abfragen

Beitrag von 66er » 25.11.2018, 15:51

Hallo und willkommen im Forum. :D

Warum willst Du das denn überhaupt per Script machen :?: :roll:

(Ich beobachte die letzte Zeit sehr oft, dass augenscheinliche Homematic-Einsteiger direkt mit Scripten anfangen, ohne überhaupt die CCU-eigenen Basics zu beherrschen. Und genau das verstehe ich nicht. :? )

LG
Stefan)

Benutzeravatar
Roland M.
Beiträge: 9805
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 252 Mal
Danksagung erhalten: 1381 Mal

Re: Fensterstatus abfragen

Beitrag von Roland M. » 25.11.2018, 16:12

Hallo und willkommen im Forum!
dr.sneeze hat geschrieben:
25.11.2018, 15:26
var tuerstatus = dom.GetObject("WZSchiebetuer").Value();
Du hast zwar den Kanal angegeben, nicht aber den Datenpunkt.

Mit der Seriennummer würde das reichen:
var tuerstatus = dom.GetObject("BidCos-RF.MEQ0123456:1.STATE").Value();

Über den Namen geht es auch, da bitte Script-Spezialisten vor!


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

manfredh
Beiträge: 4155
Registriert: 09.09.2012, 10:41
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 78 Mal
Danksagung erhalten: 301 Mal

Re: Fensterstatus abfragen

Beitrag von manfredh » 25.11.2018, 16:27

66er hat geschrieben:
25.11.2018, 15:51
Warum willst Du das denn überhaupt per Script machen :?: :roll:
...
+1!

Sowas klickt man sich schnell mal über das WebUi zusammen.

Beispiel für einen Timer, der mich in der Heizperiode alle 15 Minuten daran erinnert, dass das Fenster (zum lüfen :mrgreen: ) noch offen ist:

Teil 1:
Zwischenablage01.jpg
Teil2:
Zwischenablage02.jpg
Auf die Systemvariable reagiert dann mein ioBroker, der auf dem Google Home eine Durchsage ausgibt.
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.

dr.sneeze
Beiträge: 3
Registriert: 25.11.2018, 14:51

Re: Fensterstatus abfragen

Beitrag von dr.sneeze » 25.11.2018, 17:49

66er hat geschrieben:
25.11.2018, 15:51
Warum willst Du das denn überhaupt per Script machen :?: :roll:
Wie gesagt, ich möchte eine mail verschicken, wenn ein Fenster mindestens 15 Minuten geöffnet ist.
Dazu muss ich meinem Verständnis nach eine Systemvariable (fensterstatus) (Werteliste geschlossen;offen;offen 15 Minuten) zeitversetzt um 15 Minuten auf den Status offen 15 Minuten setzen, wenn das Fenster immer noch offen ist.
Die Systemvariable stösst dann im Falle offen 15 Minuten den mailversand an.
Die Abfrage, ob das Fenster immer noch offen ist, läuft 15 zeitversetzt über das Script:

var fensterstatus = dom.GetObject('OG_Garten_Fenster_West').Value();
if ( fensterstatus == 1) { dom.GetObject('fensterstatus').State(2); }
dachte ich....

Roland M. hatte den entscheidenden Tipp: ich muss den Datenpunkt abfragen, dann bekomme ich "false" für Fenster zu und "true" für Fenster offen.
var fensterstatus = dom.GetObject('BidCos-RF.OEQ1556132:1.STATE').State();
if ( fensterstatus == true) { dom.GetObject('fensterstatus').State(2); }
funktioniert.

Jetzt bekommt meine Frau eine mail, wenn Sie vergessen hat, das Schlafzimmerfenster nach dem Lüften wieder zuzumachen und ich muß dann abends nicht frieren :-)

Danke in die Runde!

66er
Beiträge: 3083
Registriert: 23.08.2015, 11:06
System: CCU
Hat sich bedankt: 116 Mal
Danksagung erhalten: 111 Mal

Re: Fensterstatus abfragen

Beitrag von 66er » 25.11.2018, 18:41

Hallo
dr.sneeze hat geschrieben:
25.11.2018, 17:49
66er hat geschrieben:
25.11.2018, 15:51
Warum willst Du das denn überhaupt per Script machen :?: :roll:
Wie gesagt, ich möchte eine mail verschicken, wenn ein Fenster mindestens 15 Minuten geöffnet ist.
Dazu muss ...

Jetzt bekommt meine Frau eine mail, wenn Sie vergessen hat, das Schlafzimmerfenster nach dem Lüften wieder zuzumachen und ich muß dann abends nicht frieren :-)
...
Nein, ist aber ein Weg.

Dafür gibt es auch Lösungen mit Klickibunti-Programmen und dem eMail-Addon.


manfredh hat Dir ja auch seine Lösung gepostet. Und wenn Du noch einen Blick in meine Signatur werfen willst, meine Lösung ist auch per Taster de- / aktivierbar. :wink:

Das Wichtigste ist und bleibt aber, dass Du mit Deiner Lösung zufrieden bist. :D

LG
Stefan
Ich übernehme keine Haftung für von mir gegebene Antworten, Tipps und veröffentlichte Projekte! Jeder ist für sich selbst verantwortlich! Arbeiten an 230V sind von einer Elektrofachkraft auszuführen!

Homematic in Betrieb seit 15.08.2015, > 60 HM-Komp. | 3x USV APC ES400 | Visualisierung auf ioBroker | Audio: Home24-Apps

Raspberrymatic auf DS923+ in VMM (Produktivsystem1)
Rollläden, SSD, Wetter, Logging, Licht, RM, Sonos, Shelly

Raspberrymatic auf DS923+ in VMM (Produktivsystem2 )
Erweiterung GMA, Heizung, Licht, Shelly, SSD, Sonos

>100 Shelly-Geräte an Homematic | CCU2 endgültig in Rente | 3 Raspis als Rückfallebene für Raspimatic und ioBroker

Shelly an Homematic | Infrarot-Heizungssteuerung | Fensteröffnungszeit überwachen

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“