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

Geräte hinter einem Gateway

Wie ein Gateway Feldgeräte als Child-Geräte über die v1/gw-Topics meldet – Payloads, Child-Erstellung, Profile, Namen und Limits.

Ein Gateway sammelt Daten von Feldgeräten, die Hermetry nicht selbst erreichen können (Modbus-Zähler, RS485-Regler, BLE-Sensoren und andere), und sendet sie über seine eigene Verbindung. Hermetry macht aus jedem Feldgerät ein Kindgerät: ein eigenständiges Gerät mit Messwerten, Attributen, Alarmen und Dashboards. Diese Seite ist die vollständige Referenz für die Gateway-Seite. Eine kurze Zusammenfassung finden Sie unter Gateways und Geräte hinter einem Gateway.

Ein lizenziertes Gateway mit Hermetry Edge erledigt all dies für Sie; siehe Lizenzierte Gateways und Hermetry Edge. Lesen Sie weiter, wenn Sie selbst Gateway-Software schreiben oder wissen möchten, was mit den Daten geschieht.

Gateway-Gerät einrichten

  1. Erstellen Sie ein Geräteprofil für das Gateway oder wählen Sie eines aus. Es muss das Standard-Topic-Schema v1/ verwenden. Das Schema Legacy compatible enthält keine Gateway-API.
  2. Fügen Sie unter Geräte > Neues Gerät das Gateway hinzu und aktivieren Sie Dieses Gerät ist ein Gateway. Ein Gerät ohne diese Option wird bei jedem v1/gw/*-Topic abgelehnt (forbidden_topic).
  3. Geben Sie dem Gateway seine Zugangsdaten (Zugriffstoken, MQTT-Basic oder X.509-Zertifikat) wie bei jedem MQTT-Gerät. Siehe Gerätezugangsdaten.
  4. Optional: Legen Sie im Profil des Gateways Profil neuer Kindgeräte und Maximale Kindgeräte pro Gateway fest (siehe unten).

Das Gateway meldet sich als es selbst an. Kindgeräte erhalten nie eigene Zugangsdaten und melden sich nie an.

Topics und Payloads

Alle Gateway-Topics verwenden QoS 1.

Topic (Gateway zu Hermetry)PayloadBedeutung
v1/gw/connect{"device": "Meter A", "type": "lorawan-meter"}Das Kindgerät ist vorhanden. type ist optional und wählt das Profil des Kindgeräts.
v1/gw/disconnect{"device": "Meter A"}Das Kindgerät ist nicht mehr vorhanden.
v1/gw/telemetrySiehe untenMesswerte eines oder mehrerer Kindgeräte.
v1/gw/attributes{"Meter A": {"lora.rssi": -97}}Client-Attribute eines oder mehrerer Kindgeräte.

Telemetrie ist ein Objekt, das nach dem Namen des Kindgeräts geordnet ist. Jedes Kindgerät enthält einen Datensatz oder eine Liste von Datensätzen:

{
  "Meter A": [
    {"ts": 1759572000000, "values": {"kwh": 1203.4, "voltage": 229.8}},
    {"ts": 1759572060000, "values": {"kwh": 1203.6, "voltage": 230.1}}
  ],
  "Meter B": {"values": {"flow_m3h": 12.7}}
}
  • ts ist die Zeit in Millisekunden, zu der der Wert erfasst wurde. Lassen Sie es weg, wenn die Uhr des Gateways nicht gestellt ist; Hermetry verwendet dann die Ankunftszeit. Siehe Zeitstempel, verspätete und doppelte Messwerte.
  • values folgt denselben Schlüssel- und Wertregeln wie die Telemetrie jedes Geräts. Siehe Telemetrie-Schlüssel.
  • Ein Datensatz kann ein optionales Objekt meta mit Fakten zum Messwert enthalten, zum Beispiel "meta": {"lora": {"rssi": -97, "snr": 7.5}}. meta ist höchstens 256 Byte groß. Es wird nie als Messwert gespeichert. Nur die Mitglieder lora und snmp (jeweils höchstens 8 einfache Werte) werden als Nachrichten-Metadaten an Ihre Flows weitergegeben; alles andere darin wird ignoriert.
  • Ein Datensatz ohne values oder mit einem ts, das keine positive Zahl ist, wird übersprungen. Der Rest der Nachricht bleibt erhalten.

Ein optionales Client-Attribut time_quality am Kindgerät, {"source": true, "arrival": false, "synced": true}, gibt an, ob Zeitstempel von der eigenen Uhr des Kindgeräts stammen, von der Ankunftszeit am Gateway, und ob die Uhr des Gateways synchronisiert war. Die Angabe dient nur zur Information.

Wie Kindgeräte entstehen

Hermetry legt ein Kindgerät beim ersten Melden durch das Gateway an, per connect, Telemetrie oder Attribute. Ein Kindgerät, das in der Telemetrie ohne connect auftaucht, gilt als verbunden.

  • Das Kindgerät gehört zur Organisation des Gateways. Es wird nie separat beansprucht.
  • Profil, in dieser Reihenfolge: ein Profil in Ihrer Organisation, das genau so heißt wie der in connect gesendete type; sonst das Profil neuer Kindgeräte des Gateway-Profils; sonst das eingebaute Generic child profile, das Hermetry beim ersten Bedarf anlegt. Ein Kindgerät, das ohne type angekündigt wird, überspringt den ersten Schritt.
  • Gerätename: der Name des Kindgeräts auf der Leitung. Existiert bereits ein Gerät mit diesem Namen in Ihrer Organisation, wird der Name zu <Name auf der Leitung> · <Gateway-Name>, danach dieser Name mit 2, 3 und so weiter.
  • Wenn Sie das Kindgerät in Hermetry umbenennen, ändert sich sein Name auf der Leitung nicht. Das Gateway spricht es weiterhin unter dem Namen an, den es gesendet hat.
  • Die ersten Datensätze eines brandneuen Kindgeräts können verloren gehen, während es angelegt wird. Hermetry fordert das Kindgerät einmal an, und die nächste Nachricht findet es.

Namen von Kindgeräten

RegelWert
Länge1 bis 128 Zeichen
Nicht erlaubtSteuerzeichen, führendes oder nachgestelltes Leerzeichen
Groß-/KleinschreibungGroß- und Kleinschreibung werden unterschieden: abc und ABC sind zwei Kindgeräte eines Gateways
EindeutigkeitPro Gateway

Ein Name, der eine Regel verletzt, wird übersprungen und gezählt; die anderen Kindgeräte der Nachricht bleiben erhalten.

Ein direkt verbundenes Gerät hat Vorrang. Entspricht der Kindgerätname der Seriennummer eines Geräts in Ihrer Organisation, das eigene Zugangsdaten besitzt (ohne Beachtung der Groß-/Kleinschreibung), wird das Kindgerät abgelehnt (child_conflict_direct) und nicht angelegt. So erscheint ein Gerät, das eine eigene Cloud-Sitzung betreibt, nicht doppelt.

Grenzwerte

GrenzwertWert
Kindgeräte pro GatewayDer Wert Maximale Kindgeräte pro Gateway des Profils (Standard 500), nie über dem Wert Ihres Tarifs (500, wenn der Tarif keinen nennt) oder der Plattformobergrenze von 1.000
GerätelimitJedes Kindgerät zählt zum Gerätelimit Ihres Tarifs
Eine Gateway-NachrichtHöchstens 64 KiB, oder der Wert Maximale Nachrichtengröße (Bytes) des Gateway-Profils, falls dieser niedriger ist
Kindgeräte in einer Nachricht500; weitere werden übersprungen
Datensätze pro Kindgerät in einer Nachricht1.000; weitere werden übersprungen
meta pro Datensatz256 Byte

Ein Kindgerät, das das Kindgeräte- oder das Gerätelimit überschreiten würde, wird abgelehnt (child_limit oder device_limit), und seine Datensätze werden verworfen.

Ratenlimits gelten zweimal. Zuerst zählen die eigenen Profil-Limits des Gateways die gesamte Nachricht, einschließlich aller Datenpunkte jedes Kindgeräts. Danach gelten die Profil-Limits jedes Kindgeräts für seinen Anteil: Ein Kindgerät, das seine Limits überschreitet, verliert nur seine eigenen Datensätze (child_rate_limited). Siehe Geräteprofile für die Limit-Felder und Nachrichtenkontingent und Nutzung.

Verbindungsstatus

  • connect und disconnect setzen den Verbindungsstatus des Kindgeräts.
  • Geht das Gateway offline, gehen alle seine Kindgeräte mit ihm offline.
  • Ein deaktiviertes Kindgerät wird innerhalb von etwa einer Minute verworfen: Seine Datensätze werden nicht mehr angenommen.

Befehle an Kindgeräte

Das Senden von Befehlen und Änderungen gemeinsamer Attribute an ein Kindgerät über sein Gateway ist in Entwicklung. Bauen Sie noch nicht darauf auf. Siehe Befehle an Geräte hinter einem Gateway.

Fehlerbehebung

SymptomUrsache und Abhilfe
Das Gateway wird nach einigen v1/gw/*-Nachrichten getrenntDas Gerät ist nicht als Gateway markiert. Drei abgelehnte Topics innerhalb einer Minute beenden die Sitzung. Aktivieren Sie Dieses Gerät ist ein Gateway.
Kein Kindgerät erscheintDer Kindgerätname verletzt eine Regel, das Kindgeräte- oder Gerätelimit ist erreicht, oder ein direkt verbundenes Gerät verwendet diese Seriennummer. Prüfen Sie Ihre Gerätezahl unter Nutzung.
Ein Kindgerät hat das falsche ProfilDer type stimmt nicht genau mit einem Profilnamen überein. Benennen Sie das Profil um oder setzen Sie im Gateway-Profil Profil neuer Kindgeräte. Das Profil eines bestehenden Kindgeräts ändern Sie auf der Gerätseite des Kindgeräts.
Ein Kindgerät hat zwei NamenEin Gerät mit dem Namen auf der Leitung existierte bereits, daher wurde das Kindgerät als <Name auf der Leitung> · <Gateway-Name> benannt.

Verwandte Themen