/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace VoiceID { namespace Model { /** *

The authentication result produced by Voice ID, processed against the current * session state and streamed audio of the speaker.

See Also:

AWS * API Reference

*/ class AuthenticationResult { public: AWS_VOICEID_API AuthenticationResult(); AWS_VOICEID_API AuthenticationResult(Aws::Utils::Json::JsonView jsonValue); AWS_VOICEID_API AuthenticationResult& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_VOICEID_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

A timestamp of when audio aggregation ended for this authentication * result.

*/ inline const Aws::Utils::DateTime& GetAudioAggregationEndedAt() const{ return m_audioAggregationEndedAt; } /** *

A timestamp of when audio aggregation ended for this authentication * result.

*/ inline bool AudioAggregationEndedAtHasBeenSet() const { return m_audioAggregationEndedAtHasBeenSet; } /** *

A timestamp of when audio aggregation ended for this authentication * result.

*/ inline void SetAudioAggregationEndedAt(const Aws::Utils::DateTime& value) { m_audioAggregationEndedAtHasBeenSet = true; m_audioAggregationEndedAt = value; } /** *

A timestamp of when audio aggregation ended for this authentication * result.

*/ inline void SetAudioAggregationEndedAt(Aws::Utils::DateTime&& value) { m_audioAggregationEndedAtHasBeenSet = true; m_audioAggregationEndedAt = std::move(value); } /** *

A timestamp of when audio aggregation ended for this authentication * result.

*/ inline AuthenticationResult& WithAudioAggregationEndedAt(const Aws::Utils::DateTime& value) { SetAudioAggregationEndedAt(value); return *this;} /** *

A timestamp of when audio aggregation ended for this authentication * result.

*/ inline AuthenticationResult& WithAudioAggregationEndedAt(Aws::Utils::DateTime&& value) { SetAudioAggregationEndedAt(std::move(value)); return *this;} /** *

A timestamp of when audio aggregation started for this authentication * result.

*/ inline const Aws::Utils::DateTime& GetAudioAggregationStartedAt() const{ return m_audioAggregationStartedAt; } /** *

A timestamp of when audio aggregation started for this authentication * result.

*/ inline bool AudioAggregationStartedAtHasBeenSet() const { return m_audioAggregationStartedAtHasBeenSet; } /** *

A timestamp of when audio aggregation started for this authentication * result.

*/ inline void SetAudioAggregationStartedAt(const Aws::Utils::DateTime& value) { m_audioAggregationStartedAtHasBeenSet = true; m_audioAggregationStartedAt = value; } /** *

A timestamp of when audio aggregation started for this authentication * result.

*/ inline void SetAudioAggregationStartedAt(Aws::Utils::DateTime&& value) { m_audioAggregationStartedAtHasBeenSet = true; m_audioAggregationStartedAt = std::move(value); } /** *

A timestamp of when audio aggregation started for this authentication * result.

*/ inline AuthenticationResult& WithAudioAggregationStartedAt(const Aws::Utils::DateTime& value) { SetAudioAggregationStartedAt(value); return *this;} /** *

A timestamp of when audio aggregation started for this authentication * result.

*/ inline AuthenticationResult& WithAudioAggregationStartedAt(Aws::Utils::DateTime&& value) { SetAudioAggregationStartedAt(std::move(value)); return *this;} /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline const Aws::String& GetAuthenticationResultId() const{ return m_authenticationResultId; } /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline bool AuthenticationResultIdHasBeenSet() const { return m_authenticationResultIdHasBeenSet; } /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline void SetAuthenticationResultId(const Aws::String& value) { m_authenticationResultIdHasBeenSet = true; m_authenticationResultId = value; } /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline void SetAuthenticationResultId(Aws::String&& value) { m_authenticationResultIdHasBeenSet = true; m_authenticationResultId = std::move(value); } /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline void SetAuthenticationResultId(const char* value) { m_authenticationResultIdHasBeenSet = true; m_authenticationResultId.assign(value); } /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline AuthenticationResult& WithAuthenticationResultId(const Aws::String& value) { SetAuthenticationResultId(value); return *this;} /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline AuthenticationResult& WithAuthenticationResultId(Aws::String&& value) { SetAuthenticationResultId(std::move(value)); return *this;} /** *

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, AcceptanceThreshold * changes, or SpeakerId changes, Voice ID always returns cached * Authentication Result for this API.

*/ inline AuthenticationResult& WithAuthenticationResultId(const char* value) { SetAuthenticationResultId(value); return *this;} /** *

The AuthenticationConfiguration used to generate this * authentication result.

*/ inline const AuthenticationConfiguration& GetConfiguration() const{ return m_configuration; } /** *

The AuthenticationConfiguration used to generate this * authentication result.

*/ inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; } /** *

The AuthenticationConfiguration used to generate this * authentication result.

*/ inline void SetConfiguration(const AuthenticationConfiguration& value) { m_configurationHasBeenSet = true; m_configuration = value; } /** *

The AuthenticationConfiguration used to generate this * authentication result.

*/ inline void SetConfiguration(AuthenticationConfiguration&& value) { m_configurationHasBeenSet = true; m_configuration = std::move(value); } /** *

The AuthenticationConfiguration used to generate this * authentication result.

*/ inline AuthenticationResult& WithConfiguration(const AuthenticationConfiguration& value) { SetConfiguration(value); return *this;} /** *

The AuthenticationConfiguration used to generate this * authentication result.

*/ inline AuthenticationResult& WithConfiguration(AuthenticationConfiguration&& value) { SetConfiguration(std::move(value)); return *this;} /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline const Aws::String& GetCustomerSpeakerId() const{ return m_customerSpeakerId; } /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline bool CustomerSpeakerIdHasBeenSet() const { return m_customerSpeakerIdHasBeenSet; } /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline void SetCustomerSpeakerId(const Aws::String& value) { m_customerSpeakerIdHasBeenSet = true; m_customerSpeakerId = value; } /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline void SetCustomerSpeakerId(Aws::String&& value) { m_customerSpeakerIdHasBeenSet = true; m_customerSpeakerId = std::move(value); } /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline void SetCustomerSpeakerId(const char* value) { m_customerSpeakerIdHasBeenSet = true; m_customerSpeakerId.assign(value); } /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline AuthenticationResult& WithCustomerSpeakerId(const Aws::String& value) { SetCustomerSpeakerId(value); return *this;} /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline AuthenticationResult& WithCustomerSpeakerId(Aws::String&& value) { SetCustomerSpeakerId(std::move(value)); return *this;} /** *

The client-provided identifier for the speaker whose authentication result is * produced. Only present if a SpeakerId is provided for the * session.

*/ inline AuthenticationResult& WithCustomerSpeakerId(const char* value) { SetCustomerSpeakerId(value); return *this;} /** *

The authentication decision produced by Voice ID, processed against the * current session state and streamed audio of the speaker.

*/ inline const AuthenticationDecision& GetDecision() const{ return m_decision; } /** *

The authentication decision produced by Voice ID, processed against the * current session state and streamed audio of the speaker.

*/ inline bool DecisionHasBeenSet() const { return m_decisionHasBeenSet; } /** *

The authentication decision produced by Voice ID, processed against the * current session state and streamed audio of the speaker.

*/ inline void SetDecision(const AuthenticationDecision& value) { m_decisionHasBeenSet = true; m_decision = value; } /** *

The authentication decision produced by Voice ID, processed against the * current session state and streamed audio of the speaker.

*/ inline void SetDecision(AuthenticationDecision&& value) { m_decisionHasBeenSet = true; m_decision = std::move(value); } /** *

The authentication decision produced by Voice ID, processed against the * current session state and streamed audio of the speaker.

*/ inline AuthenticationResult& WithDecision(const AuthenticationDecision& value) { SetDecision(value); return *this;} /** *

The authentication decision produced by Voice ID, processed against the * current session state and streamed audio of the speaker.

*/ inline AuthenticationResult& WithDecision(AuthenticationDecision&& value) { SetDecision(std::move(value)); return *this;} /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline const Aws::String& GetGeneratedSpeakerId() const{ return m_generatedSpeakerId; } /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline bool GeneratedSpeakerIdHasBeenSet() const { return m_generatedSpeakerIdHasBeenSet; } /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline void SetGeneratedSpeakerId(const Aws::String& value) { m_generatedSpeakerIdHasBeenSet = true; m_generatedSpeakerId = value; } /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline void SetGeneratedSpeakerId(Aws::String&& value) { m_generatedSpeakerIdHasBeenSet = true; m_generatedSpeakerId = std::move(value); } /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline void SetGeneratedSpeakerId(const char* value) { m_generatedSpeakerIdHasBeenSet = true; m_generatedSpeakerId.assign(value); } /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline AuthenticationResult& WithGeneratedSpeakerId(const Aws::String& value) { SetGeneratedSpeakerId(value); return *this;} /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline AuthenticationResult& WithGeneratedSpeakerId(Aws::String&& value) { SetGeneratedSpeakerId(std::move(value)); return *this;} /** *

The service-generated identifier for the speaker whose authentication result * is produced.

*/ inline AuthenticationResult& WithGeneratedSpeakerId(const char* value) { SetGeneratedSpeakerId(value); return *this;} /** *

The authentication score for the speaker whose authentication result is * produced. This value is only present if the authentication decision is either * ACCEPT or REJECT.

*/ inline int GetScore() const{ return m_score; } /** *

The authentication score for the speaker whose authentication result is * produced. This value is only present if the authentication decision is either * ACCEPT or REJECT.

*/ inline bool ScoreHasBeenSet() const { return m_scoreHasBeenSet; } /** *

The authentication score for the speaker whose authentication result is * produced. This value is only present if the authentication decision is either * ACCEPT or REJECT.

*/ inline void SetScore(int value) { m_scoreHasBeenSet = true; m_score = value; } /** *

The authentication score for the speaker whose authentication result is * produced. This value is only present if the authentication decision is either * ACCEPT or REJECT.

*/ inline AuthenticationResult& WithScore(int value) { SetScore(value); return *this;} private: Aws::Utils::DateTime m_audioAggregationEndedAt; bool m_audioAggregationEndedAtHasBeenSet = false; Aws::Utils::DateTime m_audioAggregationStartedAt; bool m_audioAggregationStartedAtHasBeenSet = false; Aws::String m_authenticationResultId; bool m_authenticationResultIdHasBeenSet = false; AuthenticationConfiguration m_configuration; bool m_configurationHasBeenSet = false; Aws::String m_customerSpeakerId; bool m_customerSpeakerIdHasBeenSet = false; AuthenticationDecision m_decision; bool m_decisionHasBeenSet = false; Aws::String m_generatedSpeakerId; bool m_generatedSpeakerIdHasBeenSet = false; int m_score; bool m_scoreHasBeenSet = false; }; } // namespace Model } // namespace VoiceID } // namespace Aws