Icons für Szenen

Hallo,
es gibt ja jede Menge interessanter Icons für bspw. unterschiedlich Zustände von was auch immer. Garagentor zu, halb offen, offen. Waschmaschine an, aus, fertig und und und
Aber wie kann ich diese Icons denn bspw. in einer Szene für die Waschmaschine nutzen?
Danke!

Hi,

möchtest Du ein Icon je Szene setzen oder das Szenen-Icon in Abhängigkeit von xy laufend vetändern?

In VD ist das Wechseln in Abhängigkeit von xy einfach/möglich.

Viele Grüße Hoggle

Aufgrund Driner Frage im anderen Post:
Versuche mal das:
http://forum.fibaro.com/index.php?/topic/17591-how-i-get-the-selected-icon-of-a-relay-switch-with-lua/?p=65532

Ich habe aktuell dem Raum Waschküche die Szene “Trockner” zugeordnet. (Seitdem ich nun auch den richtigen Wert gesetzt habe, bekomme ich nur noch eine Benachrichtigung im Nachlauf des Trockners). Jetzt wäre es natürlich schick, wenn das Icon für die Szene sich entsprechend dem Zustand ändern würde. Drei Zustände schweben mir vor: Trockner läuft, trockner ist fertig/im Nachlauf, Trockner ist aus. Das gleiche dann natürlich für die Waschmaschine.
Kann ich das mit den Icons in der Szene einstellen oder muss ich ein virtuelles Device erstellen? Dann wäre es aber wohl sinnvoll, die Szene aus der Übersicht zu nehmen, sonst wird´s doch etwas unübersichtlich…
Den verlinkten Artikel versteh´ ich irgendwie net ganz… sorry.
Danke!
P.S.: ich hatte zwei Beiträge eingestellt, weil der erste nach über einer Stunde noch nicht als eingstellet erkennbar war. Der Server hatte wohl ein Hängerchen … :wink:

Das ist der Code mit dem du das Icon in einer Szene ändern kannst. Anders geht es leider nicht.

    --[[
    %% properties
     
    %% globals
    --]]
     
    local function putMethod(requestUrl, data, successCallback, errorCallback)
      
      local http = net.HTTPClient()
      http:request(requestUrl, {
          options = {
            method = 'PUT',
            data = data
          },
          success = successCallback,
          error = errorCallback
      })
    end
     
    local url = 'http://127.0.0.1:11111/api/devices/49' -- fill the url here
    local data = '{"properties":{"deviceIcon":1001}}'
     
     
    putMethod(url, data, function(resp)
        print('Status: ' .. resp.status)
      end, 
        
      function(err)
        print('error' .. err)
      end
    )

Wie du das deviceIcon ermittelst findest du hier:

http://www.siio.de/connected-home/kleine-lua-scripte-teil-7-online-status-abpruefen/

Gruß

Puh, ich weiß noch nicht so recht, wie ich das zu lesen habe.
Ich verstehe, dass etwas (eine URL) agefragt wird. Dafür gibt es dann entweder success oder error. Und dann wird was ausgegeben, abhängig vom Ergebnis. Aber so wie ich das verstehe gibt es nur zwei Zustände, so dass ich nicht drei Icons nutzen könnte.
Sorry, bin in LUA echt noch blutiger Anfäger.

Es kommt nicht auf die Antwort des PUT-HTTP an, sondern was du in die API für ein deviceIcon einfügst. Dieses definierst du in Zeile 21. Dort könntest du dann deine 3 Icons jeweils einfügen und abhängig vom Status deiner Waschmaschine setzen.

Ist schon fortgeschrittener Code :wink:

Gruß

Hi Knallfrosch,

meintest Du wirklich eine Szene oder ein VD?
Wenn Du ein VD “Waschmaschine” hast, ist es leicht.
Aus dem oben genannten Link “http://www.siio.de/connected-home/kleine-lua-scripte-teil-7-online-status-abpruefen/” habe ich den relevanten Teil mal rauskopiert.

local icon1 = "179" -- ANPASSEN
  fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", icon1)

Natürlich musst Du das fibaro:call noch in Deine Bedingungen einbauen und entsprechend viele Icons hinterlegen.

Grüße
Mr.Coffee