Gut. Dann bietet sich ein anderer Ansatz an:
switch case ist quasi ein if mit beliebig vielen Ausgängen.
Code:
rule "usv Meldung1"
when
Item SNMP_Status_APC changed or
Time cron "0 * * * * ?"
then
if (SNMP_Status_APC.state instanceof Number) {
switch (SNMP_Status_APC.state as Number) {
case 1 : local_USV_Status.sendCommand("Unbekannt")
case 2 : local_USV_Status.sendCommand("On Line")
case 3 : local_USV_Status.sendCommand("Batterie Betrieb")
case 4 : local_USV_Status.sendCommand("on Smart Boost")
case 5 : local_USV_Status.sendCommand("Timed Sleeping")
case 6 : local_USV_Status.sendCommand("Software Bypass")
case 7 : local_USV_Status.sendCommand("Aus")
case 8 : local_USV_Status.sendCommand("Neustart")
case 9 : local_USV_Status.sendCommand("Switched Bypass")
case 10 : local_USV_Status.sendCommand("Hardware Failure Bypass")
case 11 : local_USV_Status.sendCommand("Sleeping Until Power Returns")
case 12 : local_USV_Status.sendCommand("On Smart Trim")
default : logInfo ("usv1","unbekannter Status: {}",SNMP_Status_APC.state)
}
}
else
logInfo ("usv1","Status nicht initialisiert!")
end


(Hab's oben auch geändert)
Kommentar