VoiceID / Client / evaluate_session
evaluate_session#
- VoiceID.Client.evaluate_session(**kwargs)#
- Evaluates a specified session based on audio data accumulated during a streaming Amazon Connect Voice ID call. - See also: AWS API Documentation - Request Syntax- response = client.evaluate_session( DomainId='string', SessionNameOrId='string' ) - Parameters:
- DomainId (string) – - [REQUIRED] - The identifier of the domain where the session started. 
- SessionNameOrId (string) – - [REQUIRED] - The session identifier, or name of the session, that you want to evaluate. In Voice ID integration, this is the Contact-Id. 
 
- Return type:
- dict 
- Returns:
- Response Syntax- { 'AuthenticationResult': { 'AudioAggregationEndedAt': datetime(2015, 1, 1), 'AudioAggregationStartedAt': datetime(2015, 1, 1), 'AuthenticationResultId': 'string', 'Configuration': { 'AcceptanceThreshold': 123 }, 'CustomerSpeakerId': 'string', 'Decision': 'ACCEPT'|'REJECT'|'NOT_ENOUGH_SPEECH'|'SPEAKER_NOT_ENROLLED'|'SPEAKER_OPTED_OUT'|'SPEAKER_ID_NOT_PROVIDED'|'SPEAKER_EXPIRED', 'GeneratedSpeakerId': 'string', 'Score': 123 }, 'DomainId': 'string', 'FraudDetectionResult': { 'AudioAggregationEndedAt': datetime(2015, 1, 1), 'AudioAggregationStartedAt': datetime(2015, 1, 1), 'Configuration': { 'RiskThreshold': 123, 'WatchlistId': 'string' }, 'Decision': 'HIGH_RISK'|'LOW_RISK'|'NOT_ENOUGH_SPEECH', 'FraudDetectionResultId': 'string', 'Reasons': [ 'KNOWN_FRAUDSTER'|'VOICE_SPOOFING', ], 'RiskDetails': { 'KnownFraudsterRisk': { 'GeneratedFraudsterId': 'string', 'RiskScore': 123 }, 'VoiceSpoofingRisk': { 'RiskScore': 123 } } }, 'SessionId': 'string', 'SessionName': 'string', 'StreamingStatus': 'PENDING_CONFIGURATION'|'ONGOING'|'ENDED' } - Response Structure- (dict) – - AuthenticationResult (dict) – - Details resulting from the authentication process, such as authentication decision and authentication score. - AudioAggregationEndedAt (datetime) – - A timestamp of when audio aggregation ended for this authentication result. 
- AudioAggregationStartedAt (datetime) – - A timestamp of when audio aggregation started for this authentication result. 
- AuthenticationResultId (string) – - The unique identifier for this authentication result. Because there can be multiple authentications for a given session, this field helps to identify if the returned result is from a previous streaming activity or a new result. Note that in absence of any new streaming activity, - AcceptanceThresholdchanges, or- SpeakerIdchanges, Voice ID always returns cached Authentication Result for this API.
- Configuration (dict) – - The - AuthenticationConfigurationused to generate this authentication result.- AcceptanceThreshold (integer) – - The minimum threshold needed to successfully authenticate a speaker. 
 
- CustomerSpeakerId (string) – - The client-provided identifier for the speaker whose authentication result is produced. Only present if a - SpeakerIdis provided for the session.
- Decision (string) – - The authentication decision produced by Voice ID, processed against the current session state and streamed audio of the speaker. 
- GeneratedSpeakerId (string) – - The service-generated identifier for the speaker whose authentication result is produced. 
- Score (integer) – - The authentication score for the speaker whose authentication result is produced. This value is only present if the authentication decision is either - ACCEPTor- REJECT.
 
- DomainId (string) – - The identifier of the domain that contains the session. 
- FraudDetectionResult (dict) – - Details resulting from the fraud detection process, such as fraud detection decision and risk score. - AudioAggregationEndedAt (datetime) – - A timestamp of when audio aggregation ended for this fraud detection result. 
- AudioAggregationStartedAt (datetime) – - A timestamp of when audio aggregation started for this fraud detection result. 
- Configuration (dict) – - The - FraudDetectionConfigurationused to generate this fraud detection result.- RiskThreshold (integer) – - Threshold value for determining whether the speaker is a fraudster. If the detected risk score calculated by Voice ID is higher than the threshold, the speaker is considered a fraudster. 
- WatchlistId (string) – - The identifier of the watchlist against which fraud detection is performed. 
 
- Decision (string) – - The fraud detection decision produced by Voice ID, processed against the current session state and streamed audio of the speaker. 
- FraudDetectionResultId (string) – - The unique identifier for this fraud detection result. Given there can be multiple fraud detections for a given session, this field helps in identifying if the returned result is from previous streaming activity or a new result. Note that in the absence of any new streaming activity or risk threshold changes, Voice ID always returns cached Fraud Detection result for this API. 
- Reasons (list) – - The reason speaker was flagged by the fraud detection system. This is only be populated if fraud detection Decision is - HIGH_RISK, and the following possible values:- KNOWN_FRAUDSTERand- VOICE_SPOOFING.- (string) – 
 
- RiskDetails (dict) – - Details about each risk analyzed for this speaker. Currently, this contains KnownFraudsterRisk and VoiceSpoofingRisk details. - KnownFraudsterRisk (dict) – - The details resulting from ‘Known Fraudster Risk’ analysis of the speaker. - GeneratedFraudsterId (string) – - The identifier of the fraudster that is the closest match to the speaker. If there are no fraudsters registered in a given domain, or if there are no fraudsters with a non-zero RiskScore, this value is - null.
- RiskScore (integer) – - The score indicating the likelihood the speaker is a known fraudster. 
 
- VoiceSpoofingRisk (dict) – - The details resulting from ‘Voice Spoofing Risk’ analysis of the speaker. - RiskScore (integer) – - The score indicating the likelihood of speaker’s voice being spoofed. 
 
 
 
- SessionId (string) – - The service-generated identifier of the session. 
- SessionName (string) – - The client-provided name of the session. 
- StreamingStatus (string) – - The current status of audio streaming for this session. This field is useful to infer next steps when the Authentication or Fraud Detection results are empty or the decision is - NOT_ENOUGH_SPEECH. In this situation, if the- StreamingStatusis- ONGOING/PENDING_CONFIGURATION, it can mean that the client should call the API again later, after Voice ID has enough audio to produce a result. If the decision remains- NOT_ENOUGH_SPEECHeven after- StreamingStatusis- ENDED, it means that the previously streamed session did not have enough speech to perform evaluation, and a new streaming session is needed to try again.
 
 
 - Exceptions- VoiceID.Client.exceptions.ResourceNotFoundException
- VoiceID.Client.exceptions.ValidationException
- VoiceID.Client.exceptions.ConflictException
- VoiceID.Client.exceptions.InternalServerException
- VoiceID.Client.exceptions.ThrottlingException
- VoiceID.Client.exceptions.AccessDeniedException