Hello. My rule file (testrule.rules):
val MyEmail = "my_email@email.com"
val UKEmail = "service@service.com"
val EmailSubject = "Counters state"
val EmailAction = getActions("mail", "mail:smtp:c54071a235")
val PushAction = getActions("pushover", "pushover:pushover-account:b03d58c4f9")
val MailFailedText = "Email send error"
rule "Send water counters to e-mail and PUSH"
when
Time cron "0 0 9 15 * ?"
then
if (Poseidon_Hotwatercounter.state instanceof Number && Poseidon_Coldwatercounter.state instanceof Number) {
val HotWaterText = "Hot: " + Math::round((Poseidon_Hotwatercounter.state as Number).floatValue / 1000).toString + " Š¼Ā³"
val ColdWaterText = "Cold: " + Math::round((Poseidon_Coldwatercounter.state as Number).floatValue / 1000).toString + " Š¼Ā³"
val TotalString = HotWaterText + "\n" + ColdWaterText
if ( ! EmailAction.sendMail(UKEmail, EmailSubject, TotalString + "\nSomeText"))
PushAction.sendMessage(MailFailedText, PushHeader)
if ( ! EmailAction.sendMail(MyEmail, EmailSubject, TotalString))
PushAction.sendMessage(MailFailedText, PushHeader)
PushAction.sendMessage(TotalString, PushHeader)
}
else
{
if ( ! EmailAction.sendMail(MyEmail, "Counters TX error", "Check states"))
PushAction.sendMessage(MailFailedText, PushHeader)
PushAction.sendMessage("States error", EmailSubject)
}
end
At the moment the rule is triggered, I receive this message in the logs:
DSL rule problem. Script execution of rule with UID 'testrule-1' failed: null in testrule
What i am doing wrong?