Ich habe eine Modbusadresse mit einer dazugehörigen „Boolean“ Variable.
Diese Variable kann ich über das Webfront „Ein“ und „Ausschalten“. Alles kein Thema. Jetzt möchte ich diese Variable auch über einen IR-Trans Befehl schalten. Also, entweder setzen durch das Webfront ODER den IR-Trans Befehl. Wie muß dieses Script aussehen? Der Ir-Trans Befehl kommt ja nur für einen kurzen Augenblick, übers Webfront setzt man dauerhaft die Variable
Hi,
im Prinzip ist es egal ob du per Webfront oder per Fernbedienung schaltest. Wie weit bist du denn? Steuerst du sonst schon was über IR-Trans? Hat das Gerät das du steuern möchtest eine eigene IR Fernbedienung?
Das ganze schaltet eine modbusadresse in der wago. Dies löst dort eine jalousieszene aus. Allerdings muss der wert eins sein. Darum geht es. Der irtrans Befehl ist ja nur kurz. Das Script soll dauerhaft die variable auf eins setzen bis entweder ein Impuls vom irtrans kommt ODER über das webfront!
hab mich mal hier dran versucht. Allerdings zickt das Script rum.
Egal welcher Wert an 42399 anliegt, der 17267 wird immer auf True gesetzt. Egal ob taste0, taste6 oder nur ein „t“ dort steht.
Was mach ich falsch?
<?
$taste = GetValueString(42399 /[IR-Trans\Button]/); //taste wird ausgelesen
if ($taste == „taste9“);
{
SetValueBoolean(17267 /[IR-Trans est]/, True);
}
OK, hab das mit dem Skript jetzt soweit auf die Reihe bekommen. Sieht jetzt so aus.
Jetzt kommt das nächste Problem. Die Modbusadresse hat ja eine Variable die übers Webfront geschaltet wird. AN oder AUS. Schalte ich jetzt die Variable übers Webfront ein, kann ich sie nicht mehr übers Script, also über einen IR-Befehl ausschalten. Es kommt immer die Meldung das die Variable nur gelesen werden kann. Aber übers Webfront kann ich sie doch auch verändern. Wie kriege ich das jetzt am einfachsten gelöst, so das ich per Webfront oder per IR-Transbefehl eine Variable EIN oder AUSschalten kann. Das kann doch nicht so kompliziert sein.
<?
$taste = GetValueString(42399 /[IR-Trans\Button]/); //taste wird ausgelesen
$status = GetValueBoolean(20312 /[Rolladen\Scenen\Wohn u. Esszimmer Scene Aktivieren\Value]/); //Abfrage ob Szene AN oder AUS
if ( $taste == „taste9“)
{
SetValueBoolean(20312 /[Rolladen\Scenen\Wohn u. Esszimmer Scene Aktivieren\Value]/, True);
}
if ($taste == „taste0“ and $status == „True“ )
{
SetValueBoolean(20312 /[Rolladen\Scenen\Wohn u. Esszimmer Scene Aktivieren\Value]/, False);
}
Hi, das Script funzt ja wenn ich eine testvariable verändern lasse. Aber die variable die ich im Skript habe lässt sich nicht verändern da der Fehler kommt: variable kann nur gelesen werden s.o.!