Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Emplacement
L'action Location (location
) envoie vos données de localisation géographique à Amazon Location Service.
Prérequis
Cette action réglementaire est assortie des exigences suivantes :
-
Rôle IAM qui AWS IoT peut assumer la réalisation de l'
geo:BatchUpdateDevicePosition
opération. Pour de plus amples informations, veuillez consulter Accorder à une AWS IoT règle l'accès dont elle a besoin.Dans la AWS IoT console, vous pouvez choisir ou créer un rôle pour autoriser l'exécution AWS IoT de cette action de règle.
Paramètres
Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :
deviceId
-
ID unique de l'appareil fournissant les données de localisation. Pour plus d'informations, veuillez consulter la
DeviceId
de l’ Amazon Location Service API Reference.Prend en charge les modèles de substitution : Oui
latitude
-
Chaîne qui correspond à une valeur double représentant la latitude de l'emplacement de l'appareil.
Prend en charge les modèles de substitution : Oui
longitude
-
Chaîne qui correspond à une valeur double représentant la longitude de l'emplacement de l'appareil.
Prend en charge les modèles de substitution : Oui
roleArn
-
Rôle IAM qui autorise l'accès au domaine Amazon Location Service. Pour de plus amples informations, veuillez consulter Prérequis.
timestamp
-
Heure à laquelle les données de localisation ont été échantillonnées. La valeur par défaut est l'heure à laquelle le message MQTT a été traité.
La
timestamp
valeur se compose des deux valeurs suivantes :-
value
: Expression qui renvoie une valeur temporelle de longue époque. Vous pouvez utiliser cette time_to_epoch (Chaîne, Chaîne) fonction pour créer un horodatage valide à partir d'une valeur de date ou d'heure transmise dans la charge utile du message. Prend en charge les modèles de substitution : Oui -
unit
: (Facultatif) La précision de la valeur d'horodatage résultant de l'expression décrite à la sectionvalue
. Valeurs valides:SECONDS
|MILLISECONDS
|MICROSECONDS
|NANOSECONDS
L’argument par défaut estMILLISECONDS
. Supporte les modèles de substitution : API et AWS CLI uniquement.
-
trackerName
-
Nom de la ressource de suivi Amazon Location dans laquelle l'emplacement est mis à jour. Pour plus d'informations, consultez Tracker dans le guide du développeur d'Amazon Location Service.
Supporte les modèles de substitution : API et AWS CLI uniquement
Exemples
L'exemple JSON suivant définit une action de localisation dans une AWS IoT règle.
{ "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" } } ] } }
L'exemple JSON suivant définit une action de localisation avec des modèles de substitution dans une AWS IoT règle.
{ "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)}" } } ] } }
L'exemple de charge utile MQTT suivant montre comment les modèles de substitution de l'exemple précédent accèdent aux données. Vous pouvez utiliser la commande get-device-position-historyCLI pour vérifier que les données de charge utile MQTT sont fournies dans votre outil de localisation.
{ "TrackerName": "mytracker", "DeviceID": "001", "position": [ "-12.3456", "65.4321" ] }
aws location get-device-position-history --device-id
001
--tracker-namemytracker
{ "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" } ] }
Consultez aussi
-
Qu'est-ce qu'Amazon Location Service ? dans le guide du développeur d'Amazon Location Service.