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

Attribute

Client-, Shared- und Server-Attribute – wer sie schreibt, Regeln für Schlüssel und Werte, cfg.*-Soll-Konfiguration mit In-sync-Status, der Tab Attributes, API und Audit.

Attribute sind benannte Werte, die ein Gerät beschreiben oder konfigurieren, im Gegensatz zu Telemetrie, einer Zeitreihe von Messwerten. Eine Firmware-Version, eine Seriennummer, ein Meldeintervall, ein gerätespezifischer Alarmgrenzwert oder eine Raumnummer sind Attribute. Jedes Attribut behält nur seinen aktuellen Wert und den Zeitpunkt seiner letzten Änderung.

Die drei Bereiche

BereichAngezeigt alsGeschrieben vonSichtbar für das GerätTypische Verwendung
ClientClientdas Gerätes selbstFirmware-Version, IP-Adresse, Fähigkeiten, die angewendete Konfiguration
SharedShareddie Cloud: Personen, die API, Regeln, Flows, Firmware-Updatesja, bei Änderung übertragenSoll-Konfiguration (cfg.*), Firmware-Angebote (fw_*)
ServerServerdie CloudnieGerätespezifische Grenzwerte für Alarmregeln, Notizen, Inventarnummern, Daten für Dashboards

„Shared-Attribute werden an das Gerät gesendet.“ „Server-Attribute bleiben auf der Plattform.“ „Client-Attribute werden vom Gerät gemeldet und können hier nicht geändert werden.“

Der Tab Attribute

Öffnen Sie das Gerät und dessen Tab Attributes. Wählen Sie den Bereich (Server, Shared, Client) und verwenden Sie Search keys and values. Jede Zeile zeigt den Key, den Value, den Zeitpunkt der Änderung Updated und bei Konfigurationsschlüsseln deren Sync-Status.

Zum Hinzufügen oder Ändern eines Wertes benötigen Sie die Berechtigung Write server and shared device attributes (standardmäßig Administratoren):

  1. Wählen Sie Add attribute (oder Edit in einer Zeile).
  2. Geben Sie den New key und den Value als JSON ein: eine Zahl (300), true oder false, "text" in Anführungszeichen, ein Array oder ein Objekt.
  3. Speichern. Delete entfernt einen Schlüssel, nachdem Sie Delete key? bestätigt haben.

Werte mit der Markierung Write-only sind geheime Konfigurationswerte: Sie können gesetzt, aber nie wieder ausgelesen werden.

Regeln für Schlüssel

  • Bis zu 128 Zeichen aus A–Z a–z 0–9 _ . -, groß- und kleinschreibungsabhängig.
  • deleted ist nie ein Schlüssel, und Schlüssel, die mit _ beginnen, sind für die Plattform reserviert.
  • Personen, die API und Flows dürfen keine Schlüssel schreiben, die die Plattform oder das Gerät besitzt: fw_* und current_fw_* (Firmware), Schlüssel, die auf .state oder .reason enden, die Verwaltungsschlüssel des Geräts (cfg_rejected, cfg_applied_ts, cfg_hash, attr_error, rpc_result, cert_not_after, time_quality) und session_limits.
  • cfg.*-Schlüssel sind ausschließlich Shared-Attribute.
  • Andere Shared-Schlüssel sind höchstens 57 Zeichen lang, damit die Antwort des Geräts <key>.reason noch in das Geräteschlüssel-Limit von 64 Zeichen passt.

Regeln für Werte

ElementGrenzwert
Verschachtelungstiefe8 Ebenen
Ein Server- oder Client-Wert64 KiB
Ein Shared-WertMuss in das Downlink-Limit des Geräts passen (standardmäßig 64 KiB, 4 KiB für lizenzierte Geräte)
nullKein Wert: Löschen Sie stattdessen den Schlüssel

Die Geräteseite

Client-Attribute senden (nur geänderte Schlüssel werden gesendet):

PUBLISH v1/attributes
{"current_fw_title": "boiler-fw", "current_fw_version": "26.10.2", "lan.ip": "192.168.1.1"}

Attribute abfragen, zum Beispiel nach jeder Verbindung:

PUBLISH v1/attributes/req/7
{"clientKeys": "current_fw_version,lan.ip", "sharedKeys": "cfg.telemetry.interval_s"}

answer on v1/attributes/res/7
{"client": {...}, "shared": {...}}

Eine leere Anfrage {} liefert alle Shared-Attribute. Ein Eintrag in der Schlüsselliste, der auf .* endet (zum Beispiel cfg.*), fragt alle Schlüssel mit diesem Präfix ab.

Shared-Änderungen empfangen auf v1/attributes/set. Es werden nur geänderte Schlüssel gesendet. Ein entfernter Schlüssel kommt als {"deleted": ["cfg.wifi.guest.enabled"]} an. Wenden Sie Aktualisierungen idempotent an: Eine Nachricht kann zweimal eintreffen.

Alle Topics finden Sie in der MQTT-Topics- und Payload-Referenz.

Konfigurationsschlüssel (cfg.*)

Shared-Attribute, die mit cfg. beginnen, sind die Soll-Konfiguration. Das Gerät wendet sie an und meldet den angewendeten Wert als Client-Attribut mit demselben Schlüssel. Hermetry vergleicht beide und zeigt den Status jedes Schlüssels an:

StatusBedeutung
In syncDas Gerät meldet den Wert, den Sie gesetzt haben.
PendingSie haben einen Wert gesetzt; das Gerät hat ihn noch nicht gemeldet.
RejectedDas Gerät hat ihn abgelehnt. Die Zeile zeigt Reason: reason.
DriftedDas Gerät meldet einen anderen Wert als den von Ihnen gesetzten.
Unknown keyDer Schlüssel ist im Tab Configuration keys des Profils nicht deklariert.

Ein Schlüssel, den das Gerät nicht anwenden kann, wird im Client-Attribut cfg_rejected gemeldet:

{"cfg_rejected": {"cfg.wifi.radio0.channel": "out_of_range"}}

Gründe: unknown_key, bad_type, out_of_range, apply_failed, read_only, busy.

Deklarieren Sie die Schlüssel, die ein Gerät akzeptiert, mit Typ, Bezeichnung und Grenzwerten im Tab Configuration keys des Profils. Siehe Geräteprofile. Lizenzierte Geräte verwenden für ihre vollständige Konfiguration die Fernen Geräteeinstellungen.

Wo Attribute verwendet werden

  • Gerätespezifische Alarmgrenzwerte. Der Wert einer Alarmregel attribute:maxTemp liest das Server-Attribut maxTemp des Geräts (danach das Shared-Attribut). Ein Gerät ohne das Attribut wird für diesen Grenzwert nicht geprüft. Siehe Alarmbedingungen-Referenz.
  • Dashboards. Attributkarten und -tabellen zeigen Server- und Shared-Attribute. Client-Attribute werden dort nicht angeboten.
  • Flows. Der Block enrich.device fügt einer Nachricht die Attribute eines Geräts hinzu; Flows können Attribute auch schreiben.
  • Gateway-Kindgeräte. Ein Shared-Attribut, das an einen untergeordneten Datenpunkt gesendet wird, wendet das Gateway an und meldet <key>.state und <key>.reason.

API

AufrufFunktionBerechtigung
GET /tenant/{tenantId}/api/iot/devices/{deviceId}/attributes?scope=server&keys=a,bAttribute lesen: scope ist client, shared oder server (alle, wenn weggelassen), bis zu 100 SchlüsselGeräteattribute anzeigen
POST …/attributes/server oder …/attributes/sharedBis zu 100 Schlüssel schreiben: {"maxTemp": 80}Server- und Shared-Geräteattribute schreiben
DELETE …/attributes/server?keys=a,bSchlüssel löschenServer- und Shared-Geräteattribute schreiben

Client-Attribute können nicht über die API geschrieben werden (405). Ein Schreibvorgang über die API hat immer Vorrang vor dem gespeicherten Wert und wird Ihren Flows gemeldet. Siehe Telemetrie- und Attribute-API.

Audit und Export

Jedes Speichern und Löschen eines Attributs wird mit den Schlüsseln, nie mit den Werten, im Audit-Log und im Tab Log des Geräts protokolliert. Ein Organisationsexport enthält Attribute, wobei Werte, die wie Geheimnisse aussehen, maskiert werden.

Siehe auch