Ankündigung

Einklappen
Keine Ankündigung bisher.

HTTP-Request im JSON_Format in Rule analysieren

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

    HTTP-Request im JSON_Format in Rule analysieren

    Hallo zusammen,

    ich suche nach eine Möglichkeit mit openHAB 1.5.0 das Ergebnis eines REST-Request welches im JSON-Format zurückgeliefert wird zu analysieren.

    Aktuell habe ich das so gelöst.

    .items
    Code:
    Switch swTest_REST2      "Direktes schalten"              <switch>      (grTEST)   { http=">[ON:POST:http://10.7.3.50/digital/7/1] >[OFF:POST:http://10.7.3.50/digital/7/0]"}
    Switch swRefresh         "Änderung auf dem Arduino"       <siren>       (grTEST)
    .rules
    Code:
    rule "REFERSH"
        when Item swRefresh received update then
            var String StatusButton = sendHttpGetRequest("http://10.7.3.50/digital/7")
            var int iValueStartsAt = StatusButton.indexOf("{\"return_value\": ") + "{\"return_value\": ".length
            var String sStatus = StatusButton.mid(iValueStartsAt, StatusButton.indexOf(",")-iValueStartsAt )
            if (sStatus == "1") {
                swTest_REST2.postUpdate("ON")
            } else {
                swTest_REST2.postUpdate("OFF")
            }
    end
    Der Arduion meldet sich jetzt bei openHAB mit der Info, dass sich etwas am Status des Switch geändert hat.

    openhab fragt den Arduino via REST ab und bekommt den aktuellen Status als JSON-String {"return_value": 0, "id": "001", "name": "workroom", "connected": true} zurück. Mich interessiert jetzt der return_value.

    Gibt es eine einfachere Möglichkeit diesen return_value zu ermitteln?

    Gruß
    symar

    #2
    Ich habe eine Lösung gefunden.

    https://groups.google.com/forum/#!searchin/openhab/JSON$20sendHttpGetRequest$20rule/openhab/H7fm4S5gkhw/ZgXDkABsyL8J

    Vielleicht hilft es ja dem nächsten weiter.

    Gruß
    symar

    Kommentar


      #3
      Hallo Symar,

      Hast du in der Zwischenzeit bereits eine Lösung gefunden?
      Leider komme ich mit deinem Link nicht weiter.

      Gruß
      Mepi0011

      Kommentar

      Lädt...
      X