I’ve such rule:
rule "Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - Cron"
when
Time cron "0 0/5 * * * ? *" // Co 5m
then
logInfo("rules.IB","REGRUN: Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - Cron")
logInfo("rules.IB","Testuję komunikację MQTT dla modułu ESP Ekran projektora (Cron)...")
ESP_PScreen_TestCom.sendCommand(ON)
end
rule "Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - CommCheck"
when
Item ESP_PScreen_TestCom changed to ON
then
logInfo("rules.IB","REGRUN: Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - CommCheck")
logInfo("rules.IB","Testuję komunikację MQTT dla modułu ESP Ekran projektora...")
createTimer(now.plusSeconds(ESPTestComDelay), [|
if(ESP_PScreen_Wej1byTestCom.state == 1) {
ESP_PScreen_TestCom.sendCommand(OFF)
createTimer(now.plusSeconds(ESPTestComDelay), [|
if(ESP_PScreen_Wej1byTestCom.state == 1) {...
and in my logs I can see:
[rules.log] 2020-10-15 10:10:00.005 [INFO ] [ipse.smarthome.model.script.rules.IB] - REGRUN: Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - Cron
[rules.log] 2020-10-15 10:10:00.006 [INFO ] [ipse.smarthome.model.script.rules.IB] - Testuję komunikację MQTT dla modułu ESP Ekran projektora (Cron)...
[event.log] 2020-10-15 10:10:00.018 [ome.event.ItemCommandEvent] - Item 'ESP_PScreen_TestCom' received command ON
[event.log] 2020-10-15 10:10:00.044 [nt.ItemStatePredictedEvent] - ESP_PScreen_TestCom predicted to become ON
[rules.log] 2020-10-15 10:10:00.047 [INFO ] [ipse.smarthome.model.script.rules.IB] - REGRUN: Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - CommCheck
[rules.log] 2020-10-15 10:10:00.047 [INFO ] [ipse.smarthome.model.script.rules.IB] - Testuję komunikację MQTT dla modułu ESP Ekran projektora...
[event.log] 2020-10-15 10:10:02.959 [vent.ItemStateChangedEvent] - ESP_PScreen_TestCom changed from OFF to ON
[event.log] 2020-10-15 10:10:02.960 [vent.ItemStateChangedEvent] - ESP_PScreen_Wej1byTestCom changed from 0 to 1
[event.log] 2020-10-15 10:10:05.048 [ome.event.ItemCommandEvent] - Item 'ESP_PScreen_TestCom' received command OFF
[event.log] 2020-10-15 10:10:05.053 [nt.ItemStatePredictedEvent] - ESP_PScreen_TestCom predicted to become OFF
[event.log] 2020-10-15 10:10:05.055 [vent.ItemStateChangedEvent] - ESP_PScreen_TestCom changed from ON to OFF
[rules.log] 2020-10-15 10:10:10.049 [INFO ] [ipse.smarthome.model.script.rules.IB] - UWAGA: Wystąpił problem z komunikacją MQTT z modułem ESP Ekran projektora (1; [event.log] ESP_PScreen_Wej1byTestCom.state=1)!
[event.log] 2020-10-15 10:10:10.052 [ome.event.ItemCommandEvent] - Item 'InfoToSend' received command UWAGA: Wystąpił problem z komunikacją MQTT z modułem ESP Ekran projektora (1; ESP_PScreen_Wej1byTestCom.state=1)!
[event.log] 2020-10-15 10:10:10.054 [ome.event.ItemCommandEvent] - Item 'ESP_PScreen_ComErr' received command ON
[event.log] 2020-10-15 10:10:10.054 [ome.event.ItemCommandEvent] - Item 'ESP_PScreen_TestCom' received command OFF
[event.log] 2020-10-15 10:10:10.064 [nt.ItemStatePredictedEvent] - ESP_PScreen_TestCom predicted to become OFF
[event.log] 2020-10-15 10:10:10.070 [vent.ItemStateChangedEvent] - InfoToSend changed from Komunikacja MQTT z modułem ESP Ekran projektora działa poprawnie (1). to UWAGA: Wystąpił problem z komunikacją MQTT z modułem ESP Ekran projektora (1; ESP_PScreen_Wej1byTestCom.state=1)!
[event.log] 2020-10-15 10:10:10.093 [vent.ItemStateChangedEvent] - ESP_PScreen_ComErr changed from OFF to ON
[event.log] 2020-10-15 10:10:11.434 [vent.ItemStateChangedEvent] - ESP_PScreen_Wej1byTestCom changed from 1 to 0
What is strange, that fraze:
[rules.log] 2020-10-15 10:10:00.047 [INFO ] [ipse.smarthome.model.script.rules.IB] - REGRUN: Sprawdzenie komunikacji via MQTT - Moduł ESP_PScreen - CommCheck
appear (more then 2s) before:
[event.log] 2020-10-15 10:10:02.959 [vent.ItemStateChangedEvent] - ESP_PScreen_TestCom changed from OFF to ON