JQuery auf der VU

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • JQuery auf der VU

      Hallo VUler

      ich versuche grade den Status vom Rademacher Aktor zu lesen um mir diesen im Infofenster anzuzeigen.

      aktuelle versuche ich es mit

      curl "http://192.168.1.130/deviceajax.do?device=10008" 2>/dev/null | jq -r '.device.position'
      (der PI gibt 0 oder 100 aus)

      Was auf dem PI super funtz aber bei der VU fehlt mir jquery was ich gerne nachinstallieren möchte aber gibt es wohl nicht oder? kann mir hier jemand helfen?
      Versucht habe ich es mit:

      opkg install jq oder auch JQuery usw.

      Der ganze Response sieht folgt aus, vielleicht kennt jemand eine andere Möglichkeit den Wert zu lesen.
      Spoiler anzeigen
      {"response" : "get_device", "status" : "ok", "device" : {"did":10008,"name":"Wohnzimmer","description":"","initialized":1,"position":0,"productName":"DuoFern Universal-Aktor 2-Kanal","serial":"43 2F 1C","statusesMap":{"Position":0,"Manuellbetrieb":100},"status_changed":1604386624,"deviceGroup":1,"iconSet":{"name":"Deckenlampe","description":"Deckenlampe Icon-Set","strMin":"An","strMax":"Aus","valMax":100,"valMin":0,"sprite":{ "imageUri" : "images/sets/deckenlampe1.png", "numTiles" : 5 },"k":"iconset4"},"iconSetInverted":0,"paired":0,"statusValid":true,"uid":"432F1C_1","visible":true,"groups" : [ ] ,"favoredId":-1,"properties":{"rain":3,"smartphone":3,"motion":3,"dusk":3,"smoke":3,"favored":3,"trigger":2,"manual":3,"sun":3,"generic":3,"closingContact":3,"temperature":3,"temperator":3,"warning":3,"dawn":3,"time":1,"dust":3,"wind":3,"states":[{"cfgKey":"setAutomationOverall","cfgId":99,"state":1},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"setMorningAuto","cfgId":103,"state":0},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"setSunAuto","cfgId":105,"state":0},{"cfgKey":"null","cfgId":0,"state":0},{"cfgKey":"setEveningAuto","cfgId":107,"state":0},{"cfgKey":"setTimeAuto","cfgId":101,"state":0},{"cfgKey":"null","cfgId":0,"state":0}]},"sortId":0,"sTypes":[],"version":"1.0","sync":-2147470799,"messages":[],"hasErrors":0,"autos":[1,3,0,2,4]} }
      Gruß
      PiT

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von hgdo ()

    • jq ist nicht jQuery! jQuery selber ist sehr wohl auf der Box vorhanden, und zwar im public/js-Verzeichnis vom OpenWebif, aber das hilft dir hier wohl nicht.

      Die beste Möglichkeit: das was du parsen möchtest mit einem sehr einfachen Python-Script bauen (und darin json.loads() benutzen).
      Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von rdamas ()

    • ich habe das jetzt so gelöst..

      Danke für dein Feedback.

      Quellcode

      1. # -*- coding: utf-8 -*-
      2. import json
      3. from collections import namedtuple
      4. import requests
      5. jsonData = requests.get(r'http://192.168.1.130/deviceajax.do?device=10008', verify=False).text.strip()
      6. #print jsonData
      7. # Parse JSON into an object with attributes corresponding to dict keys.
      8. x = json.loads(jsonData, object_hook=lambda d: namedtuple('X', d.keys())(*d.values()))
      9. ##print x.name, x.hometown.name, x.hometown.id
      10. #print x.device.position
      11. f0 = open("/tmp/txtfile.txt", "w")
      12. f0.write (str(x.device.position))
      13. f0.close()
      Alles anzeigen
    • Hallo VUler,

      ich habe mir jetzt mal den Homepilot3 gegönnt und muss dir Skripte anpassen das sich die Anfragen und Antwort via cURL geändert haben, ich komme nicht wirklich mit JSON klar und stolpere immer an den name:
      Ich benötige den value von:

      {"name":"CURR_SWITCH_POS_CFG","value":"false","read_only":false,"timestamp":1608298047},

      Kann mir da jemand auf die Beine helfen? danke.

      Der ganze Response sieht folgt aus:

      Quellcode

      1. {"error_description":"OK","error_code":0,"payload":
      2. {"device":
      3. {"capabilities":
      4. [
      5. {"name":"STAIRWAY_MODE_CFG","value":"false","read_only":false,"timestamp":1608298047},
      6. {"name":"POS_UP_CMD","read_only":false,"timestamp":-1},
      7. {"name":"VERSION_CFG","value":"3.0-1","read_only":false,"timestamp":1608298047},
      8. {"name":"INC_CMD","read_only":false,"timestamp":-1},
      9. {"name":"PROD_CODE_DEVICE_LOC","value":"35000262","read_only":false,"timestamp":-1},
      10. {"name":"REACHABILITY_EVT","value":"true","read_only":true,"timestamp":1608298047},
      11. {"name":"TURN_OFF_CMD","read_only":false,"timestamp":-1},
      12. {"name":"RESET_WO_PAIR_CMD","read_only":false,"timestamp":-1},
      13. {"name":"CONTACT_OPEN_CMD","read_only":false,"timestamp":-1},
      14. {"name":"NAME_DEVICE_LOC","value":"Küche-Wohnzimmer","read_only":false,"timestamp":-1},
      15. {"name":"PROT_ID_DEVICE_LOC","value":"432f1c_2","read_only":false,"timestamp":-1},
      16. {"name":"INTF_ID_DEVICE_LOC","value":"3","read_only":false,"timestamp":-1},
      17. {"name":"GOTO_DAWN_POS_CMD","read_only":false,"timestamp":-1},
      18. {"name":"ICONSET_LOC","value":"iconset4","read_only":false,"timestamp":-1},
      19. {"name":"STAIRWAY_DUR_CFG","value":"180.0","min_value":"0.0","max_value":"3276.5","step_size":"0.1","read_only":false,"timestamp":1608298047},
      20. {"name":"DEVICE_TYPE_LOC","value":"1","read_only":false,"timestamp":-1},
      21. {"name":"TURN_ON_CMD","read_only":false,"timestamp":-1},
      22. {"name":"ICONSET_INV_LOC","value":"false","read_only":false,"timestamp":-1},
      23. {"name":"RMT_STOP_PAIR_CMD","read_only":false,"timestamp":-1},
      24. {"name":"VOICE_CONTROLLED_LOC","value":"","read_only":false,"timestamp":-1},
      25. {"name":"DUSK_AUTO_CFG","value":"false","read_only":false,"timestamp":1608298047},
      26. {"name":"REQ_STATUS_CMD","read_only":false,"timestamp":-1},
      27. {"name":"AUTO_MODE_CFG","value":"true","read_only":false,"timestamp":1608298047},
      28. {"name":"DAWN_AUTO_CFG","value":"false","read_only":false,"timestamp":1608298047},
      29. {"name":"RESET_FULL_CMD","read_only":false,"timestamp":-1},
      30. {"name":"PUSH_CMD","read_only":false,"timestamp":-1},
      31. {"name":"PAIRING_CONFIRMED_LOC","value":"true","read_only":false,"timestamp":-1},
      32. {"name":"ID_DEVICE_LOC","value":"10007","read_only":false,"timestamp":-1},
      33. {"name":"PROTOCOL_ID_CFG","value":"432f1c","read_only":false,"timestamp":-1},
      34. {"name":"CURR_SWITCH_POS_CFG","value":"false","read_only":false,"timestamp":1608298047},
      35. {"name":"CONTACT_CLOSE_CMD","read_only":false,"timestamp":-1},
      36. {"name":"RMT_START_PAIR_CMD","read_only":false,"timestamp":-1},
      37. {"name":"SUN_PROG_ACTIVE_EVT","value":"false","read_only":true,"timestamp":1608298047},
      38. {"name":"GOTO_DUSK_POS_CMD","read_only":false,"timestamp":-1},
      39. {"name":"SUN_START_CMD","read_only":false,"timestamp":-1},
      40. {"name":"SUN_STOP_CMD","read_only":false,"timestamp":-1},
      41. {"name":"SUN_AUTO_CFG","value":"false","read_only":false,"timestamp":1608298047},
      42. {"name":"STOP_CMD","value":"false","read_only":false,"timestamp":-1},
      43. {"name":"VIS_DEVICE_LOC","value":"true","read_only":false,"timestamp":-1},
      44. {"name":"RMT_START_UNPAIR_CMD","read_only":false,"timestamp":-1},
      45. {"name":"INVERSE_MODE_CFG","value":"false","read_only":false,"timestamp":1608298047},
      46. {"name":"POS_DOWN_CMD","read_only":false,"timestamp":-1},
      47. {"name":"DESCR_DEVICE_LOC","value":"","read_only":false,"timestamp":-1},
      48. {"name":"TIME_AUTO_CFG","value":"true","read_only":false,"timestamp":1608298047},
      49. {"name":"PING_CMD","read_only":false,"timestamp":-1},
      50. {"name":"DEC_CMD","read_only":false,"timestamp":-1}
      51. ],
      52. "scenes":
      53. [
      54. {"id":5025,"name":"Panik","description":"Panik an (Alexa)"},
      55. {"id":5029,"name":"nix passiert","description":"Panik aus (Alexa)"},
      56. {"id":5066,"name":"Urlaub Winter_3_ein","description":""},
      57. {"id":5069,"name":"Urlaub Winter_aus","description":""},
      58. {"id":5045,"name":"Feuer","description":"Rauchmeldung (Alexa)"},
      59. {"id":5046,"name":"Rauchmeldung 2","description":"Rauchmeldung 2"},
      60. {"id":5047,"name":"alles Aus hoch","description":"alles Aus Rollos hoch"
      61. }]}}}
      Alles anzeigen