/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the wisdom-2020-10-19.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ConnectWisdomService.Model
{
///
/// Container for the parameters to the GetRecommendations operation.
/// Retrieves recommendations for the specified session. To avoid retrieving the same
/// recommendations in subsequent calls, use NotifyRecommendationsReceived.
/// This API supports long-polling behavior with the waitTimeSeconds
parameter.
/// Short poll is the default behavior and only returns recommendations already available.
/// To perform a manual query against an assistant, use QueryAssistant.
///
public partial class GetRecommendationsRequest : AmazonConnectWisdomServiceRequest
{
private string _assistantId;
private int? _maxResults;
private string _sessionId;
private int? _waitTimeSeconds;
///
/// Gets and sets the property AssistantId.
///
/// The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot
/// contain the ARN.
///
///
[AWSProperty(Required=true)]
public string AssistantId
{
get { return this._assistantId; }
set { this._assistantId = value; }
}
// Check to see if AssistantId property is set
internal bool IsSetAssistantId()
{
return this._assistantId != null;
}
///
/// Gets and sets the property MaxResults.
///
/// The maximum number of results to return per page.
///
///
[AWSProperty(Min=1, Max=100)]
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property SessionId.
///
/// The identifier of the session. Can be either the ID or the ARN. URLs cannot contain
/// the ARN.
///
///
[AWSProperty(Required=true)]
public string SessionId
{
get { return this._sessionId; }
set { this._sessionId = value; }
}
// Check to see if SessionId property is set
internal bool IsSetSessionId()
{
return this._sessionId != null;
}
///
/// Gets and sets the property WaitTimeSeconds.
///
/// The duration (in seconds) for which the call waits for a recommendation to be made
/// available before returning. If a recommendation is available, the call returns sooner
/// than WaitTimeSeconds
. If no messages are available and the wait time
/// expires, the call returns successfully with an empty list.
///
///
[AWSProperty(Min=0, Max=20)]
public int WaitTimeSeconds
{
get { return this._waitTimeSeconds.GetValueOrDefault(); }
set { this._waitTimeSeconds = value; }
}
// Check to see if WaitTimeSeconds property is set
internal bool IsSetWaitTimeSeconds()
{
return this._waitTimeSeconds.HasValue;
}
}
}