@aws-sdk/client-connect 3.658.0 → 3.661.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/README.md +8 -0
  2. package/dist-cjs/index.js +67 -21
  3. package/dist-es/Connect.js +2 -0
  4. package/dist-es/commands/StartOutboundChatContactCommand.js +22 -0
  5. package/dist-es/commands/index.js +1 -0
  6. package/dist-es/models/models_0.js +1 -0
  7. package/dist-es/protocols/Aws_restJson1.js +47 -26
  8. package/dist-types/Connect.d.ts +7 -0
  9. package/dist-types/ConnectClient.d.ts +3 -2
  10. package/dist-types/commands/AssociateAnalyticsDataSetCommand.d.ts +1 -2
  11. package/dist-types/commands/BatchAssociateAnalyticsDataSetCommand.d.ts +1 -2
  12. package/dist-types/commands/BatchDisassociateAnalyticsDataSetCommand.d.ts +1 -2
  13. package/dist-types/commands/BatchPutContactCommand.d.ts +2 -2
  14. package/dist-types/commands/DescribeContactCommand.d.ts +3 -4
  15. package/dist-types/commands/DisassociateAnalyticsDataSetCommand.d.ts +1 -2
  16. package/dist-types/commands/ListAnalyticsDataAssociationsCommand.d.ts +1 -2
  17. package/dist-types/commands/StartOutboundChatContactCommand.d.ts +147 -0
  18. package/dist-types/commands/index.d.ts +1 -0
  19. package/dist-types/models/models_0.d.ts +2 -1
  20. package/dist-types/models/models_1.d.ts +14 -13
  21. package/dist-types/models/models_2.d.ts +149 -1
  22. package/dist-types/protocols/Aws_restJson1.d.ts +9 -0
  23. package/dist-types/ts3.4/Connect.d.ts +17 -0
  24. package/dist-types/ts3.4/ConnectClient.d.ts +6 -0
  25. package/dist-types/ts3.4/commands/StartOutboundChatContactCommand.d.ts +51 -0
  26. package/dist-types/ts3.4/commands/index.d.ts +1 -0
  27. package/dist-types/ts3.4/models/models_0.d.ts +1 -0
  28. package/dist-types/ts3.4/models/models_2.d.ts +18 -0
  29. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +12 -0
  30. package/package.json +12 -12
