Skip to content

Commit 2859d8b

Browse files
author
awstools
committed
feat(client-qbusiness): Adds functionality to enable/disable a new Q Business Chat orchestration feature. If enabled, Q Business can orchestrate over datasources and plugins without the need for customers to select specific chat modes.
1 parent 702a943 commit 2859d8b

File tree

7 files changed

+203
-66
lines changed

7 files changed

+203
-66
lines changed

clients/client-qbusiness/src/commands/GetChatControlsConfigurationCommand.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export interface GetChatControlsConfigurationCommandOutput
3333
__MetadataBearer {}
3434

3535
/**
36-
* <p>Gets information about an chat controls configured for an existing Amazon Q Business
36+
* <p>Gets information about chat controls configured for an existing Amazon Q Business
3737
* application.</p>
3838
* @example
3939
* Use a bare-bones client and the command you need to make an API call.
@@ -50,6 +50,9 @@ export interface GetChatControlsConfigurationCommandOutput
5050
* const response = await client.send(command);
5151
* // { // GetChatControlsConfigurationResponse
5252
* // responseScope: "ENTERPRISE_CONTENT_ONLY" || "EXTENDED_KNOWLEDGE_ENABLED",
53+
* // orchestrationConfiguration: { // AppliedOrchestrationConfiguration
54+
* // control: "ENABLED" || "DISABLED", // required
55+
* // },
5356
* // blockedPhrases: { // BlockedPhrasesConfiguration
5457
* // blockedPhrases: [ // BlockedPhrases
5558
* // "STRING_VALUE",

clients/client-qbusiness/src/commands/PutFeedbackCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client";
55
import { MetadataBearer as __MetadataBearer } from "@smithy/types";
66

77
import { commonParams } from "../endpoint/EndpointParameters";
8-
import { PutFeedbackRequest } from "../models/models_0";
8+
import { PutFeedbackRequest } from "../models/models_1";
99
import { de_PutFeedbackCommand, se_PutFeedbackCommand } from "../protocols/Aws_restJson1";
1010
import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient";
1111

clients/client-qbusiness/src/commands/UpdateChatControlsConfigurationCommand.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export interface UpdateChatControlsConfigurationCommandOutput
3333
__MetadataBearer {}
3434

3535
/**
36-
* <p>Updates an set of chat controls configured for an existing Amazon Q Business
36+
* <p>Updates a set of chat controls configured for an existing Amazon Q Business
3737
* application.</p>
3838
* @example
3939
* Use a bare-bones client and the command you need to make an API call.
@@ -45,6 +45,9 @@ export interface UpdateChatControlsConfigurationCommandOutput
4545
* applicationId: "STRING_VALUE", // required
4646
* clientToken: "STRING_VALUE",
4747
* responseScope: "ENTERPRISE_CONTENT_ONLY" || "EXTENDED_KNOWLEDGE_ENABLED",
48+
* orchestrationConfiguration: { // OrchestrationConfiguration
49+
* control: "ENABLED" || "DISABLED", // required
50+
* },
4851
* blockedPhrasesConfigurationUpdate: { // BlockedPhrasesConfigurationUpdate
4952
* blockedPhrasesToCreateOrUpdate: [ // BlockedPhrases
5053
* "STRING_VALUE",

clients/client-qbusiness/src/models/models_0.ts

Lines changed: 40 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -5165,6 +5165,36 @@ export interface AppliedCreatorModeConfiguration {
51655165
creatorModeControl: CreatorModeControl | undefined;
51665166
}
51675167

5168+
/**
5169+
* @public
5170+
* @enum
5171+
*/
5172+
export const OrchestrationControl = {
5173+
DISABLED: "DISABLED",
5174+
ENABLED: "ENABLED",
5175+
} as const;
5176+
5177+
/**
5178+
* @public
5179+
*/
5180+
export type OrchestrationControl = (typeof OrchestrationControl)[keyof typeof OrchestrationControl];
5181+
5182+
/**
5183+
* <p>The chat orchestration specific admin controls configured for an Amazon Q Business
5184+
* application. Determines whether Amazon Q Business automatically routes chat requests across
5185+
* configured plugins and data sources in your Amazon Q Business application.</p>
5186+
* <p>For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails-global-controls.html#guardrails-global-orchestration">Chat orchestration settings</a>.</p>
5187+
* @public
5188+
*/
5189+
export interface AppliedOrchestrationConfiguration {
5190+
/**
5191+
* <p> Information about whether chat orchestration is enabled or disabled for an
5192+
* Amazon Q Business application. </p>
5193+
* @public
5194+
*/
5195+
control: OrchestrationControl | undefined;
5196+
}
5197+
51685198
/**
51695199
* @public
51705200
*/
@@ -7179,6 +7209,16 @@ export interface GetChatControlsConfigurationResponse {
71797209
*/
71807210
responseScope?: ResponseScope | undefined;
71817211

7212+
/**
7213+
* <p> The chat response orchestration settings for your application.</p>
7214+
* <note>
7215+
* <p>Chat orchestration is optimized to work for English language content. For more
7216+
* details on language support in Amazon Q Business, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/supported-languages.html">Supported languages</a>.</p>
7217+
* </note>
7218+
* @public
7219+
*/
7220+
orchestrationConfiguration?: AppliedOrchestrationConfiguration | undefined;
7221+
71827222
/**
71837223
* <p>The phrases blocked from chat by your chat control configuration.</p>
71847224
* @public
@@ -8196,65 +8236,6 @@ export interface MessageUsefulnessFeedback {
81968236
submittedAt: Date | undefined;
81978237
}
81988238

8199-
/**
8200-
* @public
8201-
*/
8202-
export interface PutFeedbackRequest {
8203-
/**
8204-
* <p>The identifier of the application associated with the feedback.</p>
8205-
* @public
8206-
*/
8207-
applicationId: string | undefined;
8208-
8209-
/**
8210-
* <p>The identifier of the user giving the feedback.</p>
8211-
* @public
8212-
*/
8213-
userId?: string | undefined;
8214-
8215-
/**
8216-
* <p>The identifier of the conversation the feedback is attached to.</p>
8217-
* @public
8218-
*/
8219-
conversationId: string | undefined;
8220-
8221-
/**
8222-
* <p>The identifier of the chat message that the feedback was given for.</p>
8223-
* @public
8224-
*/
8225-
messageId: string | undefined;
8226-
8227-
/**
8228-
* <p>The timestamp for when the feedback was recorded.</p>
8229-
* @public
8230-
*/
8231-
messageCopiedAt?: Date | undefined;
8232-
8233-
/**
8234-
* <p>The feedback usefulness value given by the user to the chat message.</p>
8235-
* @public
8236-
*/
8237-
messageUsefulness?: MessageUsefulnessFeedback | undefined;
8238-
}
8239-
8240-
/**
8241-
* <p>The sub groups that belong to a group.</p>
8242-
* @public
8243-
*/
8244-
export interface MemberGroup {
8245-
/**
8246-
* <p>The name of the sub group.</p>
8247-
* @public
8248-
*/
8249-
groupName: string | undefined;
8250-
8251-
/**
8252-
* <p>The type of the sub group.</p>
8253-
* @public
8254-
*/
8255-
type?: MembershipType | undefined;
8256-
}
8257-
82588239
/**
82598240
* @internal
82608241
*/

clients/client-qbusiness/src/models/models_1.ts

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ import {
1515
CreatorModeConfiguration,
1616
DocumentAttribute,
1717
EndOfInputEvent,
18-
MemberGroup,
1918
MembershipType,
19+
MessageUsefulnessFeedback,
20+
OrchestrationControl,
2021
ResponseScope,
2122
S3,
2223
SubscriptionDetails,
@@ -27,6 +28,65 @@ import {
2728
UserAlias,
2829
} from "./models_0";
2930

31+
/**
32+
* @public
33+
*/
34+
export interface PutFeedbackRequest {
35+
/**
36+
* <p>The identifier of the application associated with the feedback.</p>
37+
* @public
38+
*/
39+
applicationId: string | undefined;
40+
41+
/**
42+
* <p>The identifier of the user giving the feedback.</p>
43+
* @public
44+
*/
45+
userId?: string | undefined;
46+
47+
/**
48+
* <p>The identifier of the conversation the feedback is attached to.</p>
49+
* @public
50+
*/
51+
conversationId: string | undefined;
52+
53+
/**
54+
* <p>The identifier of the chat message that the feedback was given for.</p>
55+
* @public
56+
*/
57+
messageId: string | undefined;
58+
59+
/**
60+
* <p>The timestamp for when the feedback was recorded.</p>
61+
* @public
62+
*/
63+
messageCopiedAt?: Date | undefined;
64+
65+
/**
66+
* <p>The feedback usefulness value given by the user to the chat message.</p>
67+
* @public
68+
*/
69+
messageUsefulness?: MessageUsefulnessFeedback | undefined;
70+
}
71+
72+
/**
73+
* <p>The sub groups that belong to a group.</p>
74+
* @public
75+
*/
76+
export interface MemberGroup {
77+
/**
78+
* <p>The name of the sub group.</p>
79+
* @public
80+
*/
81+
groupName: string | undefined;
82+
83+
/**
84+
* <p>The type of the sub group.</p>
85+
* @public
86+
*/
87+
type?: MembershipType | undefined;
88+
}
89+
3090
/**
3191
* <p>The users that belong to a group.</p>
3292
* @public
@@ -333,6 +393,24 @@ export interface UntagResourceRequest {
333393
*/
334394
export interface UntagResourceResponse {}
335395

396+
/**
397+
* <p>Configuration information required to enable chat orchestration for your Amazon Q Business
398+
* application.</p>
399+
* <note>
400+
* <p>Chat orchestration is optimized to work for English language content. For more
401+
* details on language support in Amazon Q Business, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/supported-languages.html">Supported languages</a>.</p>
402+
* </note>
403+
* @public
404+
*/
405+
export interface OrchestrationConfiguration {
406+
/**
407+
* <p> Status information about whether chat orchestration is activated or deactivated for
408+
* your Amazon Q Business application.</p>
409+
* @public
410+
*/
411+
control: OrchestrationControl | undefined;
412+
}
413+
336414
/**
337415
* @public
338416
*/
@@ -359,6 +437,12 @@ export interface UpdateChatControlsConfigurationRequest {
359437
*/
360438
responseScope?: ResponseScope | undefined;
361439

440+
/**
441+
* <p> The chat response orchestration settings for your application.</p>
442+
* @public
443+
*/
444+
orchestrationConfiguration?: OrchestrationConfiguration | undefined;
445+
362446
/**
363447
* <p>The phrases blocked from chat by your chat control configuration.</p>
364448
* @public

clients/client-qbusiness/src/protocols/Aws_restJson1.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,6 @@ import {
230230
LicenseNotFoundException,
231231
MediaExtractionConfiguration,
232232
MediaTooLargeException,
233-
MemberGroup,
234233
Message,
235234
MessageUsefulnessFeedback,
236235
MetadataEvent,
@@ -280,7 +279,9 @@ import {
280279
ChatInputStream,
281280
ConfigurationEvent,
282281
GroupMembers,
282+
MemberGroup,
283283
MemberUser,
284+
OrchestrationConfiguration,
284285
RelevantContent,
285286
} from "../models/models_1";
286287
import { QBusinessServiceException as __BaseException } from "../models/QBusinessServiceException";
@@ -1713,6 +1714,7 @@ export const se_UpdateChatControlsConfigurationCommand = async (
17131714
blockedPhrasesConfigurationUpdate: (_) => _json(_),
17141715
clientToken: [true, (_) => _ ?? generateIdempotencyToken()],
17151716
creatorModeConfiguration: (_) => _json(_),
1717+
orchestrationConfiguration: (_) => _json(_),
17161718
responseScope: [],
17171719
topicConfigurationsToCreateOrUpdate: (_) => _json(_),
17181720
topicConfigurationsToDelete: (_) => _json(_),
@@ -2532,6 +2534,7 @@ export const de_GetChatControlsConfigurationCommand = async (
25322534
blockedPhrases: _json,
25332535
creatorModeConfiguration: _json,
25342536
nextToken: __expectString,
2537+
orchestrationConfiguration: _json,
25352538
responseScope: __expectString,
25362539
topicConfigurations: _json,
25372540
});
@@ -4360,6 +4363,8 @@ const se_MessageUsefulnessFeedback = (input: MessageUsefulnessFeedback, context:
43604363

43614364
// se_OpenIDConnectProviderConfiguration omitted.
43624365

4366+
// se_OrchestrationConfiguration omitted.
4367+
43634368
// se_PersonalizationConfiguration omitted.
43644369

43654370
// se_PluginAuthConfiguration omitted.
@@ -4638,6 +4643,8 @@ const de_Applications = (output: any, context: __SerdeContext): Application[] =>
46384643

46394644
// de_AppliedCreatorModeConfiguration omitted.
46404645

4646+
// de_AppliedOrchestrationConfiguration omitted.
4647+
46414648
/**
46424649
* deserializeAws_restJson1Attachment
46434650
*/

0 commit comments

Comments
 (0)