All checks were successful
Build & Deploy docs / build-deploy (push) Successful in 4m0s
Le badge PUBLIC de PermissionScopeNone devient AUTH : sur un transport authentifié, nymea exige un token valide pour toute méthode sauf JSONRPC.Hello, Authenticate et RequestPushButtonAuth (jsonrpcserverimplementation.cpp, tag 1.15.2). « Lecture publique, aucun token requis » était faux, en trois langues. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
49 lines
2.0 KiB
Markdown
49 lines
2.0 KiB
Markdown
---
|
|
hide:
|
|
- toc
|
|
---
|
|
|
|
|
|
!!! info "Referenz auf Englisch"
|
|
Methoden-, Feld- und Typnamen sowie die Beschreibungen unten sind die der
|
|
API selbst, **auf Englisch**. Sie bleiben unverändert: es sind genau die
|
|
Zeichenketten, die Sie in Ihren Anfragen schreiben. Übersetzt sind nur die
|
|
erläuternden Seiten.
|
|
# JSON-RPC-API-Referenz
|
|
|
|
ETM PowerSync stellt die **JSON-RPC-API von nymea** lokal bereit, einschließlich
|
|
der ETM-Erweiterungen (`Energy`, `AirConditioning`, `EvDash`).
|
|
|
|
## Verbindung
|
|
|
|
| Modus | Adresse | Hinweise |
|
|
| --- | --- | --- |
|
|
| **Rohes TCP** | `<ip>:2222` | nymea spricht zuerst (Welcome-JSON, `\n`-getrennt) |
|
|
| **WebSocket** | `ws://<ip>:4444` | der Client sendet zuerst `JSONRPC.Hello` |
|
|
|
|
## Authentifizierung
|
|
|
|
1. [`JSONRPC.Authenticate`](metier/jsonrpc.md#jsonrpcauthenticate) mit
|
|
`username`, `password` und `deviceName` aufrufen → man erhält ein `token`.
|
|
2. Das `token` in jede weitere Anfrage aufnehmen.
|
|
3. Push aktivieren: `JSONRPC.SetNotificationStatus` `{ "enabled": true }`.
|
|
|
|
## Energie-Konventionen
|
|
|
|
| Größe | Konvention |
|
|
| --- | --- |
|
|
| PV-Erzeugung | **negativer Wert** (Erzeugerkonvention) |
|
|
| `currentPowerAcquisition` | Netz — positiv = Bezug, 0 bei Einspeisung |
|
|
| `currentPowerStorage` | Speicher — positiv = Laden, negativ = Entladen |
|
|
| Energiesummen | in **kWh** |
|
|
| Zeitstempel | in **Sekunden** (Unix-Epoch) |
|
|
|
|
## Berechtigungs-Badges
|
|
|
|
| Badge | Scope | Beschreibung |
|
|
| --- | --- | --- |
|
|
| <span class="badge perm-none">AUTH</span> | `PermissionScopeNone` | Jedes angemeldete Konto (Token nötig, sobald der Transport Authentifizierung verlangt; nur `JSONRPC.Hello`, `Authenticate` und `RequestPushButtonAuth` gehen ohne) |
|
|
| <span class="badge perm-control">CONTROL</span> | `PermissionScopeControlThings` / `ExecuteRules` | Steuerung von Geräten und Regeln |
|
|
| <span class="badge perm-configure">CONFIGURE</span> | `PermissionScopeConfigureThings` / `ConfigureRules` | Konfiguration |
|
|
| <span class="badge perm-admin">ADMIN</span> | `PermissionScopeAdmin` | Systemadministration |
|