Prosba o dokumentacje + inne sprawy

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

Cześć wytłumaczysz mi w jakim formacie wysyłany jest TDCS_SuplaPingServer i TSDC_SuplaPingServerResult? Dokładniej timeval. Widzę że tam w importach dzieje się jakaś magia i nie bardzo wiem jak to interpretować. Dzięki!
Java 4 Life :twisted:

API Java
GUI
Server Mock

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

W timeval masz dwie zmienne typu long sekundy i mikrosekundy.
Ping-a wysyłasz jeżeli nie miałeś komunikacji z urzadzeniem/klientem przez określony czas inaczej traktujesz sesję jako zombie i ją ubijasz
co jest jednoznaczne z zamknięciem połączenia.
magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

Dzięki. Widzę że klient też wysyła tego pinga. To jest ten obowiązkowy ping co jakiś timeout żeby serwer go nie ubił?
Java 4 Life :twisted:

API Java
GUI
Server Mock

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

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

pzygmunt pisze: sob wrz 02, 2017 10:21 am W timeval masz dwie zmienne typu long sekundy i mikrosekundy.
Tak dla uściślenia, w C++ long ma 32 bity czy 64?
Java 4 Life :twisted:

API Java
GUI
Server Mock

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

W tym przypadku 64
magx2
Posty: 351
Rejestracja: śr maja 17, 2017 1:27 pm
Kontakt:

typedef struct {
char value[SUPLA_CHANNELVALUE_SIZE];
char sub_value[SUPLA_CHANNELVALUE_SIZE]; // For example sensor value
}TSuplaChannelValue;
O co chodzi z sub value? To jest tak samo zakodowane value jak rozmawialiśmy wcześniej?
Java 4 Life :twisted:

API Java
GUI
Server Mock

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

Format jest taki sam. Trafiają tam dane z kanałów połączonych. Np jak skojarzysz czujnik otwarcia bramy z otwieraniem bramy to w sub_value będzie stan czujnika. Serwer to składa do kupy.
djack2017
Posty: 686
Rejestracja: pn lis 27, 2017 7:36 am
Kontakt:

Jest w supla_esp_devconn.c, na końcu, kawałek kodu odczytujacego temperaturę z DS18b20:

void DEVCONN_ICACHE_FLASH supla_esp_devconn_on_temp_humidity_changed(char humidity) {
char value[SUPLA_CHANNELVALUE_SIZE];
#if defined(TEMPERATURE_CHANNEL)
memset(value, 0, sizeof(SUPLA_CHANNELVALUE_SIZE));
supla_get_temperature(value);
srpc_ds_async_channel_value_changed(devconn->srpc, TEMPERATURE_CHANNEL, value);

#endif
....
}
siedzę nad tym już parę godzin - jak z "value" odczytać wartość liczbową temperatury. Możesz pomóc?
Jacek
__________________________________________________________
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
Awatar użytkownika
pzygmunt
Posty: 18284
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

djack2017 pisze: śr sty 17, 2018 12:44 pm Jest w supla_esp_devconn.c, na końcu, kawałek kodu odczytujacego temperaturę z DS18b20:

void DEVCONN_ICACHE_FLASH supla_esp_devconn_on_temp_humidity_changed(char humidity) {
char value[SUPLA_CHANNELVALUE_SIZE];
#if defined(TEMPERATURE_CHANNEL)
memset(value, 0, sizeof(SUPLA_CHANNELVALUE_SIZE));
supla_get_temperature(value);
srpc_ds_async_channel_value_changed(devconn->srpc, TEMPERATURE_CHANNEL, value);

#endif
....
}
siedzę nad tym już parę godzin - jak z "value" odczytać wartość liczbową temperatury. Możesz pomóc?
Jacek
Gdzie chcesz to odczytywać ? Z poziomu ESP czy z poziomu serwera czy klienta ?
ODPOWIEDZ

Wróć do „Zagadnienia ogólne”