NEWS
Test Adapter rest-api
-
@david-g sagte in Test Adapter rest-api:
Bei mir klappt es mit
http://192.168.xx.xx.xx:8093/v1/state/sonoff.0.steckdose_esszimmer.POWER/plainja, hab ich ja oben geschrieben.
-
Aktuelle Test Version 0.3.1 Veröffentlichungsdatum 15.04.2022 Github Link https://github.com/ioBroker/ioBroker.rest-api 
Der Adapter wird simple-api ersetzten. Die Vorteile gegenüber simple-api sind:- GUI
- long polling für die Subscriptions
- URL hooks für Subscriptions
Die neue Features erlauben sofortige Benachrichtigung über die Ereignisse.
Falls jemand swagger.json lesen will und vor allem - kann, bitte hier: https://github.com/ioBroker/ioBroker.rest-api/blob/master/lib/api/swagger/swagger.yaml
Aber es gibt unter http://ip:8093 eingebaute GUI
Der Adapter kann auch unter WEB Instanz laufen. Allerdings man braucht neuen js-controller (sonst kommen Fehlermeldungen, da js-controller versucht immer wieder die Instanz zu starten). Auch neue Admin Version wird benötigt um die Datenquelle auszuwählen.
Später werden simple-api und socket-io/ws umgebaut, dass die auch als web extension laufen.
Um als web extension den Adapter laufen zu lassen braucht man neuen Web Adapter. Also Web extension läuft nur mit neuesten Web, admin und js-controller. Die neueste Version von Js-controller existiert nicht mal...
@bluefox sagte in Test Adapter rest-api:
Falls jemand swagger.json lesen will und vor allem - kann, bitte hier: https://github.com/ioBroker/ioBroker.rest-api/blob/master/lib/api/swagger/swagger.yaml
Vielleicht sollte man da erwähnen, dass der Befehl ergänzt werden muss mit einem: .../v1/...
Denn im Text steht dies nicht.
-
@bluefox sagte in Test Adapter rest-api:
Falls jemand swagger.json lesen will und vor allem - kann, bitte hier: https://github.com/ioBroker/ioBroker.rest-api/blob/master/lib/api/swagger/swagger.yaml
Vielleicht sollte man da erwähnen, dass der Befehl ergänzt werden muss mit einem: .../v1/...
Denn im Text steht dies nicht.
-
@bahnuhr ich dachte, dass GUI selbsterklärend ist. Hat jemand das ausprobiert?
Und ja, jetzt verstehe ich, dass ich um die Beschreibung von Aufrufen nicht weg gehe
Ich meine folgendes:

