1. Waschmaschine
Ein Programm dient mir zur Meldung, dass die Waschmaschine geleert werden kann bzw. geleert oder ausgeschaltet wurde.
Die zugehörigen Skripte:
Code: Alles auswählen
! Meldung Waschmaschine ausgeschaltet bzw. geleert
! Version 2.1, Autor: dtp
! Namen der verwendeten Systemvariablen
string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch
string svPushPrio = "CCU SV Push Prio"; ! gem. zPNS-xx, obligatorisch
string svPushoverSound = "CCU SV Pushover Sound"; ! gem. zPNS-Po, optional
! Name des zentralen Push-Nachrichten-Programms
string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch
! #####################################################################
! ##### ab hier bitte keine weiteren Einstellungen mehr vornehmen #####
! #####################################################################
! +++++ Deklaration weiterer Variablen +++++
string message;
! +++++ Setzen der Priorität für die Push-Nachricht +++++
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushPrio)).State("-1");
! +++++ Sound für Pushover-Nachricht
if(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushoverSound)){(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushoverSound)).State("none");}
! +++++ Erzeugen der Nachricht +++++
message = "Waschmaschine ausgeschaltet bzw. geleert.";
! +++++ zPNP ausführen +++++
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText)).State(message);
(dom.GetObject(ID_PROGRAMS).Get(zPNP)).ProgramExecute();
Code: Alles auswählen
! Meldung Waschmaschine leeren
! Version 2.2, Autor: dtp
! Namen der verwendeten Systemvariablen
string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch
string svPushPrio = "CCU SV Push Prio"; ! gem. zPNS-xx, obligatorisch
string svPushoverSound = "CCU SV Pushover Sound"; ! gem. zPNS-Po, optional
! Name des zentralen Push-Nachrichten-Programms
string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch
! #####################################################################
! ##### ab hier bitte keine weiteren Einstellungen mehr vornehmen #####
! #####################################################################
! +++++ Deklaration weiterer Variablen +++++
string message;
! +++++ Setzen der Priorität für die Push-Nachricht +++++
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushPrio)).State("0");
! +++++ Sound für Pushover-Nachricht
if(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushoverSound)){(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushoverSound)).State("bike");}
! +++++ Erzeugen der Nachricht +++++
message = "<font color=orange>Waschmaschine leeren!</font>";
! +++++ zPNP ausführen +++++
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText)).State(message);
(dom.GetObject(ID_PROGRAMS).Get(zPNP)).ProgramExecute();
Ein weiteres Programm verwende ich für das Setzen einer entsprechenden Systemvariablen, mit der ich mir unter VIS den aktuellen Betriebszustand der Waschmaschine anziegen lasse.
Wie man sieht, sind die Schwellen in den beiden Programmen zum Teil unterschiedlich. Das ist aber so gewollt. Wichtig ist die Reihenfolge der Bedingungen. So ist grundsätzlich mit der niedrigsten Schwelle anzufangen, da die Programme bei Erfüllung einer Bedingung komplett von oben nach unten abgearbeitet werden. Um Mehrfachmeldungen zu unterdrücken, habe ich teilweise eine Verzögerung von einer Minute vorgesehen.
2. Trockner
Das gleiche Szenario gibt es auch für den Trockner, jedoch mit abweichenden Schwellwerten. Die Skripte unterscheiden sich durch die obigen Waschmaschinen-Skripte lediglich durch das Wort "Trockner". Daher poste ich sie hier nicht noch mal.
Gruß,
Thorsten