MQTT トピックの値を比較しようとしています。値をキャプチャし、logInfo() 呼び出しを介して値をコンソールに出力することに成功しました。
私がやろうとしているのは、MQTT トピックの内容を値と比較し、トピックの値に基づいて追加の openhab コマンドを実行することです。
MQTT トピックの値を取得し、.toString 操作を使用して文字列に変換することができました。
私のコードの結果は、比較の実行時にコンソールで変換エラーが発生することです。
値がキャプチャされ、コンソールに「1023」と出力されていることがわかります。
私のコードは
import org.eclipse.xtext.xbase.lib.*
import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
import java.math.BigDecimal.*
import java.lang.Integer
import java.lang.Double
import java.lang.String
import java.lang.Number
var String feedingsensor_reading
rule "start processing feeding sensor"
when
Item feedingsensor changed
then
logInfo("Step", "***********")
logInfo("Step", "** Start **")
logInfo("Stap", "***********")
logInfo("Step", "** Step 1 **")
feedingsensor_reading = feedingsensor.state.toString
logInfo("Step", feedingsensor_reading)
if (feedingsensor_reading == "0"){
logInfo("DATA", "******* Do Nothing *****")
}else
{
... other code to be executed