Probleme rules

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Hille
Beiträge: 49
Registriert: 2. Jan 2018 13:59
Answers: 0

Probleme rules

Beitrag von Hille »

Ich möchte, beim Überschreiten einer bestimmten Temperatur, ein Mail versenden (die Temperatur wird korrekt in der Sitemap angezeigt).

Code: Alles auswählen

rule "Temp_Mail"
when
    Item Temp_Mail changed

then
var State = Temp_Mail.state as DecimalType
if (State >= 20) {
  sendMail("mail.domain.tld","Temperatur wurde überschritten")
}
end
Hier noch das item

Code: Alles auswählen

String Temp_Mail "Temperatur [%s °C]" {channel="exec:command:temp_mail:output"}
Nun erhalte ich folgende Meldung im Log

Code: Alles auswählen

[ntime.internal.engine.RuleEngineImpl] - Rule 'Temp_Mail': Could not cast 25 to org.eclipse.smarthome.core.library.types.DecimalType; line 8, column 13, length 30
Vermutlich, weil das item als String definiert wurde. Wie müsste ich nun die rules ändern?

hr3
Beiträge: 210
Registriert: 23. Mai 2017 21:41
Answers: 0

Re: Probleme rules

Beitrag von hr3 »


Hille
Beiträge: 49
Registriert: 2. Jan 2018 13:59
Answers: 0

Re: Probleme rules

Beitrag von Hille »

Ich habe das in den rules und item angepasst. Leider bekomme ich nun keine Ausgabe der Temperatur mehr

Code: Alles auswählen

Number Temp_Mail "Temperatur [%.0f °C]" {channel="exec:command:temp_mail:output"}

hr3
Beiträge: 210
Registriert: 23. Mai 2017 21:41
Answers: 0

Re: Probleme rules

Beitrag von hr3 »

Gemeint ist nur die Zeile in rules nicht das Item.

Hille
Beiträge: 49
Registriert: 2. Jan 2018 13:59
Answers: 0

Re: Probleme rules

Beitrag von Hille »

hr3 hat geschrieben: 17. Jan 2018 12:58 Gemeint ist nur die Zeile in rules nicht das Item.
Hatte ich falsch verstanden, habe es geändert. Nun kommt folgende Meldung

Code: Alles auswählen

[ntime.internal.engine.RuleEngineImpl] - Rule 'Temp_Mail': Could not cast 27 to java.lang.Number; line 7, column 13, length 25

hr3
Beiträge: 210
Registriert: 23. Mai 2017 21:41
Answers: 0

Re: Probleme rules

Beitrag von hr3 »

das funktioniert bei mir

Code: Alles auswählen

val State = Integer::parseInt(Temp_Mail.state.toString)

Hille
Beiträge: 49
Registriert: 2. Jan 2018 13:59
Answers: 0

Re: Probleme rules

Beitrag von Hille »

Habe ich geändert. Nun sieht die rule so aus

Code: Alles auswählen

rule "Temp_Mail"
when
    Item Temp_Mail changed

then

val State = Integer::parseInt(Temp_Mail.state.toString)
if (State >= 20) {
  sendMail("mail@domain.tld","Temperatur wurde überschritten")
}
end
Folgende Meldung ist nun im Log

Code: Alles auswählen

Rule 'Temp_Mail': An error occurred during the script execution: index=2, size=2
P.S. kurze Ergänzung, nach einem Reboot kommt diese Meldung

Code: Alles auswählen

The name 'sendMail' cannot be resolved to an item or type

Hille
Beiträge: 49
Registriert: 2. Jan 2018 13:59
Answers: 0

Re: Probleme rules

Beitrag von Hille »

Habe es nun hinbekommen. Die Konfiguration der mail.cfg hat gefehlt. Danke nochmal für die Unterstützung.

Antworten