Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Nachrichten-Payload-Format für den EMQX-Broker auf Edge AWS IoT SiteWise
Damit die SiteWise IoT-Publisher-Komponente Daten aus Ihrer externen Anwendung verarbeiten und in der AWS IoT SiteWise Cloud veröffentlichen kann, muss die an den Broker gesendete Nutzlast bestimmte Anforderungen erfüllen.
Das Verständnis des Payload-Formats ist der Schlüssel zu einer erfolgreichen MQTT-Kommunikation mit Edge. AWS IoT SiteWise Der Verbindungsaufbau wird zwar in späteren Abschnitten behandelt, wir stellen Ihnen jedoch zunächst die Payload-Anforderungen vor, um Ihnen bei der Planung Ihrer Implementierung zu helfen.
Anforderungen an das MQTT-Thema
Es gibt keine Einschränkungen hinsichtlich der Struktur von MQTT-Themen, einschließlich der Anzahl der verwendeten Ebenen oder Zeichen. Wir empfehlen jedoch, dass das Thema mit dem propertyAlias Feld in der Payload übereinstimmt.
Beispiel für einen Eigenschaftsalias
Wenn das MQTT-Thema lautetsite1/line1/compressor1/temperature, stellen Sie sicher, dass die propertyAlias Treffer übereinstimmen.
{ "assetId": "compressor_asset_01", "propertyAlias": "site1/line1/compressor1/temperature", "propertyId": "temperature_sensor_01", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1683000000 }, "value": { "doubleValue": 23.5 } } ] }
Struktur der JSON-Nutzlast
{ "assetId": "string", "propertyAlias": "string", "propertyId": "string", "propertyValues": [ { "quality": "string", "timestamp": { "offsetInNanos": number, "timeInSeconds": number }, "value": { "booleanValue": boolean, "doubleValue": number, "integerValue": number, "stringValue": "string" } } ] }
Anmerkung
Damit eine Nachricht als gültig angesehen werden kann, kann nur eine der folgenden Bedingungen erfüllt sein:
-
Das
propertyAliasist gesetzt, oder -
assetIdSowohl als auchpropertyIdsind gesetzt
Das PutAssetPropertyValueEntry hat ein entryId Feld, das in diesem Zusammenhang nicht erforderlich ist.