Anfänger steht total auf dem Schlauf

Hallo Forum-Gemeinde,

ich bin noch ein blutiger Anfänger was IPS angeht. Ich verwende IPS 3 mit einer HM CCU1 und diversen Aktoren und Sensoren.

Ich wollte heute zum ausprobieren mal eine einfach If schleife erstellen.

Sie soll meinen Aussenbewegungsmelder abfragen und wenn er eine bewegung erkannt hat soll ein aktor für 5 Minuten geschaltet werden.

Leider bekomm ich die Abfrage nicht hin. Ich hatte mir das foldendermaßen gedacht

if (12190 /[Aussenbereich\PIG HT]/ == true );
{
HM_WriteValueFloat(38718 /[Aussenbereich\Aussenlicht Haustüre]/, „ON TIME“, 5);
HM_WriteValueBoolean(38718 /[Aussenbereich\Aussenlicht Haustüre]/, „State“, true);
}

Wo liegt mein fehler?

Schonmal vielen Dank für eure Hilfe!!

Hallo,

das sieht doch schon ganz gut aus. Wäre gut gewesen, wenn Du die Fehlermeldung gepostet hättest.

Nimm mal das Semikolon hinter der IF-Abfrage weg. Bei ON_TIME scheint der „_“ zu fehlen. Ich weiß im Moment nicht, ob die Befehle bei HM Case-Sensitive sind. „STATE“ geht auf jeden Fall…


if (12190 /*[Aussenbereich\PIG HT]*/ == true )
{
HM_WriteValueFloat(38718 /*[Aussenbereich\Aussenlicht Haustüre]*/, "ON_TIME", 5);
HM_WriteValueBoolean(38718 /*[Aussenbereich\Aussenlicht Haustüre]*/, "STATE", true);
}

Gruß
Walter

Upps, 5 Minuten wären 5*60, nicht 5. Sonst blinkt’s nur kurz :smiley:

Hallo,

Ich geh mal davon aus das Du das GetValue vergessen hast:

if (GetValue(12190) /*[Aussenbereich\PIG HT]*/ == true )
{
HM_WriteValueFloat(38718 /*[Aussenbereich\Aussenlicht Haustüre]*/, "ON TIME", 5);
HM_WriteValueBoolean(38718 /*[Aussenbereich\Aussenlicht Haustüre]*/, "State", true);
}

Link

Gruß
Attain

Und das von Walter beschriebene muss rein

Nur das geht !

http://www.ip-symcon.de/service/dokumentation/modulreferenz/homematic/
http://www.ip-symcon.de/service/dokumentation/modulreferenz/homematic/hm-writevalueboolean/

Gruß
Bruno

Schon mal vielen Dank für eure Hilfe.

Wenn ich das richtig verstanden gab kann ich mit GetValue jede Art von Variable Abfragen oder? Egal ob ob es eine Komponente von HM, FS20 oder eine interne IPS Variable ist…

genau so ist es:


$wert = gevalue ($id);
$wert_float = getvaluefloat ($id);
$wert_integer = gevalueinteger ($id);
$text = getvaluestring($id);

usw…

Vielen Dank für eure Hilfe. Inzwischen fuktionierts dank eurer Hilfe!!

Nach dem ich das erste Problem dank eurer Hilfe lösen konnte, steh ich schon vor dem nächten Rätsel.

Es geht sich um einen Wired Rolladenaktor von HM

Ich hab folgendem Befehl in ein Skript gepackt um das gante mal zu probieren. Wenn ich dann auf ausführen geh, fährt der Rolladen auch, aber nicht auf 40% offen so wie ich das gerne hätte sondern auf 100% offen .

HM_WriteValueFloat(17692 /*[Rolladen\Essen\Rolladen Essen]*/, "LEVEL", 40);

Was mach ich hier falsch?

Hab selbst kein HM aber die Suche fuehrt mich hier hin.
http://www.ip-symcon.de/forum/threads/22065-Rolladen?p=201311#post201311

Manchmal sieht man den Wald vorlauter Bäume nicht!! Vielen Dank jetzt funktioniert!!:slight_smile: