Powiadomienia
Wyczyść wszystko

powiadomienie po czasie blockly

19 Wpisów
5 Użytkownicy
0 Likes
1,778 Wyświetleń
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

witam

chciałbym sobie zrobić powiadomienie ze jeśli brama jest otwarta dłużej niz 20minut to dostaje maila  

znalazłem jakieś wzorce tu na forum ale coś mi nie chce działać to znaczy w logach zmienna zmienia stan na 1 ale już o wiadomości nie ma nic w logach i jej nie wysyła natomiast jeśli zmienię bloczek (na scrennie drugim) to wiadomość dostaje od razu nie np po 20 minutach  jakbym chciał pytanie gdzie robię błąd 

dzieki 

pow1
 pow2
 
Dodane : 03/04/2020 12:16 pm
(@steel_rat)
Wpisów: 603
Ekspert
 

120 sekund to chyba nie 20 minut nie 🙂 

 
Dodane : 03/04/2020 1:50 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

@steel_rat ....na to, to bym nie wpadł 😉 .....jest 120 bo testuje a niechce mi sie czekac 20 minut przy testowaniu 

 
Dodane : 03/04/2020 2:15 pm
(@steel_rat)
Wpisów: 603
Ekspert
 

No to powinieneś dostać maila po 2 minutach i nie przychodzi wtedy? Zmień też ustawienie stanu na zero, usuń cudzysłów. By domoticz ja traktował jak zmienną a nie string. Po za tym, która wersja Domoticza jest w użyciu? Ja bym zerowanie zmiennej przeniósł przed polecenie wysłania maila. 

 
Dodane : 03/04/2020 3:23 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

@steel_rat

 

nie wiem czy dobrze zrozumiałem ale jak zrobiłem tak (jak na screenie)to email przychodzi jak tylko otworze brame a stan zmiennej zmienia po 2 minutach

pow3
 
Dodane : 03/04/2020 3:54 pm
(@mirmil99)
Wpisów: 181
Pomocny
 

w pierwszej linijce zamiast nierowne zero zmien na rowne zero

dodaj kolejny warunek elif. gdy brama zamknieta ustaw zmienna var na zero

 
Dodane : 03/04/2020 4:05 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

@mirmil99

niestety wiadomosc jest wysylana odrazu po otwarciu bramy

 
Dodane : 03/04/2020 4:14 pm
(@mirmil99)
Wpisów: 181
Pomocny
 

popatrz w logu, czy zmienna zmienia stan, dla testu zmien czas oczekiwania na kilka sekund

 
Dodane : 03/04/2020 4:20 pm
(@steel_rat)
Wpisów: 603
Ekspert
 

Pokaz jeszcze raz jak teraz wygląda twój blok. Bo same zmieniające się warunki if raz masz różny od 1 a raz różny od 0 wprowadza chaos. 

 
Dodane : 03/04/2020 4:24 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

tak jak mam teraz to nie wysyla emaila ale po dwoch minutach zmienia zmienna na Status: Set UserVariable testowa = 1

 

 pow3
 
Dodane : 03/04/2020 4:37 pm
(@steel_rat)
Wpisów: 603
Ekspert
 

No ok. To teraz która wersja Domoticza. Bo poprostu drugi raz skrypt się już nie wykonuje. Musiałbyś mieć najnowszego Domoticza by to działało. Tylko uwaga nowa wersja Domoticza wymaga Bustera. 

 
Dodane : 03/04/2020 4:42 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

@steel_rat 

mam najnowsza wersje beta dzisiaj robilem aktualizcje 

 
Dodane : 03/04/2020 5:01 pm
isom
 isom
(@isom)
Wpisów: 5079
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

@on6222  ja myślę że z tą zmienną to będzie porażka w tym układzie . Albo zamień zmienną na wirtualny przełącznik np "Brama open" i wtedy

IF Stan Bramy = Open and Brama open = Off

Set Brama open = On after 120 sek

ElseIf Brama open = On 

Set Mail 

Elseif  Stan Bramy = Closed 

Set Brama open = Off

albo bez zabawy w bloczki i dodatkowe zmienne czy przełączniki użyj tego co poniżej 

To jest skrypt dzVents  gdzie po 20 minutach dostaniesz powiadomienie na skonfigurowane w domoticz adresy e-mail 
po 3 minutach dostaniesz drugie i po kolejnych trzech trzecie powiadomienie , chyba że wczesniej ta brama zostanie zamknięta to dostaniesz powiadomienie że została zamknięta 
 
PS ten skrypt ma taką przewagę że możesz w przyszłości dołożyć do niego kilka bram , okien , czy drzwi . Wystarczy dodać w pierwszej tabeli kolejne urządzenie ustawić mu po jakim czasie ma krzyczeć i rozbudować tabele data o to urządzenie 
Poniżej przykład dla Stan Bramy i furtki  gdzie brama krzyczy po 20 min a furtka po 10 min
 
Dodane : 03/04/2020 5:09 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

@isom

powiem ze wolalbym dzvents tylko troche ich nie ogarniam jeszcze (nie udalo mi sie nawet jeszcze zrobic tego rgb w dzvents co mi kiedy podsylales )

jak dobrze rozumiem wystarcze ze zmienie nazwy na swoje przełacziki zaraz na poczatku skryptu i powinno dzialac ale w logach takie cos wyskakuje 

 Status: dzVents: Info: Wejścia kontrola: ------ Start internal script: Script #2:, trigger: "every 2 minutes"
2020-04-03 18:50:00.567 Status: dzVents: Info: Wejścia kontrola: Device Stan Bramy staat 0 minuten open.
2020-04-03 18:50:00.568 Status: dzVents: Info: Wejścia kontrola: ------ Finished Script #2
2020-04-03 18:50:00.568 Error: dzVents: Error: (3.0.2) Wejścia kontrola: An error occurred when calling event handler Script #2
2020-04-03 18:50:00.568 Error: dzVents: Error: (3.0.2) Wejścia kontrola: ...domoticz/scripts/dzVents/generated_scripts/Script #2.lua:39: attempt to compare number with nil
 
 
 
edit w momencie kiedy pisalem dostalem dwa maile ze brama otwata 2 minuty i kolejny ze otwarta 4minuty ale w logach takie cos 
 
Status: dzVents: Info: Wejścia kontrola: ------ Start internal script: Script #2:, trigger: "every 2 minutes"
2020-04-03 18:56:00.156 Status: dzVents: Info: Wejścia kontrola: Device Stan Bramy staat 6 minuten open.
2020-04-03 18:56:00.156 Status: dzVents: Info: Wejścia kontrola: otwarta zbyt długo 1
2020-04-03 18:56:00.156 Status: dzVents: Info: Wejścia kontrola: ------ Finished Script #2
2020-04-03 18:56:00.157 Status: EventSystem: Script event triggered: /home/pi/domoticz/dzVents/runtime/dzVents.lua
2020-04-03 18:56:00.179 Status: Notification: Przypominam Otwarta
2020-04-03 18:56:00.156 Error: dzVents: Error: (3.0.2) Wejścia kontrola: An error occurred when calling event handler Script #2
2020-04-03 18:56:00.156 Error: dzVents: Error: (3.0.2) Wejścia kontrola: ...domoticz/scripts/dzVents/generated_scripts/Script #2.lua:39: attempt to compare number with nil
 
Dodane : 03/04/2020 5:54 pm
isom
 isom
(@isom)
Wpisów: 5079
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

Jak to drugie to Drzwi Tył to będzie tak 

local devicesToCheck = {
-- table with doors to check and the minutes before the first warning is given
{ ['name'] = 'Stan Bramy', ['threshold'] = 20 },
{ ['name'] = 'Drzwi Tył', ['threshold'] = 10 },
}
-- number of times you are warned about an open door
local alertCount = 3 return {

on = {
timer = {'every 2 minutes'},
},
logging = {
level = domoticz.LOG_INFO,ERROR,
marker = "Wejścia kontrola"
},
-- count per door of the number of alerts per door
data = {
['Stan Bramy'] = {initial=0},
['Drzwi Tył'] = {initial=0},
}, execute = function(domoticz)
for i, deviceToCheck in pairs(devicesToCheck) do
local name = deviceToCheck['name']
local threshold = deviceToCheck['threshold']
local state = domoticz.devices(name).state
local minutes = domoticz.devices(name).lastUpdate.minutesAgo
if ( state == 'Open') then
domoticz.log('Device ' .. name .. ' staat ' .. minutes .. ' minuten open.')
if (minutes > threshold) and (domoticz.data[name] < alertCount) then
domoticz.data[name] = domoticz.data[name] + 1
domoticz.notify('Przypominam Otwarta ',
name .. ' jest ' .. minutes .. ' minut otwarta.',
domoticz.PRIORITY_HIGH)
domoticz.log(' otwarta zbyt długo ' .. tostring(domoticz.data[name]))
end
elseif (domoticz.data[name] > 0) then
domoticz.notify('Informuję ',
name .. ' już zamknięta.',
domoticz.PRIORITY_HIGH)
domoticz.log('Device ' .. name .. ' jest ' .. minutes .. ' zamknięta')
domoticz.data[name] = 0
end
end
end
}

Zaznaczyłem kolorem to co zmieniasz na włąsne i na niebiesko ile ma być powiadomień w skrypcie 3 , czasy już widzę ogarniasz 
 
Dodane : 03/04/2020 6:01 pm
(@on6222)
Wpisów: 40
Kontrybutor
Autor tematu
 

super jest ten skrypt dziękuje bardzo i życzę miłego dnia

ps.dodalem sobie jeszcze drzwi wejsciowe 

 
Dodane : 03/04/2020 6:35 pm
(@jajen)
Wpisów: 93
Pomocny Donator 2K19
 

Podbijam temat. Skrypty są super, ale czy da się rozbudować je o warunek żeby takie powiadomienie było wysyłane tylko w określonym przedziale godzin np. od 22.00 - 8.00? 

 

 
Dodane : 13/01/2021 7:16 pm
isom
 isom
(@isom)
Wpisów: 5079
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

@jajen da się i wystarczy zerknąć na dwa wątki niżej - czytać forum 

https://www.smartnydom.pl/forum/domoticz-reguly/kontaktron-dzvents/#post-17360

 
Dodane : 13/01/2021 7:55 pm
(@jajen)
Wpisów: 93
Pomocny Donator 2K19
 

@isom

Faktycznie, nie widziałem tego. Dzięki.

 
Dodane : 13/01/2021 8:01 pm
Udostępnij: