Prosba o dokumentacje + inne sprawy

magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

Te typy masz gdzieś przypisane do stałych? Coś w stylu type == 1 == TYPE_SWITCH?
Java 4 Life :twisted:

API Java
GUI
Server Mock

magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

A inne typy poza REALAY jak mapujesz z tablicy bajtów na struktury?
Java 4 Life :twisted:

API Java
GUI
Server Mock

Awatar użytkownika
pzygmunt
Posty: 18288
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Doprecyzuj pytanie
magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

Jest np channel type DHT 11. W jakim formacie jest on przesyłany w polu value?
Java 4 Life :twisted:

API Java
GUI
Server Mock

Awatar użytkownika
pzygmunt
Posty: 18288
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Double.
Przykład w Javie jak odczytać.

https://github.com/SUPLA/supla-android/ ... annel.java

getDouble
magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

Ok tylko pytanie dotyczy ogólnego schematu odczytywania każdego typu kanału. Czy masz coś takiego? Czy trzeba za każdym razem "zgadywć"?
Java 4 Life :twisted:

API Java
GUI
Server Mock

Awatar użytkownika
pzygmunt
Posty: 18288
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Nie mam specyfikacji. Muszę przeglądnąć kod i to spisać. Nie ma wielu kombinacji.
magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

Byłoby super!
Java 4 Life :twisted:

API Java
GUI
Server Mock

Awatar użytkownika
pzygmunt
Posty: 18288
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Urządzenie -> serwer

Dla:
SUPLA_CHANNELTYPE_SENSORNO
SUPLA_CHANNELTYPE_SENSORNC
SUPLA_CHANNELTYPE_RELAYHFD4
SUPLA_CHANNELTYPE_RELAYG5LA1A
SUPLA_CHANNELTYPE_2XRELAYG5LA1A
SUPLA_CHANNELTYPE_RELAY

value[0] = is_hi ? 1 : 0;

W przypadku rolet w value[0] przesyłana jest pozycja w zakresie 0 - 100 (%). -1 to pozycja nieokreślona

Dla:
SUPLA_CHANNELTYPE_THERMOMETERDS18B20

double temp = 22.11;
memcpy(value, &temp, sizeof(double));

wartość -275 uznawana jest za błąd odczytu czujnika lub jego brak lub po prostu jest offline.

Dla:
SUPLA_CHANNELTYPE_DHT11
SUPLA_CHANNELTYPE_DHT22
SUPLA_CHANNELTYPE_DHT21
SUPLA_CHANNELTYPE_AM2302
SUPLA_CHANNELTYPE_AM2301

double temp = 22.112;
double humidity = 30.053;

int t = temp*1000.00;
int h = humidity*1000.00;

memcpy(value, &t, 4);
memcpy(&value[4], &h, 4);

wilgotność o wartości -1 to brak czujnika, błąd lub offline

Dla:
SUPLA_CHANNELTYPE_DIMMER
SUPLA_CHANNELTYPE_RGBLEDCONTROLLER
SUPLA_CHANNELTYPE_DIMMERANDRGBLED
SUPLA_CHANNELTYPE_DISTANCESENSOR


memset(value, 0, SUPLA_CHANNELVALUE_SIZE);

value[0] = brightness;
value[1] = color_brightness;
value[2] = (char)((color & 0x000000FF)); // BLUE
value[3] = (char)((color & 0x0000FF00) >> 8); // GREEN
value[4] = (char)((color & 0x00FF0000) >> 16); // RED


Smartfon -> Serwer -> Urządzenie

Dla:
SUPLA_CHANNELFNC_CONTROLLINGTHEGATEWAYLOCK
SUPLA_CHANNELFNC_CONTROLLINGTHEGATE
SUPLA_CHANNELFNC_CONTROLLINGTHEGARAGEDOOR
SUPLA_CHANNELFNC_CONTROLLINGTHEDOORLOCK

value[0] = 1; Otwórz/Zamknij

Dla:
SUPLA_CHANNELFNC_CONTROLLINGTHEROLLERSHUTTER

value[0] = 0; Zatrzymaj
value[0] = 1; Zasłoń
value[0] = 2; Odsłoń

Wartość powyżej 10 oznacza procentowe otwarcie czyly 10 == 0%, 110 == 100%

Dla:
SUPLA_CHANNELFNC_POWERSWITCH
SUPLA_CHANNELFNC_LIGHTSWITCH

value[0] = 0; Wyłącz
value[0] = 1; Włącz

Dla:
SUPLA_CHANNELFNC_DIMMER
SUPLA_CHANNELFNC_RGBLIGHTING
SUPLA_CHANNELFNC_DIMMERANDRGBLIGHTING


value.value[0] = brightness;
value.value[1] = color_brightness;
value.value[2] = (char)((color & 0x000000FF)); // BLUE
value.value[3] = (char)((color & 0x0000FF00) >> 8); // GREEN
value.value[4] = (char)((color & 0x00FF0000) >> 16); // RED
ODPOWIEDZ

Wróć do „Zagadnienia ogólne”