Witam.
Kompiluje sobie sam GUI celem dostosowania do własnych celów. Kiedyś robiłem swój programik z wykorzystaniem Primary GUI lecz zapragnęły mi się nowe fiuczery i chciałbym spróbować uruchomić nową wersję tego cudowne softu.
Mianowicie (proszę wybaczyć za niefachowy język) jak z poziomu kodu wyłączyć przekaźnik tak aby ten fakt zaistniał również w cloudzie. Dla starej biblioteki SuplaDevice była to (chyba) komenda przykładowo SuplaDevice.relayOff(4). A jak będzie wyglądała teraz?
Potrzebuje takiej funkcjonalności bo przykładowo oświetlenie mogę włączać/wyłączać z poziomu clouda ale w zależności od różnych czynników samo urządzenie może też wyłączyć lub włączyć to oświetlenie. Nie chodzi mi tu o wykorzystanie funkcjonalności Buttona , ponieważ warunki wyłączenia są zależne od większej ilości czynników (warunków).
Własna kompilacja GUI - wyłączanie RELAYA z poziomu kodu
petione pisze: ↑pn lis 22, 2021 12:59 pm Witam.
Kompiluje sobie sam GUI celem dostosowania do własnych celów. Kiedyś robiłem swój programik z wykorzystaniem Primary GUI lecz zapragnęły mi się nowe fiuczery i chciałbym spróbować uruchomić nową wersję tego cudowne softu.
Mianowicie (proszę wybaczyć za niefachowy język) jak z poziomu kodu wyłączyć przekaźnik tak aby ten fakt zaistniał również w cloudzie. Dla starej biblioteki SuplaDevice była to (chyba) komenda przykładowo SuplaDevice.relayOff(4). A jak będzie wyglądała teraz?
Potrzebuje takiej funkcjonalności bo przykładowo oświetlenie mogę włączać/wyłączać z poziomu clouda ale w zależności od różnych czynników samo urządzenie może też wyłączyć lub włączyć to oświetlenie. Nie chodzi mi tu o wykorzystanie funkcjonalności Buttona , ponieważ warunki wyłączenia są zależne od większej ilości czynników (warunków).
Kod: Zaznacz cały
relay->turnOff();
https://www.facebook.com/groups/supladiy/
Kod: Zaznacz cały
relay->turnOff();
Mam natomiast kolejne pytania.
AT działa dla wszelkiego rodzaju przycisków czujników itp. A czy istnieje możliwość przypisania AT do relaya (widocznego oczywiście w cloud), uruchamianego poprzez własny kod programu? Wiem że można wykorzystać tutaj linki symboliczne ale gdy z poziomu kodu dodam swój relay to nie pojawi się on chyba na stronie konfiguracyjnej i nie ma wtedy możliwości przypisania linków a tak można by to było skonfigurować po stronie clouda.
I tutaj kolejne pytanie z tym powiązane. Gdy dodam z poziomu własnego kodu relaya to czy mogę go jakoś zobaczyć z poziomu strony konfiguracyjnej czyli czy strona konfiguracyjna przy włączeniu jej pokaże ze istnieje przekaźnik przypisany do określonego wyjścia.
A może można poprostu z poziomu kodu jakoś sterować relayem, który został utworzony przez stronę konfiguracyjną?
Jeszcze raz i po koleipetione pisze: ↑wt lis 23, 2021 8:15 am Mam natomiast kolejne pytania.
1 - AT działa dla wszelkiego rodzaju przycisków czujników itp. A czy istnieje możliwość przypisania AT do relaya (widocznego oczywiście w cloud), uruchamianego poprzez własny kod programu? Wiem że można wykorzystać tutaj linki symboliczne ale gdy z poziomu kodu dodam swój relay to nie pojawi się on chyba na stronie konfiguracyjnej i nie ma wtedy możliwości przypisania linków a tak można by to było skonfigurować po stronie clouda.
2 - I tutaj kolejne pytanie z tym powiązane. Gdy dodam z poziomu własnego kodu relaya to czy mogę go jakoś zobaczyć z poziomu strony konfiguracyjnej czyli czy strona konfiguracyjna przy włączeniu jej pokaże ze istnieje przekaźnik przypisany do określonego wyjścia.
3 - A może można poprostu z poziomu kodu jakoś sterować relayem, który został utworzony przez stronę konfiguracyjną?
1 - Chcesz AT wykonać stanem przekaźnika? Jeśli tak, to można to zrobić.
2 - Jeśli dodasz coś w kodzie poza mechanizmem dodawania elementów (przyciski, przekaźniki, czujniki) to wątpię aby pokazało się to na stronie konfiguracyjnej.
3 - można, o ile wiesz w którym miejscu, co dopisać.
https://www.facebook.com/groups/supladiy/
1. Jak więc wykonać AT stanem przekaźnika? Dodałem w kodzie swój relay ale w cloudzie nie widzę nigdzie żadnej opcji związanej z AT tak jak jest to choćby po dodaniu przycisku. Może w kodzie potrzebna jest jakaś dodatkowa konfiguracja aby przekaźnik wspierał AT?lukfud pisze: ↑wt lis 23, 2021 8:28 amJeszcze raz i po koleipetione pisze: ↑wt lis 23, 2021 8:15 am Mam natomiast kolejne pytania.
1 - AT działa dla wszelkiego rodzaju przycisków czujników itp. A czy istnieje możliwość przypisania AT do relaya (widocznego oczywiście w cloud), uruchamianego poprzez własny kod programu? Wiem że można wykorzystać tutaj linki symboliczne ale gdy z poziomu kodu dodam swój relay to nie pojawi się on chyba na stronie konfiguracyjnej i nie ma wtedy możliwości przypisania linków a tak można by to było skonfigurować po stronie clouda.
2 - I tutaj kolejne pytanie z tym powiązane. Gdy dodam z poziomu własnego kodu relaya to czy mogę go jakoś zobaczyć z poziomu strony konfiguracyjnej czyli czy strona konfiguracyjna przy włączeniu jej pokaże ze istnieje przekaźnik przypisany do określonego wyjścia.
3 - A może można poprostu z poziomu kodu jakoś sterować relayem, który został utworzony przez stronę konfiguracyjną?
1 - Chcesz AT wykonać stanem przekaźnika? Jeśli tak, to można to zrobić.
2 - Jeśli dodasz coś w kodzie poza mechanizmem dodawania elementów (przyciski, przekaźniki, czujniki) to wątpię aby pokazało się to na stronie konfiguracyjnej.
3 - można, o ile wiesz w którym miejscu, co dopisać.
2. Tak też myślałem stąd poniekąd ptk 1 rozwiązywał by ten problem (ale z ciekawości musze spróbować co się stanie jak przez WWW dodam przekaźnik przypisany do tego samego pinu co w kodzie - pewnie konflikt kanałów?).
3. No właśnie nie wiem jak to ewentualnie ugryźć ale znów pkt 1 pozwoli rozwiązać mój problem aczkolwiek i tak będę musiał wróć w kolejnych pytaniach do tego tematu bo będę potrzebował zmiennej regulowanie ze strony WWW (w Primary GUI udało mi się to ale tutaj jakoś inaczej są dodawane wpisy widoczne w stronie konfiguracyjnej a ja się dopiero wgryzam po dłuższej przerwie )
Generalnie chodzi o to że kod uruchamia na podstawie własnych warunków oświetlenie w urządzeniu A a zamiar jest taki aby zdalnie bez kabelków uruchomić na ten sam czas oświetlenie w urządzeniu B)
AT oparte jest o Przycisk (Button), nie o Przekaźnik (Relay)
O ile się nie mylę, to GUI Generic obsługę AT ma jeszcze tylko w gałęzi develop, więc jeśli kompilujesz na podstawie master to ten tego...
O ile się nie mylę, to GUI Generic obsługę AT ma jeszcze tylko w gałęzi develop, więc jeśli kompilujesz na podstawie master to ten tego...
Widzimy się na Supla Offline Party Season 2
AT dodajesz do czego chcesz, nie musi być to koniecznie przycisk.
Nie istotna jest wersja samego GG, ale biblioteki, skoro @petione chce to sobie sam dopisać.
https://www.facebook.com/groups/supladiy/
Kod: Zaznacz cały
auto relay = new Supla::Control::Relay(relay_pin);
auto at = new Supla::Control::ActionTrigger();
at->setRelatedChannel(relay);
relay->addAction(Supla::SEND_AT_SHORT_PRESS_x2, at, Supla::ON_TURN_ON);
relay->addAction(Supla::SEND_AT_SHORT_PRESS_x3, at, Supla::ON_TURN_OFF);
https://www.facebook.com/groups/supladiy/
Hmm, to by oznaczało, że szybkie załączenie przekaźnika 2 razy włączy ten przekaźnik a szybkie załączenie przekaźnika 3 razy go wyłączy?lukfud pisze: ↑wt lis 23, 2021 9:39 amKod: Zaznacz cały
auto relay = new Supla::Control::Relay(relay_pin); auto at = new Supla::Control::ActionTrigger(); at->setRelatedChannel(relay); relay->addAction(Supla::SEND_AT_SHORT_PRESS_x2, at, Supla::ON_TURN_ON); relay->addAction(Supla::SEND_AT_SHORT_PRESS_x3, at, Supla::ON_TURN_OFF);
Widzimy się na Supla Offline Party Season 2
Nie, AT_SHORT_PRESS_x2 to tylko nazwa (aby odpowiadała całemu mechanizmowi), mogło by być tu słowo "serdelki". Włączenie przekaźnika wyśle AT jako 2-klik, a wyłączenie jako 3-klik.Goral64 pisze: ↑wt lis 23, 2021 10:34 amHmm, to by oznaczało, że szybkie załączenie przekaźnika 2 razy włączy ten przekaźnik a szybkie załączenie przekaźnika 3 razy go wyłączy?lukfud pisze: ↑wt lis 23, 2021 9:39 amKod: Zaznacz cały
auto relay = new Supla::Control::Relay(relay_pin); auto at = new Supla::Control::ActionTrigger(); at->setRelatedChannel(relay); relay->addAction(Supla::SEND_AT_SHORT_PRESS_x2, at, Supla::ON_TURN_ON); relay->addAction(Supla::SEND_AT_SHORT_PRESS_x3, at, Supla::ON_TURN_OFF);
https://www.facebook.com/groups/supladiy/