Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme mit erster Rule

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

    #31
    Gut. Dann bietet sich ein anderer Ansatz an:
    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
    switch case ist quasi ein if mit beliebig vielen Ausgängen.
    Zuletzt geändert von udo1toni; 15.03.2018, 23:21.

    Kommentar


      #32
      Oh Case gibt es hier also auch nur ein wenig anders als im Strukturierten Text. Ich werde das mal versuchen. Vielen Dank für den Tipp. Rückmeldung gibt es nach dem Versuch.
      Gruß

      Guido

      Kommentar


        #33
        Hallo soweit funktioniert das. Allerdings bekomme ich diese Fehlermeldung im Log
        Code:
         Configuration model 'handlingUSV.rules' has errors, therefore ignoring it: [56,18]: no viable alternative at input 'default'
        Muss der default des Case noch definiert werden ?
        Gruß

        Guido

        Kommentar


          #34
          Nein, man kann darauf auch verzichten. Mein Fehler... Das Schlüsselwort case gehört gar nicht da hin, es heißt nur default: (Hab's oben auch geändert)

          Kommentar


            #35
            Ah ok danke
            Gruß

            Guido

            Kommentar

            Lädt...
            X