/AWS1/IF_REK=>ASSOCIATEFACES()¶
About AssociateFaces¶
Associates one or more faces with an existing UserID. Takes an array of
FaceIds. Each FaceId that are present in the FaceIds
list is associated with the provided UserID. The number of FaceIds that can be used as input
in a single request is limited to 100.
Note that the total number of faces that can be associated with a single
UserID is also limited to 100. Once a UserID has 100 faces
associated with it, no additional faces can be added. If more API calls are made after the
limit is reached, a ServiceQuotaExceededException will result.
The UserMatchThreshold parameter specifies the minimum user match confidence
required for the face to be associated with a UserID that has at least one FaceID
already associated. This ensures that the FaceIds are associated with the right
UserID. The value ranges from 0-100 and default value is 75.
If successful, an array of AssociatedFace objects containing the associated
FaceIds is returned. If a given face is already associated with the given
UserID, it will be ignored and will not be returned in the response. If a given
face is already associated to a different UserID, isn't found in the collection,
doesn’t meet the UserMatchThreshold, or there are already 100 faces associated
with the UserID, it will be returned as part of an array of
UnsuccessfulFaceAssociations.
The UserStatus reflects the status of an operation which updates a UserID
representation with a list of given faces. The UserStatus can be:
-
ACTIVE - All associations or disassociations of FaceID(s) for a UserID are complete.
-
CREATED - A UserID has been created, but has no FaceID(s) associated with it.
-
UPDATING - A UserID is being updated and there are current associations or disassociations of FaceID(s) taking place.
Method Signature¶
METHODS /AWS1/IF_REK~ASSOCIATEFACES
IMPORTING
!IV_COLLECTIONID TYPE /AWS1/REKCOLLECTIONID OPTIONAL
!IV_USERID TYPE /AWS1/REKUSERID OPTIONAL
!IT_FACEIDS TYPE /AWS1/CL_REKUSERFACEIDLIST_W=>TT_USERFACEIDLIST OPTIONAL
!IV_USERMATCHTHRESHOLD TYPE /AWS1/RT_FLOAT_AS_STRING OPTIONAL
!IV_CLIENTREQUESTTOKEN TYPE /AWS1/REKCLIENTREQUESTTOKEN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_rekassocfacesresponse
RAISING
/AWS1/CX_REKACCESSDENIEDEX
/AWS1/CX_REKCONFLICTEXCEPTION
/AWS1/CX_REKIDEMPOTENTPRMMIS00
/AWS1/CX_REKINTERNALSERVERERR
/AWS1/CX_REKINVALIDPARAMETEREX
/AWS1/CX_REKPROVTHRUPUTEXCDEX
/AWS1/CX_REKRESOURCENOTFOUNDEX
/AWS1/CX_REKSERVICEQUOTAEXCDEX
/AWS1/CX_REKTHROTTLINGEX
/AWS1/CX_REKCLIENTEXC
/AWS1/CX_REKSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_collectionid TYPE /AWS1/REKCOLLECTIONID /AWS1/REKCOLLECTIONID¶
The ID of an existing collection containing the UserID.
iv_userid TYPE /AWS1/REKUSERID /AWS1/REKUSERID¶
The ID for the existing UserID.
it_faceids TYPE /AWS1/CL_REKUSERFACEIDLIST_W=>TT_USERFACEIDLIST TT_USERFACEIDLIST¶
An array of FaceIDs to associate with the UserID.
Optional arguments:¶
iv_usermatchthreshold TYPE /AWS1/RT_FLOAT_AS_STRING /AWS1/RT_FLOAT_AS_STRING¶
An optional value specifying the minimum confidence in the UserID match to return. The default value is 75.
iv_clientrequesttoken TYPE /AWS1/REKCLIENTREQUESTTOKEN /AWS1/REKCLIENTREQUESTTOKEN¶
Idempotent token used to identify the request to
AssociateFaces. If you use the same token with multipleAssociateFacesrequests, the same response is returned. Use ClientRequestToken to prevent the same request from being processed more than once.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_rekassocfacesresponse /AWS1/CL_REKASSOCFACESRESPONSE¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC
Examples¶
Syntax Example¶
This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.
DATA(lo_result) = lo_client->associatefaces(
it_faceids = VALUE /aws1/cl_rekuserfaceidlist_w=>tt_userfaceidlist(
( new /aws1/cl_rekuserfaceidlist_w( |string| ) )
)
iv_clientrequesttoken = |string|
iv_collectionid = |string|
iv_userid = |string|
iv_usermatchthreshold = |0.1|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
LOOP AT lo_result->get_associatedfaces( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_faceid = lo_row_1->get_faceid( ).
ENDIF.
ENDLOOP.
LOOP AT lo_result->get_unsuccfulfaceassociati00( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_faceid = lo_row_3->get_faceid( ).
lv_userid = lo_row_3->get_userid( ).
lv_percent = lo_row_3->get_confidence( ).
LOOP AT lo_row_3->get_reasons( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_unsuccessfulfaceassocia = lo_row_5->get_value( ).
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
lv_userstatus = lo_result->get_userstatus( ).
ENDIF.
AssociateFaces¶
This operation associates one or more faces with an existing UserID.
DATA(lo_result) = lo_client->associatefaces(
it_faceids = VALUE /aws1/cl_rekuserfaceidlist_w=>tt_userfaceidlist(
( new /aws1/cl_rekuserfaceidlist_w( |f5817d37-94f6-4335-bfee-6cf79a3d806e| ) )
( new /aws1/cl_rekuserfaceidlist_w( |851cb847-dccc-4fea-9309-9f4805967855| ) )
( new /aws1/cl_rekuserfaceidlist_w( |35ebbb41-7f67-4263-908d-dd0ecba05ab9| ) )
)
iv_clientrequesttoken = |550e8400-e29b-41d4-a716-446655440002|
iv_collectionid = |MyCollection|
iv_userid = |DemoUser|
iv_usermatchthreshold = |70|
).