1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`StartOutboundVoiceContact`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`name(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_name):<br>required: **false**<br><p>The name of a voice contact that is shown to an agent in the Contact Control Panel (CCP).</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_description):<br>required: **false**<br><p>A description of the voice contact that is shown to an agent in the Contact Control Panel (CCP).</p><br>
    ///   - [`references(impl Into<String>, Reference)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::references) / [`set_references(Option<HashMap::<String, Reference>>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_references):<br>required: **false**<br><p>A formatted URL that is shown to an agent in the Contact Control Panel (CCP). Contacts can have the following reference types at the time of creation: <code>URL</code> | <code>NUMBER</code> | <code>STRING</code> | <code>DATE</code> | <code>EMAIL</code>. <code>ATTACHMENT</code> is not a supported reference type during voice contact creation.</p><br>
    ///   - [`related_contact_id(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::related_contact_id) / [`set_related_contact_id(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_related_contact_id):<br>required: **false**<br><p>The <code>contactId</code> that is related to this contact. Linking voice, task, or chat by using <code>RelatedContactID</code> copies over contact attributes from the related contact to the new contact. All updates to user-defined attributes in the new contact are limited to the individual contact ID. There are no limits to the number of contacts that can be linked by using <code>RelatedContactId</code>.</p><br>
    ///   - [`destination_phone_number(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::destination_phone_number) / [`set_destination_phone_number(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_destination_phone_number):<br>required: **true**<br><p>The phone number of the customer, in E.164 format.</p><br>
    ///   - [`contact_flow_id(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::contact_flow_id) / [`set_contact_flow_id(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_contact_flow_id):<br>required: **true**<br><p>The identifier of the flow for the outbound call. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to <b>Routing</b>, <b>Contact Flows</b>. Choose the flow. On the flow page, under the name of the flow, choose <b>Show additional flow information</b>. The ContactFlowId is the last part of the ARN, shown here in bold:</p> <p>arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/<b>846ec553-a005-41c0-8341-xxxxxxxxxxxx</b></p><br>
    ///   - [`instance_id(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::instance_id) / [`set_instance_id(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_instance_id):<br>required: **true**<br><p>The identifier of the Amazon Connect instance. You can <a href="https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html">find the instance ID</a> in the Amazon Resource Name (ARN) of the instance.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href="https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/">Making retries safe with idempotent APIs</a>. The token is valid for 7 days after creation. If a contact is already started, the contact ID is returned.</p><br>
    ///   - [`source_phone_number(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::source_phone_number) / [`set_source_phone_number(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_source_phone_number):<br>required: **false**<br><p>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.</p><br>
    ///   - [`queue_id(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::queue_id) / [`set_queue_id(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_queue_id):<br>required: **false**<br><p>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 flow is used. If you do not specify a queue, you must specify a source phone number.</p><br>
    ///   - [`attributes(impl Into<String>, impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::attributes) / [`set_attributes(Option<HashMap::<String, String>>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_attributes):<br>required: **false**<br><p>A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.</p> <p>There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.</p><br>
    ///   - [`answer_machine_detection_config(AnswerMachineDetectionConfig)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::answer_machine_detection_config) / [`set_answer_machine_detection_config(Option<AnswerMachineDetectionConfig>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_answer_machine_detection_config):<br>required: **false**<br><p>Configuration of the answering machine detection for this outbound call.</p><br>
    ///   - [`campaign_id(impl Into<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::campaign_id) / [`set_campaign_id(Option<String>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_campaign_id):<br>required: **false**<br><p>The campaign identifier of the outbound communication.</p><br>
    ///   - [`traffic_type(TrafficType)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::traffic_type) / [`set_traffic_type(Option<TrafficType>)`](crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::set_traffic_type):<br>required: **false**<br><p>Denotes the class of traffic. Calls with different traffic types are handled differently by Amazon Connect. The default value is <code>GENERAL</code>. Use <code>CAMPAIGN</code> if <code>EnableAnswerMachineDetection</code> is set to <code>true</code>. For all other cases, use <code>GENERAL</code>.</p><br>
    /// - On success, responds with [`StartOutboundVoiceContactOutput`](crate::operation::start_outbound_voice_contact::StartOutboundVoiceContactOutput) with field(s):
    ///   - [`contact_id(Option<String>)`](crate::operation::start_outbound_voice_contact::StartOutboundVoiceContactOutput::contact_id): <p>The identifier of this contact within the Amazon Connect instance.</p>
    /// - On failure, responds with [`SdkError<StartOutboundVoiceContactError>`](crate::operation::start_outbound_voice_contact::StartOutboundVoiceContactError)
    pub fn start_outbound_voice_contact(&self) -> crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder {
        crate::operation::start_outbound_voice_contact::builders::StartOutboundVoiceContactFluentBuilder::new(self.handle.clone())
    }
}