File: api_op_CreateBotLocale.go

package info (click to toggle)
golang-github-aws-aws-sdk-go-v2 1.24.1-2~bpo12%2B1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm-backports
  • size: 554,032 kB
  • sloc: java: 15,941; makefile: 419; sh: 175
file content (220 lines) | stat: -rw-r--r-- 7,170 bytes parent folder | download
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
// Code generated by smithy-go-codegen DO NOT EDIT.

package lexmodelsv2

import (
	"context"
	"fmt"
	awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
	"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
	"github.com/aws/aws-sdk-go-v2/service/lexmodelsv2/types"
	"github.com/aws/smithy-go/middleware"
	smithyhttp "github.com/aws/smithy-go/transport/http"
	"time"
)

// Creates a locale in the bot. The locale contains the intents and slot types
// that the bot uses in conversations with users in the specified language and
// locale. You must add a locale to a bot before you can add intents and slot types
// to the bot.
func (c *Client) CreateBotLocale(ctx context.Context, params *CreateBotLocaleInput, optFns ...func(*Options)) (*CreateBotLocaleOutput, error) {
	if params == nil {
		params = &CreateBotLocaleInput{}
	}

	result, metadata, err := c.invokeOperation(ctx, "CreateBotLocale", params, optFns, c.addOperationCreateBotLocaleMiddlewares)
	if err != nil {
		return nil, err
	}

	out := result.(*CreateBotLocaleOutput)
	out.ResultMetadata = metadata
	return out, nil
}

type CreateBotLocaleInput struct {

	// The identifier of the bot to create the locale for.
	//
	// This member is required.
	BotId *string

	// The version of the bot to create the locale for. This can only be the draft
	// version of the bot.
	//
	// This member is required.
	BotVersion *string

	// The identifier of the language and locale that the bot will be used in. The
	// string must match one of the supported locales. All of the intents, slot types,
	// and slots used in the bot must have the same locale. For more information, see
	// Supported languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html)
	// .
	//
	// This member is required.
	LocaleId *string

	// Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent
	// , AMAZON.KendraSearchIntent , or both when returning alternative intents.
	// AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they
	// are configured for the bot. For example, suppose a bot is configured with the
	// confidence threshold of 0.80 and the AMAZON.FallbackIntent . Amazon Lex returns
	// three alternative intents with the following confidence scores: IntentA (0.70),
	// IntentB (0.60), IntentC (0.50). The response from the RecognizeText operation
	// would be:
	//   - AMAZON.FallbackIntent
	//   - IntentA
	//   - IntentB
	//   - IntentC
	//
	// This member is required.
	NluIntentConfidenceThreshold *float64

	// A description of the bot locale. Use this to help identify the bot locale in
	// lists.
	Description *string

	// Contains specifications about the generative AI capabilities from Amazon
	// Bedrock that you can turn on for your bot.
	GenerativeAISettings *types.GenerativeAISettings

	// The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the
	// user.
	VoiceSettings *types.VoiceSettings

	noSmithyDocumentSerde
}

type CreateBotLocaleOutput struct {

	// The specified bot identifier.
	BotId *string

	// The status of the bot. When the status is Creating the bot locale is being
	// configured. When the status is Building Amazon Lex is building the bot for
	// testing and use. If the status of the bot is ReadyExpressTesting , you can test
	// the bot using the exact utterances specified in the bots' intents. When the bot
	// is ready for full testing or to run, the status is Built . If there was a
	// problem with building the bot, the status is Failed . If the bot was saved but
	// not built, the status is NotBuilt .
	BotLocaleStatus types.BotLocaleStatus

	// The specified bot version.
	BotVersion *string

	// A timestamp specifying the date and time that the bot locale was created.
	CreationDateTime *time.Time

	// The specified description of the bot locale.
	Description *string

	// Contains specifications about the generative AI capabilities from Amazon
	// Bedrock that you can turn on for your bot.
	GenerativeAISettings *types.GenerativeAISettings

	// The specified locale identifier.
	LocaleId *string

	// The specified locale name.
	LocaleName *string

	// The specified confidence threshold for inserting the AMAZON.FallbackIntent and
	// AMAZON.KendraSearchIntent intents.
	NluIntentConfidenceThreshold *float64

	// The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the
	// user.
	VoiceSettings *types.VoiceSettings

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata

	noSmithyDocumentSerde
}

func (c *Client) addOperationCreateBotLocaleMiddlewares(stack *middleware.Stack, options Options) (err error) {
	if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
		return err
	}
	err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateBotLocale{}, middleware.After)
	if err != nil {
		return err
	}
	err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateBotLocale{}, middleware.After)
	if err != nil {
		return err
	}
	if err := addProtocolFinalizerMiddlewares(stack, options, "CreateBotLocale"); err != nil {
		return fmt.Errorf("add protocol finalizers: %v", err)
	}

	if err = addlegacyEndpointContextSetter(stack, options); err != nil {
		return err
	}
	if err = addSetLoggerMiddleware(stack, options); err != nil {
		return err
	}
	if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
		return err
	}
	if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
		return err
	}
	if err = addResolveEndpointMiddleware(stack, options); err != nil {
		return err
	}
	if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
		return err
	}
	if err = addRetryMiddlewares(stack, options); err != nil {
		return err
	}
	if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
		return err
	}
	if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
		return err
	}
	if err = addClientUserAgent(stack, options); err != nil {
		return err
	}
	if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
		return err
	}
	if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
		return err
	}
	if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil {
		return err
	}
	if err = addOpCreateBotLocaleValidationMiddleware(stack); err != nil {
		return err
	}
	if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateBotLocale(options.Region), middleware.Before); err != nil {
		return err
	}
	if err = awsmiddleware.AddRecursionDetection(stack); err != nil {
		return err
	}
	if err = addRequestIDRetrieverMiddleware(stack); err != nil {
		return err
	}
	if err = addResponseErrorMiddleware(stack); err != nil {
		return err
	}
	if err = addRequestResponseLogging(stack, options); err != nil {
		return err
	}
	if err = addDisableHTTPSMiddleware(stack, options); err != nil {
		return err
	}
	return nil
}

func newServiceMetadataMiddleware_opCreateBotLocale(region string) *awsmiddleware.RegisterServiceMetadata {
	return &awsmiddleware.RegisterServiceMetadata{
		Region:        region,
		ServiceID:     ServiceID,
		OperationName: "CreateBotLocale",
	}
}