@@ -0,0 +1,147 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient";
4
+ import { StartOutboundChatContactRequest, StartOutboundChatContactResponse } from "../models/models_2";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link StartOutboundChatContactCommand}.
14
+ */
15
+ export interface StartOutboundChatContactCommandInput extends StartOutboundChatContactRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link StartOutboundChatContactCommand}.
21
+ */
22
+ export interface StartOutboundChatContactCommandOutput extends StartOutboundChatContactResponse, __MetadataBearer {
23
+ }
24
+ declare const StartOutboundChatContactCommand_base: {
25
+ new (input: StartOutboundChatContactCommandInput): import("@smithy/smithy-client").CommandImpl<StartOutboundChatContactCommandInput, StartOutboundChatContactCommandOutput, ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (__0_0: StartOutboundChatContactCommandInput): import("@smithy/smithy-client").CommandImpl<StartOutboundChatContactCommandInput, StartOutboundChatContactCommandOutput, ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Initiates a new outbound SMS contact to a customer. Response of this API provides the
31
+ * ContactId of the outbound SMS contact created.</p>
32
+ * <p>
33
+ * <b>SourceEndpoint</b> only supports Endpoints with
34
+ * <code>CONNECT_PHONENUMBER_ARN</code> as Type and <b>DestinationEndpoint</b> only supports Endpoints with <code>TELEPHONE_NUMBER</code> as
35
+ * Type. <b>ContactFlowId</b> initiates the flow to manage the new SMS
36
+ * contact created.</p>
37
+ * <p>This API can be used to initiate outbound SMS contacts for an agent or it can also deflect
38
+ * an ongoing contact to an outbound SMS contact by using the <a href="https://docs.aws.amazon.com/connect/latest/APIReference/API_StartOutboundChatContact.html">StartOutboundChatContact</a> Flow Action.</p>
39
+ * <p>For more information about using SMS in Amazon Connect, see the following topics in the
40
+ * <i>Amazon Connect Administrator Guide</i>:</p>
41
+ * <ul>
42
+ * <li>
43
+ * <p>
44
+ * <a href="https://docs.aws.amazon.com/connect/latest/adminguide/setup-sms-messaging.html">Set
45
+ * up SMS messaging</a>
46
+ * </p>
47
+ * </li>
48
+ * <li>
49
+ * <p>
50
+ * <a href="https://docs.aws.amazon.com/connect/latest/adminguide/sms-number.html">Request an
51
+ * SMS-enabled phone number through AWS End User Messaging SMS</a>
52
+ * </p>
53
+ * </li>
54
+ * </ul>
55
+ * @example
56
+ * Use a bare-bones client and the command you need to make an API call.
57
+ * ```javascript
58
+ * import { ConnectClient, StartOutboundChatContactCommand } from "@aws-sdk/client-connect"; // ES Modules import
59
+ * // const { ConnectClient, StartOutboundChatContactCommand } = require("@aws-sdk/client-connect"); // CommonJS import
60
+ * const client = new ConnectClient(config);
61
+ * const input = { // StartOutboundChatContactRequest
62
+ * SourceEndpoint: { // Endpoint
63
+ * Type: "TELEPHONE_NUMBER" || "VOIP" || "CONTACT_FLOW" || "CONNECT_PHONENUMBER_ARN",
64
+ * Address: "STRING_VALUE",
65
+ * },
66
+ * DestinationEndpoint: {
67
+ * Type: "TELEPHONE_NUMBER" || "VOIP" || "CONTACT_FLOW" || "CONNECT_PHONENUMBER_ARN",
68
+ * Address: "STRING_VALUE",
69
+ * },
70
+ * InstanceId: "STRING_VALUE", // required
71
+ * SegmentAttributes: { // SegmentAttributes // required
72
+ * "<keys>": { // SegmentAttributeValue
73
+ * ValueString: "STRING_VALUE",
74
+ * },
75
+ * },
76
+ * Attributes: { // Attributes
77
+ * "<keys>": "STRING_VALUE",
78
+ * },
79
+ * ContactFlowId: "STRING_VALUE", // required
80
+ * ChatDurationInMinutes: Number("int"),
81
+ * ParticipantDetails: { // ParticipantDetails
82
+ * DisplayName: "STRING_VALUE", // required
83
+ * },
84
+ * InitialSystemMessage: { // ChatMessage
85
+ * ContentType: "STRING_VALUE", // required
86
+ * Content: "STRING_VALUE", // required
87
+ * },
88
+ * RelatedContactId: "STRING_VALUE",
89
+ * SupportedMessagingContentTypes: [ // SupportedMessagingContentTypes
90
+ * "STRING_VALUE",
91
+ * ],
92
+ * ClientToken: "STRING_VALUE",
93
+ * };
94
+ * const command = new StartOutboundChatContactCommand(input);
95
+ * const response = await client.send(command);
96
+ * // { // StartOutboundChatContactResponse
97
+ * // ContactId: "STRING_VALUE",
98
+ * // };
99
+ *
100
+ * ```
101
+ *
102
+ * @param StartOutboundChatContactCommandInput - {@link StartOutboundChatContactCommandInput}
103
+ * @returns {@link StartOutboundChatContactCommandOutput}
104
+ * @see {@link StartOutboundChatContactCommandInput} for command's `input` shape.
105
+ * @see {@link StartOutboundChatContactCommandOutput} for command's `response` shape.
106
+ * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape.
107
+ *
108
+ * @throws {@link AccessDeniedException} (client fault)
109
+ * <p>You do not have sufficient permissions to perform this action.</p>
110
+ *
111
+ * @throws {@link ConflictException} (client fault)
112
+ * <p>Operation cannot be performed at this time as there is a conflict with another operation or
113
+ * contact state.</p>
114
+ *
115
+ * @throws {@link InternalServiceException} (server fault)
116
+ * <p>Request processing failed because of an error or failure with the service.</p>
117
+ *
118
+ * @throws {@link InvalidRequestException} (client fault)
119
+ * <p>The request is not valid.</p>
120
+ *
121
+ * @throws {@link LimitExceededException} (client fault)
122
+ * <p>The allowed limit for the resource has been exceeded.</p>
123
+ *
124
+ * @throws {@link ResourceNotFoundException} (client fault)
125
+ * <p>The specified resource was not found.</p>
126
+ *
127
+ * @throws {@link ThrottlingException} (client fault)
128
+ * <p>The throttling limit has been exceeded.</p>
129
+ *
130
+ * @throws {@link ConnectServiceException}
131
+ * <p>Base exception class for all service exceptions from Connect service.</p>
132
+ *
133
+ * @public
134
+ */
135
+ export declare class StartOutboundChatContactCommand extends StartOutboundChatContactCommand_base {
136
+ /** @internal type navigation helper, not in runtime. */
137
+ protected static __types: {
138
+ api: {
139
+ input: StartOutboundChatContactRequest;
140
+ output: StartOutboundChatContactResponse;
141
+ };
142
+ sdk: {
143
+ input: StartOutboundChatContactCommandInput;
144
+ output: StartOutboundChatContactCommandOutput;
145
+ };
146
+ };
147
+ }
@@ -193,6 +193,7 @@ export * from "./StartChatContactCommand";
193
193
  export * from "./StartContactEvaluationCommand";
194
194
  export * from "./StartContactRecordingCommand";
195
195
  export * from "./StartContactStreamingCommand";
196
+ export * from "./StartOutboundChatContactCommand";
196
197
  export * from "./StartOutboundVoiceContactCommand";
197
198
  export * from "./StartTaskContactCommand";
198
199
  export * from "./StartWebRTCContactCommand";
@@ -1958,6 +1958,7 @@ export interface Campaign {
1958
1958
  * @enum
1959
1959
  */
1960
1960
  export declare const EndpointType: {
1961
+ readonly CONNECT_PHONENUMBER_ARN: "CONNECT_PHONENUMBER_ARN";
1961
1962
  readonly CONTACT_FLOW: "CONTACT_FLOW";
1962
1963
  readonly TELEPHONE_NUMBER: "TELEPHONE_NUMBER";
1963
1964
  readonly VOIP: "VOIP";
@@ -2510,7 +2511,7 @@ export type NumericQuestionPropertyAutomationLabel = (typeof NumericQuestionProp
2510
2511
  * <li>
2511
2512
  * <p> Duration labels, such as <code>NON_TALK_TIME</code>, <code>CONTACT_DURATION</code>,
2512
2513
  * <code>AGENT_INTERACTION_DURATION</code>, <code>CUSTOMER_HOLD_TIME</code> have a minimum value
2513
- * of 0 and maximum value of 28800.</p>
2514
+ * of 0 and maximum value of 63072000.</p>
2514
2515
  * </li>
2515
2516
  * <li>
2516
2517
  * <p>Percentages have a minimum value of 0 and maximum value of 100. </p>
@@ -4071,7 +4071,8 @@ export interface MetricFilterV2 {
4071
4071
  * <p>The values to use for filtering data. </p>
4072
4072
  * <p>Valid metric filter values for <code>INITIATION_METHOD</code>: <code>INBOUND</code> |
4073
4073
  * <code>OUTBOUND</code> | <code>TRANSFER</code> | <code>QUEUE_TRANSFER</code> |
4074
- * <code>CALLBACK</code> | <code>API</code>
4074
+ * <code>CALLBACK</code> | <code>API</code> | <code>WEBRTC_API</code> | <code>MONITOR</code> |
4075
+ * <code>DISCONNECT</code> | <code>EXTERNAL_OUTBOUND</code>
4075
4076
  * </p>
4076
4077
  * <p>Valid metric filter values for <code>DISCONNECT_REASON</code>:
4077
4078
  * <code>CUSTOMER_DISCONNECT</code> | <code>AGENT_DISCONNECT</code> |
@@ -4096,8 +4097,8 @@ export interface MetricFilterV2 {
4096
4097
  */
4097
4098
  export interface ThresholdV2 {
4098
4099
  /**
4099
- * <p>The type of comparison. Only "less than" (LT) and "greater than" (GT) comparisons are
4100
- * supported.</p>
4100
+ * <p>The type of comparison. Currently, "less than" (LT), "less than equal" (LTE), and "greater
4101
+ * than" (GT) comparisons are supported.</p>
4101
4102
  * @public
4102
4103
  */
4103
4104
  Comparison?: string;
@@ -4792,8 +4793,8 @@ export interface GetMetricDataV2Request {
4792
4793
  * <p>Unit: Count</p>
4793
4794
  * <p>Valid groupings and filters: Queue, Channel, Routing Profile, Q in Connect</p>
4794
4795
  * <p>Threshold: For <code>ThresholdValue</code>, enter any whole number from 1 to 604800
4795
- * (inclusive), in seconds. For <code>Comparison</code>, you must enter <code>LT</code> (for
4796
- * "Less than").</p>
4796
+ * (inclusive), in seconds. For <code>Comparison</code>, you can use <code>LT</code> (for "Less
4797
+ * than") or <code>LTE</code> (for "Less than equal").</p>
4797
4798
  * <p>UI name: <a href="https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html#contacts-removed-historical">Contacts removed from queue in X seconds</a>
4798
4799
  * </p>
4799
4800
  * </dd>
@@ -4803,8 +4804,8 @@ export interface GetMetricDataV2Request {
4803
4804
  * <p>Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype,
4804
4805
  * Q in Connect</p>
4805
4806
  * <p>Threshold: For <code>ThresholdValue</code> enter any whole number from 1 to 604800
4806
- * (inclusive), in seconds. For <code>Comparison</code>, you must enter <code>LT</code> (for
4807
- * "Less than").</p>
4807
+ * (inclusive), in seconds. For <code>Comparison</code>, you can use <code>LT</code> (for "Less
4808
+ * than") or <code>LTE</code> (for "Less than equal").</p>
4808
4809
  * <p>UI name: <a href="https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html#contacts-resolved-historical">Contacts resolved in X</a>
4809
4810
  * </p>
4810
4811
  * </dd>
@@ -5024,8 +5025,8 @@ export interface GetMetricDataV2Request {
5024
5025
  * <p>Unit: Percent</p>
5025
5026
  * <p>Valid groupings and filters: Queue, Channel, Routing Profile, Q in Connect</p>
5026
5027
  * <p>Threshold: For <code>ThresholdValue</code>, enter any whole number from 1 to 604800
5027
- * (inclusive), in seconds. For <code>Comparison</code>, you must enter <code>LT</code> (for
5028
- * "Less than"). </p>
5028
+ * (inclusive), in seconds. For <code>Comparison</code>, you can use <code>LT</code> (for "Less
5029
+ * than") or <code>LTE</code> (for "Less than equal").</p>
5029
5030
  * <p>UI name: <a href="https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html#service-level-historical">Service level X</a>
5030
5031
  * </p>
5031
5032
  * </dd>
@@ -5082,8 +5083,8 @@ export interface GetMetricDataV2Request {
5082
5083
  * <p>Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype,
5083
5084
  * Q in Connect</p>
5084
5085
  * <p>Threshold: For <code>ThresholdValue</code>, enter any whole number from 1 to 604800
5085
- * (inclusive), in seconds. For <code>Comparison</code>, you must enter <code>LT</code> (for
5086
- * "Less than"). </p>
5086
+ * (inclusive), in seconds. For <code>Comparison</code>, you can use <code>LT</code> (for "Less
5087
+ * than") or <code>LTE</code> (for "Less than equal").</p>
5087
5088
  * <p>UI name: <a href="https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html#contacts-abandoned-x-historical">Contacts abandoned in X seconds</a>
5088
5089
  * </p>
5089
5090
  * </dd>
@@ -5093,8 +5094,8 @@ export interface GetMetricDataV2Request {
5093
5094
  * <p>Valid groupings and filters: Queue, Channel, Routing Profile, contact/segmentAttributes/connect:Subtype,
5094
5095
  * Q in Connect</p>
5095
5096
  * <p>Threshold: For <code>ThresholdValue</code>, enter any whole number from 1 to 604800
5096
- * (inclusive), in seconds. For <code>Comparison</code>, you must enter <code>LT</code> (for
5097
- * "Less than"). </p>
5097
+ * (inclusive), in seconds. For <code>Comparison</code>, you can use <code>LT</code> (for "Less
5098
+ * than") or <code>LTE</code> (for "Less than equal").</p>
5098
5099
  * <p>UI name: <a href="https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html#contacts-answered-x-historical">Contacts answered in X seconds</a>
5099
5100
  * </p>
5100
5101
  * </dd>
@@ -1,6 +1,6 @@
1
1
  import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
2
  import { ConnectServiceException as __BaseException } from "./ConnectServiceException";
3
- import { AgentAvailabilityTimer, AgentConfig, AgentHierarchyGroups, AgentInfo, AgentStatus, AgentStatusSearchFilter, AgentStatusState, AllowedCapabilities, AnsweringMachineDetectionStatus, Application, AttributeCondition, Campaign, Channel, ContactFlowStatus, ContactFlowType, ContactInitiationMethod, ControlPlaneAttributeFilter, CreatedByInfo, Customer, CustomerVoiceActivity, DisconnectDetails, EvaluationFormQuestion, EvaluationFormScoringStrategy, Expiry, FileStatusType, FileUseCaseType, HoursOfOperationConfig, InstanceStorageConfig, InstanceStorageResourceType, MediaConcurrency, MonitorCapability, OutboundCallerConfig, ParticipantRole, PredefinedAttributeValues, QualityMetrics, QueueInfo, QuickConnectConfig, Reference, RehydrationType, RoutingProfileQueueConfig, RuleAction, RulePublishStatus, StringComparisonType, StringCondition, TagCondition, TaskTemplateConstraints, TaskTemplateDefaults, TaskTemplateField, TaskTemplateStatus, UseCaseType, UserIdentityInfo, UserPhoneConfig, UserProficiency, View, ViewInputContent, ViewStatus, ViewType, VocabularyLanguageCode, VocabularyState } from "./models_0";
3
+ import { AgentAvailabilityTimer, AgentConfig, AgentHierarchyGroups, AgentInfo, AgentStatus, AgentStatusSearchFilter, AgentStatusState, AllowedCapabilities, AnsweringMachineDetectionStatus, Application, AttributeCondition, Campaign, Channel, ContactFlowStatus, ContactFlowType, ContactInitiationMethod, ControlPlaneAttributeFilter, CreatedByInfo, Customer, CustomerVoiceActivity, DisconnectDetails, Endpoint, EvaluationFormQuestion, EvaluationFormScoringStrategy, Expiry, FileStatusType, FileUseCaseType, HoursOfOperationConfig, InstanceStorageConfig, InstanceStorageResourceType, MediaConcurrency, MonitorCapability, OutboundCallerConfig, ParticipantRole, PredefinedAttributeValues, QualityMetrics, QueueInfo, QuickConnectConfig, Reference, RehydrationType, RoutingProfileQueueConfig, RuleAction, RulePublishStatus, StringComparisonType, StringCondition, TagCondition, TaskTemplateConstraints, TaskTemplateDefaults, TaskTemplateField, TaskTemplateStatus, UseCaseType, UserIdentityInfo, UserPhoneConfig, UserProficiency, View, ViewInputContent, ViewStatus, ViewType, VocabularyLanguageCode, VocabularyState } from "./models_0";
4
4
  import { ContactFlow, ContactFlowModule, ContactFlowModuleState, ContactFlowState, Evaluation, EvaluationAnswerData, EvaluationFormVersionStatus, EvaluationNote, HierarchyGroup, HierarchyGroupSummary, HoursOfOperation, InstanceAttributeType, PhoneNumberCountryCode, PhoneNumberType, PredefinedAttribute, Prompt, Queue, QueueStatus, QuickConnect, RoutingCriteriaStepStatus, RoutingProfile, SegmentAttributeValue, SignInConfig, SortOrder, TelephonyConfig, TrafficDistributionGroupStatus, WisdomInfo } from "./models_1";
5
5
  /**
6
6
  * @public
@@ -3027,6 +3027,154 @@ export interface StartContactStreamingResponse {
3027
3027
  */
3028
3028
  StreamingId: string | undefined;
3029
3029
  }
3030
+ /**
3031
+ * @public
3032
+ */
3033
+ export interface StartOutboundChatContactRequest {
3034
+ /**
3035
+ * <p>Information about the endpoint.</p>
3036
+ * @public
3037
+ */
3038
+ SourceEndpoint: Endpoint | undefined;
3039
+ /**
3040
+ * <p>Information about the endpoint.</p>
3041
+ * @public
3042
+ */
3043
+ DestinationEndpoint: Endpoint | undefined;
3044
+ /**
3045
+ * <p>The identifier of the Amazon Connect instance. You can find the instance ID in the
3046
+ * Amazon Resource Name (ARN) of the instance.</p>
3047
+ * @public
3048
+ */
3049
+ InstanceId: string | undefined;
3050
+ /**
3051
+ * <p>A set of system defined key-value pairs stored on individual contact segments using an
3052
+ * attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in
3053
+ * flows.</p>
3054
+ * <ul>
3055
+ * <li>
3056
+ * <p>Attribute keys can include only alphanumeric, <code>-</code>, and <code>_</code>.</p>
3057
+ * </li>
3058
+ * <li>
3059
+ * <p>This field can be used to show channel subtype, such as <code>connect:Guide</code> and
3060
+ * <code>connect:SMS</code>.</p>
3061
+ * </li>
3062
+ * </ul>
3063
+ * @public
3064
+ */
3065
+ SegmentAttributes: Record<string, SegmentAttributeValue> | undefined;
3066
+ /**
3067
+ * <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>
3068
+ * @public
3069
+ */
3070
+ Attributes?: Record<string, string>;
3071
+ /**
3072
+ * <p>The identifier of the flow for the call. To see the ContactFlowId in the Amazon Connect
3073
+ * console user interface, on the navigation menu go to <b>Routing, Contact
3074
+ * Flows</b>. Choose the flow. On the flow page, under the name of the flow, choose
3075
+ * <b>Show additional flow information</b>. The ContactFlowId is the last
3076
+ * part of the ARN, shown here in bold:</p>
3077
+ * <ul>
3078
+ * <li>
3079
+ * <p>arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/<b>123ec456-a007-89c0-1234-xxxxxxxxxxxx</b>
3080
+ * </p>
3081
+ * </li>
3082
+ * </ul>
3083
+ * @public
3084
+ */
3085
+ ContactFlowId: string | undefined;
3086
+ /**
3087
+ * <p>The total duration of the newly started chat session. If not specified, the chat session
3088
+ * duration defaults to 25 hour. The minimum configurable time is 60 minutes. The maximum
3089
+ * configurable time is 10,080 minutes (7 days).</p>
3090
+ * @public
3091
+ */
3092
+ ChatDurationInMinutes?: number;
3093
+ /**
3094
+ * <p>The customer's details.</p>
3095
+ * @public
3096
+ */
3097
+ ParticipantDetails?: ParticipantDetails;
3098
+ /**
3099
+ * <p>A chat message.</p>
3100
+ * @public
3101
+ */
3102
+ InitialSystemMessage?: ChatMessage;
3103
+ /**
3104
+ * <p>The unique identifier for an Amazon Connect contact. This identifier is related to the
3105
+ * contact starting.</p>
3106
+ * @public
3107
+ */
3108
+ RelatedContactId?: string;
3109
+ /**
3110
+ * <p>The supported chat message content types. Supported types are:</p>
3111
+ * <ul>
3112
+ * <li>
3113
+ * <p>
3114
+ * <code>text/plain</code>
3115
+ * </p>
3116
+ * </li>
3117
+ * <li>
3118
+ * <p>
3119
+ * <code>text/markdown</code>
3120
+ * </p>
3121
+ * </li>
3122
+ * <li>
3123
+ * <p>
3124
+ * <code>application/json,
3125
+ * application/vnd.amazonaws.connect.message.interactive</code>
3126
+ * </p>
3127
+ * </li>
3128
+ * <li>
3129
+ * <p>
3130
+ * <code>application/vnd.amazonaws.connect.message.interactive.response</code>
3131
+ * </p>
3132
+ * </li>
3133
+ * </ul>
3134
+ * <p>Content types must always contain <code>text/plain</code>. You can then put any other
3135
+ * supported type in the list. For example, all the following lists are valid because they contain
3136
+ * <code>text/plain</code>:</p>
3137
+ * <ul>
3138
+ * <li>
3139
+ * <p>
3140
+ * <code>[text/plain, text/markdown, application/json]</code>
3141
+ * </p>
3142
+ * </li>
3143
+ * <li>
3144
+ * <p>
3145
+ * <code>[text/markdown, text/plain]</code>
3146
+ * </p>
3147
+ * </li>
3148
+ * <li>
3149
+ * <p>
3150
+ * <code>[text/plain, application/json,
3151
+ * application/vnd.amazonaws.connect.message.interactive.response]</code>
3152
+ * </p>
3153
+ * </li>
3154
+ * </ul>
3155
+ * @public
3156
+ */
3157
+ SupportedMessagingContentTypes?: string[];
3158
+ /**
3159
+ * <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the
3160
+ * request. If not provided, the AWS SDK populates this field. For more information about
3161
+ * idempotency, see <a href="https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/">Making
3162
+ * retries safe with idempotent APIs</a>. The token is valid for 7 days after creation. If a
3163
+ * contact is already started, the contact ID is returned.</p>
3164
+ * @public
3165
+ */
3166
+ ClientToken?: string;
3167
+ }
3168
+ /**
3169
+ * @public
3170
+ */
3171
+ export interface StartOutboundChatContactResponse {
3172
+ /**
3173
+ * <p>The identifier of this contact within the Amazon Connect instance.</p>
3174
+ * @public
3175
+ */
3176
+ ContactId?: string;
3177
+ }
3030
3178
  /**
3031
3179
  * <p>Outbound calls to the destination number are not allowed.</p>
3032
3180
  * @public
@@ -195,6 +195,7 @@ import { StartChatContactCommandInput, StartChatContactCommandOutput } from "../
195
195
  import { StartContactEvaluationCommandInput, StartContactEvaluationCommandOutput } from "../commands/StartContactEvaluationCommand";
196
196
  import { StartContactRecordingCommandInput, StartContactRecordingCommandOutput } from "../commands/StartContactRecordingCommand";
197
197
  import { StartContactStreamingCommandInput, StartContactStreamingCommandOutput } from "../commands/StartContactStreamingCommand";
198
+ import { StartOutboundChatContactCommandInput, StartOutboundChatContactCommandOutput } from "../commands/StartOutboundChatContactCommand";
198
199
  import { StartOutboundVoiceContactCommandInput, StartOutboundVoiceContactCommandOutput } from "../commands/StartOutboundVoiceContactCommand";
199
200
  import { StartTaskContactCommandInput, StartTaskContactCommandOutput } from "../commands/StartTaskContactCommand";
200
201
  import { StartWebRTCContactCommandInput, StartWebRTCContactCommandOutput } from "../commands/StartWebRTCContactCommand";
@@ -1035,6 +1036,10 @@ export declare const se_StartContactRecordingCommand: (input: StartContactRecord
1035
1036
  * serializeAws_restJson1StartContactStreamingCommand
1036
1037
  */
1037
1038
  export declare const se_StartContactStreamingCommand: (input: StartContactStreamingCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
1039
+ /**
1040
+ * serializeAws_restJson1StartOutboundChatContactCommand
1041
+ */
1042
+ export declare const se_StartOutboundChatContactCommand: (input: StartOutboundChatContactCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
1038
1043
  /**
1039
1044
  * serializeAws_restJson1StartOutboundVoiceContactCommand
1040
1045
  */
@@ -2055,6 +2060,10 @@ export declare const de_StartContactRecordingCommand: (output: __HttpResponse, c
2055
2060
  * deserializeAws_restJson1StartContactStreamingCommand
2056
2061
  */
2057
2062
  export declare const de_StartContactStreamingCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<StartContactStreamingCommandOutput>;
2063
+ /**
2064
+ * deserializeAws_restJson1StartOutboundChatContactCommand
2065
+ */
2066
+ export declare const de_StartOutboundChatContactCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<StartOutboundChatContactCommandOutput>;
2058
2067
  /**
2059
2068
  * deserializeAws_restJson1StartOutboundVoiceContactCommand
2060
2069
  */
@@ -779,6 +779,10 @@ import {
779
779
  StartContactStreamingCommandInput,
780
780
  StartContactStreamingCommandOutput,
781
781
  } from "./commands/StartContactStreamingCommand";
782
+ import {
783
+ StartOutboundChatContactCommandInput,
784
+ StartOutboundChatContactCommandOutput,
785
+ } from "./commands/StartOutboundChatContactCommand";
782
786
  import {
783
787
  StartOutboundVoiceContactCommandInput,
784
788
  StartOutboundVoiceContactCommandOutput,
@@ -3607,6 +3611,19 @@ export interface Connect {
3607
3611
  options: __HttpHandlerOptions,
3608
3612
  cb: (err: any, data?: StartContactStreamingCommandOutput) => void
3609
3613
  ): void;
3614
+ startOutboundChatContact(
3615
+ args: StartOutboundChatContactCommandInput,
3616
+ options?: __HttpHandlerOptions
3617
+ ): Promise<StartOutboundChatContactCommandOutput>;
3618
+ startOutboundChatContact(
3619
+ args: StartOutboundChatContactCommandInput,
3620
+ cb: (err: any, data?: StartOutboundChatContactCommandOutput) => void
3621
+ ): void;
3622
+ startOutboundChatContact(
3623
+ args: StartOutboundChatContactCommandInput,
3624
+ options: __HttpHandlerOptions,
3625
+ cb: (err: any, data?: StartOutboundChatContactCommandOutput) => void
3626
+ ): void;
3610
3627
  startOutboundVoiceContact(
3611
3628
  args: StartOutboundVoiceContactCommandInput,
3612
3629
  options?: __HttpHandlerOptions
@@ -825,6 +825,10 @@ import {
825
825
  StartContactStreamingCommandInput,
826
826
  StartContactStreamingCommandOutput,
827
827
  } from "./commands/StartContactStreamingCommand";
828
+ import {
829
+ StartOutboundChatContactCommandInput,
830
+ StartOutboundChatContactCommandOutput,
831
+ } from "./commands/StartOutboundChatContactCommand";
828
832
  import {
829
833
  StartOutboundVoiceContactCommandInput,
830
834
  StartOutboundVoiceContactCommandOutput,
@@ -1268,6 +1272,7 @@ export type ServiceInputTypes =
1268
1272
  | StartContactEvaluationCommandInput
1269
1273
  | StartContactRecordingCommandInput
1270
1274
  | StartContactStreamingCommandInput
1275
+ | StartOutboundChatContactCommandInput
1271
1276
  | StartOutboundVoiceContactCommandInput
1272
1277
  | StartTaskContactCommandInput
1273
1278
  | StartWebRTCContactCommandInput
@@ -1524,6 +1529,7 @@ export type ServiceOutputTypes =
1524
1529
  | StartContactEvaluationCommandOutput
1525
1530
  | StartContactRecordingCommandOutput
1526
1531
  | StartContactStreamingCommandOutput
1532
+ | StartOutboundChatContactCommandOutput
1527
1533
  | StartOutboundVoiceContactCommandOutput
1528
1534
  | StartTaskContactCommandOutput
1529
1535
  | StartWebRTCContactCommandOutput
@@ -0,0 +1,51 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import {
4
+ ConnectClientResolvedConfig,
5
+ ServiceInputTypes,
6
+ ServiceOutputTypes,
7
+ } from "../ConnectClient";
8
+ import {
9
+ StartOutboundChatContactRequest,
10
+ StartOutboundChatContactResponse,
11
+ } from "../models/models_2";
12
+ export { __MetadataBearer };
13
+ export { $Command };
14
+ export interface StartOutboundChatContactCommandInput
15
+ extends StartOutboundChatContactRequest {}
16
+ export interface StartOutboundChatContactCommandOutput
17
+ extends StartOutboundChatContactResponse,
18
+ __MetadataBearer {}
19
+ declare const StartOutboundChatContactCommand_base: {
20
+ new (
21
+ input: StartOutboundChatContactCommandInput
22
+ ): import("@smithy/smithy-client").CommandImpl<
23
+ StartOutboundChatContactCommandInput,
24
+ StartOutboundChatContactCommandOutput,
25
+ ConnectClientResolvedConfig,
26
+ ServiceInputTypes,
27
+ ServiceOutputTypes
28
+ >;
29
+ new (
30
+ __0_0: StartOutboundChatContactCommandInput
31
+ ): import("@smithy/smithy-client").CommandImpl<
32
+ StartOutboundChatContactCommandInput,
33
+ StartOutboundChatContactCommandOutput,
34
+ ConnectClientResolvedConfig,
35
+ ServiceInputTypes,
36
+ ServiceOutputTypes
37
+ >;
38
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
39
+ };
40
+ export declare class StartOutboundChatContactCommand extends StartOutboundChatContactCommand_base {
41
+ protected static __types: {
42
+ api: {
43
+ input: StartOutboundChatContactRequest;
44
+ output: StartOutboundChatContactResponse;
45
+ };
46
+ sdk: {
47
+ input: StartOutboundChatContactCommandInput;
48
+ output: StartOutboundChatContactCommandOutput;
49
+ };
50
+ };
51
+ }
@@ -193,6 +193,7 @@ export * from "./StartChatContactCommand";
193
193
  export * from "./StartContactEvaluationCommand";
194
194
  export * from "./StartContactRecordingCommand";
195
195
  export * from "./StartContactStreamingCommand";
196
+ export * from "./StartOutboundChatContactCommand";
196
197
  export * from "./StartOutboundVoiceContactCommand";
197
198
  export * from "./StartTaskContactCommand";
198
199
  export * from "./StartWebRTCContactCommand";
@@ -624,6 +624,7 @@ export interface Campaign {
624
624
  CampaignId?: string;
625
625
  }
626
626
  export declare const EndpointType: {
627
+ readonly CONNECT_PHONENUMBER_ARN: "CONNECT_PHONENUMBER_ARN";
627
628
  readonly CONTACT_FLOW: "CONTACT_FLOW";
628
629
  readonly TELEPHONE_NUMBER: "TELEPHONE_NUMBER";
629
630
  readonly VOIP: "VOIP";
@@ -22,6 +22,7 @@ import {
22
22
  Customer,
23
23
  CustomerVoiceActivity,
24
24
  DisconnectDetails,
25
+ Endpoint,
25
26
  EvaluationFormQuestion,
26
27
  EvaluationFormScoringStrategy,
27
28
  Expiry,
@@ -746,6 +747,23 @@ export interface StartContactStreamingRequest {
746
747
  export interface StartContactStreamingResponse {
747
748
  StreamingId: string | undefined;
748
749
  }
750
+ export interface StartOutboundChatContactRequest {
751
+ SourceEndpoint: Endpoint | undefined;
752
+ DestinationEndpoint: Endpoint | undefined;
753
+ InstanceId: string | undefined;
754
+ SegmentAttributes: Record<string, SegmentAttributeValue> | undefined;
755
+ Attributes?: Record<string, string>;
756
+ ContactFlowId: string | undefined;
757
+ ChatDurationInMinutes?: number;
758
+ ParticipantDetails?: ParticipantDetails;
759
+ InitialSystemMessage?: ChatMessage;
760
+ RelatedContactId?: string;
761
+ SupportedMessagingContentTypes?: string[];
762
+ ClientToken?: string;
763
+ }
764
+ export interface StartOutboundChatContactResponse {
765
+ ContactId?: string;
766
+ }
749
767
  export declare class DestinationNotAllowedException extends __BaseException {
750
768
  readonly name: "DestinationNotAllowedException";
751
769
  readonly $fault: "client";
@@ -783,6 +783,10 @@ import {
783
783
  StartContactStreamingCommandInput,
784
784
  StartContactStreamingCommandOutput,
785
785
  } from "../commands/StartContactStreamingCommand";
786
+ import {
787
+ StartOutboundChatContactCommandInput,
788
+ StartOutboundChatContactCommandOutput,
789
+ } from "../commands/StartOutboundChatContactCommand";
786
790
  import {
787
791
  StartOutboundVoiceContactCommandInput,
788
792
  StartOutboundVoiceContactCommandOutput,
@@ -1803,6 +1807,10 @@ export declare const se_StartContactStreamingCommand: (
1803
1807
  input: StartContactStreamingCommandInput,
1804
1808
  context: __SerdeContext
1805
1809
  ) => Promise<__HttpRequest>;
1810
+ export declare const se_StartOutboundChatContactCommand: (
1811
+ input: StartOutboundChatContactCommandInput,
1812
+ context: __SerdeContext
1813
+ ) => Promise<__HttpRequest>;
1806
1814
  export declare const se_StartOutboundVoiceContactCommand: (
1807
1815
  input: StartOutboundVoiceContactCommandInput,
1808
1816
  context: __SerdeContext
@@ -2823,6 +2831,10 @@ export declare const de_StartContactStreamingCommand: (
2823
2831
  output: __HttpResponse,
2824
2832
  context: __SerdeContext
2825
2833
  ) => Promise<StartContactStreamingCommandOutput>;
2834
+ export declare const de_StartOutboundChatContactCommand: (
2835
+ output: __HttpResponse,
2836
+ context: __SerdeContext
2837
+ ) => Promise<StartOutboundChatContactCommandOutput>;
2826
2838
  export declare const de_StartOutboundVoiceContactCommand: (
2827
2839
  output: __HttpResponse,
2828
2840
  context: __SerdeContext