All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.diagflow.kotlin.inputs.CxAgentAdvancedSettingsArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.diagflow.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.diagflow.inputs.CxAgentAdvancedSettingsArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property audioExportGcsDestination If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels:
 * * Agent level
 * * Flow level
 * Structure is documented below.
 * @property dtmfSettings Define behaviors for DTMF (dual tone multi frequency). DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel. Exposed at the following levels:
 * * Agent level
 * * Flow level
 * * Page level
 * * Parameter level
 * Structure is documented below.
 */
public data class CxAgentAdvancedSettingsArgs(
    public val audioExportGcsDestination: Output? = null,
    public val dtmfSettings: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.diagflow.inputs.CxAgentAdvancedSettingsArgs =
        com.pulumi.gcp.diagflow.inputs.CxAgentAdvancedSettingsArgs.builder()
            .audioExportGcsDestination(
                audioExportGcsDestination?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .dtmfSettings(dtmfSettings?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [CxAgentAdvancedSettingsArgs].
 */
@PulumiTagMarker
public class CxAgentAdvancedSettingsArgsBuilder internal constructor() {
    private var audioExportGcsDestination:
        Output? = null

    private var dtmfSettings: Output? = null

    /**
     * @param value If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels:
     * * Agent level
     * * Flow level
     * Structure is documented below.
     */
    @JvmName("tsoamjtucllgkeyc")
    public suspend fun audioExportGcsDestination(`value`: Output) {
        this.audioExportGcsDestination = value
    }

    /**
     * @param value Define behaviors for DTMF (dual tone multi frequency). DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel. Exposed at the following levels:
     * * Agent level
     * * Flow level
     * * Page level
     * * Parameter level
     * Structure is documented below.
     */
    @JvmName("sabglgshorymeiog")
    public suspend fun dtmfSettings(`value`: Output) {
        this.dtmfSettings = value
    }

    /**
     * @param value If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels:
     * * Agent level
     * * Flow level
     * Structure is documented below.
     */
    @JvmName("lkfqhumotcoxavwt")
    public suspend fun audioExportGcsDestination(`value`: CxAgentAdvancedSettingsAudioExportGcsDestinationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.audioExportGcsDestination = mapped
    }

    /**
     * @param argument If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels:
     * * Agent level
     * * Flow level
     * Structure is documented below.
     */
    @JvmName("fhysdybqmbpcuxes")
    public suspend fun audioExportGcsDestination(argument: suspend CxAgentAdvancedSettingsAudioExportGcsDestinationArgsBuilder.() -> Unit) {
        val toBeMapped = CxAgentAdvancedSettingsAudioExportGcsDestinationArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.audioExportGcsDestination = mapped
    }

    /**
     * @param value Define behaviors for DTMF (dual tone multi frequency). DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel. Exposed at the following levels:
     * * Agent level
     * * Flow level
     * * Page level
     * * Parameter level
     * Structure is documented below.
     */
    @JvmName("lfoisfmyipacqwfx")
    public suspend fun dtmfSettings(`value`: CxAgentAdvancedSettingsDtmfSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dtmfSettings = mapped
    }

    /**
     * @param argument Define behaviors for DTMF (dual tone multi frequency). DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel. Exposed at the following levels:
     * * Agent level
     * * Flow level
     * * Page level
     * * Parameter level
     * Structure is documented below.
     */
    @JvmName("ivtvncpacgmwxirq")
    public suspend fun dtmfSettings(argument: suspend CxAgentAdvancedSettingsDtmfSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = CxAgentAdvancedSettingsDtmfSettingsArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.dtmfSettings = mapped
    }

    internal fun build(): CxAgentAdvancedSettingsArgs = CxAgentAdvancedSettingsArgs(
        audioExportGcsDestination = audioExportGcsDestination,
        dtmfSettings = dtmfSettings,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy