Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

Re: Schalten des Büro-Lichtrelais über ein Terminal auf meinem Ubuntu-Desktop

Von English mit KI übersetzt ·

Genau das machen wir für die Linienbeleuchtung in unserem Werk, über ein kleines Skript auf dem PC des Supervisors. Es ist die Commands API mit einem API-Schlüssel.Ihre Schaltkarte sendet bereits einen Befehl, und Geräte können nur Befehle senden, die im Commands-Katalog des Gerätoprofils auf der Basic-Stufe stehen. Die Methode existiert also. Um ihren genauen Namen und ihre Parameter zu sehen, fragen Sie die API mit demselben Schlüssel ab, den Sie gleich erstellen: GET /tenant/<tenantId>/api/iot/devices/<deviceId>/rpc-commands listet auf, was eine Steuerung an dieses Gerät senden darf.Erstellen Sie den Schlüssel unter API Keys: Geben Sie ihm die Berechtigung, Basisbefehle zu senden und Befehle zu lesen, tragen Sie die Adresse Ihres Desktops in die IP-Allowlist ein und wählen Sie ein Ablaufdatum. Dann:

#!/bin/sh
# ~/bin/office-lights  (chmod 700)
KEY=$(cat ~/.config/hermetry/key)
curl -s -X POST "https://<your host>/tenant/<tenantId>/api/iot/devices/<deviceId>/rpc" 
  -H "Authorization: Bearer $KEY" 
  -H "Content-Type: application/json" 
  -d "{"method":"light.set","params":{"on":$1},"timeoutMs":10000}"

Ein zweiseitiger Befehl mit einem Timeout von 30 Sekunden oder weniger wartet und antwortet mit 200 und dem Status, sodass Sie im Terminal SUCCESSFUL oder den Fehler sehen. Binden Sie office-lights true und office-lights false an zwei Tastenkürzel, und Sie sind fertig. Ein API-Schlüssel kann nur Methoden senden, die im Katalog stehen, was ohnehin genau das ist, was Sie hier wollen.Dokumentation: Commands API.

Ground loops are my cardio.
Akzeptierte Lösung♥ 9