/** * 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 { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace VoiceID { namespace Model { class EvaluateSessionResult { public: AWS_VOICEID_API EvaluateSessionResult(); AWS_VOICEID_API EvaluateSessionResult(const Aws::AmazonWebServiceResult& result); AWS_VOICEID_API EvaluateSessionResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Details resulting from the authentication process, such as authentication * decision and authentication score.

*/ inline const AuthenticationResult& GetAuthenticationResult() const{ return m_authenticationResult; } /** *

Details resulting from the authentication process, such as authentication * decision and authentication score.

*/ inline void SetAuthenticationResult(const AuthenticationResult& value) { m_authenticationResult = value; } /** *

Details resulting from the authentication process, such as authentication * decision and authentication score.

*/ inline void SetAuthenticationResult(AuthenticationResult&& value) { m_authenticationResult = std::move(value); } /** *

Details resulting from the authentication process, such as authentication * decision and authentication score.

*/ inline EvaluateSessionResult& WithAuthenticationResult(const AuthenticationResult& value) { SetAuthenticationResult(value); return *this;} /** *

Details resulting from the authentication process, such as authentication * decision and authentication score.

*/ inline EvaluateSessionResult& WithAuthenticationResult(AuthenticationResult&& value) { SetAuthenticationResult(std::move(value)); return *this;} /** *

The identifier of the domain that contains the session.

*/ inline const Aws::String& GetDomainId() const{ return m_domainId; } /** *

The identifier of the domain that contains the session.

*/ inline void SetDomainId(const Aws::String& value) { m_domainId = value; } /** *

The identifier of the domain that contains the session.

*/ inline void SetDomainId(Aws::String&& value) { m_domainId = std::move(value); } /** *

The identifier of the domain that contains the session.

*/ inline void SetDomainId(const char* value) { m_domainId.assign(value); } /** *

The identifier of the domain that contains the session.

*/ inline EvaluateSessionResult& WithDomainId(const Aws::String& value) { SetDomainId(value); return *this;} /** *

The identifier of the domain that contains the session.

*/ inline EvaluateSessionResult& WithDomainId(Aws::String&& value) { SetDomainId(std::move(value)); return *this;} /** *

The identifier of the domain that contains the session.

*/ inline EvaluateSessionResult& WithDomainId(const char* value) { SetDomainId(value); return *this;} /** *

Details resulting from the fraud detection process, such as fraud detection * decision and risk score.

*/ inline const FraudDetectionResult& GetFraudDetectionResult() const{ return m_fraudDetectionResult; } /** *

Details resulting from the fraud detection process, such as fraud detection * decision and risk score.

*/ inline void SetFraudDetectionResult(const FraudDetectionResult& value) { m_fraudDetectionResult = value; } /** *

Details resulting from the fraud detection process, such as fraud detection * decision and risk score.

*/ inline void SetFraudDetectionResult(FraudDetectionResult&& value) { m_fraudDetectionResult = std::move(value); } /** *

Details resulting from the fraud detection process, such as fraud detection * decision and risk score.

*/ inline EvaluateSessionResult& WithFraudDetectionResult(const FraudDetectionResult& value) { SetFraudDetectionResult(value); return *this;} /** *

Details resulting from the fraud detection process, such as fraud detection * decision and risk score.

*/ inline EvaluateSessionResult& WithFraudDetectionResult(FraudDetectionResult&& value) { SetFraudDetectionResult(std::move(value)); return *this;} /** *

The service-generated identifier of the session.

*/ inline const Aws::String& GetSessionId() const{ return m_sessionId; } /** *

The service-generated identifier of the session.

*/ inline void SetSessionId(const Aws::String& value) { m_sessionId = value; } /** *

The service-generated identifier of the session.

*/ inline void SetSessionId(Aws::String&& value) { m_sessionId = std::move(value); } /** *

The service-generated identifier of the session.

*/ inline void SetSessionId(const char* value) { m_sessionId.assign(value); } /** *

The service-generated identifier of the session.

*/ inline EvaluateSessionResult& WithSessionId(const Aws::String& value) { SetSessionId(value); return *this;} /** *

The service-generated identifier of the session.

*/ inline EvaluateSessionResult& WithSessionId(Aws::String&& value) { SetSessionId(std::move(value)); return *this;} /** *

The service-generated identifier of the session.

*/ inline EvaluateSessionResult& WithSessionId(const char* value) { SetSessionId(value); return *this;} /** *

The client-provided name of the session.

*/ inline const Aws::String& GetSessionName() const{ return m_sessionName; } /** *

The client-provided name of the session.

*/ inline void SetSessionName(const Aws::String& value) { m_sessionName = value; } /** *

The client-provided name of the session.

*/ inline void SetSessionName(Aws::String&& value) { m_sessionName = std::move(value); } /** *

The client-provided name of the session.

*/ inline void SetSessionName(const char* value) { m_sessionName.assign(value); } /** *

The client-provided name of the session.

*/ inline EvaluateSessionResult& WithSessionName(const Aws::String& value) { SetSessionName(value); return *this;} /** *

The client-provided name of the session.

*/ inline EvaluateSessionResult& WithSessionName(Aws::String&& value) { SetSessionName(std::move(value)); return *this;} /** *

The client-provided name of the session.

*/ inline EvaluateSessionResult& WithSessionName(const char* value) { SetSessionName(value); return *this;} /** *

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 * StreamingStatus is 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_SPEECH even after StreamingStatus is * 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.

*/ inline const StreamingStatus& GetStreamingStatus() const{ return m_streamingStatus; } /** *

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 * StreamingStatus is 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_SPEECH even after StreamingStatus is * 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.

*/ inline void SetStreamingStatus(const StreamingStatus& value) { m_streamingStatus = value; } /** *

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 * StreamingStatus is 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_SPEECH even after StreamingStatus is * 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.

*/ inline void SetStreamingStatus(StreamingStatus&& value) { m_streamingStatus = std::move(value); } /** *

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 * StreamingStatus is 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_SPEECH even after StreamingStatus is * 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.

*/ inline EvaluateSessionResult& WithStreamingStatus(const StreamingStatus& value) { SetStreamingStatus(value); return *this;} /** *

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 * StreamingStatus is 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_SPEECH even after StreamingStatus is * 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.

*/ inline EvaluateSessionResult& WithStreamingStatus(StreamingStatus&& value) { SetStreamingStatus(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline EvaluateSessionResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline EvaluateSessionResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline EvaluateSessionResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: AuthenticationResult m_authenticationResult; Aws::String m_domainId; FraudDetectionResult m_fraudDetectionResult; Aws::String m_sessionId; Aws::String m_sessionName; StreamingStatus m_streamingStatus; Aws::String m_requestId; }; } // namespace Model } // namespace VoiceID } // namespace Aws