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.googlenative.dialogflow.v3beta1.kotlin
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.dialogflow.v3beta1.FlowArgs.builder
import com.pulumi.googlenative.dialogflow.v3beta1.kotlin.inputs.GoogleCloudDialogflowCxV3beta1EventHandlerArgs
import com.pulumi.googlenative.dialogflow.v3beta1.kotlin.inputs.GoogleCloudDialogflowCxV3beta1EventHandlerArgsBuilder
import com.pulumi.googlenative.dialogflow.v3beta1.kotlin.inputs.GoogleCloudDialogflowCxV3beta1NluSettingsArgs
import com.pulumi.googlenative.dialogflow.v3beta1.kotlin.inputs.GoogleCloudDialogflowCxV3beta1NluSettingsArgsBuilder
import com.pulumi.googlenative.dialogflow.v3beta1.kotlin.inputs.GoogleCloudDialogflowCxV3beta1TransitionRouteArgs
import com.pulumi.googlenative.dialogflow.v3beta1.kotlin.inputs.GoogleCloudDialogflowCxV3beta1TransitionRouteArgsBuilder
import com.pulumi.kotlin.ConvertibleToJava
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
/**
* Creates a flow in the specified agent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training).
* @property agentId
* @property description The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected.
* @property displayName The human-readable name of the flow.
* @property eventHandlers A flow's event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow. * They are inherited by every page's event handlers, which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow. Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored.
* @property languageCode The language of the following fields in `flow`: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used.
* @property location
* @property name The unique identifier of the flow. Format: `projects//locations//agents//flows/`.
* @property nluSettings NLU related settings of the flow.
* @property project
* @property transitionRouteGroups A flow's transition route group serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition route groups. Transition route groups defined in the page have higher priority than those defined in the flow. Format:`projects//locations//agents//flows//transitionRouteGroups/`.
* @property transitionRoutes A flow's transition routes serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition routes and can support use cases such as the user saying "help" or "can I talk to a human?", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow. TransitionRoutes are evalauted in the following order: * TransitionRoutes with intent specified. * TransitionRoutes with only condition specified. TransitionRoutes with intent specified are inherited by pages in the flow.
*/
public data class FlowArgs(
public val agentId: Output? = null,
public val description: Output? = null,
public val displayName: Output? = null,
public val eventHandlers: Output>? = null,
public val languageCode: Output? = null,
public val location: Output? = null,
public val name: Output? = null,
public val nluSettings: Output? = null,
public val project: Output? = null,
public val transitionRouteGroups: Output>? = null,
public val transitionRoutes: Output>? =
null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.googlenative.dialogflow.v3beta1.FlowArgs =
com.pulumi.googlenative.dialogflow.v3beta1.FlowArgs.builder()
.agentId(agentId?.applyValue({ args0 -> args0 }))
.description(description?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.eventHandlers(
eventHandlers?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.languageCode(languageCode?.applyValue({ args0 -> args0 }))
.location(location?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.nluSettings(nluSettings?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.project(project?.applyValue({ args0 -> args0 }))
.transitionRouteGroups(transitionRouteGroups?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.transitionRoutes(
transitionRoutes?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [FlowArgs].
*/
@PulumiTagMarker
public class FlowArgsBuilder internal constructor() {
private var agentId: Output? = null
private var description: Output? = null
private var displayName: Output? = null
private var eventHandlers: Output>? = null
private var languageCode: Output? = null
private var location: Output? = null
private var name: Output? = null
private var nluSettings: Output? = null
private var project: Output? = null
private var transitionRouteGroups: Output>? = null
private var transitionRoutes: Output>? =
null
/**
* @param value
*/
@JvmName("vlpyejolcmjwderk")
public suspend fun agentId(`value`: Output) {
this.agentId = value
}
/**
* @param value The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected.
*/
@JvmName("tfnstoqmsrlpdgnf")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The human-readable name of the flow.
*/
@JvmName("cufpledaiwwruddf")
public suspend fun displayName(`value`: Output) {
this.displayName = value
}
/**
* @param value A flow's event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow. * They are inherited by every page's event handlers, which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow. Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored.
*/
@JvmName("qbhnuuuljoduuhqc")
public suspend fun eventHandlers(`value`: Output>) {
this.eventHandlers = value
}
@JvmName("xwkraglfkpvggmnr")
public suspend fun eventHandlers(vararg values: Output) {
this.eventHandlers = Output.all(values.asList())
}
/**
* @param values A flow's event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow. * They are inherited by every page's event handlers, which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow. Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored.
*/
@JvmName("fqcqsbpcjknjsafw")
public suspend fun eventHandlers(values: List