commonMain.aws.sdk.kotlin.services.lexmodelbuildingservice.model.PutBotResponse.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.lexmodelbuildingservice.model
import aws.smithy.kotlin.runtime.SdkDsl
import aws.smithy.kotlin.runtime.time.Instant
public class PutBotResponse private constructor(builder: Builder) {
/**
* The message that Amazon Lex uses to cancel a conversation. For more information, see PutBot.
*/
public val abortStatement: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Statement? = builder.abortStatement
/**
* Checksum of the bot that you created.
*/
public val checksum: kotlin.String? = builder.checksum
/**
* For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify whether your use of Amazon Lex is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to the Children's Online Privacy Protection Act (COPPA) by specifying `true` or `false` in the `childDirected` field. By specifying `true` in the `childDirected` field, you confirm that your use of Amazon Lex **is** related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. By specifying `false` in the `childDirected` field, you confirm that your use of Amazon Lex **is not** related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. You may not specify a default value for the `childDirected` field that does not accurately reflect whether your use of Amazon Lex is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA.
*
* If your use of Amazon Lex relates to a website, program, or other application that is directed in whole or in part, to children under age 13, you must obtain any required verifiable parental consent under COPPA. For information regarding the use of Amazon Lex in connection with websites, programs, or other applications that are directed or targeted, in whole or in part, to children under age 13, see the [Amazon Lex FAQ.](https://aws.amazon.com/lex/faqs#data-security)
*/
public val childDirected: kotlin.Boolean? = builder.childDirected
/**
* The prompts that Amazon Lex uses when it doesn't understand the user's intent. For more information, see PutBot.
*/
public val clarificationPrompt: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Prompt? = builder.clarificationPrompt
/**
* `True` if a new version of the bot was created. If the `createVersion` field was not specified in the request, the `createVersion` field is set to false in the response.
*/
public val createVersion: kotlin.Boolean? = builder.createVersion
/**
* The date that the bot was created.
*/
public val createdDate: aws.smithy.kotlin.runtime.time.Instant? = builder.createdDate
/**
* A description of the bot.
*/
public val description: kotlin.String? = builder.description
/**
* `true` if the bot is configured to send user utterances to Amazon Comprehend for sentiment analysis. If the `detectSentiment` field was not specified in the request, the `detectSentiment` field is `false` in the response.
*/
public val detectSentiment: kotlin.Boolean? = builder.detectSentiment
/**
* Indicates whether the bot uses accuracy improvements. `true` indicates that the bot is using the improvements, otherwise, `false`.
*/
public val enableModelImprovements: kotlin.Boolean? = builder.enableModelImprovements
/**
* If `status` is `FAILED`, Amazon Lex provides the reason that it failed to build the bot.
*/
public val failureReason: kotlin.String? = builder.failureReason
/**
* The maximum length of time that Amazon Lex retains the data gathered in a conversation. For more information, see PutBot.
*/
public val idleSessionTtlInSeconds: kotlin.Int? = builder.idleSessionTtlInSeconds
/**
* An array of `Intent` objects. For more information, see PutBot.
*/
public val intents: List? = builder.intents
/**
* The date that the bot was updated. When you create a resource, the creation date and last updated date are the same.
*/
public val lastUpdatedDate: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdatedDate
/**
* The target locale for the bot.
*/
public val locale: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Locale? = builder.locale
/**
* The name of the bot.
*/
public val name: kotlin.String? = builder.name
/**
* The score that determines where Amazon Lex inserts the `AMAZON.FallbackIntent`, `AMAZON.KendraSearchIntent`, or both when returning alternative intents in a [PostContent](https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) or [PostText](https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) response. `AMAZON.FallbackIntent` is inserted if the confidence score for all intents is below this value. `AMAZON.KendraSearchIntent` is only inserted if it is configured for the bot.
*/
public val nluIntentConfidenceThreshold: kotlin.Double? = builder.nluIntentConfidenceThreshold
/**
* When you send a request to create a bot with `processBehavior` set to `BUILD`, Amazon Lex sets the `status` response element to `BUILDING`.
*
* In the `READY_BASIC_TESTING` state you can test the bot with user inputs that exactly match the utterances configured for the bot's intents and values in the slot types.
*
* If Amazon Lex can't build the bot, Amazon Lex sets `status` to `FAILED`. Amazon Lex returns the reason for the failure in the `failureReason` response element.
*
* When you set `processBehavior` to `SAVE`, Amazon Lex sets the status code to `NOT BUILT`.
*
* When the bot is in the `READY` state you can test and publish the bot.
*/
public val status: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Status? = builder.status
/**
* A list of tags associated with the bot.
*/
public val tags: List? = builder.tags
/**
* The version of the bot. For a new bot, the version is always `$LATEST`.
*/
public val version: kotlin.String? = builder.version
/**
* The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the user. For more information, see PutBot.
*/
public val voiceId: kotlin.String? = builder.voiceId
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.lexmodelbuildingservice.model.PutBotResponse = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("PutBotResponse(")
append("abortStatement=$abortStatement,")
append("checksum=$checksum,")
append("childDirected=$childDirected,")
append("clarificationPrompt=$clarificationPrompt,")
append("createVersion=$createVersion,")
append("createdDate=$createdDate,")
append("description=$description,")
append("detectSentiment=$detectSentiment,")
append("enableModelImprovements=$enableModelImprovements,")
append("failureReason=$failureReason,")
append("idleSessionTtlInSeconds=$idleSessionTtlInSeconds,")
append("intents=$intents,")
append("lastUpdatedDate=$lastUpdatedDate,")
append("locale=$locale,")
append("name=$name,")
append("nluIntentConfidenceThreshold=$nluIntentConfidenceThreshold,")
append("status=$status,")
append("tags=$tags,")
append("version=$version,")
append("voiceId=$voiceId")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = abortStatement?.hashCode() ?: 0
result = 31 * result + (checksum?.hashCode() ?: 0)
result = 31 * result + (childDirected?.hashCode() ?: 0)
result = 31 * result + (clarificationPrompt?.hashCode() ?: 0)
result = 31 * result + (createVersion?.hashCode() ?: 0)
result = 31 * result + (createdDate?.hashCode() ?: 0)
result = 31 * result + (description?.hashCode() ?: 0)
result = 31 * result + (detectSentiment?.hashCode() ?: 0)
result = 31 * result + (enableModelImprovements?.hashCode() ?: 0)
result = 31 * result + (failureReason?.hashCode() ?: 0)
result = 31 * result + (idleSessionTtlInSeconds ?: 0)
result = 31 * result + (intents?.hashCode() ?: 0)
result = 31 * result + (lastUpdatedDate?.hashCode() ?: 0)
result = 31 * result + (locale?.hashCode() ?: 0)
result = 31 * result + (name?.hashCode() ?: 0)
result = 31 * result + (nluIntentConfidenceThreshold?.hashCode() ?: 0)
result = 31 * result + (status?.hashCode() ?: 0)
result = 31 * result + (tags?.hashCode() ?: 0)
result = 31 * result + (version?.hashCode() ?: 0)
result = 31 * result + (voiceId?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as PutBotResponse
if (abortStatement != other.abortStatement) return false
if (checksum != other.checksum) return false
if (childDirected != other.childDirected) return false
if (clarificationPrompt != other.clarificationPrompt) return false
if (createVersion != other.createVersion) return false
if (createdDate != other.createdDate) return false
if (description != other.description) return false
if (detectSentiment != other.detectSentiment) return false
if (enableModelImprovements != other.enableModelImprovements) return false
if (failureReason != other.failureReason) return false
if (idleSessionTtlInSeconds != other.idleSessionTtlInSeconds) return false
if (intents != other.intents) return false
if (lastUpdatedDate != other.lastUpdatedDate) return false
if (locale != other.locale) return false
if (name != other.name) return false
if (!(nluIntentConfidenceThreshold?.equals(other.nluIntentConfidenceThreshold) ?: (other.nluIntentConfidenceThreshold == null))) return false
if (status != other.status) return false
if (tags != other.tags) return false
if (version != other.version) return false
if (voiceId != other.voiceId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.lexmodelbuildingservice.model.PutBotResponse = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The message that Amazon Lex uses to cancel a conversation. For more information, see PutBot.
*/
public var abortStatement: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Statement? = null
/**
* Checksum of the bot that you created.
*/
public var checksum: kotlin.String? = null
/**
* For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify whether your use of Amazon Lex is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to the Children's Online Privacy Protection Act (COPPA) by specifying `true` or `false` in the `childDirected` field. By specifying `true` in the `childDirected` field, you confirm that your use of Amazon Lex **is** related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. By specifying `false` in the `childDirected` field, you confirm that your use of Amazon Lex **is not** related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. You may not specify a default value for the `childDirected` field that does not accurately reflect whether your use of Amazon Lex is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA.
*
* If your use of Amazon Lex relates to a website, program, or other application that is directed in whole or in part, to children under age 13, you must obtain any required verifiable parental consent under COPPA. For information regarding the use of Amazon Lex in connection with websites, programs, or other applications that are directed or targeted, in whole or in part, to children under age 13, see the [Amazon Lex FAQ.](https://aws.amazon.com/lex/faqs#data-security)
*/
public var childDirected: kotlin.Boolean? = null
/**
* The prompts that Amazon Lex uses when it doesn't understand the user's intent. For more information, see PutBot.
*/
public var clarificationPrompt: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Prompt? = null
/**
* `True` if a new version of the bot was created. If the `createVersion` field was not specified in the request, the `createVersion` field is set to false in the response.
*/
public var createVersion: kotlin.Boolean? = null
/**
* The date that the bot was created.
*/
public var createdDate: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* A description of the bot.
*/
public var description: kotlin.String? = null
/**
* `true` if the bot is configured to send user utterances to Amazon Comprehend for sentiment analysis. If the `detectSentiment` field was not specified in the request, the `detectSentiment` field is `false` in the response.
*/
public var detectSentiment: kotlin.Boolean? = null
/**
* Indicates whether the bot uses accuracy improvements. `true` indicates that the bot is using the improvements, otherwise, `false`.
*/
public var enableModelImprovements: kotlin.Boolean? = null
/**
* If `status` is `FAILED`, Amazon Lex provides the reason that it failed to build the bot.
*/
public var failureReason: kotlin.String? = null
/**
* The maximum length of time that Amazon Lex retains the data gathered in a conversation. For more information, see PutBot.
*/
public var idleSessionTtlInSeconds: kotlin.Int? = null
/**
* An array of `Intent` objects. For more information, see PutBot.
*/
public var intents: List? = null
/**
* The date that the bot was updated. When you create a resource, the creation date and last updated date are the same.
*/
public var lastUpdatedDate: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* The target locale for the bot.
*/
public var locale: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Locale? = null
/**
* The name of the bot.
*/
public var name: kotlin.String? = null
/**
* The score that determines where Amazon Lex inserts the `AMAZON.FallbackIntent`, `AMAZON.KendraSearchIntent`, or both when returning alternative intents in a [PostContent](https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) or [PostText](https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) response. `AMAZON.FallbackIntent` is inserted if the confidence score for all intents is below this value. `AMAZON.KendraSearchIntent` is only inserted if it is configured for the bot.
*/
public var nluIntentConfidenceThreshold: kotlin.Double? = null
/**
* When you send a request to create a bot with `processBehavior` set to `BUILD`, Amazon Lex sets the `status` response element to `BUILDING`.
*
* In the `READY_BASIC_TESTING` state you can test the bot with user inputs that exactly match the utterances configured for the bot's intents and values in the slot types.
*
* If Amazon Lex can't build the bot, Amazon Lex sets `status` to `FAILED`. Amazon Lex returns the reason for the failure in the `failureReason` response element.
*
* When you set `processBehavior` to `SAVE`, Amazon Lex sets the status code to `NOT BUILT`.
*
* When the bot is in the `READY` state you can test and publish the bot.
*/
public var status: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Status? = null
/**
* A list of tags associated with the bot.
*/
public var tags: List? = null
/**
* The version of the bot. For a new bot, the version is always `$LATEST`.
*/
public var version: kotlin.String? = null
/**
* The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the user. For more information, see PutBot.
*/
public var voiceId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.lexmodelbuildingservice.model.PutBotResponse) : this() {
this.abortStatement = x.abortStatement
this.checksum = x.checksum
this.childDirected = x.childDirected
this.clarificationPrompt = x.clarificationPrompt
this.createVersion = x.createVersion
this.createdDate = x.createdDate
this.description = x.description
this.detectSentiment = x.detectSentiment
this.enableModelImprovements = x.enableModelImprovements
this.failureReason = x.failureReason
this.idleSessionTtlInSeconds = x.idleSessionTtlInSeconds
this.intents = x.intents
this.lastUpdatedDate = x.lastUpdatedDate
this.locale = x.locale
this.name = x.name
this.nluIntentConfidenceThreshold = x.nluIntentConfidenceThreshold
this.status = x.status
this.tags = x.tags
this.version = x.version
this.voiceId = x.voiceId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.lexmodelbuildingservice.model.PutBotResponse = PutBotResponse(this)
/**
* construct an [aws.sdk.kotlin.services.lexmodelbuildingservice.model.Statement] inside the given [block]
*/
public fun abortStatement(block: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Statement.Builder.() -> kotlin.Unit) {
this.abortStatement = aws.sdk.kotlin.services.lexmodelbuildingservice.model.Statement.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.lexmodelbuildingservice.model.Prompt] inside the given [block]
*/
public fun clarificationPrompt(block: aws.sdk.kotlin.services.lexmodelbuildingservice.model.Prompt.Builder.() -> kotlin.Unit) {
this.clarificationPrompt = aws.sdk.kotlin.services.lexmodelbuildingservice.model.Prompt.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy