Ankündigung

Einklappen
Keine Ankündigung bisher.

Condition_ID mit Wert vergleichen schlägt fehl

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Condition_ID mit Wert vergleichen schlägt fehl

    Hallo,

    ich kann die Condition_ID vom Binding org.openhab.binding.weather-1.8.3 nicht in einer Rule vergleichen^^
    Rules:
    Code:
    rule "TestTest"
    when
        Item Testnummer changed
    then
        logInfo("TESTEST", "Status_Condition_ID: " + Condition_ID.state)
        [B]if(Condition_ID.state >= 300){[/B]
            logInfo("TESTEST", "Ergebnis: " + Condition_ID.state)
        }
    end
    ITEMS:
    Code:
        [B]String[/B]   Condition_ID  "Wetter id [%s]"  (gweather)  {weather="locationId=home-OWM, type=condition, property=id"}
    Log:
    Code:
    2016-07-28 12:04:41.034 [INFO ] [g.openhab.model.script.TESTEST] - Status_Condition_ID: 500
    Da 500 > 300 würde ich erwarten das auch das "Ergebnis" angezeigt wird?! Wird aber nicht. Ich vermute das Problem ist, dass es sich hier um einen String handelt den ich nicht mit einer Zahl vergleichen kann? Wie kriege ich das hin?

    Danke
    Zuletzt geändert von edvtalker; 28.07.2016, 12:17.

    #2
    Sowas geht übrigens auch nicht:
    Code:
    if([B]([/B]Condition_ID.state[B]).intValue [/B]>= 300){
    Da bekomme ich im Log:
    Code:
    2016-07-28 12:52:20.887 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'TestTest': The name '<XMemberFeatureCallImplCustom>.intValue' cannot be resolved to an item or type.

    Kommentar


      #3
      Lösung:
      Code:
      var Number Condition_ID_INT = Integer::parseInt(Condition_ID.state.toString)

      Kommentar

      Lädt...
      X