Hallo,
erstmal Vielen Dank für die ganze Hilfe.
Ich konnte mein Vorhaben mit diesem Skript umsetzen,
es funktioniert auch.
Aber…
Nach 30min ein paar mal Ausprobieren bekomme ich Fehlermeldungen.
Und mal funktionieren die Skripte und mal nicht…
Kann mir wer vielleicht helfen, ob ich die Skripte zu umständlich gestalte?
Dieses Skript soll die Heizung auf 17°C einstellen und nach 7Stunden wieder auf 19°C wieder hochfahren.
<?
//Thermostat Büro
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(50015 /*[Hardware\Thermostate\Thermostat Büro]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(50015 /*[Hardware\Thermostate\Thermostat Büro]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Wohnzimmer
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(56231 /*[Hardware\Thermostate\Thermostat Wohnzimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(56231 /*[Hardware\Thermostate\Thermostat Wohnzimmer]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Küche
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(10662 /*[Hardware\Thermostate\Thermostat Küche]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(10662 /*[Hardware\Thermostate\Thermostat Küche]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Gäste WC
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(46128 /*[Hardware\Thermostate\Thermostat Gäste WC]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(46128 /*[Hardware\Thermostate\Thermostat Gäste WC]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Flur
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(43624 /*[Hardware\Thermostate\Thermostat Flur]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(43624 /*[Hardware\Thermostate\Thermostat Flur]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Hannah Zimmer
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(59159 /*[Hardware\Thermostate\Thermostat Zimmer Hannah]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(59159 /*[Hardware\Thermostate\Thermostat Zimmer Hannah]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Schlafzimmer
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(46224 /*[Hardware\Thermostate\Thermostat Schlafzimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(46224 /*[Hardware\Thermostate\Thermostat Schlafzimmer]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Kinderzimmer 2 Nähzimmer
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(47094 /*[Hardware\Thermostate\Thermostat Kinderzimmer 2 Nähzimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(47094 /*[Hardware\Thermostate\Thermostat Kinderzimmer 2 Nähzimmer]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
//Thermostat Badezimmer
if($_IPS['SENDER'] == "TimerEvent")
{
//Aus Befehl
HM_WriteValueFloat(21177 /*[Hardware\Thermostate\Thermostat Badezimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Timer ausschalten
IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
//An Befehl
HM_WriteValueFloat(21177 /*[Hardware\Thermostate\Thermostat Badezimmer]*/,"SET_TEMPERATURE", 17.0);
//Timer anschalten
IPS_SetScriptTimer($_IPS['SELF'], 25200);
}
?>
Diese Skript soll den Timer abstellen und die Heizung auf 19°C einstellen.
<?
IPS_SetScriptTimer($_IPS['SELF'], 0);
//Büro
HM_WriteValueFloat(50015 /*[Hardware\Thermostate\Thermostat Büro]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Badezimmer
HM_WriteValueFloat(21177 /*[Hardware\Thermostate\Thermostat Badezimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Flur
HM_WriteValueFloat(43624 /*[Hardware\Thermostate\Thermostat Flur]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Gäste WC
HM_WriteValueFloat(46128 /*[Hardware\Thermostate\Thermostat Gäste WC]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Nähzimmer
HM_WriteValueFloat(47094 /*[Hardware\Thermostate\Thermostat Kinderzimmer 2 Nähzimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Küche
HM_WriteValueFloat(10662 /*[Hardware\Thermostate\Thermostat Küche]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Schlafzimmer
HM_WriteValueFloat(46224 /*[Hardware\Thermostate\Thermostat Schlafzimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Wohnzimmer
HM_WriteValueFloat(56231 /*[Hardware\Thermostate\Thermostat Wohnzimmer]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
//Hannah
HM_WriteValueFloat(59159 /*[Hardware\Thermostate\Thermostat Zimmer Hannah]*/,"SET_TEMPERATURE", 19.0);
SetValueBoolean(58234 /*[Skripte\Thermostat\Abwesenheit\Schalter Abwesenheit Thermostate]*/, false);
?>
Ich hoffe ihr könnt mir helfen.
Gruß Matthias