
com.pulumi.awsnative.connectcampaigns.kotlin.inputs.CampaignOutboundCallConfigArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.connectcampaigns.kotlin.inputs
import com.pulumi.awsnative.connectcampaigns.inputs.CampaignOutboundCallConfigArgs.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.jvm.JvmName
/**
* The configuration used for outbound calls.
* @property answerMachineDetectionConfig Whether answering machine detection has been enabled.
* @property connectContactFlowArn The identifier of the contact flow for the outbound call.
* @property connectQueueArn The queue for the call. If you specify a queue, the phone displayed for caller ID is the phone number specified in the queue. If you do not specify a queue, the queue defined in the contact flow is used. If you do not specify a queue, you must specify a source phone number.
* @property connectSourcePhoneNumber The phone number associated with the Amazon Connect instance, in E.164 format. If you do not specify a source phone number, you must specify a queue.
*/
public data class CampaignOutboundCallConfigArgs(
public val answerMachineDetectionConfig: Output? = null,
public val connectContactFlowArn: Output,
public val connectQueueArn: Output? = null,
public val connectSourcePhoneNumber: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.connectcampaigns.inputs.CampaignOutboundCallConfigArgs = com.pulumi.awsnative.connectcampaigns.inputs.CampaignOutboundCallConfigArgs.builder()
.answerMachineDetectionConfig(
answerMachineDetectionConfig?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.connectContactFlowArn(connectContactFlowArn.applyValue({ args0 -> args0 }))
.connectQueueArn(connectQueueArn?.applyValue({ args0 -> args0 }))
.connectSourcePhoneNumber(connectSourcePhoneNumber?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [CampaignOutboundCallConfigArgs].
*/
@PulumiTagMarker
public class CampaignOutboundCallConfigArgsBuilder internal constructor() {
private var answerMachineDetectionConfig: Output? = null
private var connectContactFlowArn: Output? = null
private var connectQueueArn: Output? = null
private var connectSourcePhoneNumber: Output? = null
/**
* @param value Whether answering machine detection has been enabled.
*/
@JvmName("dmsrmhoxxclbdxfr")
public suspend fun answerMachineDetectionConfig(`value`: Output) {
this.answerMachineDetectionConfig = value
}
/**
* @param value The identifier of the contact flow for the outbound call.
*/
@JvmName("leuepvwnnsbjifyo")
public suspend fun connectContactFlowArn(`value`: Output) {
this.connectContactFlowArn = value
}
/**
* @param value The queue for the call. If you specify a queue, the phone displayed for caller ID is the phone number specified in the queue. If you do not specify a queue, the queue defined in the contact flow is used. If you do not specify a queue, you must specify a source phone number.
*/
@JvmName("vdhmnrkrnqsxepdf")
public suspend fun connectQueueArn(`value`: Output) {
this.connectQueueArn = value
}
/**
* @param value The phone number associated with the Amazon Connect instance, in E.164 format. If you do not specify a source phone number, you must specify a queue.
*/
@JvmName("swdhxiskfuakwuuj")
public suspend fun connectSourcePhoneNumber(`value`: Output) {
this.connectSourcePhoneNumber = value
}
/**
* @param value Whether answering machine detection has been enabled.
*/
@JvmName("idocjercxujpmkoj")
public suspend fun answerMachineDetectionConfig(`value`: CampaignAnswerMachineDetectionConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.answerMachineDetectionConfig = mapped
}
/**
* @param argument Whether answering machine detection has been enabled.
*/
@JvmName("wkmgksundvqpobuc")
public suspend fun answerMachineDetectionConfig(argument: suspend CampaignAnswerMachineDetectionConfigArgsBuilder.() -> Unit) {
val toBeMapped = CampaignAnswerMachineDetectionConfigArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.answerMachineDetectionConfig = mapped
}
/**
* @param value The identifier of the contact flow for the outbound call.
*/
@JvmName("lpfacdpfyabcmqfe")
public suspend fun connectContactFlowArn(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.connectContactFlowArn = mapped
}
/**
* @param value The queue for the call. If you specify a queue, the phone displayed for caller ID is the phone number specified in the queue. If you do not specify a queue, the queue defined in the contact flow is used. If you do not specify a queue, you must specify a source phone number.
*/
@JvmName("mkaotksohlqncakc")
public suspend fun connectQueueArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.connectQueueArn = mapped
}
/**
* @param value The phone number associated with the Amazon Connect instance, in E.164 format. If you do not specify a source phone number, you must specify a queue.
*/
@JvmName("fktkqfjvmcuewmjo")
public suspend fun connectSourcePhoneNumber(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.connectSourcePhoneNumber = mapped
}
internal fun build(): CampaignOutboundCallConfigArgs = CampaignOutboundCallConfigArgs(
answerMachineDetectionConfig = answerMachineDetectionConfig,
connectContactFlowArn = connectContactFlowArn ?: throw
PulumiNullFieldException("connectContactFlowArn"),
connectQueueArn = connectQueueArn,
connectSourcePhoneNumber = connectSourcePhoneNumber,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy