lokalne API urządzenia

User avatar
klew
Posts: 13911
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 136 times
Been thanked: 137 times

Post

API Clouda nie rozróżnia producentów urządzeń. Czy Sonoff, czy Zamel - jak jest tam przekaźnik np. do włączania światła, to wszędzie działa to tak samo.
Najlepsze suple dla Twojego domu :mrgreen:
roztropek
Posts: 24
Joined: Wed Nov 06, 2024 6:21 am

Post

pzygmunt wrote: Mon Nov 18, 2024 8:40 am Nie ma błędu w platformie/API. Coś źle robisz. Ustawiasz content type na "application/json" ?
wywołuje to w tym samym kodzie z tymi samymi nagłówkami co GET do SONOFFa. GET mi działa poprawnie. PATCH nie działa

var headers = {
HttpHeaders.authorizationHeader: tutaj nie podaje na forum z oczywistych powodów
HttpHeaders.acceptHeader: 'application/json',
};

czy możecie sprawdzić, ze dziala wywolanie z c lub java? moze problem jest z obsluga patch przez dart? nie uzywalem wczesniej tej funkcji REST API z tej biblioteki dart
[email protected]
Posts: 1586
Joined: Mon Feb 06, 2023 8:56 am
Has thanked: 18 times
Been thanked: 26 times

Post

roztropek wrote: Mon Nov 18, 2024 9:56 am
pzygmunt wrote: Mon Nov 18, 2024 8:40 am Nie ma błędu w platformie/API. Coś źle robisz. Ustawiasz content type na "application/json" ?
wywołuje to w tym samym kodzie z tymi samymi nagłówkami co GET do SONOFFa. GET mi działa poprawnie. PATCH nie działa

var headers = {
HttpHeaders.authorizationHeader: tutaj nie podaje na forum z oczywistych powodów
HttpHeaders.acceptHeader: 'application/json',
};

czy możecie sprawdzić, ze dziala wywolanie z c lub java? moze problem jest z obsluga patch przez dart? nie uzywalem wczesniej tej funkcji REST API z tej biblioteki dart
sprawdź wywołując to ze swaggera czy jakiegoś innego narzędzia jak Postman czy request o takim contencie przechodzi :P
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

roztropek wrote: Mon Nov 18, 2024 9:56 am czy możecie sprawdzić, ze dziala wywolanie z c lub java? moze problem jest z obsluga patch przez dart? nie uzywalem wczesniej tej funkcji REST API z tej biblioteki dart
Cloud-a nie interesuje to czy wywołujesz to z c, php, javy itd. Musisz być zgodny RestAPI.
Możesz to przetestować bezpośrednio z dokumentacji:
You do not have the required permissions to view the files attached to this post.
SUPLA.... Nareszcie w domu.
roztropek
Posts: 24
Joined: Wed Nov 06, 2024 6:21 am

Post

to chyba mam rozwiązanie, oby :)

to co testujesz to "action": "OPEN", wcześniej napisałeś jak niżej
czy jest też "CLOSE" ?

PATCH /channels/{id} z payloadem:
{
action: "TURN_ON"
}
lub
{
action: "TURN_OFF"
}
zmienia stan.
roztropek
Posts: 24
Joined: Wed Nov 06, 2024 6:21 am

Post

niestety dalej dostaje kod powrotu 403 :(

to co niżej dostaję z GET
{
"id": ******,
"channelNumber": 0,
"caption": null,
"type": {
"id": ****,
"name": "RELAY",
"caption": "Relay"
},
"function": {
"id": 130,
"name": "POWERSWITCH",
"caption": "On/Off switch",
"possibleVisualStates": [
"off",
"on"
],
"maxAlternativeIconIndex": 4,
"output": true
},
"altIcon": 0,
"hidden": false,
"flags": 151060480,
"subDeviceId": 0,
"conflictDetails": null,
"ownSubjectType": "channel",
"inheritedLocation": true,
"possibleActions": [
{
"id": 60,
"name": "TURN_ON",
"nameSlug": "turn-on",
"caption": "On"
},
{
"id": 70,
"name": "TURN_OFF",
"nameSlug": "turn-off",
"caption": "Off"
},
{
"id": 110,
"name": "TOGGLE",
"nameSlug": "toggle",
"caption": "Toggle"
},
{
"id": 10100,
"name": "COPY",
"nameSlug": "copy",
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

403 Forbidden - Może przy generowaniu tokena nie zaznaczyłeś odpowiednich uprawnień.
SUPLA.... Nareszcie w domu.
roztropek
Posts: 24
Joined: Wed Nov 06, 2024 6:21 am

Post

pzygmunt wrote: Mon Nov 18, 2024 2:43 pm 403 Forbidden - Może przy generowaniu tokena nie zaznaczyłeś odpowiednich uprawnień.
Oczywiście, że tak. Mój błąd. Bardzo dziękuję za pomoc.

Teraz już mam 202 i dioda mi zmienia kolor na SONOFF. Akurat dziś mam spotkanie, gdzie to pokażę :)

Return to “Ogólna dyskusja”