Ort - AWS IoT Core

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.

Ort

Die Aktion Standort (location) sendet Ihre geografischen Standortdaten an Amazon Location Service.

Voraussetzungen

Diese Regelaktion hat die folgenden Anforderungen:

  • Eine IAM-Rolle, die die Ausführung des geo:BatchUpdateDevicePosition Vorgangs übernehmen AWS IoT kann. Weitere Informationen finden Sie unter Gewähren Sie einer AWS IoT Regel den Zugriff, den sie benötigt.

    In der AWS IoT Konsole können Sie eine Rolle auswählen oder erstellen, um die Ausführung dieser Regelaktion AWS IoT zu ermöglichen.

Parameter

Wenn Sie eine AWS IoT Regel mit dieser Aktion erstellen, müssen Sie die folgenden Informationen angeben:

deviceId

Die eindeutige ID des Geräts, das die Standortdaten bereitstellt. Weitere Informationen finden Sie unter DeviceId in der Amazon Location Service API-Referenz.

Unterstützt Ersatzvorlagen: Ja

latitude

Eine Zeichenfolge, die einen doppelten Wert ergibt, der den Breitengrad des Gerätestandorts darstellt.

Unterstützt Ersatzvorlagen: Ja

longitude

Eine Zeichenfolge, die einen doppelten Wert ergibt, der den Längengrad des Gerätestandorts darstellt.

Unterstützt Ersatzvorlagen: Ja

roleArn

Die IAM-Rolle, die Zugriff auf die Amazon-Location-Service-Domain gewährt. Weitere Informationen finden Sie unter Voraussetzungen.

timestamp

Der Zeitpunkt, zu dem die Standortdaten erfasst wurden. Der Standardwert ist der Zeitpunkt, zu dem die MQTT-Nachricht verarbeitet wurde.

Der timestamp Wert besteht aus den folgenden beiden Werten:

  • value: Ein Ausdruck, der einen Wert für lange Epochenzeit zurückgibt. Sie können die time_to_epoch (Zeichenfolge, Zeichenfolge) Funktion verwenden, um aus einem Datums- oder Uhrzeitwert, der in der Nachrichtennutzlast übergeben wurde, einen gültigen Zeitstempel zu erstellen. Unterstützt Ersatzvorlagen: Ja

  • unit: (Optional) Die Genauigkeit des Zeitstempelwerts, die sich aus dem unter value beschriebenen Ausdruck ergibt. Zulässige Werte: SECONDS | MILLISECONDS | MICROSECONDS | NANOSECONDS. Der Standardwert ist MILLISECONDS. Unterstützt Ersatzvorlagen: API und AWS CLI nur.

trackerName

Der Name der Tracker-Ressource in Amazon Location, in der der Standort aktualisiert wird. Weitere Informationen finden Sie unter Tracker im Amazon Location Service Entwicklerhandbuch.

Unterstützt Ersatzvorlagen: API und nur AWS CLI

Beispiele

Das folgende JSON-Beispiel definiert eine Location-Aktion in einer AWS IoT Regel.

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "location": { "roleArn": "arn:aws:iam::123454962127:role/service-role/ExampleRole", "trackerName": "MyTracker", "deviceId": "001", "sampleTime": { "value": "${timestamp()}", "unit": "MILLISECONDS" }, "latitude": "-12.3456", "longitude": "65.4321" } } ] } }

Das folgende JSON-Beispiel definiert eine Location-Aktion mit Ersatzvorlagen in einer AWS IoT Regel.

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "location": { "roleArn": "arn:aws:iam::123456789012:role/service-role/ExampleRole", "trackerName": "${TrackerName}", "deviceId": "${DeviceID}", "timestamp": { "value": "${timestamp()}", "unit": "MILLISECONDS" }, "latitude": "${get(position, 0)}", "longitude": "${get(position, 1)}" } } ] } }

Das folgende Beispiel für eine MQTT-Nutzlast zeigt, wie Ersatzvorlagen im vorherigen Beispiel auf Daten zugreifen. Sie können den get-device-position-history CLI-Befehl verwenden, um zu überprüfen, ob die MQTT-Nutzlastdaten in Ihrem Standort-Tracker geliefert werden.

{ "TrackerName": "mytracker", "DeviceID": "001", "position": [ "-12.3456", "65.4321" ] }
aws location get-device-position-history --device-id 001 --tracker-name mytracker
{ "DevicePositions": [ { "DeviceId": "001", "Position": [ -12.3456, 65.4321 ], "ReceivedTime": "2022-11-11T01:31:54.464000+00:00", "SampleTime": "2022-11-11T01:31:54.308000+00:00" } ] }

Weitere Informationen finden Sie auch unter