Wenn ich dies lese müsste der Befehl doch lauten:
http://192.168.xxx.12:8093/state/...IDrichtig ist aber:
http://192.168.xxx.12:8093/v1/state/...IDUnd dieses v1 steht halt in der Beschreibung nicht.
-
@bahnuhr ich dachte, dass GUI selbsterklärend ist. Hat jemand das ausprobiert?
Und ja, jetzt verstehe ich, dass ich um die Beschreibung von Aufrufen nicht weg gehe
-
@Bluefox Und wie "bedient" man jetzt die Swagger-UI? Ich hatte mir vorgestellt, ich könnte Im Beispiel "get" hier eine stateId eintragen und der würde mir dann den richtigen Befehl zusammenstellen. Bei mir bleibt 'stateId' ausgegraut.
-
Man muss erst auf "Try it out" klicken. Dann kann man was eintragen.
Hab ich auch erst nicht gesehen. -
Kann mir hier jemand auf die Sprünge helfen? Ich teste gerade, Daten von einem esp an ioBroker via rest-api zu senden, und zwar mit User/Password. Hierzu muss ich ja auf den Objekten die ACL entsprechend dem User einstellen. Genau dies finde ich im Admin 5 leider nicht. Bei Objekt bearbeiten sehe ich nur COMMON und OBJEKTDATEN. Ist die ACL noch irgendwo versteckt?
-
Kann mir hier jemand auf die Sprünge helfen? Ich teste gerade, Daten von einem esp an ioBroker via rest-api zu senden, und zwar mit User/Password. Hierzu muss ich ja auf den Objekten die ACL entsprechend dem User einstellen. Genau dies finde ich im Admin 5 leider nicht. Bei Objekt bearbeiten sehe ich nur COMMON und OBJEKTDATEN. Ist die ACL noch irgendwo versteckt?
@rene55 sagte in Test Adapter rest-api:
Ist die ACL noch irgendwo versteckt?
Expertenansicht anschalten, dann siehst Du pro Objekt eine Spalte mehr. Auf die aktuelle Berechtigung klicken und ändern.
-
@rene55 sagte in Test Adapter rest-api:
Ist die ACL noch irgendwo versteckt?
Expertenansicht anschalten, dann siehst Du pro Objekt eine Spalte mehr. Auf die aktuelle Berechtigung klicken und ändern.
@haus-automatisierung Danke Matthias. Ich hab die Expertenansicht an. Ich seh sie einfach nicht. :lying_face:
-
@haus-automatisierung Danke Matthias. Ich hab die Expertenansicht an. Ich seh sie einfach nicht. :lying_face:
-
Was soll mir denn der Parameter 'withInfo=true' sagen? Und mit welchem Parameter kann ich das ACK auf true setzen?
Ergänzung: Ich habs nach Anleitung mit '{"val": 1, "ack": true}' versucht, klaptt aber nicht. Der Wert kommt zwar an, wird aber nicht bestätigt. Hab ich die Anleitung nicht richtig verstanden?
-
-
Ich kriegs einfach nicht hin. :anguished: Kann mir jemand ein Beispiel aufzeigen, in dem ich einen Datenpunkt bestätigt und mit User/Password mit Daten beschicken kann? Mit dem 'simple_api' hab ichs hinbekommen - mit der rest-api leider nicht.
@rene55 sagte in Test Adapter rest-api:
Kann mir jemand ein Beispiel aufzeigen, in dem ich einen Datenpunkt bestätigt und mit User/Password mit Daten beschicken kann?
So wie ich das sehe, kann man momentan nicht direkt "ack=true" mitgeben.
-
@rene55 sagte in Test Adapter rest-api:
Kann mir jemand ein Beispiel aufzeigen, in dem ich einen Datenpunkt bestätigt und mit User/Password mit Daten beschicken kann?
So wie ich das sehe, kann man momentan nicht direkt "ack=true" mitgeben.
@haus-automatisierung Danke für die Mühe, mir helfen zu wollen. Dann robb ich mich mal ohne ACK ran. Ich habs gerade nochmal auf 'ohne Alles' zurück gestellt. Heist keine Authentifizierung und kein https. Dann funktioniert 'http://192.168.68.170:8093/v1/command/setState?id=0_userdata.0.Sensor.Serialino.Sensor_7&state=17' zumindest. Nehme ich wieder die Authentifizierung hinzu, bekomme ich einen "permissionError". Rechte vom Datenpunkt entsprechend angepasst. Ich hoffe, ich bin hier auf dem richtigen Weg - oder?
-
@haus-automatisierung Danke für die Mühe, mir helfen zu wollen. Dann robb ich mich mal ohne ACK ran. Ich habs gerade nochmal auf 'ohne Alles' zurück gestellt. Heist keine Authentifizierung und kein https. Dann funktioniert 'http://192.168.68.170:8093/v1/command/setState?id=0_userdata.0.Sensor.Serialino.Sensor_7&state=17' zumindest. Nehme ich wieder die Authentifizierung hinzu, bekomme ich einen "permissionError". Rechte vom Datenpunkt entsprechend angepasst. Ich hoffe, ich bin hier auf dem richtigen Weg - oder?
@rene55 Du brauchst zuerst eine Authorization (deswegen Permission Error)
echo -n username:passwort | base64Da kommt dann bspw. dabei raus
dXNlcm5hbWU6cGFzc3dvcnQ=
Die ist dann immer für die Kombination aus User+Passwort gültig.Dann nur noch
curl -kX 'GET' 'https://192.168.68.170:8093/v1/command/setState?id=0_userdata.0.example_state&state=test' -H 'accept: application/json' -H 'authorization: Basic dXNlcm5hbWU6cGFzc3dvcnQ=' -
@rene55 Du brauchst zuerst eine Authorization (deswegen Permission Error)
echo -n username:passwort | base64Da kommt dann bspw. dabei raus
dXNlcm5hbWU6cGFzc3dvcnQ=
Die ist dann immer für die Kombination aus User+Passwort gültig.Dann nur noch
curl -kX 'GET' 'https://192.168.68.170:8093/v1/command/setState?id=0_userdata.0.example_state&state=test' -H 'accept: application/json' -H 'authorization: Basic dXNlcm5hbWU6cGFzc3dvcnQ='@sborg Vielen Dank für das Beispiel. Bei mir funktioniert das einfach nicht. Grundsätzlich bekomme ich den Datenpunkt beschrieben - solange kein Benutzer im Spiel ist. Das einfache Absetzen des Befehls in der Console (natürlich mit angepasstem Hash) bringt mir den Fehler:
curl: (7) Failed to connect to 192.168.68.170 port 8093: No route to host.Ich gebs auf. Evtl muss noch etwas Zeit ins Land gehen, bevor ich das ans Laufen kriege. Solange werde ich mit SimpleAPI weitermachen. Da kann ich die Anfrage direkt vom Browser aus testen, habe user/password und kann den Status bestätigen. Möglicherweise muss mich @Bluefox hier noch etwas unterstützen.
-
@sborg Vielen Dank für das Beispiel. Bei mir funktioniert das einfach nicht. Grundsätzlich bekomme ich den Datenpunkt beschrieben - solange kein Benutzer im Spiel ist. Das einfache Absetzen des Befehls in der Console (natürlich mit angepasstem Hash) bringt mir den Fehler:
curl: (7) Failed to connect to 192.168.68.170 port 8093: No route to host.Ich gebs auf. Evtl muss noch etwas Zeit ins Land gehen, bevor ich das ans Laufen kriege. Solange werde ich mit SimpleAPI weitermachen. Da kann ich die Anfrage direkt vom Browser aus testen, habe user/password und kann den Status bestätigen. Möglicherweise muss mich @Bluefox hier noch etwas unterstützen.
@rene55 sagte in Test Adapter rest-api:
Das einfache Absetzen des Befehls in der Console (natürlich mit angepasstem Hash) bringt mir den Fehler:
Die IP-Adresse stimmt ganz sicher? Protokoll auch?
