Variable durch IRTRANS Befehl setzen

Hallo Leute,

folgendes Problem:

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 :frowning:

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?

mfg
Smudo

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!

dann leg doch ne booleanvariable an.
so nach dem motto

$taste = GetValueString(12345); //taste wird ausgelesen
if ($taste == 1)
{
SetValueBoolean(54321, True);
}

soll nur mal nen denkansatz sein.

cu.
uriel2006

OK,

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);
}

?>

Hallo,

mach mal das Semikolon am Ende der If Bedingung weg.

Gruß

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. :confused:

<?

$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);
}

?>

Versuch mal

if (($taste == "taste0") and ($status == "True" ))

Wobei die Abfrage nach dem Stauts dabei eigentlich egal sein sollte. Wenn du „aus“ drückst ist es aus, egal ob es vorher an war oder nicht.

mfg
Smudo

Es kommt immer die Meldung das die Variable nur gelesen werden kann.

Du kannst Systemvariablen nicht beschreiben, dazu musst Du dir Hilfsvariablen anlegen.

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.!