getPersonTracking method
- required String jobId,
- int? maxResults,
- String? nextToken,
- PersonTrackingSortBy? sortBy,
Gets the path tracking results of a Amazon Rekognition Video analysis started by StartPersonTracking.
The person path tracking operation is started by a call to
StartPersonTracking
which returns a job identifier
(JobId
). When the operation finishes, Amazon Rekognition
Video publishes a completion status to the Amazon Simple Notification
Service topic registered in the initial call to
StartPersonTracking
.
To get the results of the person path tracking operation, first check that
the status value published to the Amazon SNS topic is
SUCCEEDED
. If so, call GetPersonTracking and pass the
job identifier (JobId
) from the initial call to
StartPersonTracking
.
GetPersonTracking
returns an array, Persons
, of
tracked persons and the time(s) their paths were tracked in the video.
For more information, see FaceDetail in the Amazon Rekognition Developer
Guide.
By default, the array is sorted by the time(s) a person's path is tracked
in the video. You can sort by tracked persons by specifying
INDEX
for the SortBy
input parameter.
Use the MaxResults
parameter to limit the number of items
returned. If there are more results than specified in
MaxResults
, the value of NextToken
in the
operation response contains a pagination token for getting the next set of
results. To get the next page of results, call
GetPersonTracking
and populate the NextToken
request parameter with the token value returned from the previous call to
GetPersonTracking
.
May throw AccessDeniedException. May throw InternalServerError. May throw InvalidParameterException. May throw InvalidPaginationTokenException. May throw ProvisionedThroughputExceededException. May throw ResourceNotFoundException. May throw ThrottlingException.
Parameter jobId
:
The identifier for a job that tracks persons in a video. You get the
JobId
from a call to StartPersonTracking
.
Parameter maxResults
:
Maximum number of results to return per paginated call. The largest value
you can specify is 1000. If you specify a value greater than 1000, a
maximum of 1000 results is returned. The default value is 1000.
Parameter nextToken
:
If the previous response was incomplete (because there are more persons to
retrieve), Amazon Rekognition Video returns a pagination token in the
response. You can use this pagination token to retrieve the next set of
persons.
Parameter sortBy
:
Sort to use for elements in the Persons
array. Use
TIMESTAMP
to sort array elements by the time persons are
detected. Use INDEX
to sort by the tracked persons. If you
sort by INDEX
, the array elements for each person are sorted
by detection confidence. The default sort is by TIMESTAMP
.
Implementation
Future<GetPersonTrackingResponse> getPersonTracking({
required String jobId,
int? maxResults,
String? nextToken,
PersonTrackingSortBy? sortBy,
}) async {
ArgumentError.checkNotNull(jobId, 'jobId');
_s.validateStringLength(
'jobId',
jobId,
1,
64,
isRequired: true,
);
_s.validateNumRange(
'maxResults',
maxResults,
1,
1152921504606846976,
);
_s.validateStringLength(
'nextToken',
nextToken,
0,
255,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'RekognitionService.GetPersonTracking'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'JobId': jobId,
if (maxResults != null) 'MaxResults': maxResults,
if (nextToken != null) 'NextToken': nextToken,
if (sortBy != null) 'SortBy': sortBy.toValue(),
},
);
return GetPersonTrackingResponse.fromJson(jsonResponse.body);
}