Element deaktivieren

Ich würde gerne entsprechend einer Variable ein anderes Element deaktivieren/aktivieren.
Konkrekt: Das Öffnen und Schließen meines Garagentores läuft über IFTTT. Ebenso bekomme ich den Status über IFTTT zurück. Jetzt würde ich gerne den „Öffnen“ Button deaktivieren wenn das Tor den Status „Offen“ hat. Und den Button „Schließen“ deaktivieren, wenn das Tor zu ist.
Über Visuelle Einstellungen geht das leider nicht. Brauch ich dafür ein Profil?

Kannst Du mal einen Screenshot vom entsprechenden Teil im Objektbaum machen bzw. der Ansicht im Webfront, Ich kann mir das nicht so genau vorstellen. Ich nehme mal an Du willst eine Variable mit der Du zwischen Öffnen und Schließen wechseln kannst die sich abhängig von der Rückmeldung aus IFTTT passend aktualisiert?

Die Änderung der Variable und die Anzeige mit „Geöffnet“ und „Geschlossen“ Funktioniert. Es ist aber so, dass ich für für das Öffnen und das Schließen zwei Buttons habe. Der eine öffnet, der andere schließt. Ich würde halt gerne den jeweils einen Button ausblenden bzw. deaktivieren.
Außerdem ist der Beitrag im falschen Bereich gelandet. Wollte es in „WebFront“ und nicht in „WebFront Skins“

Ah ich verstehe, in dem Fall würde ich persönlich die 3 Buttons zu einem zusammen fassen, aber das ist Geschmacksache.
Dazu legst Du Dir ein Dummy Modul an. Unterhalb des Dummy Moduls legst Du eine Variable an vom Typ Boolean und weist diesem ein Varibalenprofil zu entweder ein eigenes oder so was wie z.B. ~Lock.Dann erzeugst Du noch ein Aktionskript. Je nachdem ob ~Lock oder ~Lock.Reversed zugewiesen ist musst Du dann das Aktionskript anpassen.

Zum Schalten der eigentlichen Befehle im Aktionskript nutzt Du dann RequestAction der Wert ist 0 bei dem IFTTT Trigger.
Bei der Variable die Dein Status aktualisiert legst Du ein Ereignis drauf bei Variablenänderung, dann soll sich Deine neue Variable auf den passenden Status ändern. Dann hast Du am Schluss eine Variable die sowohl Auf/Zu schalten kann als auch gleich den passenden Status anzeigt. Die Dummy Instanz kannst Du dann in den Webfront verlinken und den Rest bei ausblenden wenn Du es nicht mit 3 Buttons nutzen willst.

Das ist eine gute Idee. Einfach einen Trigger einbauen, der je nach Wert der Statusvariable das Tor öffnet oder schließt. Der Wert für den Status kommt ja von IFTTT. Meldet der Schalter am Tor „ich bin zu“, dann erhält die Variable in update. Ebenso bei offen. Somit stimmt der Zustand immer, egal wer oder was das Tor öffnet (App am Handy, physischer Schlüssel, Taster in der Garage oder sogar die Notentriegleung).
Ich werde mich daran versuchen :wink:
Vielen Dank, hätt ich auch selber drauf kommen können.

Ich weiß nicht ob ich es so gemacht hab, wie du gemeint hast, aber es funktioniert jetzt so, wie ich es möchte.
Bei dem Button hab ich mir das IFTTTButton profil geliehen. Bei den IFTTT WebHooks dann ein Ereignis bei Aktualisierung (Änderung hat nicht funktioniert weil der Button nur den Wert 0 annehmen kann, aber Aktualisierung geht) eingefügt, den Wert von „Staus“ abgefragt damit der richtige Trigger ausgelöst wird.
Geht Gut :slight_smile:

Wenn es so funktioniert wie Du möchstest dann ist ja gut, wie man das darstellen will, ist höchst individuell und da hat jeder andere Wünsche.

Ich hatte gemeint als Option das in einer Variable zu vereinen, ob Dir das vom Aussehen liegt, must Du wissen. Zumindest passt dann auch das Icon zum Zustand der Garage wenn Du dort ein passendes Varibalenprofil wählst. Du würdest dann sobald Du ein Zustand über IFTTT bekommst eben die Variable über ein Ereigniss den passenden Wert zuweisen, so kannst Du mit einer Variable sowohl schalten und bekommst auch den Zustand angezeigt.
Normalerweise ist das alles nicht so kompliziert, aber im Fall von IFTTT hast Du halt zwei Variablen für das schalten und eine weitere Variable, die Dir den Zustand zurückgibt.

Sieht bei einer Boolean Variable dann z.B. so aus
garage_closed.png
garage_open.png

Das wäre das Variablenprofil

und das das Aktionskript


<?php

//Dokumentation: https://www.symcon.de/service/dokumentation/konzepte/skripte/aktionsskripte/
SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
if($_IPS['SENDER'] == 'WebFront' || $_IPS['SENDER'] == 'VoiceControl')
{
    if($_IPS['VALUE'])
    {
        RequestAction(12345, 0); // IFTTT Trigger schließen Objekt ID 12345 anpassen
        IPS_LogMessage( "Garage:" , "Garage wird geschlossen" );
    }
    else{
        RequestAction(23456, 0); // IFTTT Trigger öffnen Objekt ID 23456 anpassen
        IPS_LogMessage( "Garage:" , "Garage wird geöffnet" );
    }
}

Danke. Werde ich mir mal ansehen. Wäre dann so wie beim Nuki. Nur hab ich da die Beschriftung geändert, bzw. das Profil kopiert. Die Beschriftung war da etwas verwirrend. Es wurde/wird nicht die Aktion beschrieben, die ausgeführt wird, sondern der Status. Wollte man aufsperren, musste man auf „Aufsperren“ klicken, obwohl der aktuelle Status „Zusperren“ aktiv war. Und umgekehrt. Wenn man den Status beschreibt, also „Aufgesperrt“ und „Zugesperrt“ ist das meiner Meinung nach verständlicher. Oder „Offen“ und „Zu“.

Funktioniert sehr gut. Danke. Hab gar nicht viel ändern müssen.