ContactFlowArgs

data class ContactFlowArgs(val content: Output<String>? = null, val contentHash: Output<String>? = null, val description: Output<String>? = null, val filename: Output<String>? = null, val instanceId: Output<String>? = null, val name: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val type: Output<String>? = null) : ConvertibleToJava<ContactFlowArgs>

Provides an Amazon Connect Contact Flow resource. For more information see Amazon Connect: Getting Started This resource embeds or references Contact Flows specified in Amazon Connect Contact Flow Language. For more information see Amazon Connect Flow language !>WARN: Contact Flows exported from the Console Contact Flow import/export are not in the Amazon Connect Contact Flow Language and can not be used with this resource. Instead, the recommendation is to use the AWS CLI describe-contact-flow. See example below which uses jq to extract the Content attribute and saves it to a local file.

Example Usage

Basic

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.connect.ContactFlow;
import com.pulumi.aws.connect.ContactFlowArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var test = new ContactFlow("test", ContactFlowArgs.builder()
.instanceId("aaaaaaaa-bbbb-cccc-dddd-111111111111")
.description("Test Contact Flow Description")
.type("CONTACT_FLOW")
.content(serializeJson(
jsonObject(
jsonProperty("Version", "2019-10-30"),
jsonProperty("StartAction", "12345678-1234-1234-1234-123456789012"),
jsonProperty("Actions", jsonArray(
jsonObject(
jsonProperty("Identifier", "12345678-1234-1234-1234-123456789012"),
jsonProperty("Type", "MessageParticipant"),
jsonProperty("Transitions", jsonObject(
jsonProperty("NextAction", "abcdef-abcd-abcd-abcd-abcdefghijkl"),
jsonProperty("Errors", jsonArray(
)),
jsonProperty("Conditions", jsonArray(
))
)),
jsonProperty("Parameters", jsonObject(
jsonProperty("Text", "Thanks for calling the sample flow!")
))
),
jsonObject(
jsonProperty("Identifier", "abcdef-abcd-abcd-abcd-abcdefghijkl"),
jsonProperty("Type", "DisconnectParticipant"),
jsonProperty("Transitions", jsonObject(
)),
jsonProperty("Parameters", jsonObject(
))
)
))
)))
.tags(Map.ofEntries(
Map.entry("Name", "Test Contact Flow"),
Map.entry("Application", "Example"),
Map.entry("Method", "Create")
))
.build());
}
}

Import

Amazon Connect Contact Flows can be imported using the instance_id and contact_flow_id separated by a colon (:), e.g.,

$ pulumi import aws:connect/contactFlow:ContactFlow example f1288a1f-6193-445a-b47e-af739b2:c1d4e5f6-1b3c-1b3c-1b3c-c1d4e5f6c1d4e5

Constructors

Link copied to clipboard
constructor(content: Output<String>? = null, contentHash: Output<String>? = null, description: Output<String>? = null, filename: Output<String>? = null, instanceId: Output<String>? = null, name: Output<String>? = null, tags: Output<Map<String, String>>? = null, type: Output<String>? = null)

Properties

Link copied to clipboard
val content: Output<String>? = null

Specifies the content of the Contact Flow, provided as a JSON string, written in Amazon Connect Contact Flow Language. If defined, the filename argument cannot be used.

Link copied to clipboard
val contentHash: Output<String>? = null

Used to trigger updates. Must be set to a base64-encoded SHA256 hash of the Contact Flow source specified with filename.

Link copied to clipboard
val description: Output<String>? = null

Specifies the description of the Contact Flow.

Link copied to clipboard
val filename: Output<String>? = null

The path to the Contact Flow source within the local filesystem. Conflicts with content.

Link copied to clipboard
val instanceId: Output<String>? = null

Specifies the identifier of the hosting Amazon Connect Instance.

Link copied to clipboard
val name: Output<String>? = null

Specifies the name of the Contact Flow.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Tags to apply to the Contact Flow. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val type: Output<String>? = null

Specifies the type of the Contact Flow. Defaults to CONTACT_FLOW. Allowed Values are: CONTACT_FLOW, CUSTOMER_QUEUE, CUSTOMER_HOLD, CUSTOMER_WHISPER, AGENT_HOLD, AGENT_WHISPER, OUTBOUND_WHISPER, AGENT_TRANSFER, QUEUE_TRANSFER.

Functions

Link copied to clipboard
open override fun toJava(): ContactFlowArgs