Uploads position update data for one or more devices to a tracker resource. Amazon Location uses the data when it reports the last known device position and position history. Amazon Location retains location data for 30 days.
Note
Position updates are handled based on the PositionFiltering
property of the tracker. When PositionFiltering
is set to TimeBased
, updates are evaluated against linked geofence collections, and location data is stored at a maximum of one position per 30 second interval. If your update frequency is more often than every 30 seconds, only one update per 30 seconds is stored for each unique device ID.
When PositionFiltering
is set to DistanceBased
filtering, location data is stored and evaluated against linked geofence collections only if the device has moved more than 30 m (98.4 ft).
When PositionFiltering
is set to AccuracyBased
filtering, location data is stored and evaluated against linked geofence collections only if the device has moved more than the measured accuracy. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the second update is neither stored or evaluated if the device has moved less than 15 m. If PositionFiltering
is set to AccuracyBased
filtering, Amazon Location uses the default value { "Horizontal": 0}
when accuracy is not provided on a DevicePositionUpdate
.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
batch-update-device-position
--tracker-name <value>
--updates <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--tracker-name
(string)
The name of the tracker resource to update.
--updates
(list)
Contains the position update details for each device.
(structure)
Contains the position update details for a device.
Accuracy -> (structure)
The accuracy of the device position.
Horizontal -> (double)
Estimated maximum distance, in meters, between the measured position and the true position of a device, along the Earth’s surface.
DeviceId -> (string)
The device associated to the position update.
Position -> (list)
The latest device position defined in WGS 84 format:
[X or longitude, Y or latitude]
.(double)
PositionProperties -> (map)
Associates one of more properties with the position update. A property is a key-value pair stored with the position update and added to any geofence event the update may trigger.
Format:
"key" : "value"
key -> (string)
value -> (string)
SampleTime -> (timestamp)
The timestamp at which the device’s position was determined. Uses ISO 8601 format:
YYYY-MM-DDThh:mm:ss.sssZ
Shorthand Syntax:
Accuracy={Horizontal=double},DeviceId=string,Position=double,double,PositionProperties={KeyName1=string,KeyName2=string},SampleTime=timestamp ...
JSON Syntax:
[
{
"Accuracy": {
"Horizontal": double
},
"DeviceId": "string",
"Position": [double, ...],
"PositionProperties": {"string": "string"
...},
"SampleTime": timestamp
}
...
]
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.
See ‘aws help’ for descriptions of global parameters.
Errors -> (list)
Contains error details for each device that failed to update its position.
(structure)
Contains error details for each device that failed to update its position.
DeviceId -> (string)
The device associated with the failed location update.
Error -> (structure)
Contains details related to the error code such as the error code and error message.
Code -> (string)
The error code associated with the batch request error.
Message -> (string)
A message with the reason for the batch request error.
SampleTime -> (timestamp)
The timestamp at which the device position was determined. Uses ISO 8601 format:
YYYY-MM-DDThh:mm:ss.sssZ
.