Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Ubicazione
L'operazione (location
) Posizione instrada i dati sulla posizione geografica al servizio di posizione Amazon.
Requisiti
Questa operazione della regola presenta i seguenti requisiti:
-
Un ruolo IAM che AWS IoT può assumere per eseguire l'
geo:BatchUpdateDevicePosition
operazione. Per ulteriori informazioni, consulta Concedere a qualsiasi AWS IoT regola l'accesso richiesto.Nella AWS IoT console, puoi scegliere o creare un ruolo che consenta di AWS IoT eseguire questa azione relativa alla regola.
Parametri
Quando si crea una AWS IoT regola con questa azione, è necessario specificare le seguenti informazioni:
deviceId
-
L'ID univoco del dispositivo che fornisce i dati sulla posizione. Per ulteriori informazioni, consulta
DeviceId
dalla Documentazione di riferimento delle API del servizio di posizione Amazon.Supporta modelli di sostituzione: sì
latitude
-
Una stringa che restituisce un valore doppio che rappresenta la latitudine della posizione del dispositivo.
Supporta modelli di sostituzione: sì
longitude
-
Una stringa che restituisce un valore doppio che rappresenta la longitudine della posizione del dispositivo.
Supporta modelli di sostituzione: sì
roleArn
-
Il ruolo IAM che permette di accedere al dominio del servizio di posizione Amazon. Per ulteriori informazioni, consulta Requisiti.
timestamp
-
L'ora in cui i dati sulla posizione sono stati campionati. Il valore predefinito è l'ora in cui è stato elaborato il messaggio MQTT.
Il valore
timestamp
è composto dai due valori seguenti:-
value
: un'espressione che restituisce un valore temporale periodo lungo. Puoi utilizzare la funzione time_to_epoch(String, String) per creare un timestamp valido da un valore di data o ora passato nel payload del messaggio. Supporta modelli di sostituzione: Sì. -
unit
: (facoltativo) la precisione del valore timestamp risultante dall'espressione descritta invalue
. Valori validi:SECONDS
|MILLISECONDS
|MICROSECONDS
|NANOSECONDS
. Il valore predefinito èMILLISECONDS
. Supporta modelli sostitutivi: solo API. AWS CLI
-
trackerName
-
Il nome della risorsa tracker nel servizio di posizione Amazon in cui la posizione viene aggiornata. Per ulteriori informazioni, consulta Tracker nella Guida per gli sviluppatori del servizio di posizione Amazon.
Supporta modelli sostitutivi: API e solo AWS CLI
Esempi
Il seguente esempio JSON definisce un'azione Location in una regola. AWS IoT
{ "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" } } ] } }
Il seguente esempio JSON definisce un'azione Location con modelli di sostituzione in una regola. AWS IoT
{ "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)}" } } ] } }
Il seguente esempio di payload MQTT mostra in che modo i modelli di sostituzione nell'esempio precedente accedono ai dati. È possibile utilizzare il comando get-device-position-history della CLI per verificare che i dati del payload MQTT vengano distribuiti nel tracker di posizione.
{ "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" } ] }
Consulta anche
-
Cos'è il servizio di posizione Amazon? nella Guida per sviluppatori del servizio di posizione Amazon.