aws_sdk_lexmodelsv2/operation/create_intent/builders.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::create_intent::_create_intent_output::CreateIntentOutputBuilder;
3
4pub use crate::operation::create_intent::_create_intent_input::CreateIntentInputBuilder;
5
6impl crate::operation::create_intent::builders::CreateIntentInputBuilder {
7 /// Sends a request with this input using the given client.
8 pub async fn send_with(
9 self,
10 client: &crate::Client,
11 ) -> ::std::result::Result<
12 crate::operation::create_intent::CreateIntentOutput,
13 ::aws_smithy_runtime_api::client::result::SdkError<
14 crate::operation::create_intent::CreateIntentError,
15 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16 >,
17 > {
18 let mut fluent_builder = client.create_intent();
19 fluent_builder.inner = self;
20 fluent_builder.send().await
21 }
22}
23/// Fluent builder constructing a request to `CreateIntent`.
24///
25/// <p>Creates an intent.</p>
26/// <p>To define the interaction between the user and your bot, you define one or more intents. For example, for a pizza ordering bot you would create an <code>OrderPizza</code> intent.</p>
27/// <p>When you create an intent, you must provide a name. You can optionally provide the following:</p>
28/// <ul>
29/// <li>
30/// <p>Sample utterances. For example, "I want to order a pizza" and "Can I order a pizza." You can't provide utterances for built-in intents.</p></li>
31/// <li>
32/// <p>Information to be gathered. You specify slots for the information that you bot requests from the user. You can specify standard slot types, such as date and time, or custom slot types for your application.</p></li>
33/// <li>
34/// <p>How the intent is fulfilled. You can provide a Lambda function or configure the intent to return the intent information to your client application. If you use a Lambda function, Amazon Lex invokes the function when all of the intent information is available.</p></li>
35/// <li>
36/// <p>A confirmation prompt to send to the user to confirm an intent. For example, "Shall I order your pizza?"</p></li>
37/// <li>
38/// <p>A conclusion statement to send to the user after the intent is fulfilled. For example, "I ordered your pizza."</p></li>
39/// <li>
40/// <p>A follow-up prompt that asks the user for additional activity. For example, "Do you want a drink with your pizza?"</p></li>
41/// </ul>
42#[derive(::std::clone::Clone, ::std::fmt::Debug)]
43pub struct CreateIntentFluentBuilder {
44 handle: ::std::sync::Arc<crate::client::Handle>,
45 inner: crate::operation::create_intent::builders::CreateIntentInputBuilder,
46 config_override: ::std::option::Option<crate::config::Builder>,
47}
48impl
49 crate::client::customize::internal::CustomizableSend<
50 crate::operation::create_intent::CreateIntentOutput,
51 crate::operation::create_intent::CreateIntentError,
52 > for CreateIntentFluentBuilder
53{
54 fn send(
55 self,
56 config_override: crate::config::Builder,
57 ) -> crate::client::customize::internal::BoxFuture<
58 crate::client::customize::internal::SendResult<
59 crate::operation::create_intent::CreateIntentOutput,
60 crate::operation::create_intent::CreateIntentError,
61 >,
62 > {
63 ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
64 }
65}
66impl CreateIntentFluentBuilder {
67 /// Creates a new `CreateIntentFluentBuilder`.
68 pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
69 Self {
70 handle,
71 inner: ::std::default::Default::default(),
72 config_override: ::std::option::Option::None,
73 }
74 }
75 /// Access the CreateIntent as a reference.
76 pub fn as_input(&self) -> &crate::operation::create_intent::builders::CreateIntentInputBuilder {
77 &self.inner
78 }
79 /// Sends the request and returns the response.
80 ///
81 /// If an error occurs, an `SdkError` will be returned with additional details that
82 /// can be matched against.
83 ///
84 /// By default, any retryable failures will be retried twice. Retry behavior
85 /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
86 /// set when configuring the client.
87 pub async fn send(
88 self,
89 ) -> ::std::result::Result<
90 crate::operation::create_intent::CreateIntentOutput,
91 ::aws_smithy_runtime_api::client::result::SdkError<
92 crate::operation::create_intent::CreateIntentError,
93 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
94 >,
95 > {
96 let input = self
97 .inner
98 .build()
99 .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
100 let runtime_plugins = crate::operation::create_intent::CreateIntent::operation_runtime_plugins(
101 self.handle.runtime_plugins.clone(),
102 &self.handle.conf,
103 self.config_override,
104 );
105 crate::operation::create_intent::CreateIntent::orchestrate(&runtime_plugins, input).await
106 }
107
108 /// Consumes this builder, creating a customizable operation that can be modified before being sent.
109 pub fn customize(
110 self,
111 ) -> crate::client::customize::CustomizableOperation<
112 crate::operation::create_intent::CreateIntentOutput,
113 crate::operation::create_intent::CreateIntentError,
114 Self,
115 > {
116 crate::client::customize::CustomizableOperation::new(self)
117 }
118 pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
119 self.set_config_override(::std::option::Option::Some(config_override.into()));
120 self
121 }
122
123 pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
124 self.config_override = config_override;
125 self
126 }
127 /// <p>The name of the intent. Intent names must be unique in the locale that contains the intent and cannot match the name of any built-in intent.</p>
128 pub fn intent_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
129 self.inner = self.inner.intent_name(input.into());
130 self
131 }
132 /// <p>The name of the intent. Intent names must be unique in the locale that contains the intent and cannot match the name of any built-in intent.</p>
133 pub fn set_intent_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
134 self.inner = self.inner.set_intent_name(input);
135 self
136 }
137 /// <p>The name of the intent. Intent names must be unique in the locale that contains the intent and cannot match the name of any built-in intent.</p>
138 pub fn get_intent_name(&self) -> &::std::option::Option<::std::string::String> {
139 self.inner.get_intent_name()
140 }
141 /// <p>A display name for the intent. If configured, This name will be shown to users during Intent Disambiguation instead of the intent name. Display names should be user-friendly, descriptive and match the intent's purpose to improve user experience during disambiguation.</p>
142 pub fn intent_display_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
143 self.inner = self.inner.intent_display_name(input.into());
144 self
145 }
146 /// <p>A display name for the intent. If configured, This name will be shown to users during Intent Disambiguation instead of the intent name. Display names should be user-friendly, descriptive and match the intent's purpose to improve user experience during disambiguation.</p>
147 pub fn set_intent_display_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
148 self.inner = self.inner.set_intent_display_name(input);
149 self
150 }
151 /// <p>A display name for the intent. If configured, This name will be shown to users during Intent Disambiguation instead of the intent name. Display names should be user-friendly, descriptive and match the intent's purpose to improve user experience during disambiguation.</p>
152 pub fn get_intent_display_name(&self) -> &::std::option::Option<::std::string::String> {
153 self.inner.get_intent_display_name()
154 }
155 /// <p>A description of the intent. Use the description to help identify the intent in lists.</p>
156 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
157 self.inner = self.inner.description(input.into());
158 self
159 }
160 /// <p>A description of the intent. Use the description to help identify the intent in lists.</p>
161 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
162 self.inner = self.inner.set_description(input);
163 self
164 }
165 /// <p>A description of the intent. Use the description to help identify the intent in lists.</p>
166 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
167 self.inner.get_description()
168 }
169 /// <p>A unique identifier for the built-in intent to base this intent on.</p>
170 pub fn parent_intent_signature(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
171 self.inner = self.inner.parent_intent_signature(input.into());
172 self
173 }
174 /// <p>A unique identifier for the built-in intent to base this intent on.</p>
175 pub fn set_parent_intent_signature(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
176 self.inner = self.inner.set_parent_intent_signature(input);
177 self
178 }
179 /// <p>A unique identifier for the built-in intent to base this intent on.</p>
180 pub fn get_parent_intent_signature(&self) -> &::std::option::Option<::std::string::String> {
181 self.inner.get_parent_intent_signature()
182 }
183 ///
184 /// Appends an item to `sampleUtterances`.
185 ///
186 /// To override the contents of this collection use [`set_sample_utterances`](Self::set_sample_utterances).
187 ///
188 /// <p>An array of strings that a user might say to signal the intent. For example, "I want a pizza", or "I want a {PizzaSize} pizza".</p>
189 /// <p>In an utterance, slot names are enclosed in curly braces ("{", "}") to indicate where they should be displayed in the utterance shown to the user..</p>
190 pub fn sample_utterances(mut self, input: crate::types::SampleUtterance) -> Self {
191 self.inner = self.inner.sample_utterances(input);
192 self
193 }
194 /// <p>An array of strings that a user might say to signal the intent. For example, "I want a pizza", or "I want a {PizzaSize} pizza".</p>
195 /// <p>In an utterance, slot names are enclosed in curly braces ("{", "}") to indicate where they should be displayed in the utterance shown to the user..</p>
196 pub fn set_sample_utterances(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::SampleUtterance>>) -> Self {
197 self.inner = self.inner.set_sample_utterances(input);
198 self
199 }
200 /// <p>An array of strings that a user might say to signal the intent. For example, "I want a pizza", or "I want a {PizzaSize} pizza".</p>
201 /// <p>In an utterance, slot names are enclosed in curly braces ("{", "}") to indicate where they should be displayed in the utterance shown to the user..</p>
202 pub fn get_sample_utterances(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::SampleUtterance>> {
203 self.inner.get_sample_utterances()
204 }
205 /// <p>Specifies that Amazon Lex invokes the alias Lambda function for each user input. You can invoke this Lambda function to personalize user interaction.</p>
206 /// <p>For example, suppose that your bot determines that the user's name is John. You Lambda function might retrieve John's information from a backend database and prepopulate some of the values. For example, if you find that John is gluten intolerant, you might set the corresponding intent slot, <code>glutenIntolerant</code> to <code>true</code>. You might find John's phone number and set the corresponding session attribute.</p>
207 pub fn dialog_code_hook(mut self, input: crate::types::DialogCodeHookSettings) -> Self {
208 self.inner = self.inner.dialog_code_hook(input);
209 self
210 }
211 /// <p>Specifies that Amazon Lex invokes the alias Lambda function for each user input. You can invoke this Lambda function to personalize user interaction.</p>
212 /// <p>For example, suppose that your bot determines that the user's name is John. You Lambda function might retrieve John's information from a backend database and prepopulate some of the values. For example, if you find that John is gluten intolerant, you might set the corresponding intent slot, <code>glutenIntolerant</code> to <code>true</code>. You might find John's phone number and set the corresponding session attribute.</p>
213 pub fn set_dialog_code_hook(mut self, input: ::std::option::Option<crate::types::DialogCodeHookSettings>) -> Self {
214 self.inner = self.inner.set_dialog_code_hook(input);
215 self
216 }
217 /// <p>Specifies that Amazon Lex invokes the alias Lambda function for each user input. You can invoke this Lambda function to personalize user interaction.</p>
218 /// <p>For example, suppose that your bot determines that the user's name is John. You Lambda function might retrieve John's information from a backend database and prepopulate some of the values. For example, if you find that John is gluten intolerant, you might set the corresponding intent slot, <code>glutenIntolerant</code> to <code>true</code>. You might find John's phone number and set the corresponding session attribute.</p>
219 pub fn get_dialog_code_hook(&self) -> &::std::option::Option<crate::types::DialogCodeHookSettings> {
220 self.inner.get_dialog_code_hook()
221 }
222 /// <p>Specifies that Amazon Lex invokes the alias Lambda function when the intent is ready for fulfillment. You can invoke this function to complete the bot's transaction with the user.</p>
223 /// <p>For example, in a pizza ordering bot, the Lambda function can look up the closest pizza restaurant to the customer's location and then place an order on the customer's behalf.</p>
224 pub fn fulfillment_code_hook(mut self, input: crate::types::FulfillmentCodeHookSettings) -> Self {
225 self.inner = self.inner.fulfillment_code_hook(input);
226 self
227 }
228 /// <p>Specifies that Amazon Lex invokes the alias Lambda function when the intent is ready for fulfillment. You can invoke this function to complete the bot's transaction with the user.</p>
229 /// <p>For example, in a pizza ordering bot, the Lambda function can look up the closest pizza restaurant to the customer's location and then place an order on the customer's behalf.</p>
230 pub fn set_fulfillment_code_hook(mut self, input: ::std::option::Option<crate::types::FulfillmentCodeHookSettings>) -> Self {
231 self.inner = self.inner.set_fulfillment_code_hook(input);
232 self
233 }
234 /// <p>Specifies that Amazon Lex invokes the alias Lambda function when the intent is ready for fulfillment. You can invoke this function to complete the bot's transaction with the user.</p>
235 /// <p>For example, in a pizza ordering bot, the Lambda function can look up the closest pizza restaurant to the customer's location and then place an order on the customer's behalf.</p>
236 pub fn get_fulfillment_code_hook(&self) -> &::std::option::Option<crate::types::FulfillmentCodeHookSettings> {
237 self.inner.get_fulfillment_code_hook()
238 }
239 /// <p>Provides prompts that Amazon Lex sends to the user to confirm the completion of an intent. If the user answers "no," the settings contain a statement that is sent to the user to end the intent.</p>
240 pub fn intent_confirmation_setting(mut self, input: crate::types::IntentConfirmationSetting) -> Self {
241 self.inner = self.inner.intent_confirmation_setting(input);
242 self
243 }
244 /// <p>Provides prompts that Amazon Lex sends to the user to confirm the completion of an intent. If the user answers "no," the settings contain a statement that is sent to the user to end the intent.</p>
245 pub fn set_intent_confirmation_setting(mut self, input: ::std::option::Option<crate::types::IntentConfirmationSetting>) -> Self {
246 self.inner = self.inner.set_intent_confirmation_setting(input);
247 self
248 }
249 /// <p>Provides prompts that Amazon Lex sends to the user to confirm the completion of an intent. If the user answers "no," the settings contain a statement that is sent to the user to end the intent.</p>
250 pub fn get_intent_confirmation_setting(&self) -> &::std::option::Option<crate::types::IntentConfirmationSetting> {
251 self.inner.get_intent_confirmation_setting()
252 }
253 /// <p>Sets the response that Amazon Lex sends to the user when the intent is closed.</p>
254 pub fn intent_closing_setting(mut self, input: crate::types::IntentClosingSetting) -> Self {
255 self.inner = self.inner.intent_closing_setting(input);
256 self
257 }
258 /// <p>Sets the response that Amazon Lex sends to the user when the intent is closed.</p>
259 pub fn set_intent_closing_setting(mut self, input: ::std::option::Option<crate::types::IntentClosingSetting>) -> Self {
260 self.inner = self.inner.set_intent_closing_setting(input);
261 self
262 }
263 /// <p>Sets the response that Amazon Lex sends to the user when the intent is closed.</p>
264 pub fn get_intent_closing_setting(&self) -> &::std::option::Option<crate::types::IntentClosingSetting> {
265 self.inner.get_intent_closing_setting()
266 }
267 ///
268 /// Appends an item to `inputContexts`.
269 ///
270 /// To override the contents of this collection use [`set_input_contexts`](Self::set_input_contexts).
271 ///
272 /// <p>A list of contexts that must be active for this intent to be considered by Amazon Lex.</p>
273 /// <p>When an intent has an input context list, Amazon Lex only considers using the intent in an interaction with the user when the specified contexts are included in the active context list for the session. If the contexts are not active, then Amazon Lex will not use the intent.</p>
274 /// <p>A context can be automatically activated using the <code>outputContexts</code> property or it can be set at runtime.</p>
275 /// <p>For example, if there are two intents with different input contexts that respond to the same utterances, only the intent with the active context will respond.</p>
276 /// <p>An intent may have up to 5 input contexts. If an intent has multiple input contexts, all of the contexts must be active to consider the intent.</p>
277 pub fn input_contexts(mut self, input: crate::types::InputContext) -> Self {
278 self.inner = self.inner.input_contexts(input);
279 self
280 }
281 /// <p>A list of contexts that must be active for this intent to be considered by Amazon Lex.</p>
282 /// <p>When an intent has an input context list, Amazon Lex only considers using the intent in an interaction with the user when the specified contexts are included in the active context list for the session. If the contexts are not active, then Amazon Lex will not use the intent.</p>
283 /// <p>A context can be automatically activated using the <code>outputContexts</code> property or it can be set at runtime.</p>
284 /// <p>For example, if there are two intents with different input contexts that respond to the same utterances, only the intent with the active context will respond.</p>
285 /// <p>An intent may have up to 5 input contexts. If an intent has multiple input contexts, all of the contexts must be active to consider the intent.</p>
286 pub fn set_input_contexts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>) -> Self {
287 self.inner = self.inner.set_input_contexts(input);
288 self
289 }
290 /// <p>A list of contexts that must be active for this intent to be considered by Amazon Lex.</p>
291 /// <p>When an intent has an input context list, Amazon Lex only considers using the intent in an interaction with the user when the specified contexts are included in the active context list for the session. If the contexts are not active, then Amazon Lex will not use the intent.</p>
292 /// <p>A context can be automatically activated using the <code>outputContexts</code> property or it can be set at runtime.</p>
293 /// <p>For example, if there are two intents with different input contexts that respond to the same utterances, only the intent with the active context will respond.</p>
294 /// <p>An intent may have up to 5 input contexts. If an intent has multiple input contexts, all of the contexts must be active to consider the intent.</p>
295 pub fn get_input_contexts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputContext>> {
296 self.inner.get_input_contexts()
297 }
298 ///
299 /// Appends an item to `outputContexts`.
300 ///
301 /// To override the contents of this collection use [`set_output_contexts`](Self::set_output_contexts).
302 ///
303 /// <p>A lists of contexts that the intent activates when it is fulfilled.</p>
304 /// <p>You can use an output context to indicate the intents that Amazon Lex should consider for the next turn of the conversation with a customer.</p>
305 /// <p>When you use the <code>outputContextsList</code> property, all of the contexts specified in the list are activated when the intent is fulfilled. You can set up to 10 output contexts. You can also set the number of conversation turns that the context should be active, or the length of time that the context should be active.</p>
306 pub fn output_contexts(mut self, input: crate::types::OutputContext) -> Self {
307 self.inner = self.inner.output_contexts(input);
308 self
309 }
310 /// <p>A lists of contexts that the intent activates when it is fulfilled.</p>
311 /// <p>You can use an output context to indicate the intents that Amazon Lex should consider for the next turn of the conversation with a customer.</p>
312 /// <p>When you use the <code>outputContextsList</code> property, all of the contexts specified in the list are activated when the intent is fulfilled. You can set up to 10 output contexts. You can also set the number of conversation turns that the context should be active, or the length of time that the context should be active.</p>
313 pub fn set_output_contexts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>) -> Self {
314 self.inner = self.inner.set_output_contexts(input);
315 self
316 }
317 /// <p>A lists of contexts that the intent activates when it is fulfilled.</p>
318 /// <p>You can use an output context to indicate the intents that Amazon Lex should consider for the next turn of the conversation with a customer.</p>
319 /// <p>When you use the <code>outputContextsList</code> property, all of the contexts specified in the list are activated when the intent is fulfilled. You can set up to 10 output contexts. You can also set the number of conversation turns that the context should be active, or the length of time that the context should be active.</p>
320 pub fn get_output_contexts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OutputContext>> {
321 self.inner.get_output_contexts()
322 }
323 /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent to connect to an Amazon Kendra index. The <code>AMAZON.KendraSearchIntent</code> intent is called when Amazon Lex can't determine another intent to invoke.</p>
324 pub fn kendra_configuration(mut self, input: crate::types::KendraConfiguration) -> Self {
325 self.inner = self.inner.kendra_configuration(input);
326 self
327 }
328 /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent to connect to an Amazon Kendra index. The <code>AMAZON.KendraSearchIntent</code> intent is called when Amazon Lex can't determine another intent to invoke.</p>
329 pub fn set_kendra_configuration(mut self, input: ::std::option::Option<crate::types::KendraConfiguration>) -> Self {
330 self.inner = self.inner.set_kendra_configuration(input);
331 self
332 }
333 /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent to connect to an Amazon Kendra index. The <code>AMAZON.KendraSearchIntent</code> intent is called when Amazon Lex can't determine another intent to invoke.</p>
334 pub fn get_kendra_configuration(&self) -> &::std::option::Option<crate::types::KendraConfiguration> {
335 self.inner.get_kendra_configuration()
336 }
337 /// <p>The identifier of the bot associated with this intent.</p>
338 pub fn bot_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
339 self.inner = self.inner.bot_id(input.into());
340 self
341 }
342 /// <p>The identifier of the bot associated with this intent.</p>
343 pub fn set_bot_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
344 self.inner = self.inner.set_bot_id(input);
345 self
346 }
347 /// <p>The identifier of the bot associated with this intent.</p>
348 pub fn get_bot_id(&self) -> &::std::option::Option<::std::string::String> {
349 self.inner.get_bot_id()
350 }
351 /// <p>The version of the bot associated with this intent.</p>
352 pub fn bot_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
353 self.inner = self.inner.bot_version(input.into());
354 self
355 }
356 /// <p>The version of the bot associated with this intent.</p>
357 pub fn set_bot_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
358 self.inner = self.inner.set_bot_version(input);
359 self
360 }
361 /// <p>The version of the bot associated with this intent.</p>
362 pub fn get_bot_version(&self) -> &::std::option::Option<::std::string::String> {
363 self.inner.get_bot_version()
364 }
365 /// <p>The identifier of the language and locale where this intent is used. All of the bots, slot types, and slots used by the intent must have the same locale. For more information, see <a href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported languages</a>.</p>
366 pub fn locale_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
367 self.inner = self.inner.locale_id(input.into());
368 self
369 }
370 /// <p>The identifier of the language and locale where this intent is used. All of the bots, slot types, and slots used by the intent must have the same locale. For more information, see <a href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported languages</a>.</p>
371 pub fn set_locale_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
372 self.inner = self.inner.set_locale_id(input);
373 self
374 }
375 /// <p>The identifier of the language and locale where this intent is used. All of the bots, slot types, and slots used by the intent must have the same locale. For more information, see <a href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported languages</a>.</p>
376 pub fn get_locale_id(&self) -> &::std::option::Option<::std::string::String> {
377 self.inner.get_locale_id()
378 }
379 /// <p>Configuration settings for the response that is sent to the user at the beginning of a conversation, before eliciting slot values.</p>
380 pub fn initial_response_setting(mut self, input: crate::types::InitialResponseSetting) -> Self {
381 self.inner = self.inner.initial_response_setting(input);
382 self
383 }
384 /// <p>Configuration settings for the response that is sent to the user at the beginning of a conversation, before eliciting slot values.</p>
385 pub fn set_initial_response_setting(mut self, input: ::std::option::Option<crate::types::InitialResponseSetting>) -> Self {
386 self.inner = self.inner.set_initial_response_setting(input);
387 self
388 }
389 /// <p>Configuration settings for the response that is sent to the user at the beginning of a conversation, before eliciting slot values.</p>
390 pub fn get_initial_response_setting(&self) -> &::std::option::Option<crate::types::InitialResponseSetting> {
391 self.inner.get_initial_response_setting()
392 }
393 /// <p>Specifies the configuration of the built-in <code>Amazon.QnAIntent</code>. The <code>AMAZON.QnAIntent</code> intent is called when Amazon Lex can't determine another intent to invoke. If you specify this field, you can't specify the <code>kendraConfiguration</code> field.</p>
394 pub fn qn_a_intent_configuration(mut self, input: crate::types::QnAIntentConfiguration) -> Self {
395 self.inner = self.inner.qn_a_intent_configuration(input);
396 self
397 }
398 /// <p>Specifies the configuration of the built-in <code>Amazon.QnAIntent</code>. The <code>AMAZON.QnAIntent</code> intent is called when Amazon Lex can't determine another intent to invoke. If you specify this field, you can't specify the <code>kendraConfiguration</code> field.</p>
399 pub fn set_qn_a_intent_configuration(mut self, input: ::std::option::Option<crate::types::QnAIntentConfiguration>) -> Self {
400 self.inner = self.inner.set_qn_a_intent_configuration(input);
401 self
402 }
403 /// <p>Specifies the configuration of the built-in <code>Amazon.QnAIntent</code>. The <code>AMAZON.QnAIntent</code> intent is called when Amazon Lex can't determine another intent to invoke. If you specify this field, you can't specify the <code>kendraConfiguration</code> field.</p>
404 pub fn get_qn_a_intent_configuration(&self) -> &::std::option::Option<crate::types::QnAIntentConfiguration> {
405 self.inner.get_qn_a_intent_configuration()
406 }
407 /// <p>Qinconnect intent configuration details for the create intent request.</p>
408 pub fn q_in_connect_intent_configuration(mut self, input: crate::types::QInConnectIntentConfiguration) -> Self {
409 self.inner = self.inner.q_in_connect_intent_configuration(input);
410 self
411 }
412 /// <p>Qinconnect intent configuration details for the create intent request.</p>
413 pub fn set_q_in_connect_intent_configuration(mut self, input: ::std::option::Option<crate::types::QInConnectIntentConfiguration>) -> Self {
414 self.inner = self.inner.set_q_in_connect_intent_configuration(input);
415 self
416 }
417 /// <p>Qinconnect intent configuration details for the create intent request.</p>
418 pub fn get_q_in_connect_intent_configuration(&self) -> &::std::option::Option<crate::types::QInConnectIntentConfiguration> {
419 self.inner.get_q_in_connect_intent_configuration()
420 }
421}