
com.amazonaws.services.lexruntime.model.PostContentRequest Maven / Gradle / Ivy
/*
* Copyright 2018-2023 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.
*/
package com.amazonaws.services.lexruntime.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
import com.amazonaws.auth.SignerTypeAware;
/**
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class PostContentRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable, SignerTypeAware {
/**
*
* Name of the Amazon Lex bot.
*
*/
private String botName;
/**
*
* Alias of the Amazon Lex bot.
*
*/
private String botAlias;
/**
*
* The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your bot. At
* runtime, each request must contain the userID
field.
*
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for example,
* name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a user-specific
* identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices, choose a
* device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example, a user
* can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that a user will
* need to have conversation with two different versions, for example, while testing, include the bot alias in the
* user ID to separate the two conversations.
*
*
*
*/
private String userId;
/**
*
* You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting Session
* Attributes.
*
*/
private String sessionAttributes;
/**
*
* You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request attributes
* with the prefix x-amz-lex:
.
*
*
* For more information, see Setting Request
* Attributes.
*
*/
private String requestAttributes;
/**
*
* You pass this value as the Content-Type
HTTP header.
*
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
*
*/
private String contentType;
/**
*
* You pass this value as the Accept
HTTP header.
*
*
* The message Amazon Lex returns in the response can be either text or speech based on the Accept
HTTP
* header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses Amazon
* Polly to generate the speech (using the configuration you specified in the Accept
header). For
* example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little endian
* format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
*
*/
private String accept;
/**
*
* User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP header.
*
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio data
* before sending. In general, you get better performance if you stream audio data rather than buffering the data
* locally.
*
*/
private java.io.InputStream inputStream;
/**
*
* A list of contexts active for the request. A context can be activated when a previous intent is fulfilled, or by
* including the context in the request,
*
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the session. If you
* specify an empty list, all contexts for the session are cleared.
*
*/
private String activeContexts;
/**
*
* Name of the Amazon Lex bot.
*
*
* @param botName
* Name of the Amazon Lex bot.
*/
public void setBotName(String botName) {
this.botName = botName;
}
/**
*
* Name of the Amazon Lex bot.
*
*
* @return Name of the Amazon Lex bot.
*/
public String getBotName() {
return this.botName;
}
/**
*
* Name of the Amazon Lex bot.
*
*
* @param botName
* Name of the Amazon Lex bot.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withBotName(String botName) {
setBotName(botName);
return this;
}
/**
*
* Alias of the Amazon Lex bot.
*
*
* @param botAlias
* Alias of the Amazon Lex bot.
*/
public void setBotAlias(String botAlias) {
this.botAlias = botAlias;
}
/**
*
* Alias of the Amazon Lex bot.
*
*
* @return Alias of the Amazon Lex bot.
*/
public String getBotAlias() {
return this.botAlias;
}
/**
*
* Alias of the Amazon Lex bot.
*
*
* @param botAlias
* Alias of the Amazon Lex bot.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withBotAlias(String botAlias) {
setBotAlias(botAlias);
return this;
}
/**
*
* The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your bot. At
* runtime, each request must contain the userID
field.
*
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for example,
* name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a user-specific
* identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices, choose a
* device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example, a user
* can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that a user will
* need to have conversation with two different versions, for example, while testing, include the bot alias in the
* user ID to separate the two conversations.
*
*
*
*
* @param userId
* The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your
* bot. At runtime, each request must contain the userID
field.
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for
* example, name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a
* user-specific identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices,
* choose a device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example,
* a user can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that a
* user will need to have conversation with two different versions, for example, while testing, include the
* bot alias in the user ID to separate the two conversations.
*
*
*/
public void setUserId(String userId) {
this.userId = userId;
}
/**
*
* The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your bot. At
* runtime, each request must contain the userID
field.
*
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for example,
* name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a user-specific
* identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices, choose a
* device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example, a user
* can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that a user will
* need to have conversation with two different versions, for example, while testing, include the bot alias in the
* user ID to separate the two conversations.
*
*
*
*
* @return The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your
* bot. At runtime, each request must contain the userID
field.
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for
* example, name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a
* user-specific identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices,
* choose a device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example,
* a user can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that
* a user will need to have conversation with two different versions, for example, while testing, include
* the bot alias in the user ID to separate the two conversations.
*
*
*/
public String getUserId() {
return this.userId;
}
/**
*
* The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your bot. At
* runtime, each request must contain the userID
field.
*
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for example,
* name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a user-specific
* identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices, choose a
* device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example, a user
* can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that a user will
* need to have conversation with two different versions, for example, while testing, include the bot alias in the
* user ID to separate the two conversations.
*
*
*
*
* @param userId
* The ID of the client application user. Amazon Lex uses this to identify a user's conversation with your
* bot. At runtime, each request must contain the userID
field.
*
* To decide the user ID to use for your application, consider the following factors.
*
*
* -
*
* The userID
field must not contain any personally identifiable information of the user, for
* example, name, personal identification numbers, or other end user personal information.
*
*
* -
*
* If you want a user to start a conversation on one device and continue on another device, use a
* user-specific identifier.
*
*
* -
*
* If you want the same user to be able to have two independent conversations on two different devices,
* choose a device-specific identifier.
*
*
* -
*
* A user can't have two independent conversations with two different versions of the same bot. For example,
* a user can't have a conversation with the PROD and BETA versions of the same bot. If you anticipate that a
* user will need to have conversation with two different versions, for example, while testing, include the
* bot alias in the user ID to separate the two conversations.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withUserId(String userId) {
setUserId(userId);
return this;
}
/**
*
* You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting Session
* Attributes.
*
*
* This field's value must be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service.
* Users of the SDK should not perform Base64 encoding on this field.
*
*
* @param sessionAttributes
* You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a
* JSON serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting
* Session Attributes.
*/
public void setSessionAttributes(String sessionAttributes) {
this.sessionAttributes = sessionAttributes;
}
/**
*
* You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting Session
* Attributes.
*
*
* This field's value will be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* @return You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a
* JSON serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting
* Session Attributes.
*/
public String getSessionAttributes() {
return this.sessionAttributes;
}
/**
*
* You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting Session
* Attributes.
*
*
* This field's value must be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service.
* Users of the SDK should not perform Base64 encoding on this field.
*
*
* @param sessionAttributes
* You pass this value as the x-amz-lex-session-attributes
HTTP header.
*
* Application-specific information passed between Amazon Lex and a client application. The value must be a
* JSON serialized and base64 encoded map with string keys and values. The total size of the
* sessionAttributes
and requestAttributes
headers is limited to 12 KB.
*
*
* For more information, see Setting
* Session Attributes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withSessionAttributes(String sessionAttributes) {
setSessionAttributes(sessionAttributes);
return this;
}
/**
*
* You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request attributes
* with the prefix x-amz-lex:
.
*
*
* For more information, see Setting Request
* Attributes.
*
*
* This field's value must be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service.
* Users of the SDK should not perform Base64 encoding on this field.
*
*
* @param requestAttributes
* You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request
* attributes with the prefix x-amz-lex:
.
*
*
* For more information, see Setting
* Request Attributes.
*/
public void setRequestAttributes(String requestAttributes) {
this.requestAttributes = requestAttributes;
}
/**
*
* You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request attributes
* with the prefix x-amz-lex:
.
*
*
* For more information, see Setting Request
* Attributes.
*
*
* This field's value will be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* @return You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request
* attributes with the prefix x-amz-lex:
.
*
*
* For more information, see Setting
* Request Attributes.
*/
public String getRequestAttributes() {
return this.requestAttributes;
}
/**
*
* You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request attributes
* with the prefix x-amz-lex:
.
*
*
* For more information, see Setting Request
* Attributes.
*
*
* This field's value must be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service.
* Users of the SDK should not perform Base64 encoding on this field.
*
*
* @param requestAttributes
* You pass this value as the x-amz-lex-request-attributes
HTTP header.
*
* Request-specific information passed between Amazon Lex and a client application. The value must be a JSON
* serialized and base64 encoded map with string keys and values. The total size of the
* requestAttributes
and sessionAttributes
headers is limited to 12 KB.
*
*
* The namespace x-amz-lex:
is reserved for special attributes. Don't create any request
* attributes with the prefix x-amz-lex:
.
*
*
* For more information, see Setting
* Request Attributes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withRequestAttributes(String requestAttributes) {
setRequestAttributes(requestAttributes);
return this;
}
/**
*
* You pass this value as the Content-Type
HTTP header.
*
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
*
*
* @param contentType
* You pass this value as the Content-Type
HTTP header.
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
*/
public void setContentType(String contentType) {
this.contentType = contentType;
}
/**
*
* You pass this value as the Content-Type
HTTP header.
*
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
*
*
* @return You pass this value as the Content-Type
HTTP header.
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
*/
public String getContentType() {
return this.contentType;
}
/**
*
* You pass this value as the Content-Type
HTTP header.
*
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
*
*
* @param contentType
* You pass this value as the Content-Type
HTTP header.
*
* Indicates the audio format or text. The header value must start with one of the following prefixes:
*
*
* -
*
* PCM format, audio data must be in little-endian byte order.
*
*
* -
*
* audio/l16; rate=16000; channels=1
*
*
* -
*
* audio/x-l16; sample-rate=16000; channel-count=1
*
*
* -
*
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false
*
*
*
*
* -
*
* Opus format
*
*
* -
*
* audio/x-cbr-opus-with-preamble; preamble-size=0; bit-rate=256000; frame-size-milliseconds=4
*
*
*
*
* -
*
* Text format
*
*
* -
*
* text/plain; charset=utf-8
*
*
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withContentType(String contentType) {
setContentType(contentType);
return this;
}
/**
*
* You pass this value as the Accept
HTTP header.
*
*
* The message Amazon Lex returns in the response can be either text or speech based on the Accept
HTTP
* header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses Amazon
* Polly to generate the speech (using the configuration you specified in the Accept
header). For
* example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little endian
* format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
*
*
* @param accept
* You pass this value as the Accept
HTTP header.
*
* The message Amazon Lex returns in the response can be either text or speech based on the
* Accept
HTTP header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses
* Amazon Polly to generate the speech (using the configuration you specified in the Accept
* header). For example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in
* the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little
* endian format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
*/
public void setAccept(String accept) {
this.accept = accept;
}
/**
*
* You pass this value as the Accept
HTTP header.
*
*
* The message Amazon Lex returns in the response can be either text or speech based on the Accept
HTTP
* header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses Amazon
* Polly to generate the speech (using the configuration you specified in the Accept
header). For
* example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little endian
* format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
*
*
* @return You pass this value as the Accept
HTTP header.
*
* The message Amazon Lex returns in the response can be either text or speech based on the
* Accept
HTTP header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses
* Amazon Polly to generate the speech (using the configuration you specified in the Accept
* header). For example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in
* the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little
* endian format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
*/
public String getAccept() {
return this.accept;
}
/**
*
* You pass this value as the Accept
HTTP header.
*
*
* The message Amazon Lex returns in the response can be either text or speech based on the Accept
HTTP
* header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses Amazon
* Polly to generate the speech (using the configuration you specified in the Accept
header). For
* example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little endian
* format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
*
*
* @param accept
* You pass this value as the Accept
HTTP header.
*
* The message Amazon Lex returns in the response can be either text or speech based on the
* Accept
HTTP header value in the request.
*
*
* -
*
* If the value is text/plain; charset=utf-8
, Amazon Lex returns text in the response.
*
*
* -
*
* If the value begins with audio/
, Amazon Lex returns speech in the response. Amazon Lex uses
* Amazon Polly to generate the speech (using the configuration you specified in the Accept
* header). For example, if you specify audio/mpeg
as the value, Amazon Lex returns speech in
* the MPEG format.
*
*
* -
*
* If the value is audio/pcm
, the speech returned is audio/pcm
in 16-bit, little
* endian format.
*
*
* -
*
* The following are the accepted values:
*
*
* -
*
* audio/mpeg
*
*
* -
*
* audio/ogg
*
*
* -
*
* audio/pcm
*
*
* -
*
* text/plain; charset=utf-8
*
*
* -
*
* audio/* (defaults to mpeg)
*
*
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withAccept(String accept) {
setAccept(accept);
return this;
}
/**
*
* User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP header.
*
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio data
* before sending. In general, you get better performance if you stream audio data rather than buffering the data
* locally.
*
*
* @param inputStream
* User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP
* header.
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio
* data before sending. In general, you get better performance if you stream audio data rather than buffering
* the data locally.
*/
public void setInputStream(java.io.InputStream inputStream) {
this.inputStream = inputStream;
}
/**
*
* User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP header.
*
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio data
* before sending. In general, you get better performance if you stream audio data rather than buffering the data
* locally.
*
*
* @return User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP
* header.
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio
* data before sending. In general, you get better performance if you stream audio data rather than
* buffering the data locally.
*/
public java.io.InputStream getInputStream() {
return this.inputStream;
}
/**
*
* User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP header.
*
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio data
* before sending. In general, you get better performance if you stream audio data rather than buffering the data
* locally.
*
*
* @param inputStream
* User input in PCM or Opus audio format or text format as described in the Content-Type
HTTP
* header.
*
* You can stream audio data to Amazon Lex or you can create a local buffer that captures all of the audio
* data before sending. In general, you get better performance if you stream audio data rather than buffering
* the data locally.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withInputStream(java.io.InputStream inputStream) {
setInputStream(inputStream);
return this;
}
/**
*
* A list of contexts active for the request. A context can be activated when a previous intent is fulfilled, or by
* including the context in the request,
*
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the session. If you
* specify an empty list, all contexts for the session are cleared.
*
*
* This field's value must be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service.
* Users of the SDK should not perform Base64 encoding on this field.
*
*
* @param activeContexts
* A list of contexts active for the request. A context can be activated when a previous intent is fulfilled,
* or by including the context in the request,
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the session.
* If you specify an empty list, all contexts for the session are cleared.
*/
public void setActiveContexts(String activeContexts) {
this.activeContexts = activeContexts;
}
/**
*
* A list of contexts active for the request. A context can be activated when a previous intent is fulfilled, or by
* including the context in the request,
*
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the session. If you
* specify an empty list, all contexts for the session are cleared.
*
*
* This field's value will be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* @return A list of contexts active for the request. A context can be activated when a previous intent is
* fulfilled, or by including the context in the request,
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the
* session. If you specify an empty list, all contexts for the session are cleared.
*/
public String getActiveContexts() {
return this.activeContexts;
}
/**
*
* A list of contexts active for the request. A context can be activated when a previous intent is fulfilled, or by
* including the context in the request,
*
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the session. If you
* specify an empty list, all contexts for the session are cleared.
*
*
* This field's value must be valid JSON according to RFC 7159, including the opening and closing braces. For
* example: '{"key": "value"}'.
*
*
* The AWS SDK for Java performs a Base64 encoding on this field before sending this request to the AWS service.
* Users of the SDK should not perform Base64 encoding on this field.
*
*
* @param activeContexts
* A list of contexts active for the request. A context can be activated when a previous intent is fulfilled,
* or by including the context in the request,
*
* If you don't specify a list of contexts, Amazon Lex will use the current list of contexts for the session.
* If you specify an empty list, all contexts for the session are cleared.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PostContentRequest withActiveContexts(String activeContexts) {
setActiveContexts(activeContexts);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getBotName() != null)
sb.append("BotName: ").append(getBotName()).append(",");
if (getBotAlias() != null)
sb.append("BotAlias: ").append(getBotAlias()).append(",");
if (getUserId() != null)
sb.append("UserId: ").append(getUserId()).append(",");
if (getSessionAttributes() != null)
sb.append("SessionAttributes: ").append("***Sensitive Data Redacted***").append(",");
if (getRequestAttributes() != null)
sb.append("RequestAttributes: ").append("***Sensitive Data Redacted***").append(",");
if (getContentType() != null)
sb.append("ContentType: ").append(getContentType()).append(",");
if (getAccept() != null)
sb.append("Accept: ").append(getAccept()).append(",");
if (getInputStream() != null)
sb.append("InputStream: ").append(getInputStream()).append(",");
if (getActiveContexts() != null)
sb.append("ActiveContexts: ").append("***Sensitive Data Redacted***");
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof PostContentRequest == false)
return false;
PostContentRequest other = (PostContentRequest) obj;
if (other.getBotName() == null ^ this.getBotName() == null)
return false;
if (other.getBotName() != null && other.getBotName().equals(this.getBotName()) == false)
return false;
if (other.getBotAlias() == null ^ this.getBotAlias() == null)
return false;
if (other.getBotAlias() != null && other.getBotAlias().equals(this.getBotAlias()) == false)
return false;
if (other.getUserId() == null ^ this.getUserId() == null)
return false;
if (other.getUserId() != null && other.getUserId().equals(this.getUserId()) == false)
return false;
if (other.getSessionAttributes() == null ^ this.getSessionAttributes() == null)
return false;
if (other.getSessionAttributes() != null && other.getSessionAttributes().equals(this.getSessionAttributes()) == false)
return false;
if (other.getRequestAttributes() == null ^ this.getRequestAttributes() == null)
return false;
if (other.getRequestAttributes() != null && other.getRequestAttributes().equals(this.getRequestAttributes()) == false)
return false;
if (other.getContentType() == null ^ this.getContentType() == null)
return false;
if (other.getContentType() != null && other.getContentType().equals(this.getContentType()) == false)
return false;
if (other.getAccept() == null ^ this.getAccept() == null)
return false;
if (other.getAccept() != null && other.getAccept().equals(this.getAccept()) == false)
return false;
if (other.getInputStream() == null ^ this.getInputStream() == null)
return false;
if (other.getInputStream() != null && other.getInputStream().equals(this.getInputStream()) == false)
return false;
if (other.getActiveContexts() == null ^ this.getActiveContexts() == null)
return false;
if (other.getActiveContexts() != null && other.getActiveContexts().equals(this.getActiveContexts()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getBotName() == null) ? 0 : getBotName().hashCode());
hashCode = prime * hashCode + ((getBotAlias() == null) ? 0 : getBotAlias().hashCode());
hashCode = prime * hashCode + ((getUserId() == null) ? 0 : getUserId().hashCode());
hashCode = prime * hashCode + ((getSessionAttributes() == null) ? 0 : getSessionAttributes().hashCode());
hashCode = prime * hashCode + ((getRequestAttributes() == null) ? 0 : getRequestAttributes().hashCode());
hashCode = prime * hashCode + ((getContentType() == null) ? 0 : getContentType().hashCode());
hashCode = prime * hashCode + ((getAccept() == null) ? 0 : getAccept().hashCode());
hashCode = prime * hashCode + ((getInputStream() == null) ? 0 : getInputStream().hashCode());
hashCode = prime * hashCode + ((getActiveContexts() == null) ? 0 : getActiveContexts().hashCode());
return hashCode;
}
@Override
public PostContentRequest clone() {
return (PostContentRequest) super.clone();
}
@Override
public String getSignerType() {
return "AWS4UnsignedPayloadSignerType";
}
}