/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the connect-2017-08-08.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Connect.Model { /// /// Container for the parameters to the StartOutboundVoiceContact operation. /// Places an outbound call to a contact, and then initiates the flow. It performs the /// actions in the flow that's specified (in ContactFlowId). /// /// /// /// Agents do not initiate the outbound API, which means that they do not dial the contact. /// If the flow places an outbound call to a contact, and then puts the contact in queue, /// the call is then routed to the agent, like any other inbound case. /// /// /// /// There is a 60-second dialing timeout for this operation. If the call is not connected /// after 60 seconds, it fails. /// /// /// /// UK numbers with a 447 prefix are not allowed by default. Before you can dial these /// UK mobile numbers, you must submit a service quota increase request. For more information, /// see Amazon /// Connect Service Quotas in the Amazon Connect Administrator Guide. /// /// /// /// Campaign calls are not allowed by default. Before you can make a call with TrafficType /// = CAMPAIGN, you must submit a service quota increase request to the quota /// Amazon /// Connect campaigns. /// /// /// public partial class StartOutboundVoiceContactRequest : AmazonConnectRequest { private AnswerMachineDetectionConfig _answerMachineDetectionConfig; private Dictionary _attributes = new Dictionary(); private string _campaignId; private string _clientToken; private string _contactFlowId; private string _destinationPhoneNumber; private string _instanceId; private string _queueId; private string _sourcePhoneNumber; private TrafficType _trafficType; /// /// Gets and sets the property AnswerMachineDetectionConfig. /// /// Configuration of the answering machine detection for this outbound call. /// /// public AnswerMachineDetectionConfig AnswerMachineDetectionConfig { get { return this._answerMachineDetectionConfig; } set { this._answerMachineDetectionConfig = value; } } // Check to see if AnswerMachineDetectionConfig property is set internal bool IsSetAnswerMachineDetectionConfig() { return this._answerMachineDetectionConfig != null; } /// /// Gets and sets the property Attributes. /// /// 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. /// /// /// /// 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. /// /// public Dictionary Attributes { get { return this._attributes; } set { this._attributes = value; } } // Check to see if Attributes property is set internal bool IsSetAttributes() { return this._attributes != null && this._attributes.Count > 0; } /// /// Gets and sets the property CampaignId. /// /// The campaign identifier of the outbound communication. /// /// [AWSProperty(Min=1, Max=100)] public string CampaignId { get { return this._campaignId; } set { this._campaignId = value; } } // Check to see if CampaignId property is set internal bool IsSetCampaignId() { return this._campaignId != null; } /// /// Gets and sets the property ClientToken. /// /// 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 Making /// retries safe with idempotent APIs. The token is valid for 7 days after creation. /// If a contact is already started, the contact ID is returned. /// /// [AWSProperty(Max=500)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// /// Gets and sets the property ContactFlowId. /// /// The identifier of the flow for the outbound call. To see the ContactFlowId in the /// Amazon Connect console user interface, on the navigation menu go to Routing, /// Contact Flows. Choose the flow. On the flow page, under the name of the flow, /// choose Show additional flow information. The ContactFlowId is the last part /// of the ARN, shown here in bold: /// /// /// /// arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx /// /// /// [AWSProperty(Required=true, Max=500)] public string ContactFlowId { get { return this._contactFlowId; } set { this._contactFlowId = value; } } // Check to see if ContactFlowId property is set internal bool IsSetContactFlowId() { return this._contactFlowId != null; } /// /// Gets and sets the property DestinationPhoneNumber. /// /// The phone number of the customer, in E.164 format. /// /// [AWSProperty(Required=true)] public string DestinationPhoneNumber { get { return this._destinationPhoneNumber; } set { this._destinationPhoneNumber = value; } } // Check to see if DestinationPhoneNumber property is set internal bool IsSetDestinationPhoneNumber() { return this._destinationPhoneNumber != null; } /// /// Gets and sets the property InstanceId. /// /// The identifier of the Amazon Connect instance. You can find /// the instance ID in the Amazon Resource Name (ARN) of the instance. /// /// [AWSProperty(Required=true, Min=1, Max=100)] public string InstanceId { get { return this._instanceId; } set { this._instanceId = value; } } // Check to see if InstanceId property is set internal bool IsSetInstanceId() { return this._instanceId != null; } /// /// Gets and sets the property QueueId. /// /// 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. /// /// public string QueueId { get { return this._queueId; } set { this._queueId = value; } } // Check to see if QueueId property is set internal bool IsSetQueueId() { return this._queueId != null; } /// /// Gets and sets the property SourcePhoneNumber. /// /// 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 string SourcePhoneNumber { get { return this._sourcePhoneNumber; } set { this._sourcePhoneNumber = value; } } // Check to see if SourcePhoneNumber property is set internal bool IsSetSourcePhoneNumber() { return this._sourcePhoneNumber != null; } /// /// Gets and sets the property TrafficType. /// /// Denotes the class of traffic. Calls with different traffic types are handled differently /// by Amazon Connect. The default value is GENERAL. Use CAMPAIGN /// if EnableAnswerMachineDetection is set to true. For all /// other cases, use GENERAL. /// /// public TrafficType TrafficType { get { return this._trafficType; } set { this._trafficType = value; } } // Check to see if TrafficType property is set internal bool IsSetTrafficType() { return this._trafficType != null; } } }