Prosba o dokumentacje + inne sprawy
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!
Supla
Open HAB - https://github.com/magx2/openhab-supla
-
pzygmunt
- Posts: 20302
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
- Been thanked: 59 times
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.
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.
SUPLA.... Nareszcie w domu.
Tak dla uściślenia, w C++ long ma 32 bity czy 64?pzygmunt wrote: Sat Sep 02, 2017 10:21 am W timeval masz dwie zmienne typu long sekundy i mikrosekundy.
Supla
Open HAB - https://github.com/magx2/openhab-supla
O co chodzi z sub value? To jest tak samo zakodowane value jak rozmawialiśmy wcześniej?typedef struct {
char value[SUPLA_CHANNELVALUE_SIZE];
char sub_value[SUPLA_CHANNELVALUE_SIZE]; // For example sensor value
}TSuplaChannelValue;
Supla
Open HAB - https://github.com/magx2/openhab-supla
-
pzygmunt
- Posts: 20302
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
- Been thanked: 59 times
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.
SUPLA.... Nareszcie w domu.
-
djack2017
- Posts: 784
- Joined: Mon Nov 27, 2017 7:36 am
- Been thanked: 1 time
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
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
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
-
pzygmunt
- Posts: 20302
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
- Been thanked: 59 times
Gdzie chcesz to odczytywać ? Z poziomu ESP czy z poziomu serwera czy klienta ?djack2017 wrote: Wed Jan 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
SUPLA.... Nareszcie w domu.
