Panowie problem polega na tym iż komunikat jest wysyłany na telefon mimo iż stan się nie zmienia.
Jest jakiś nod który sprawdzi poprzedni stan i nie wyślę ponownie tego samego komunikatu ??
Panowie problem polega na tym iż komunikat jest wysyłany na telefon mimo iż stan się nie zmienia.
Jest jakiś nod który sprawdzi poprzedni stan i nie wyślę ponownie tego samego komunikatu ??
ta funkcja którą masz uruchomi komunikat gdy pojawi się stan ON na Brama otwarta - ale jeżeli z jakiegoś powodu zresetuje się ta zmienna, zrobi niedostępna czy cokolwiek to będziesz miał ponownie ten sam komunikat… drugie wyjście robi ci informację że nie ma stanu otwarta … nie zawsze jest to sygnał Brama zamknięta
ja często wystawiam sygnał np Bramy na funkcję SWITCH i tam mam pewność że jest True lub False - dodatkowo przy ważnych sygnałach zaznaczam wszystkie opcje “Previous states…”
no i obowiązkowo już zaznaczam “Output on connect” wtedy widzisz stan zaraz po połączeniu NR z HA
przetestuje
Edit:
jest jeszcze gorzej teraz dostaje dwa komunikaty brama otwarta i brama zamknięta raz za razem
Jest szansa że czujnik dostaje mikro migniecie jak przychodzi stan True, też tak przy niektórych czujnikach mam, wrzucam wtedy limit np 1/2 sekundy
limit ??? możesz rozwinąć zauważyłem że czujnik raz na jakiś czas przybiera wartość unavailable i po powrocie jest off i wtedy idzie niepotrzebny komunikat o stanie
Użyj węzła RBE
https://flows.nodered.org/node/node-red-node-rbe
Węzeł nie wysyła żadnych danych wyjściowych,
dopóki msg.payload nie różni się od poprzedniego.
Działa na liczbach i ciągach.
Przydatne do filtrowania powtarzających się wiadomości o tej samej wartości.
Oszczędza przepustowość itp.
próbowałem niestety nie działa. Chodzi o to, że na sekund jest stan inny niż on, off. I właśnie to odpowiada za wysłanie wiadomości.
Brama zamknięta (off) na chwile coś się dzieje i jest stan unavailable po czym powraca do off co powoduje wysłanie komunikatu.
Krótko mówiąc stan się zmienił z off na unavailable i z unavailable na off
Jak zrobić żeby po powrocie ze stanu unavailable do off ignorował wysłanie.
czemu to nie działa ???
ja korzystam z tego bloczku często:
daje możliwość opóźnienia przesłania danych ale też ustawienia limitu:
najczęściej gdy np mam wiele komunikatów w tym samym momencie robię opóźnienie i kolejkowanie.
gdy np sprawdzam otwarte okna to biorę jedną zmienną reszta jest odrzucana itd
nie jest to idealne rozwiązanie ale musi tak zostać i talk wyśle 1 błędny komunikat ale nie będzie go ponawiał.
@artpc co do RBE to ustawienie pierwszej wartości nic nie da bo stan się zmienia więc komunikat i tak idzie. Co do reszty opcji to nie wiem jak je ustawić
Ja bym pomeczyl temat dlaczego pojawiają ci się dwa razy stany True i co się dzieje w momencie pomiędzy. Do tego najlepiej testować bloczkiem Debug i Full message jako parametr, będziesz wiedział po kolei jakie stany się pojawiają, wtedy można dalej szukać dlaczego
tak mam podpięte czekam na anomalie
niewiele się dowiedziałem nie zarejestrował stanu “niedostępny”
żeby było wszystko jasne o stanie on nie dostałem informacji
object
payload: “off”
data: object
entity_id: “binary_sensor.gate_opening_sensor”
old_state: object
entity_id: “binary_sensor.gate_opening_sensor”
state: “on”
attributes: object
last_changed: “2022-06-18T08:58:32.647003+00:00”
last_updated: “2022-06-18T08:58:32.647003+00:00”
context: object
original_state: “on”
new_state: object
entity_id: “binary_sensor.gate_opening_sensor”
state: “off”
attributes: object
last_changed: “2022-06-18T08:58:33.276265+00:00”
last_updated: “2022-06-18T08:58:33.276265+00:00”
context: object
original_state: “off”
Nie ma takiej możliwości aby przez podany przepływ przechodziły inne stany jak on/off
true/false 1/0
Jeżeli występują takie problemy to winny jest czujnik (Wzbudzanie) albo twój flow.
Wrzuć tu swój cały flow jako plik *.json
Wyłączyłeś te 10 sekund przy debugowaniu nod?
flow jest ok jak każdy inny u mnie. Dlatego stawiam na czujnik bramy. Dzięki za pomoc.
Mam podobny problem z czujnikiem ,mam dwie sztuki na bramach wjazdowej i garażowej na wjazdowej jest ok,a na garażowej podwójne powiadomienie,jest to sparowane też z ewelinkiem z którego też przychodzą podwójne komunikaty na tym jednym czujniku.
U mnie na odwrót garaż ok wjazdowa świruje witam w klubie
dlatego wg mnie dodanie bloczku DELAY / LIMIT rozwiązuje wszystkie tego typu problemy
z ustawieniami jak niżej - ważne aby mieć wybraną opcję DROP aby nie kolejkował podwójnych powiadomień
zgadzam się z Tobą tylko to działa w przypadku gdy błędy odczytu sa w ciągu kilku sekund a u mnie było tak, że w ciągu 10 minut bywało że stan zmieniał się 6 razy. Póki co rozwiązałem problem w inny sposób ( dodałem komunikat o zamknęciu do innego flow)
@Robert80 jeśli jeszcze szukasz rozwiązania to polecam Ci nod “state node”
Jeśli z Twojego czujnika interesuje Cię tylko zmiana stanów z on na off to podstaw w miejsce “Entity” encję Swoje czujnika i zaznacz pozostałe opcje jak na screenie.
Pojawią Ci się dwa wyjścia z tego noda, podstaw komunikat pod górne wyjście “allowed”.
Oczywiście jeśli chcesz komunikat o zamknięciu to zamieniasz miejscami on z off.
thx ale tak jak pisałem wyżej zrobiłem to całkiem inaczej i problem się rozwiązał.
Dzięki wszytskim za porady