Skip to content

Commit 74a0d2e

Browse files
author
awstools
committed
feat(client-connect): This release adds API support for managing phone numbers that can be used across multiple AWS regions through telephony traffic distribution.
1 parent 3aad5b0 commit 74a0d2e

File tree

177 files changed

+7729
-967
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

177 files changed

+7729
-967
lines changed

clients/client-connect/README.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,20 @@
99

1010
AWS SDK for JavaScript Connect Client for Node.js, Browser and React Native.
1111

12-
<p>Amazon Connect is a cloud-based contact center solution that you use to set up and manage a customer
13-
contact center and provide reliable customer engagement at any scale.</p>
14-
<p>Amazon Connect provides metrics and real-time reporting that enable you to optimize contact routing.
15-
You can also resolve customer issues more efficiently by getting customers in touch with the
16-
appropriate agents.</p>
17-
<p>There are limits to the number of Amazon Connect resources that you can create. There are also limits
18-
to the number of requests that you can make per second. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html">Amazon Connect
19-
Service Quotas</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
12+
<p>Amazon Connect is a cloud-based contact center solution that you use to set up and
13+
manage a customer contact center and provide reliable customer engagement at any scale.</p>
14+
<p>Amazon Connect provides metrics and real-time reporting that enable you to optimize
15+
contact routing. You can also resolve customer issues more efficiently by getting customers in
16+
touch with the appropriate agents.</p>
17+
<p>There are limits to the number of Amazon Connect resources that you can create. There
18+
are also limits to the number of requests that you can make per second. For more information, see
19+
<a href="https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html">Amazon Connect Service Quotas</a> in the <i>Amazon Connect Administrator
20+
Guide</i>.</p>
2021
<p>You can connect programmatically to an Amazon Web Services service by using an endpoint. For
2122
a list of Amazon Connect endpoints, see <a href="https://docs.aws.amazon.com/general/latest/gr/connect_region.html">Amazon Connect Endpoints</a>.</p>
2223
<note>
23-
<p>Working with flows? Check out the <a href="https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html">Amazon Connect Flow language</a>.</p>
24+
<p>Working with flows? Check out the <a href="https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html">Amazon Connect Flow
25+
language</a>.</p>
2426
</note>
2527

2628
## Installing

clients/client-connect/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
"@aws-sdk/hash-node": "*",
2727
"@aws-sdk/invalid-dependency": "*",
2828
"@aws-sdk/middleware-content-length": "*",
29+
"@aws-sdk/middleware-endpoint": "*",
2930
"@aws-sdk/middleware-host-header": "*",
3031
"@aws-sdk/middleware-logger": "*",
3132
"@aws-sdk/middleware-recursion-detection": "*",

clients/client-connect/src/Connect.ts

Lines changed: 444 additions & 65 deletions
Large diffs are not rendered by default.

clients/client-connect/src/ConnectClient.ts

