ioBroker Simple-API Adapter

ioBroker Simple-API Adapter

In diesem Artikel zeige ich Dir die Möglichkeiten der Nutzung des Simple-API Adapters. Mit dem Simple-API Adapter kann einfach und schnell ein lesender oder schreibender Zugriff auf die Datenpunkte von ioBroker geschaffen werden. Gerade in Verbindung mit anderen Diensten oder smarten IOT Geräten sind hier viele verschiedene Szenarien der Nutzung denkbar. In dem Beispiel zeige ich, wie externe Sensoren über diese API an ioBroker angebunden werden können. Der Adapter stellt für den Zuriff einen extra HTTP-Zugriff via GET und POST zur Verfügung.

Im ersten Schritt installieren wir zunächst den Adapter über die Administrationsoberfläche.

Nach dem der Adapter installiert wurde können wir den Adapter konfigurieren. In der Konfiguration können wir den verwendeten Web-Adapter, die IP, sowie den Port anpassen. Zudem stehen Optionen zur Verschlüsselung und Authentifizierung zur Auswahl. In meinem Beispiel habe ich alle Einstellungen des Adapters so belassen, der Webservice sollte uns jetzt somit auf dem HTTP-Port 8087 zur Verfügung stehen.

Um im ersten Schritt jetzt die Erreichbarkeit und somit Funktionalität des Adapters testen zu können, rufen wir die integrierte Hilfe-Funktion des Adapters auf. Diese gibt uns ein JSON-String im Webbrowser mit den verschiedenen Möglichkeiten des Adapters zurück:

Mit folgendem Aufruf erhalten wir die Ausgabe:

http://10.50.1.11:8087/help
Als IP-Adresse wird die ioBroker IP-Adresse sowie der eingestellte Port im Simple-API Adapter verwendet.

{
  "getPlainValue": "http://192.168.2.90:8087/getPlainValue/stateID",
  "get": "http://192.168.2.90:8087/get/stateID/?prettyPrint",
  "getBulk": "http://192.168.2.90:8087/getBulk/stateID1,stateID2/?prettyPrint",
  "set": "http://192.168.2.90:8087/set/stateID?value=1&prettyPrint",
  "toggle": "http://192.168.2.90:8087/toggle/stateID&prettyPrint",
  "setBulk": "http://192.168.2.90:8087/setBulk?stateID1=0.7&stateID2=0&prettyPrint",
  "setValueFromBody": "http://192.168.2.90:8087/setValueFromBody?stateID1",
  "objects": "http://192.168.2.90:8087/objects?pattern=system.adapter.admin.0*&prettyPrint",
  "states": "http://192.168.2.90:8087/states?pattern=system.adapter.admin.0*&prettyPrint"
}

Für unser Beispiel habe ich zusätzliche Datenpunkte in meinen eigenen Datenpunkten definiert. Der folgende Screenshot veranschaulicht die Datenpunkte:

Datenpunkte verändern
Mit dem folgenden Aufruf können wir über einen HTTP-Aufruf einen Datenpunkt verändern.

http://10.50.1.11:8087/set/Datenpunkte.0.Sensordata.Outdoor2.Temperatur?value=20

Datenpunkte auslesen (kompletter Datenpunkt)
Mit dem folgenden Aufruf können wir einen kompletten Datenpunkt im JSON-Format über einen HTTP-Aufruf auslesen.

http://10.50.1.11:8087/get/Datenpunkte.0.Sensordata.Outdoor2.Temperatur

Datenpunkte auslesen (kompletter Datenpunkt)
Mit dem folgenden Aufruf können wir einen einzelnen Wert (PlainValue) des Datenpunktes auslesen und zurückgeben.

http://10.50.1.11:8087/getPlainValue/Datenpunkte.0.Sensordata.Outdoor2.Temperatur
Weitere Aufruf-Möglichkeiten der HTTP-API

  • Toggle
    Umschalten eines Wert (Logischer Wert true -> false, false -> true)
  • setBulk
    Setzen mehrer Datenpunkte mit einem HTTP-Aufruf
  • objects
    Gibt alle Objekte mit dem übergebenen Namen zurück

Content retrieved from: https://www.smarthome-tricks.de/software-iobroker/iobroker-simple-api-adapter/.

Comments are closed.

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