API-Calls

Die API-Calls funktionieren mit dem HC2 und dem HCL:

Invert

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setValue&arg1=<VALUE>

ON / OFF

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=turnOn
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=turnOff

Rollos

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setValue&arg1=<VALUE>
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setAjar
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=stop

Fibaro RGB-Module

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=turnOff
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=turnOn
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setColor&arg1=<VALUE>&arg2=<VALUE>&arg3=<VALUE>&arg4=<VALUE>
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=startProgram&arg1=<PROGRAM ID>

Virtual module

ID = device ID
arg1 = button ID
arg2 = slider value (only for slider)

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=pressButton&arg1=<BUTTON ID>
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setSlider&arg1=<SLIDER ID>&arg2=<VALUE>

Scenes

http://<LOGIN>:<PASS>@<IP>/api/sceneControl?id=<SCENE ID>&action=start
http://<LOGIN>:<PASS>@<IP>/api/sceneControl?id=<SCENE ID>&action=stop

Danfoss Living Connect / Devolo

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setTargetLevel&arg1=<TEMP VALUE>
http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=setTime&arg1=<TIME VALUE>

Notifications
ID = Device (Iphone, e-mail et cetera)
arg1 = Notification template

http://<LOGIN>:<PASS>@<IP>/api/callActiondeviceID=9&name=sendDefinedPushNotification&arg1=1

Panel “Energy”

http://<LOGIN>:<PASS>@<IP>/api/energy/now-3600/now/single/devices/power/58

Hallo boomx,

danke für die API-Calls. Leider funktioniert der Aufruf für die Virtual Module nicht bei mir.Ist der Http Aufruf bei mir so richtig ?

http://192.168.xx.xx/api/callAction?deviceID=61&name=pressButton&arg1=Button42

Der Button im Virtual Modul wird leider nicht gedruckt. Im Browser erscheint nach absetzen des Befehls nur {}. Woran kann das liegen ?

Hi,

Button41 ist nicht die ID, sondern der Name. Die ID des Buttons kannst du über die API des HC2 herausfinden. Dort am Besten nach dem Button-Namen suchen.

Gruß

Hi,

danke für die Antwort, aber Button42 ist bei mir die ID und 61 ist die ID vom Virtual Device.
Oder ich versteh etwas ganz falsch :frowning:

Hier ein Screenshot

Screenshot-2016-12-28_21-25-26.png

Im Hintergrund zählt er das anders.
Nimm den Vorschlag von boomx mit der API.

Hi Hoggle,

ok danke werde ich machen, wie kann ich die Api aufrufen um dort nach der ID zu suchen ?

Hab den Syntax nicht bei der Hand.

Alternativ:
Erstelle Dir eine Blockszene, in der Du unter DANN den Button drückst und wandele das in LUA um.

http://IP-HC2/api/devices/61

Gruß

Danke ihr beiden für die Hilfe :slight_smile:

Hi,

ist es auch möglich Notifications mit benutzerdefinierten Texten zu versenden, also alternativ zu den Notification Templates, welche du oben genannt hat?

LG

Nein. Kann aber alternativ als LUA-Szene eingerichtet und dann über Start Scene genutzt werden.

Gruß

In die LUA-Szene kann ich doch aber auch keinen benutzerdefinierten Text übergeben?

Der Hintergrund:
Ich möchte über ein externes Programm, bei einem Ereignis eine Push-Nachricht über Fibaro verschicken und dann ggf. über den PopupService weitere Aktionen starten.

Gruß

Klar geht das. Hier auf siio findest du unendlich viele Beispiele, wo wir das nutzen. Bei meinem HC2 gibt es nicht eine vordefinierte Notification.

fibaro:call(ID, "sendPush", "TEXT", "push");

Gruß

Da hab ich dich wohl etwas falsch verstanden. Meine Pushs versende ich bisher auch mit fibaro:call und benutzerdefiniertem Text.

Ich benötige eben eine Möglichkeit Text von “außerhalb” (ein externes Programm), also über einen API-Call oder ähnliches an das HC2 zu übergeben, welches dann eine Push versendet.

Gruß

Hab ich doch oben geschrieben. Du legst dir eine Szene an und startest diese von außen mit

http://<LOGIN>:<PASS>@<IP>/api/sceneControl?id=<SCENE ID>&action=start

Gruß

Mit deiner Lösung bekomme ich aber doch auch keinen Text von extern in das HC2?

Was ich genau machen möchte:
Ich lade mir vom DWD eine Liste von Wetterwarnungen herunter und parse mir die entsprechenden Warnmeldungen meiner Region raus.
Dieser Vorgang wiederholt sich ständig in einem definierten Zeitintervall.

Wurden nun Warnungen für meine Region ausgegeben, soll eine Notification von Fibaro mit dem Text der Warnung gesendet werden, allerdings nur dann, falls sich die Warnungen aktualisiert haben (sonst würde ich ja ständig Notifications bekommen, auch wenn sich die nicht Warnungen nicht verändert haben).
Anschließend soll das triggern weiterer Aktionen/Szenen über den PopUpService laufen, sodass ich beispielsweise bei einer Sturmwarnung die Dachfenster schließen kann.

LG

Nein, das geht darüber nicht ^^

Es gibt allerdings fertige Lösungen, welche dies machen können.

Das hab ich mir schon fast gedacht :wink:

Was wären denn fertige Lösungen dafür?

Guten Rutsch übrigens noch :slight_smile:

Hallo,

ich habe bei meinem HC2 folgende Link getestet:

http://<LOGIN>:<PASS>@192.168.1.X/api/callAction?deviceID=99&name=turnOn
und auch
http://<user%40domain>:<PASS>@192.168.1.x/api/callAction?deviceID=99&name=turnOn

Ich bekommen aber egal was ich mache immer ein Login. Ich kann mich mit den angegebenen Daten jedoch normal am HC2 anmelden nur per API nicht.
Mache ich da einen Fehler?