Dzień dobry,
Mam "swoje" kanały na wielu urządzeniach zarejestrowane w SuplaCloud i potrzebuje z jednego urządzenia odczytać wartość kanału (temperatura, on/off itd) z innego urządzenia w ramach "moich" kanałów. Czy jest jakaś inna możliwość niż directlink? Jeśli nie ma to czy supla-device daje jakieś wsparcie w odczycie poprzez directlink?
Na razie zrobiłem to poprzez direclink i własną obsługę HTTPS GET i parsowanie JSONa - ale jakieś to takie nieeleganckie.
Ma ktoś może wiedze/pomysł jak to zrobić inaczej?
Odczyt wartości z kanału innego urządzenia
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 136 times
- Been thanked: 137 times
Aktualnie direct link to jedyna opcja. W s-d nie ma wbudowanej obsługi direct linków. Gdzieś na forum były przykładowe programy czytające direct linki. Możesz też sobie podpatrzeć jak to w GuiGeneric jest zrobione.KaDet wrote: Thu Feb 22, 2024 11:13 am Dzień dobry,
Mam "swoje" kanały na wielu urządzeniach zarejestrowane w SuplaCloud i potrzebuje z jednego urządzenia odczytać wartość kanału (temperatura, on/off itd) z innego urządzenia w ramach "moich" kanałów. Czy jest jakaś inna możliwość niż directlink? Jeśli nie ma to czy supla-device daje jakieś wsparcie w odczycie poprzez directlink?
Na razie zrobiłem to poprzez direclink i własną obsługę HTTPS GET i parsowanie JSONa - ale jakieś to takie nieeleganckie.
Ma ktoś może wiedze/pomysł jak to zrobić inaczej?
Najlepsze suple dla Twojego domu 
-
KaDet
- Posts: 52
- Joined: Fri Nov 27, 2020 5:06 pm
- Location: Dąbrowa Górnicza
Dzięki,
@klew - liczyłem na Twoją odpowiedź, ale miałem nadzieje na inną
Pozdrawiam serdecznie i spojrzę jak to w GG jest zrobione.
@klew - liczyłem na Twoją odpowiedź, ale miałem nadzieje na inną
Pozdrawiam serdecznie i spojrzę jak to w GG jest zrobione.
-
Lector
- Posts: 2471
- Joined: Fri Nov 17, 2017 2:26 pm
- Location: Poznań
- Has thanked: 13 times
- Been thanked: 25 times
Pytanie co chcesz osiągnąć.
Ja mam jeden moduł z OLED do zdalnego prezentowania termometrów i stany przekaźników.
Termometry oparte na linkach, a stan kanału przekaźnika wirtualnego ustawiam za pomocą reakcji z głównego moduły.
Na OLED widać jakie temperatury są i stany przekaźników.
Ja mam jeden moduł z OLED do zdalnego prezentowania termometrów i stany przekaźników.
Termometry oparte na linkach, a stan kanału przekaźnika wirtualnego ustawiam za pomocą reakcji z głównego moduły.
Na OLED widać jakie temperatury są i stany przekaźników.
Last edited by Lector on Thu Feb 22, 2024 7:29 pm, edited 1 time in total.
Niespełniony automatyk. 
https://3d-lamp.photos/
https://pool.lector.top/
https://3d-lamp.photos/
https://pool.lector.top/
-
KaDet
- Posts: 52
- Joined: Fri Nov 27, 2020 5:06 pm
- Location: Dąbrowa Górnicza
"Termometry oparte na liniach" - jak rozumiem piszesz o directlinkach? Tak też to robię teraz, ale...
... jak pisałem to nieeleganckie (dla mnie) rozwiązanie, gdy w kodzie odwołuje się do linków, które musze podawać - bo się mogą przecież zmienić (np. przy wymianie urządzenia) w parametrach przy konfiguracji. Nieeleganckie dla mnie są własnoręcznie pisane GETy i korzystanie z HTTPClient i WiFiClientSecure jakby "poza" Supla (zresztą mam jakieś wrażenie, że nieco "interferują między sobą). Dla mnie najmniejszą pożądaną zmianą byłaby klasa komunikacji poprzez linki, gdzie w wyniku odwołania (ale to już jakimiś Supłowymi połączeniami) otrzymywałbym zdeserializowany wynik odczytu kanału a jeszcze lepiej gdyby nie trzeba było podawać linku tylko jakiś inny identyfikator kanału (nazwa), którą dałoby się definiować w Supla-Cloud.
Radzę sobie, ale ponieważ co nieco robię z oprogramowaniem to łkam nad takim podejściem
Pozdrawiam
PS - mam analogiczny ekranik do wyświetlania temperatur, poziomu wody w oczku i stanu powietrza - też na linkach - co nie oznacza, ze mi się takie podejście mega podoba - ale działa...
... jak pisałem to nieeleganckie (dla mnie) rozwiązanie, gdy w kodzie odwołuje się do linków, które musze podawać - bo się mogą przecież zmienić (np. przy wymianie urządzenia) w parametrach przy konfiguracji. Nieeleganckie dla mnie są własnoręcznie pisane GETy i korzystanie z HTTPClient i WiFiClientSecure jakby "poza" Supla (zresztą mam jakieś wrażenie, że nieco "interferują między sobą). Dla mnie najmniejszą pożądaną zmianą byłaby klasa komunikacji poprzez linki, gdzie w wyniku odwołania (ale to już jakimiś Supłowymi połączeniami) otrzymywałbym zdeserializowany wynik odczytu kanału a jeszcze lepiej gdyby nie trzeba było podawać linku tylko jakiś inny identyfikator kanału (nazwa), którą dałoby się definiować w Supla-Cloud.
Radzę sobie, ale ponieważ co nieco robię z oprogramowaniem to łkam nad takim podejściem
Pozdrawiam
PS - mam analogiczny ekranik do wyświetlania temperatur, poziomu wody w oczku i stanu powietrza - też na linkach - co nie oznacza, ze mi się takie podejście mega podoba - ale działa...
-
KaDet
- Posts: 52
- Joined: Fri Nov 27, 2020 5:06 pm
- Location: Dąbrowa Górnicza
Czy jest gdzieś kod GuiGeneric jaki generuje się na "device". Bo tam chciałbym to podejrzeć (wywoływanie directlink) To co teraz mogę zrobić (chyba, że jestem w błędzie) to wygenerować sobie bin na ESP i popatrzeć w panelu konfiguracyjnym jak to jest zrobione.klew wrote: Thu Feb 22, 2024 11:34 amAktualnie direct link to jedyna opcja. W s-d nie ma wbudowanej obsługi direct linków. Gdzieś na forum były przykładowe programy czytające direct linki. Możesz też sobie podpatrzeć jak to w GuiGeneric jest zrobione.KaDet wrote: Thu Feb 22, 2024 11:13 am Dzień dobry,
Mam "swoje" kanały na wielu urządzeniach zarejestrowane w SuplaCloud i potrzebuje z jednego urządzenia odczytać wartość kanału (temperatura, on/off itd) z innego urządzenia w ramach "moich" kanałów. Czy jest jakaś inna możliwość niż directlink? Jeśli nie ma to czy supla-device daje jakieś wsparcie w odczycie poprzez directlink?
Na razie zrobiłem to poprzez direclink i własną obsługę HTTPS GET i parsowanie JSONa - ale jakieś to takie nieeleganckie.
Ma ktoś może wiedze/pomysł jak to zrobić inaczej?
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 136 times
- Been thanked: 137 times
https://github.com/krycha88/GUI-Generic/KaDet wrote: Thu Feb 22, 2024 2:01 pm Czy jest gdzieś kod GuiGeneric jaki generuje się na "device". Bo tam chciałbym to podejrzeć (wywoływanie directlink) To co teraz mogę zrobić (chyba, że jestem w błędzie) to wygenerować sobie bin na ESP i popatrzeć w panelu konfiguracyjnym jak to jest zrobione.
Najlepsze suple dla Twojego domu 
-
SOYER
- Posts: 1623
- Joined: Wed Aug 10, 2022 12:29 pm
- Location: Kryry
- Been thanked: 2 times
Nie rozumiem złożoności tematu, przecież każde urządzenie komunikuje się z serwerem, a serwer zna stan każdego z kanałów. Co za problem napisać coś co będzie pobierało z serwera do device-a stan kanału o podanym numerze. Tylko żeby serwer to obsługiwał.
@klew wiem, że to jest multum waszych klas do obsłużenia, ale może zacznijcie od KLOP i KPOP…
@klew wiem, że to jest multum waszych klas do obsłużenia, ale może zacznijcie od KLOP i KPOP…
Last edited by SOYER on Thu Feb 22, 2024 2:46 pm, edited 1 time in total.
https://youtube.com/@tomaszhamer8134?si=_J1cT_QWsXxgt1Fm
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 136 times
- Been thanked: 137 times
Jak tylko zrealizujemy wszystkie rzeczy, które mamy na liście, to się tym zajmiemy :pSOYER wrote: Thu Feb 22, 2024 2:42 pm Nie rozumiem złożoności tematu, przecież każde urządzenie komunikuje się z serwerem, a serwer zna stan każdego z kanałów. Co za problem napisać coś co będzie pobierało z serwera do device-a stan kanału o podanym numerze. Tylko żeby serwer to obsługiwał.
@klew wiem, że to jest multum waszych klas do obsłużenia, ale może zacznijcie od KLOP i KPOP…
Najlepsze suple dla Twojego domu 
