Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.lex.kotlin.inputs
import com.pulumi.awsnative.lex.inputs.BotIntentArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Represents an action that the user wants to perform.
* @property description Description of thr intent.
* @property dialogCodeHook Specifies that Amazon Lex invokes the alias Lambda function for each user input. You can invoke this Lambda function to personalize user interaction.
* @property fulfillmentCodeHook Specifies that Amazon Lex invokes the alias Lambda function when the intent is ready for fulfillment. You can invoke this function to complete the bot's transaction with the user.
* @property initialResponseSetting Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.
* @property inputContexts A list of contexts that must be active for this intent to be considered by Amazon Lex .
* @property intentClosingSetting Sets the response that Amazon Lex sends to the user when the intent is closed.
* @property intentConfirmationSetting Provides prompts that Amazon Lex sends to the user to confirm the completion of an intent. If the user answers "no," the settings contain a statement that is sent to the user to end the intent.
* @property kendraConfiguration Provides configuration information for the `AMAZON.KendraSearchIntent` intent. When you use this intent, Amazon Lex searches the specified Amazon Kendra index and returns documents from the index that match the user's utterance.
* @property name The name of the intent.
* @property outputContexts A list of contexts that the intent activates when it is fulfilled.
* @property parentIntentSignature A unique identifier for the built-in intent to base this intent on.
* @property sampleUtterances A sample utterance that invokes an intent or respond to a slot elicitation prompt.
* @property slotPriorities Indicates the priority for slots. Amazon Lex prompts the user for slot values in priority order.
* @property slots List of slots
*/
public data class BotIntentArgs(
public val description: Output? = null,
public val dialogCodeHook: Output? = null,
public val fulfillmentCodeHook: Output? = null,
public val initialResponseSetting: Output? = null,
public val inputContexts: Output>? = null,
public val intentClosingSetting: Output? = null,
public val intentConfirmationSetting: Output? = null,
public val kendraConfiguration: Output? = null,
public val name: Output,
public val outputContexts: Output>? = null,
public val parentIntentSignature: Output? = null,
public val sampleUtterances: Output>? = null,
public val slotPriorities: Output>? = null,
public val slots: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.lex.inputs.BotIntentArgs =
com.pulumi.awsnative.lex.inputs.BotIntentArgs.builder()
.description(description?.applyValue({ args0 -> args0 }))
.dialogCodeHook(dialogCodeHook?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.fulfillmentCodeHook(
fulfillmentCodeHook?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.initialResponseSetting(
initialResponseSetting?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.inputContexts(
inputContexts?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.intentClosingSetting(
intentClosingSetting?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.intentConfirmationSetting(
intentConfirmationSetting?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.kendraConfiguration(
kendraConfiguration?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.name(name.applyValue({ args0 -> args0 }))
.outputContexts(
outputContexts?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.parentIntentSignature(parentIntentSignature?.applyValue({ args0 -> args0 }))
.sampleUtterances(
sampleUtterances?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.slotPriorities(
slotPriorities?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.slots(
slots?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [BotIntentArgs].
*/
@PulumiTagMarker
public class BotIntentArgsBuilder internal constructor() {
private var description: Output? = null
private var dialogCodeHook: Output? = null
private var fulfillmentCodeHook: Output? = null
private var initialResponseSetting: Output? = null
private var inputContexts: Output>? = null
private var intentClosingSetting: Output? = null
private var intentConfirmationSetting: Output? = null
private var kendraConfiguration: Output? = null
private var name: Output? = null
private var outputContexts: Output>? = null
private var parentIntentSignature: Output? = null
private var sampleUtterances: Output>? = null
private var slotPriorities: Output>? = null
private var slots: Output>? = null
/**
* @param value Description of thr intent.
*/
@JvmName("cetnfhynptlinntw")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value Specifies that Amazon Lex invokes the alias Lambda function for each user input. You can invoke this Lambda function to personalize user interaction.
*/
@JvmName("uxvloqguniwqkylm")
public suspend fun dialogCodeHook(`value`: Output) {
this.dialogCodeHook = value
}
/**
* @param value Specifies that Amazon Lex invokes the alias Lambda function when the intent is ready for fulfillment. You can invoke this function to complete the bot's transaction with the user.
*/
@JvmName("tibdfmidnakkpsgp")
public suspend fun fulfillmentCodeHook(`value`: Output) {
this.fulfillmentCodeHook = value
}
/**
* @param value Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.
*/
@JvmName("nyyxjykfastxeltg")
public suspend fun initialResponseSetting(`value`: Output) {
this.initialResponseSetting = value
}
/**
* @param value A list of contexts that must be active for this intent to be considered by Amazon Lex .
*/
@JvmName("goruobaaqthpwgxt")
public suspend fun inputContexts(`value`: Output>) {
this.inputContexts = value
}
@JvmName("kmqlnetljsuvsaia")
public suspend fun inputContexts(vararg values: Output) {
this.inputContexts = Output.all(values.asList())
}
/**
* @param values A list of contexts that must be active for this intent to be considered by Amazon Lex .
*/
@JvmName("cdjrvhwkfphbqgax")
public suspend fun inputContexts(values: List