Shelly Plus 1PM: Wie frage ich den aktuellen Verbrauch mit curl ab

  • Hallo zusammen,

    kann mir jemand sagen, wie ich auf meinem (nagelneuen, ersten) Shelly Plus 1PM die aktuelle Leistung via http (also curl oder ähnliches) direkt im Device abfrage ?

    Zugriff auf die Device-Webseite habe ich, da steht die Leistung ja auch drauf.

    Mein Suchen bei Google und in der Shelly-API-Dokumentation blieben leider erfolglos:

    [script] [/script]

    [script]curl --anyauth -u"admin:$PW" -vvv -X POST -d '{"id":1,"method":"EM.GetStatus","params":{"id":0}}' http://%24%7bshelly%7d/rpc [/script]

    [script]Note: Unnecessary use of -X or --request, POST is already inferred. [/script]

    [script]* Trying 172.20.16.162:80... [/script]

    [script]* Connected to 172.20.16.162 (172.20.16.162) port 80 (#0) [/script]

    [script]> POST /rpc HTTP/1.1 [/script]

    [script]> Host: 172.20.16.162 [/script]

    [script]> User-Agent: curl/8.1.2 [/script]

    [script]> Accept: */* [/script]

    [script]> Content-Length: 50 [/script]

    [script]> Content-Type: application/x-www-form-urlencoded [/script]

    [script]> [/script]

    [script]< HTTP/1.1 200 OK [/script]

    [script]< Server: Mongoose/6.18 [/script]

    [script]< Content-Type: application/json [/script]

    [script]< Access-Control-Allow-Origin: * [/script]

    [script]< Access-Control-Allow-Headers: * [/script]

    [script]< Content-Length: 106 [/script]

    [script]< Connection: close [/script]

    [script]< [/script]

    [script]{"id":1,"src":"shellyplus1pm-4855199d6870","error":{"code":404,"message":"No handler for EM.GetStatus"}} [/script]

    [script]* Closing connection 0 [/script]

    [script][/script]

    - Authentication ist eingerichtet, Zugriff funktioniert.

    Aber offensichtlich ist mir unklar, was ich gernau abfragen muss.

    Vielen Dank für eure Unterstützung.

    Uli

  • Hallo Uli,

    wenn ich es richtig sehe, versuchst du mit User und Passwort eine Abfrage. Die Plus und Pro Geräte unterstützen dies nicht. Es geht nur, wenn du kein Passwort für den Zugriff benötigst.

    Gruß

    SeRef

  • Danke für die Antwort,

    aber ich glaube, das ist es nicht.

    Gerade mal die Authentication abgeschaltet - gleiches Phänomen:

    Gruß

    Uli

  • Das ist der Befehl aus der offiziellen Dokumentation

    Code
    curl -X POST -d '{"id":1,"method":"EM.GetStatus","params":{"id":0}}' http://${SHELLY}/rpc

    Das funktioniert so definitiv aber halt nur mit einem Shelly welcher auch einen EM Befehl kennt und das ist bei GEN2 lediglich der Shelly Pro 3EM der Plus 1PM ist kein Messaktor.


    Edit: Musste noch suchen das sollte der richtige Befehl für dich sein:

    Code
    curl -X POST -d '{"id":1,"method":"Switch.GetStatus","params":{"id":0}}' http://${SHELLY}/rpc
    Switch | Shelly Technical Documentation
    The Switch component handles a switch (relay) output terminal with optional power metering capabilities. It uses Switch as RPC namespace and provides the…
    shelly-api-docs.shelly.cloud

    Einmal editiert, zuletzt von Devil (28. Juni 2023 um 09:18)