-
Notifications
You must be signed in to change notification settings - Fork 155
/
get_bot.py
283 lines (253 loc) · 10.8 KB
/
get_bot.py
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
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from .. import _utilities
__all__ = [
'GetBotResult',
'AwaitableGetBotResult',
'get_bot',
]
@pulumi.output_type
class GetBotResult:
"""
A collection of values returned by getBot.
"""
def __init__(__self__, arn=None, checksum=None, child_directed=None, created_date=None, description=None, detect_sentiment=None, enable_model_improvements=None, failure_reason=None, id=None, idle_session_ttl_in_seconds=None, last_updated_date=None, locale=None, name=None, nlu_intent_confidence_threshold=None, status=None, version=None, voice_id=None):
if arn and not isinstance(arn, str):
raise TypeError("Expected argument 'arn' to be a str")
pulumi.set(__self__, "arn", arn)
if checksum and not isinstance(checksum, str):
raise TypeError("Expected argument 'checksum' to be a str")
pulumi.set(__self__, "checksum", checksum)
if child_directed and not isinstance(child_directed, bool):
raise TypeError("Expected argument 'child_directed' to be a bool")
pulumi.set(__self__, "child_directed", child_directed)
if created_date and not isinstance(created_date, str):
raise TypeError("Expected argument 'created_date' to be a str")
pulumi.set(__self__, "created_date", created_date)
if description and not isinstance(description, str):
raise TypeError("Expected argument 'description' to be a str")
pulumi.set(__self__, "description", description)
if detect_sentiment and not isinstance(detect_sentiment, bool):
raise TypeError("Expected argument 'detect_sentiment' to be a bool")
pulumi.set(__self__, "detect_sentiment", detect_sentiment)
if enable_model_improvements and not isinstance(enable_model_improvements, bool):
raise TypeError("Expected argument 'enable_model_improvements' to be a bool")
pulumi.set(__self__, "enable_model_improvements", enable_model_improvements)
if failure_reason and not isinstance(failure_reason, str):
raise TypeError("Expected argument 'failure_reason' to be a str")
pulumi.set(__self__, "failure_reason", failure_reason)
if id and not isinstance(id, str):
raise TypeError("Expected argument 'id' to be a str")
pulumi.set(__self__, "id", id)
if idle_session_ttl_in_seconds and not isinstance(idle_session_ttl_in_seconds, int):
raise TypeError("Expected argument 'idle_session_ttl_in_seconds' to be a int")
pulumi.set(__self__, "idle_session_ttl_in_seconds", idle_session_ttl_in_seconds)
if last_updated_date and not isinstance(last_updated_date, str):
raise TypeError("Expected argument 'last_updated_date' to be a str")
pulumi.set(__self__, "last_updated_date", last_updated_date)
if locale and not isinstance(locale, str):
raise TypeError("Expected argument 'locale' to be a str")
pulumi.set(__self__, "locale", locale)
if name and not isinstance(name, str):
raise TypeError("Expected argument 'name' to be a str")
pulumi.set(__self__, "name", name)
if nlu_intent_confidence_threshold and not isinstance(nlu_intent_confidence_threshold, float):
raise TypeError("Expected argument 'nlu_intent_confidence_threshold' to be a float")
pulumi.set(__self__, "nlu_intent_confidence_threshold", nlu_intent_confidence_threshold)
if status and not isinstance(status, str):
raise TypeError("Expected argument 'status' to be a str")
pulumi.set(__self__, "status", status)
if version and not isinstance(version, str):
raise TypeError("Expected argument 'version' to be a str")
pulumi.set(__self__, "version", version)
if voice_id and not isinstance(voice_id, str):
raise TypeError("Expected argument 'voice_id' to be a str")
pulumi.set(__self__, "voice_id", voice_id)
@property
@pulumi.getter
def arn(self) -> str:
"""
The ARN of the bot.
"""
return pulumi.get(self, "arn")
@property
@pulumi.getter
def checksum(self) -> str:
"""
Checksum of the bot used to identify a specific revision of the bot's `$LATEST` version.
"""
return pulumi.get(self, "checksum")
@property
@pulumi.getter(name="childDirected")
def child_directed(self) -> bool:
"""
Specifies if this Amazon Lex Bot is related to a website, program, or other application that is directed or targeted, in whole or in part, to children under age 13 and subject to COPPA.
"""
return pulumi.get(self, "child_directed")
@property
@pulumi.getter(name="createdDate")
def created_date(self) -> str:
"""
The date that the bot was created.
"""
return pulumi.get(self, "created_date")
@property
@pulumi.getter
def description(self) -> str:
"""
A description of the bot.
"""
return pulumi.get(self, "description")
@property
@pulumi.getter(name="detectSentiment")
def detect_sentiment(self) -> bool:
"""
When set to true user utterances are sent to Amazon Comprehend for sentiment analysis.
"""
return pulumi.get(self, "detect_sentiment")
@property
@pulumi.getter(name="enableModelImprovements")
def enable_model_improvements(self) -> bool:
"""
Set to true if natural language understanding improvements are enabled.
"""
return pulumi.get(self, "enable_model_improvements")
@property
@pulumi.getter(name="failureReason")
def failure_reason(self) -> str:
"""
If the `status` is `FAILED`, the reason why the bot failed to build.
"""
return pulumi.get(self, "failure_reason")
@property
@pulumi.getter
def id(self) -> str:
"""
The provider-assigned unique ID for this managed resource.
"""
return pulumi.get(self, "id")
@property
@pulumi.getter(name="idleSessionTtlInSeconds")
def idle_session_ttl_in_seconds(self) -> int:
"""
The maximum time in seconds that Amazon Lex retains the data gathered in a conversation.
"""
return pulumi.get(self, "idle_session_ttl_in_seconds")
@property
@pulumi.getter(name="lastUpdatedDate")
def last_updated_date(self) -> str:
"""
The date that the bot was updated.
"""
return pulumi.get(self, "last_updated_date")
@property
@pulumi.getter
def locale(self) -> str:
"""
Specifies the target locale for the bot. Any intent used in the bot must be compatible with the locale of the bot.
"""
return pulumi.get(self, "locale")
@property
@pulumi.getter
def name(self) -> str:
"""
The name of the bot, case sensitive.
"""
return pulumi.get(self, "name")
@property
@pulumi.getter(name="nluIntentConfidenceThreshold")
def nlu_intent_confidence_threshold(self) -> float:
"""
The threshold where Amazon Lex will insert the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent, or both when returning alternative intents in a PostContent or PostText response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted if they are configured for the bot.
"""
return pulumi.get(self, "nlu_intent_confidence_threshold")
@property
@pulumi.getter
def status(self) -> str:
"""
The status of the bot.
"""
return pulumi.get(self, "status")
@property
@pulumi.getter
def version(self) -> Optional[str]:
"""
The version of the bot. For a new bot, the version is always `$LATEST`.
"""
return pulumi.get(self, "version")
@property
@pulumi.getter(name="voiceId")
def voice_id(self) -> str:
"""
The Amazon Polly voice ID that the Amazon Lex Bot uses for voice interactions with the user.
"""
return pulumi.get(self, "voice_id")
class AwaitableGetBotResult(GetBotResult):
# pylint: disable=using-constant-test
def __await__(self):
if False:
yield self
return GetBotResult(
arn=self.arn,
checksum=self.checksum,
child_directed=self.child_directed,
created_date=self.created_date,
description=self.description,
detect_sentiment=self.detect_sentiment,
enable_model_improvements=self.enable_model_improvements,
failure_reason=self.failure_reason,
id=self.id,
idle_session_ttl_in_seconds=self.idle_session_ttl_in_seconds,
last_updated_date=self.last_updated_date,
locale=self.locale,
name=self.name,
nlu_intent_confidence_threshold=self.nlu_intent_confidence_threshold,
status=self.status,
version=self.version,
voice_id=self.voice_id)
def get_bot(name: Optional[str] = None,
version: Optional[str] = None,
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBotResult:
"""
Provides details about a specific Amazon Lex Bot.
## Example Usage
```python
import pulumi
import pulumi_aws as aws
order_flowers_bot = aws.lex.get_bot(name="OrderFlowers",
version="$LATEST")
```
:param str name: The name of the bot. The name is case sensitive.
:param str version: The version or alias of the bot.
"""
__args__ = dict()
__args__['name'] = name
__args__['version'] = version
if opts is None:
opts = pulumi.InvokeOptions()
if opts.version is None:
opts.version = _utilities.get_version()
__ret__ = pulumi.runtime.invoke('aws:lex/getBot:getBot', __args__, opts=opts, typ=GetBotResult).value
return AwaitableGetBotResult(
arn=__ret__.arn,
checksum=__ret__.checksum,
child_directed=__ret__.child_directed,
created_date=__ret__.created_date,
description=__ret__.description,
detect_sentiment=__ret__.detect_sentiment,
enable_model_improvements=__ret__.enable_model_improvements,
failure_reason=__ret__.failure_reason,
id=__ret__.id,
idle_session_ttl_in_seconds=__ret__.idle_session_ttl_in_seconds,
last_updated_date=__ret__.last_updated_date,
locale=__ret__.locale,
name=__ret__.name,
nlu_intent_confidence_threshold=__ret__.nlu_intent_confidence_threshold,
status=__ret__.status,
version=__ret__.version,
voice_id=__ret__.voice_id)