Wyzwalacz Akcji / Action Trigger

User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

lukfud wrote: Fri Nov 05, 2021 1:16 pm

Code: Select all

AT[1] received config with active actions: 1024
AT[3] received config with active actions: 0
Źle się wyraziłem, aktywne akcje.
Przy mROW zauważyłem zależność: ustawiony wyzwalacz w Cloud, przycisk działa na ON_CLICK, brak ustawionych wyzwalaczy, przycisk działa na ON_PRESS/CHANGE
Nie ma gettera na coś ten parametr, ale łatwo można to dodać.
Myślę, że bardziej problematyczna będzie zmiana konfiguracji przycisków (trzeba by zmieniać ON_PRESS/ON_RELEASE na ON_CLICK_1 i vice versa).
W SuplaDevice przyciski nie są mocno związane z przekaźnikami, jak w supla-espressifie i te ustawienia ON_PRESS czy ON_CLICK_1 robi się "ręcznie" dla każdego przycisku.
Pomyślę nad tym - może warto wprowadzić takie usprawnienie, że gdy tylko ON_CLICK_1 jest ustawiony i aktywny, to będzie on wyzwalany np. na "ON_PRESS".
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
lukfud
Posts: 2480
Joined: Thu Nov 23, 2017 11:33 pm
Location: Warszawa
Has thanked: 13 times
Been thanked: 11 times

Post

klew wrote: Fri Nov 05, 2021 1:27 pm Pomyślę nad tym - może warto wprowadzić takie usprawnienie, że gdy tylko ON_CLICK_1 jest ustawiony i aktywny, to będzie on wyzwalany np. na "ON_PRESS".
Ustawiony i "nie aktywny" ? czy nie rozumiem? :)

To jest oczywiście kosmetyka, na tą chwilę po wyzerowaniu akcji moduł musiałby się zrestartować. Po wysłaniu posta dotarło do mnie, że i tak przełączenie do konfiguracji wymaga ON_CLICK aby nie żonglować przekaźnikiem.
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

lukfud wrote: Fri Nov 05, 2021 1:34 pm
klew wrote: Fri Nov 05, 2021 1:27 pm Pomyślę nad tym - może warto wprowadzić takie usprawnienie, że gdy tylko ON_CLICK_1 jest ustawiony i aktywny, to będzie on wyzwalany np. na "ON_PRESS".
Ustawiony i "nie aktywny" ? czy nie rozumiem? :)

To jest oczywiście kosmetyka, na tą chwilę po wyzerowaniu akcji moduł musiałby się zrestartować. Po wysłaniu posta dotarło do mnie, że i tak przełączenie do konfiguracji wymaga ON_CLICK aby nie żonglować przekaźnikiem.
Tak, wejście w config by wykluczało takie usprawnienie.
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
lukfud
Posts: 2480
Joined: Thu Nov 23, 2017 11:33 pm
Location: Warszawa
Has thanked: 13 times
Been thanked: 11 times

Post

klew wrote: Fri Nov 05, 2021 1:43 pm
lukfud wrote: Fri Nov 05, 2021 1:34 pm
klew wrote: Fri Nov 05, 2021 1:27 pm Pomyślę nad tym - może warto wprowadzić takie usprawnienie, że gdy tylko ON_CLICK_1 jest ustawiony i aktywny, to będzie on wyzwalany np. na "ON_PRESS".
Ustawiony i "nie aktywny" ? czy nie rozumiem? :)
To jest oczywiście kosmetyka, na tą chwilę po wyzerowaniu akcji moduł musiałby się zrestartować. Po wysłaniu posta dotarło do mnie, że i tak przełączenie do konfiguracji wymaga ON_CLICK aby nie żonglować przekaźnikiem.
Tak, wejście w config by wykluczało takie usprawnienie.
W takim razie nie było tematu ;) dzięki
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
local
Posts: 545
Joined: Mon Jan 27, 2020 11:33 am

Post

Nie można by było sobie np zdefiniować akcji on click jako lokalnej bez konieczności przesyłania do clouda ?
4xShelly 1, Shelly 1L, 2xShelly 2.5, Sonoff T3, 2xSonoff Basic R2, 4xNeo 16A
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

local wrote: Fri Nov 05, 2021 5:27 pm Nie można by było sobie np zdefiniować akcji on click jako lokalnej bez konieczności przesyłania do clouda ?
W swoim sofcie lokalne akcje możesz ustawiać do woli od dawna ;)
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
lukfud
Posts: 2480
Joined: Thu Nov 23, 2017 11:33 pm
Location: Warszawa
Has thanked: 13 times
Been thanked: 11 times

Post

To pewnie jest kwestia Cloud, ale:

Kiedy mam włączone RGB na np. 20% i ustawiony AT w Cloud na "przełącz" to po wykonaniu akcji kolor rozjaśnia się na 100%, po kolejnym wykonaniu nic się nie dzieje, RGB nie wyłącza się.
Kiedy RGB jest wyłączone, wykonanie akcji ustawia kolor na 100%, nie na ostatnią zapamiętaną wartość, kolejne wykonanie nie wyłącza.

Przy ściemniaczu wyłącza i włącza, ale nie na ostatnią zapamiętaną wartość.
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Na branchu develop https://github.com/SUPLA/supla-arduino/tree/develop wrzuciłem dodatki do ActionTrigger (AT).

Została dodana automatyczna zmiana konfiguracji przycisku, gdy mamy dodany do niego AT oraz jakąś lokalną akcję (np. przełączanie przekaźnika dla ON_PRESS).

Biblioteka będzie sama przestawiać taką lokalną akcję na zdarzenie "ON_CLICK_1", gdy otrzyma informację o tym, że są ustawione wyzwalacze na serwerze i vice versa.

Aby automat działał, należy trzymać się następujących wytycznych:
- używamy powiązania at z przyciskiem za pomocą "at->attach(button);"
- w momencie wywołania metody "onInit" (czyli w miejscu gdzie program główny wywołuje SuplaDevice.begin) nie ma przypisanej żadnej akcji dla zdarzenia ON_CLICK_1

Dodatkowo dla przycisków monostabilnych:
- w momencie wywołania metody "onInit" jest przypisana akcja wyłącznie dla ON_PRESS lub dla ON_RELEASE

Dodatkowo dla przycisków bistabilnych:
- w momencie wywołania metody "onInit" jest przypisana akcja wyłącznie dla ON_CHANGE
Najlepsze suple dla Twojego domu :mrgreen:
krycha88
Posts: 5575
Joined: Fri Nov 16, 2018 7:25 am
Been thanked: 5 times

Post

dziękujemy dobry człowieku :)

czy drugi parametr jest konieczny setMulticlickTime(800, true)? czy nie dałoby się wykrywać tego na podstawie odpowiednich akcji?
https://gui-generic-builder.supla.io/
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

krycha88 wrote: Mon Nov 08, 2021 12:58 pm dziękujemy dobry człowieku :)

czy drugi parametr jest konieczny setMulticlickTime(800, true)? czy nie dałoby się wykrywać tego na podstawie odpowiednich akcji?
Mogę dodać osobną metodą do ustawiania typu przycisku.
Ale ogólnie przy wykrywaniu wieloklików należy dodać to "true" dla bistabilnego, bo on jeszcze zmienia logikę wykrywania zdarzeń - bez niego nie wykryje poprawnie on_click_x, bo Button czeka na zwolnienie przycisku, które w bistabilnym może się nie wydarzyć.
Najlepsze suple dla Twojego domu :mrgreen:

Return to “Arduino IDE”