Lines changed: 74 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,7 @@
11
// smithy-typescript generated code
2-
import {
3-
EndpointsInputConfig,
4-
EndpointsResolvedConfig,
5-
RegionInputConfig,
6-
RegionResolvedConfig,
7-
resolveEndpointsConfig,
8-
resolveRegionConfig,
9-
} from "@aws-sdk/config-resolver";
2+
import { RegionInputConfig, RegionResolvedConfig, resolveRegionConfig } from "@aws-sdk/config-resolver";
103
import { getContentLengthPlugin } from "@aws-sdk/middleware-content-length";
4+
import { EndpointInputConfig, EndpointResolvedConfig, resolveEndpointConfig } from "@aws-sdk/middleware-endpoint";
115
import {
126
getHostHeaderPlugin,
137
HostHeaderInputConfig,
@@ -41,13 +35,13 @@ import {
4135
Credentials as __Credentials,
4236
Decoder as __Decoder,
4337
Encoder as __Encoder,
38+
EndpointV2 as __EndpointV2,
4439
Hash as __Hash,
4540
HashConstructor as __HashConstructor,
4641
HttpHandlerOptions as __HttpHandlerOptions,
4742
Logger as __Logger,
4843
Provider as __Provider,
4944
Provider,
50-
RegionInfoProvider,
5145
StreamCollector as __StreamCollector,
5246
UrlParser as __UrlParser,
5347
UserAgent as __UserAgent,
@@ -114,6 +108,10 @@ import {
114108
CreateSecurityProfileCommandOutput,
115109
} from "./commands/CreateSecurityProfileCommand";
116110
import { CreateTaskTemplateCommandInput, CreateTaskTemplateCommandOutput } from "./commands/CreateTaskTemplateCommand";
111+
import {
112+
CreateTrafficDistributionGroupCommandInput,
113+
CreateTrafficDistributionGroupCommandOutput,
114+
} from "./commands/CreateTrafficDistributionGroupCommand";
117115
import { CreateUseCaseCommandInput, CreateUseCaseCommandOutput } from "./commands/CreateUseCaseCommand";
118116
import { CreateUserCommandInput, CreateUserCommandOutput } from "./commands/CreateUserCommand";
119117
import {
@@ -141,6 +139,10 @@ import {
141139
DeleteSecurityProfileCommandOutput,
142140
} from "./commands/DeleteSecurityProfileCommand";
143141
import { DeleteTaskTemplateCommandInput, DeleteTaskTemplateCommandOutput } from "./commands/DeleteTaskTemplateCommand";
142+
import {
143+
DeleteTrafficDistributionGroupCommandInput,
144+
DeleteTrafficDistributionGroupCommandOutput,
145+
} from "./commands/DeleteTrafficDistributionGroupCommand";
144146
import { DeleteUseCaseCommandInput, DeleteUseCaseCommandOutput } from "./commands/DeleteUseCaseCommand";
145147
import { DeleteUserCommandInput, DeleteUserCommandOutput } from "./commands/DeleteUserCommand";
146148
import {
@@ -191,6 +193,10 @@ import {
191193
DescribeSecurityProfileCommandInput,
192194
DescribeSecurityProfileCommandOutput,
193195
} from "./commands/DescribeSecurityProfileCommand";
196+
import {
197+
DescribeTrafficDistributionGroupCommandInput,
198+
DescribeTrafficDistributionGroupCommandOutput,
199+
} from "./commands/DescribeTrafficDistributionGroupCommand";
194200
import { DescribeUserCommandInput, DescribeUserCommandOutput } from "./commands/DescribeUserCommand";
195201
import {
196202
DescribeUserHierarchyGroupCommandInput,
@@ -243,6 +249,10 @@ import { GetCurrentUserDataCommandInput, GetCurrentUserDataCommandOutput } from
243249
import { GetFederationTokenCommandInput, GetFederationTokenCommandOutput } from "./commands/GetFederationTokenCommand";
244250
import { GetMetricDataCommandInput, GetMetricDataCommandOutput } from "./commands/GetMetricDataCommand";
245251
import { GetTaskTemplateCommandInput, GetTaskTemplateCommandOutput } from "./commands/GetTaskTemplateCommand";
252+
import {
253+
GetTrafficDistributionCommandInput,
254+
GetTrafficDistributionCommandOutput,
255+
} from "./commands/GetTrafficDistributionCommand";
246256
import { ListAgentStatusesCommandInput, ListAgentStatusesCommandOutput } from "./commands/ListAgentStatusesCommand";
247257
import {
248258
ListApprovedOriginsCommandInput,
@@ -315,6 +325,10 @@ import {
315325
ListTagsForResourceCommandOutput,
316326
} from "./commands/ListTagsForResourceCommand";
317327
import { ListTaskTemplatesCommandInput, ListTaskTemplatesCommandOutput } from "./commands/ListTaskTemplatesCommand";
328+
import {
329+
ListTrafficDistributionGroupsCommandInput,
330+
ListTrafficDistributionGroupsCommandOutput,
331+
} from "./commands/ListTrafficDistributionGroupsCommand";
318332
import { ListUseCasesCommandInput, ListUseCasesCommandOutput } from "./commands/ListUseCasesCommand";
319333
import {
320334
ListUserHierarchyGroupsCommandInput,
@@ -323,6 +337,7 @@ import {
323337
import { ListUsersCommandInput, ListUsersCommandOutput } from "./commands/ListUsersCommand";
324338
import { PutUserStatusCommandInput, PutUserStatusCommandOutput } from "./commands/PutUserStatusCommand";
325339
import { ReleasePhoneNumberCommandInput, ReleasePhoneNumberCommandOutput } from "./commands/ReleasePhoneNumberCommand";
340+
import { ReplicateInstanceCommandInput, ReplicateInstanceCommandOutput } from "./commands/ReplicateInstanceCommand";
326341
import {
327342
ResumeContactRecordingCommandInput,
328343
ResumeContactRecordingCommandOutput,
@@ -458,6 +473,10 @@ import {
458473
UpdateSecurityProfileCommandOutput,
459474
} from "./commands/UpdateSecurityProfileCommand";
460475
import { UpdateTaskTemplateCommandInput, UpdateTaskTemplateCommandOutput } from "./commands/UpdateTaskTemplateCommand";
476+
import {
477+
UpdateTrafficDistributionCommandInput,
478+
UpdateTrafficDistributionCommandOutput,
479+
} from "./commands/UpdateTrafficDistributionCommand";
461480
import {
462481
UpdateUserHierarchyCommandInput,
463482
UpdateUserHierarchyCommandOutput,
@@ -486,6 +505,12 @@ import {
486505
UpdateUserSecurityProfilesCommandInput,
487506
UpdateUserSecurityProfilesCommandOutput,
488507
} from "./commands/UpdateUserSecurityProfilesCommand";
508+
import {
509+
ClientInputEndpointParameters,
510+
ClientResolvedEndpointParameters,
511+
EndpointParameters,
512+
resolveClientEndpointParameters,
513+
} from "./endpoint/EndpointParameters";
489514
import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
490515

491516
export type ServiceInputTypes =
@@ -511,6 +536,7 @@ export type ServiceInputTypes =
511536
| CreateRoutingProfileCommandInput
512537
| CreateSecurityProfileCommandInput
513538
| CreateTaskTemplateCommandInput
539+
| CreateTrafficDistributionGroupCommandInput
514540
| CreateUseCaseCommandInput
515541
| CreateUserCommandInput
516542
| CreateUserHierarchyGroupCommandInput
@@ -523,6 +549,7 @@ export type ServiceInputTypes =
523549
| DeleteQuickConnectCommandInput
524550
| DeleteSecurityProfileCommandInput
525551
| DeleteTaskTemplateCommandInput
552+
| DeleteTrafficDistributionGroupCommandInput
526553
| DeleteUseCaseCommandInput
527554
| DeleteUserCommandInput
528555
| DeleteUserHierarchyGroupCommandInput
@@ -540,6 +567,7 @@ export type ServiceInputTypes =
540567
| DescribeQuickConnectCommandInput
541568
| DescribeRoutingProfileCommandInput
542569
| DescribeSecurityProfileCommandInput
570+
| DescribeTrafficDistributionGroupCommandInput
543571
| DescribeUserCommandInput
544572
| DescribeUserHierarchyGroupCommandInput
545573
| DescribeUserHierarchyStructureCommandInput
@@ -559,6 +587,7 @@ export type ServiceInputTypes =
559587
| GetFederationTokenCommandInput
560588
| GetMetricDataCommandInput
561589
| GetTaskTemplateCommandInput
590+
| GetTrafficDistributionCommandInput
562591
| ListAgentStatusesCommandInput
563592
| ListApprovedOriginsCommandInput
564593
| ListBotsCommandInput
@@ -586,11 +615,13 @@ export type ServiceInputTypes =
586615
| ListSecurityProfilesCommandInput
587616
| ListTagsForResourceCommandInput
588617
| ListTaskTemplatesCommandInput
618+
| ListTrafficDistributionGroupsCommandInput
589619
| ListUseCasesCommandInput
590620
| ListUserHierarchyGroupsCommandInput
591621
| ListUsersCommandInput
592622
| PutUserStatusCommandInput
593623
| ReleasePhoneNumberCommandInput
624+
| ReplicateInstanceCommandInput
594625
| ResumeContactRecordingCommandInput
595626
| SearchAvailablePhoneNumbersCommandInput
596627
| SearchQueuesCommandInput
@@ -636,6 +667,7 @@ export type ServiceInputTypes =
636667
| UpdateRoutingProfileQueuesCommandInput
637668
| UpdateSecurityProfileCommandInput
638669
| UpdateTaskTemplateCommandInput
670+
| UpdateTrafficDistributionCommandInput
639671
| UpdateUserHierarchyCommandInput
640672
| UpdateUserHierarchyGroupNameCommandInput
641673
| UpdateUserHierarchyStructureCommandInput
@@ -667,6 +699,7 @@ export type ServiceOutputTypes =
667699
| CreateRoutingProfileCommandOutput
668700
| CreateSecurityProfileCommandOutput
669701
| CreateTaskTemplateCommandOutput
702+
| CreateTrafficDistributionGroupCommandOutput
670703
| CreateUseCaseCommandOutput
671704
| CreateUserCommandOutput
672705
| CreateUserHierarchyGroupCommandOutput
@@ -679,6 +712,7 @@ export type ServiceOutputTypes =
679712
| DeleteQuickConnectCommandOutput
680713
| DeleteSecurityProfileCommandOutput
681714
| DeleteTaskTemplateCommandOutput
715+
| DeleteTrafficDistributionGroupCommandOutput
682716
| DeleteUseCaseCommandOutput
683717
| DeleteUserCommandOutput
684718
| DeleteUserHierarchyGroupCommandOutput
@@ -696,6 +730,7 @@ export type ServiceOutputTypes =
696730
| DescribeQuickConnectCommandOutput
697731
| DescribeRoutingProfileCommandOutput
698732
| DescribeSecurityProfileCommandOutput
733+
| DescribeTrafficDistributionGroupCommandOutput
699734
| DescribeUserCommandOutput
700735
| DescribeUserHierarchyGroupCommandOutput
701736
| DescribeUserHierarchyStructureCommandOutput
@@ -715,6 +750,7 @@ export type ServiceOutputTypes =
715750
| GetFederationTokenCommandOutput
716751
| GetMetricDataCommandOutput
717752
| GetTaskTemplateCommandOutput
753+
| GetTrafficDistributionCommandOutput
718754
| ListAgentStatusesCommandOutput
719755
| ListApprovedOriginsCommandOutput
720756
| ListBotsCommandOutput
@@ -742,11 +778,13 @@ export type ServiceOutputTypes =
742778
| ListSecurityProfilesCommandOutput
743779
| ListTagsForResourceCommandOutput
744780
| ListTaskTemplatesCommandOutput
781+
| ListTrafficDistributionGroupsCommandOutput
745782
| ListUseCasesCommandOutput
746783
| ListUserHierarchyGroupsCommandOutput
747784
| ListUsersCommandOutput
748785
| PutUserStatusCommandOutput
749786
| ReleasePhoneNumberCommandOutput
787+
| ReplicateInstanceCommandOutput
750788
| ResumeContactRecordingCommandOutput
751789
| SearchAvailablePhoneNumbersCommandOutput
752790
| SearchQueuesCommandOutput
@@ -792,6 +830,7 @@ export type ServiceOutputTypes =
792830
| UpdateRoutingProfileQueuesCommandOutput
793831
| UpdateSecurityProfileCommandOutput
794832
| UpdateTaskTemplateCommandOutput
833+
| UpdateTrafficDistributionCommandOutput
795834
| UpdateUserHierarchyCommandOutput
796835
| UpdateUserHierarchyGroupNameCommandOutput
797836
| UpdateUserHierarchyStructureCommandOutput
@@ -909,12 +948,6 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
909948
*/
910949
credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
911950

912-
/**
913-
* Fetch related hostname, signing name or signing region with given region.
914-
* @internal
915-
*/
916-
regionInfoProvider?: RegionInfoProvider;
917-
918951
/**
919952
* The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
920953
* @internal
@@ -930,11 +963,12 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
930963
type ConnectClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> &
931964
ClientDefaults &
932965
RegionInputConfig &
933-
EndpointsInputConfig &
966+
EndpointInputConfig<EndpointParameters> &
934967
RetryInputConfig &
935968
HostHeaderInputConfig &
936969
AwsAuthInputConfig &
937-
UserAgentInputConfig;
970+
UserAgentInputConfig &
971+
ClientInputEndpointParameters;
938972
/**
939973
* The configuration interface of ConnectClient class constructor that set the region, credentials and other options.
940974
*/
@@ -943,29 +977,32 @@ export interface ConnectClientConfig extends ConnectClientConfigType {}
943977
type ConnectClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> &
944978
Required<ClientDefaults> &
945979
RegionResolvedConfig &
946-
EndpointsResolvedConfig &
980+
EndpointResolvedConfig<EndpointParameters> &
947981
RetryResolvedConfig &
948982
HostHeaderResolvedConfig &
949983
AwsAuthResolvedConfig &
950-
UserAgentResolvedConfig;
984+
UserAgentResolvedConfig &
985+
ClientResolvedEndpointParameters;
951986
/**
952987
* The resolved configuration interface of ConnectClient class. This is resolved and normalized from the {@link ConnectClientConfig | constructor configuration interface}.
953988
*/
954989
export interface ConnectClientResolvedConfig extends ConnectClientResolvedConfigType {}
955990

956991
/**
957-
* <p>Amazon Connect is a cloud-based contact center solution that you use to set up and manage a customer
958-
* contact center and provide reliable customer engagement at any scale.</p>
959-
* <p>Amazon Connect provides metrics and real-time reporting that enable you to optimize contact routing.
960-
* You can also resolve customer issues more efficiently by getting customers in touch with the
961-
* appropriate agents.</p>
962-
* <p>There are limits to the number of Amazon Connect resources that you can create. There are also limits
963-
* to the number of requests that you can make per second. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html">Amazon Connect
964-
* Service Quotas</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
992+
* <p>Amazon Connect is a cloud-based contact center solution that you use to set up and
993+
* manage a customer contact center and provide reliable customer engagement at any scale.</p>
994+
* <p>Amazon Connect provides metrics and real-time reporting that enable you to optimize
995+
* contact routing. You can also resolve customer issues more efficiently by getting customers in
996+
* touch with the appropriate agents.</p>
997+
* <p>There are limits to the number of Amazon Connect resources that you can create. There
998+
* are also limits to the number of requests that you can make per second. For more information, see
999+
* <a href="https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html">Amazon Connect Service Quotas</a> in the <i>Amazon Connect Administrator
1000+
* Guide</i>.</p>
9651001
* <p>You can connect programmatically to an Amazon Web Services service by using an endpoint. For
9661002
* a list of Amazon Connect endpoints, see <a href="https://docs.aws.amazon.com/general/latest/gr/connect_region.html">Amazon Connect Endpoints</a>.</p>
9671003
* <note>
968-
* <p>Working with flows? Check out the <a href="https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html">Amazon Connect Flow language</a>.</p>
1004+
* <p>Working with flows? Check out the <a href="https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html">Amazon Connect Flow
1005+
* language</a>.</p>
9691006
* </note>
9701007
*/
9711008
export class ConnectClient extends __Client<
@@ -981,14 +1018,15 @@ export class ConnectClient extends __Client<
9811018

9821019
constructor(configuration: ConnectClientConfig) {
9831020
const _config_0 = __getRuntimeConfig(configuration);
984-
const _config_1 = resolveRegionConfig(_config_0);
985-
const _config_2 = resolveEndpointsConfig(_config_1);
986-
const _config_3 = resolveRetryConfig(_config_2);
987-
const _config_4 = resolveHostHeaderConfig(_config_3);
988-
const _config_5 = resolveAwsAuthConfig(_config_4);
989-
const _config_6 = resolveUserAgentConfig(_config_5);
990-
super(_config_6);
991-
this.config = _config_6;
1021+
const _config_1 = resolveClientEndpointParameters(_config_0);
1022+
const _config_2 = resolveRegionConfig(_config_1);
1023+
const _config_3 = resolveEndpointConfig(_config_2);
1024+
const _config_4 = resolveRetryConfig(_config_3);
1025+
const _config_5 = resolveHostHeaderConfig(_config_4);
1026+
const _config_6 = resolveAwsAuthConfig(_config_5);
1027+
const _config_7 = resolveUserAgentConfig(_config_6);
1028+
super(_config_7);
1029+
this.config = _config_7;
9921030
this.middlewareStack.use(getRetryPlugin(this.config));
9931031
this.middlewareStack.use(getContentLengthPlugin(this.config));
9941032
this.middlewareStack.use(getHostHeaderPlugin(this.config));

clients/client-connect/src/commands/AssociateApprovedOriginCommand.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
34
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
45
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -48,6 +49,15 @@ export class AssociateApprovedOriginCommand extends $Command<
4849
// Start section: command_properties
4950
// End section: command_properties
5051

52+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
53+
return {
54+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
55+
Endpoint: { type: "builtInParams", name: "endpoint" },
56+
Region: { type: "builtInParams", name: "region" },
57+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
58+
};
59+
}
60+
5161
constructor(readonly input: AssociateApprovedOriginCommandInput) {
5262
// Start section: command_constructor
5363
super();
@@ -63,6 +73,9 @@ export class AssociateApprovedOriginCommand extends $Command<
6373
options?: __HttpHandlerOptions
6474
): Handler<AssociateApprovedOriginCommandInput, AssociateApprovedOriginCommandOutput> {
6575
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
76+
this.middlewareStack.use(
77+
getEndpointPlugin(configuration, AssociateApprovedOriginCommand.getEndpointParameterInstructions())
78+
);
6679

6780
const stack = clientStack.concat(this.middlewareStack);
6881

0 commit comments

Comments
 (0)