aws-sdk-transcribeservice 1.57.0 → 1.58.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,67 @@
10
10
  module Aws::TranscribeService
11
11
  module Types
12
12
 
13
+ # A time range, set in seconds, between two points in the call.
14
+ #
15
+ # @note When making an API call, you may pass AbsoluteTimeRange
16
+ # data as a hash:
17
+ #
18
+ # {
19
+ # start_time: 1,
20
+ # end_time: 1,
21
+ # first: 1,
22
+ # last: 1,
23
+ # }
24
+ #
25
+ # @!attribute [rw] start_time
26
+ # A value that indicates the beginning of the time range in seconds.
27
+ # To set absolute time range, you must specify a start time and an end
28
+ # time. For example, if you specify the following values:
29
+ #
30
+ # * StartTime - 10000
31
+ #
32
+ # * Endtime - 50000
33
+ #
34
+ # The time range is set between 10,000 milliseconds and 50,000
35
+ # milliseconds into the call.
36
+ # @return [Integer]
37
+ #
38
+ # @!attribute [rw] end_time
39
+ # A value that indicates the end of the time range in milliseconds. To
40
+ # set absolute time range, you must specify a start time and an end
41
+ # time. For example, if you specify the following values:
42
+ #
43
+ # * StartTime - 10000
44
+ #
45
+ # * Endtime - 50000
46
+ #
47
+ # The time range is set between 10,000 milliseconds and 50,000
48
+ # milliseconds into the call.
49
+ # @return [Integer]
50
+ #
51
+ # @!attribute [rw] first
52
+ # A time range from the beginning of the call to the value that
53
+ # you've specified. For example, if you specify 100000, the time
54
+ # range is set to the first 100,000 milliseconds of the call.
55
+ # @return [Integer]
56
+ #
57
+ # @!attribute [rw] last
58
+ # A time range from the value that you've specified to the end of the
59
+ # call. For example, if you specify 100000, the time range is set to
60
+ # the last 100,000 milliseconds of the call.
61
+ # @return [Integer]
62
+ #
63
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/AbsoluteTimeRange AWS API Documentation
64
+ #
65
+ class AbsoluteTimeRange < Struct.new(
66
+ :start_time,
67
+ :end_time,
68
+ :first,
69
+ :last)
70
+ SENSITIVE = []
71
+ include Aws::Structure
72
+ end
73
+
13
74
  # Your request didn't pass one or more validation tests. For example,
14
75
  # if the entity that you're trying to delete doesn't exist or if it is
15
76
  # in a non-terminal state (for example, it's "in progress"). See the
@@ -26,6 +87,413 @@ module Aws::TranscribeService
26
87
  include Aws::Structure
27
88
  end
28
89
 
90
+ # Describes an asynchronous analytics job that was created with the
91
+ # `StartAnalyticsJob` operation.
92
+ #
93
+ # @!attribute [rw] call_analytics_job_name
94
+ # The name of the call analytics job.
95
+ # @return [String]
96
+ #
97
+ # @!attribute [rw] call_analytics_job_status
98
+ # The status of the analytics job.
99
+ # @return [String]
100
+ #
101
+ # @!attribute [rw] language_code
102
+ # If you know the language spoken between the customer and the agent,
103
+ # specify a language code for this field.
104
+ #
105
+ # If you don't know the language, you can leave this field blank, and
106
+ # Amazon Transcribe will use machine learning to automatically
107
+ # identify the language. To improve the accuracy of language
108
+ # identification, you can provide an array containing the possible
109
+ # language codes for the language spoken in your audio.
110
+ #
111
+ # The following list shows the supported languages and corresponding
112
+ # language codes for call analytics jobs:
113
+ #
114
+ # * Gulf Arabic (ar-AE)
115
+ #
116
+ # * Mandarin Chinese, Mainland (zh-CN)
117
+ #
118
+ # * Australian English (en-AU)
119
+ #
120
+ # * British English (en-GB)
121
+ #
122
+ # * Indian English (en-IN)
123
+ #
124
+ # * Irish English (en-IE)
125
+ #
126
+ # * Scottish English (en-AB)
127
+ #
128
+ # * US English (en-US)
129
+ #
130
+ # * Welsh English (en-WL)
131
+ #
132
+ # * Spanish (es-ES)
133
+ #
134
+ # * US Spanish (es-US)
135
+ #
136
+ # * French (fr-FR)
137
+ #
138
+ # * Canadian French (fr-CA)
139
+ #
140
+ # * German (de-DE)
141
+ #
142
+ # * Swiss German (de-CH)
143
+ #
144
+ # * Indian Hindi (hi-IN)
145
+ #
146
+ # * Italian (it-IT)
147
+ #
148
+ # * Japanese (ja-JP)
149
+ #
150
+ # * Korean (ko-KR)
151
+ #
152
+ # * Portuguese (pt-PT)
153
+ #
154
+ # * Brazilian Portuguese (pt-BR)
155
+ # @return [String]
156
+ #
157
+ # @!attribute [rw] media_sample_rate_hertz
158
+ # The sample rate, in Hertz, of the audio.
159
+ # @return [Integer]
160
+ #
161
+ # @!attribute [rw] media_format
162
+ # The format of the input audio file. Note: for call analytics jobs,
163
+ # only the following media formats are supported: MP3, MP4, WAV, FLAC,
164
+ # OGG, and WebM.
165
+ # @return [String]
166
+ #
167
+ # @!attribute [rw] media
168
+ # Describes the input media file in a transcription request.
169
+ # @return [Types::Media]
170
+ #
171
+ # @!attribute [rw] transcript
172
+ # Identifies the location of a transcription.
173
+ # @return [Types::Transcript]
174
+ #
175
+ # @!attribute [rw] start_time
176
+ # A timestamp that shows when the analytics job started processing.
177
+ # @return [Time]
178
+ #
179
+ # @!attribute [rw] creation_time
180
+ # A timestamp that shows when the analytics job was created.
181
+ # @return [Time]
182
+ #
183
+ # @!attribute [rw] completion_time
184
+ # A timestamp that shows when the analytics job was completed.
185
+ # @return [Time]
186
+ #
187
+ # @!attribute [rw] failure_reason
188
+ # If the `AnalyticsJobStatus` is `FAILED`, this field contains
189
+ # information about why the job failed.
190
+ #
191
+ # The `FailureReason` field can contain one of the following values:
192
+ #
193
+ # * `Unsupported media format`\: The media format specified in the
194
+ # `MediaFormat` field of the request isn't valid. See the
195
+ # description of the `MediaFormat` field for a list of valid values.
196
+ #
197
+ # * `The media format provided does not match the detected media
198
+ # format`\: The media format of the audio file doesn't match the
199
+ # format specified in the `MediaFormat` field in the request. Check
200
+ # the media format of your media file and make sure the two values
201
+ # match.
202
+ #
203
+ # * `Invalid sample rate for audio file`\: The sample rate specified
204
+ # in the `MediaSampleRateHertz` of the request isn't valid. The
205
+ # sample rate must be between 8000 and 48000 Hertz.
206
+ #
207
+ # * `The sample rate provided does not match the detected sample
208
+ # rate`\: The sample rate in the audio file doesn't match the
209
+ # sample rate specified in the `MediaSampleRateHertz` field in the
210
+ # request. Check the sample rate of your media file and make sure
211
+ # that the two values match.
212
+ #
213
+ # * `Invalid file size: file size too large`\: The size of your audio
214
+ # file is larger than what Amazon Transcribe Medical can process.
215
+ # For more information, see *Guidelines and Quotas* in the Amazon
216
+ # Transcribe Medical Guide
217
+ #
218
+ # * `Invalid number of channels: number of channels too large`\: Your
219
+ # audio contains more channels than Amazon Transcribe Medical is
220
+ # configured to process. To request additional channels, see Amazon
221
+ # Transcribe Medical Endpoints and Quotas in the [Amazon Web
222
+ # Services General Reference][1].
223
+ #
224
+ #
225
+ #
226
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/Welcome.html
227
+ # @return [String]
228
+ #
229
+ # @!attribute [rw] data_access_role_arn
230
+ # The Amazon Resource Number (ARN) that you use to get access to the
231
+ # analytics job.
232
+ # @return [String]
233
+ #
234
+ # @!attribute [rw] identified_language_score
235
+ # A value between zero and one that Amazon Transcribe assigned to the
236
+ # language that it identified in the source audio. This value appears
237
+ # only when you don't provide a single language code. Larger values
238
+ # indicate that Amazon Transcribe has higher confidence in the
239
+ # language that it identified
240
+ # @return [Float]
241
+ #
242
+ # @!attribute [rw] settings
243
+ # Provides information about the settings used to run a transcription
244
+ # job.
245
+ # @return [Types::CallAnalyticsJobSettings]
246
+ #
247
+ # @!attribute [rw] channel_definitions
248
+ # Shows numeric values to indicate the channel assigned to the
249
+ # agent's audio and the channel assigned to the customer's audio.
250
+ # @return [Array<Types::ChannelDefinition>]
251
+ #
252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CallAnalyticsJob AWS API Documentation
253
+ #
254
+ class CallAnalyticsJob < Struct.new(
255
+ :call_analytics_job_name,
256
+ :call_analytics_job_status,
257
+ :language_code,
258
+ :media_sample_rate_hertz,
259
+ :media_format,
260
+ :media,
261
+ :transcript,
262
+ :start_time,
263
+ :creation_time,
264
+ :completion_time,
265
+ :failure_reason,
266
+ :data_access_role_arn,
267
+ :identified_language_score,
268
+ :settings,
269
+ :channel_definitions)
270
+ SENSITIVE = []
271
+ include Aws::Structure
272
+ end
273
+
274
+ # Provides optional settings for the `CallAnalyticsJob` operation.
275
+ #
276
+ # @note When making an API call, you may pass CallAnalyticsJobSettings
277
+ # data as a hash:
278
+ #
279
+ # {
280
+ # vocabulary_name: "VocabularyName",
281
+ # vocabulary_filter_name: "VocabularyFilterName",
282
+ # vocabulary_filter_method: "remove", # accepts remove, mask, tag
283
+ # language_model_name: "ModelName",
284
+ # content_redaction: {
285
+ # redaction_type: "PII", # required, accepts PII
286
+ # redaction_output: "redacted", # required, accepts redacted, redacted_and_unredacted
287
+ # },
288
+ # language_options: ["af-ZA"], # accepts af-ZA, ar-AE, ar-SA, cy-GB, da-DK, de-CH, de-DE, en-AB, en-AU, en-GB, en-IE, en-IN, en-US, en-WL, es-ES, es-US, fa-IR, fr-CA, fr-FR, ga-IE, gd-GB, he-IL, hi-IN, id-ID, it-IT, ja-JP, ko-KR, ms-MY, nl-NL, pt-BR, pt-PT, ru-RU, ta-IN, te-IN, tr-TR, zh-CN
289
+ # }
290
+ #
291
+ # @!attribute [rw] vocabulary_name
292
+ # The name of a vocabulary to use when processing the call analytics
293
+ # job.
294
+ # @return [String]
295
+ #
296
+ # @!attribute [rw] vocabulary_filter_name
297
+ # The name of the vocabulary filter to use when running a call
298
+ # analytics job. The filter that you specify must have the same
299
+ # language code as the analytics job.
300
+ # @return [String]
301
+ #
302
+ # @!attribute [rw] vocabulary_filter_method
303
+ # Set to mask to remove filtered text from the transcript and replace
304
+ # it with three asterisks ("***") as placeholder text. Set to
305
+ # `remove` to remove filtered text from the transcript without using
306
+ # placeholder text. Set to `tag` to mark the word in the transcription
307
+ # output that matches the vocabulary filter. When you set the filter
308
+ # method to `tag`, the words matching your vocabulary filter are not
309
+ # masked or removed.
310
+ # @return [String]
311
+ #
312
+ # @!attribute [rw] language_model_name
313
+ # The structure used to describe a custom language model.
314
+ # @return [String]
315
+ #
316
+ # @!attribute [rw] content_redaction
317
+ # Settings for content redaction within a transcription job.
318
+ # @return [Types::ContentRedaction]
319
+ #
320
+ # @!attribute [rw] language_options
321
+ # When you run a call analytics job, you can specify the language
322
+ # spoken in the audio, or you can have Amazon Transcribe identify the
323
+ # language for you.
324
+ #
325
+ # To specify a language, specify an array with one language code. If
326
+ # you don't know the language, you can leave this field blank and
327
+ # Amazon Transcribe will use machine learning to identify the language
328
+ # for you. To improve the ability of Amazon Transcribe to correctly
329
+ # identify the language, you can provide an array of the languages
330
+ # that can be present in the audio.
331
+ #
332
+ # The following list shows the supported languages and corresponding
333
+ # language codes for call analytics jobs:
334
+ #
335
+ # * Gulf Arabic (ar-AE)
336
+ #
337
+ # * Mandarin Chinese, Mainland (zh-CN)
338
+ #
339
+ # * Australian English (en-AU)
340
+ #
341
+ # * British English (en-GB)
342
+ #
343
+ # * Indian English (en-IN)
344
+ #
345
+ # * Irish English (en-IE)
346
+ #
347
+ # * Scottish English (en-AB)
348
+ #
349
+ # * US English (en-US)
350
+ #
351
+ # * Welsh English (en-WL)
352
+ #
353
+ # * Spanish (es-ES)
354
+ #
355
+ # * US Spanish (es-US)
356
+ #
357
+ # * French (fr-FR)
358
+ #
359
+ # * Canadian French (fr-CA)
360
+ #
361
+ # * German (de-DE)
362
+ #
363
+ # * Swiss German (de-CH)
364
+ #
365
+ # * Indian Hindi (hi-IN)
366
+ #
367
+ # * Italian (it-IT)
368
+ #
369
+ # * Japanese (ja-JP)
370
+ #
371
+ # * Korean (ko-KR)
372
+ #
373
+ # * Portuguese (pt-PT)
374
+ #
375
+ # * Brazilian Portuguese (pt-BR)
376
+ # @return [Array<String>]
377
+ #
378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CallAnalyticsJobSettings AWS API Documentation
379
+ #
380
+ class CallAnalyticsJobSettings < Struct.new(
381
+ :vocabulary_name,
382
+ :vocabulary_filter_name,
383
+ :vocabulary_filter_method,
384
+ :language_model_name,
385
+ :content_redaction,
386
+ :language_options)
387
+ SENSITIVE = []
388
+ include Aws::Structure
389
+ end
390
+
391
+ # Provides summary information about a call analytics job.
392
+ #
393
+ # @!attribute [rw] call_analytics_job_name
394
+ # The name of the call analytics job.
395
+ # @return [String]
396
+ #
397
+ # @!attribute [rw] creation_time
398
+ # A timestamp that shows when the call analytics job was created.
399
+ # @return [Time]
400
+ #
401
+ # @!attribute [rw] start_time
402
+ # A timestamp that shows when the job began processing.
403
+ # @return [Time]
404
+ #
405
+ # @!attribute [rw] completion_time
406
+ # A timestamp that shows when the job was completed.
407
+ # @return [Time]
408
+ #
409
+ # @!attribute [rw] language_code
410
+ # The language of the transcript in the source audio file.
411
+ # @return [String]
412
+ #
413
+ # @!attribute [rw] call_analytics_job_status
414
+ # The status of the call analytics job.
415
+ # @return [String]
416
+ #
417
+ # @!attribute [rw] failure_reason
418
+ # If the `CallAnalyticsJobStatus` is `FAILED`, a description of the
419
+ # error.
420
+ # @return [String]
421
+ #
422
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CallAnalyticsJobSummary AWS API Documentation
423
+ #
424
+ class CallAnalyticsJobSummary < Struct.new(
425
+ :call_analytics_job_name,
426
+ :creation_time,
427
+ :start_time,
428
+ :completion_time,
429
+ :language_code,
430
+ :call_analytics_job_status,
431
+ :failure_reason)
432
+ SENSITIVE = []
433
+ include Aws::Structure
434
+ end
435
+
436
+ # An object that contains the rules and additional information about a
437
+ # call analytics category.
438
+ #
439
+ # @!attribute [rw] category_name
440
+ # The name of the call analytics category.
441
+ # @return [String]
442
+ #
443
+ # @!attribute [rw] rules
444
+ # The rules used to create a call analytics category.
445
+ # @return [Array<Types::Rule>]
446
+ #
447
+ # @!attribute [rw] create_time
448
+ # A timestamp that shows when the call analytics category was created.
449
+ # @return [Time]
450
+ #
451
+ # @!attribute [rw] last_update_time
452
+ # A timestamp that shows when the call analytics category was most
453
+ # recently updated.
454
+ # @return [Time]
455
+ #
456
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CategoryProperties AWS API Documentation
457
+ #
458
+ class CategoryProperties < Struct.new(
459
+ :category_name,
460
+ :rules,
461
+ :create_time,
462
+ :last_update_time)
463
+ SENSITIVE = []
464
+ include Aws::Structure
465
+ end
466
+
467
+ # For a call analytics job, an object that indicates the audio channel
468
+ # that belongs to the agent and the audio channel that belongs to the
469
+ # customer.
470
+ #
471
+ # @note When making an API call, you may pass ChannelDefinition
472
+ # data as a hash:
473
+ #
474
+ # {
475
+ # channel_id: 1,
476
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
477
+ # }
478
+ #
479
+ # @!attribute [rw] channel_id
480
+ # A value that indicates the audio channel.
481
+ # @return [Integer]
482
+ #
483
+ # @!attribute [rw] participant_role
484
+ # Indicates whether the person speaking on the audio channel is the
485
+ # agent or customer.
486
+ # @return [String]
487
+ #
488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ChannelDefinition AWS API Documentation
489
+ #
490
+ class ChannelDefinition < Struct.new(
491
+ :channel_id,
492
+ :participant_role)
493
+ SENSITIVE = []
494
+ include Aws::Structure
495
+ end
496
+
29
497
  # There is already a resource with that name.
30
498
  #
31
499
  # @!attribute [rw] message
@@ -74,6 +542,117 @@ module Aws::TranscribeService
74
542
  include Aws::Structure
75
543
  end
76
544
 
545
+ # @note When making an API call, you may pass CreateCallAnalyticsCategoryRequest
546
+ # data as a hash:
547
+ #
548
+ # {
549
+ # category_name: "CategoryName", # required
550
+ # rules: [ # required
551
+ # {
552
+ # non_talk_time_filter: {
553
+ # threshold: 1,
554
+ # absolute_time_range: {
555
+ # start_time: 1,
556
+ # end_time: 1,
557
+ # first: 1,
558
+ # last: 1,
559
+ # },
560
+ # relative_time_range: {
561
+ # start_percentage: 1,
562
+ # end_percentage: 1,
563
+ # first: 1,
564
+ # last: 1,
565
+ # },
566
+ # negate: false,
567
+ # },
568
+ # interruption_filter: {
569
+ # threshold: 1,
570
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
571
+ # absolute_time_range: {
572
+ # start_time: 1,
573
+ # end_time: 1,
574
+ # first: 1,
575
+ # last: 1,
576
+ # },
577
+ # relative_time_range: {
578
+ # start_percentage: 1,
579
+ # end_percentage: 1,
580
+ # first: 1,
581
+ # last: 1,
582
+ # },
583
+ # negate: false,
584
+ # },
585
+ # transcript_filter: {
586
+ # transcript_filter_type: "EXACT", # required, accepts EXACT
587
+ # absolute_time_range: {
588
+ # start_time: 1,
589
+ # end_time: 1,
590
+ # first: 1,
591
+ # last: 1,
592
+ # },
593
+ # relative_time_range: {
594
+ # start_percentage: 1,
595
+ # end_percentage: 1,
596
+ # first: 1,
597
+ # last: 1,
598
+ # },
599
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
600
+ # negate: false,
601
+ # targets: ["NonEmptyString"], # required
602
+ # },
603
+ # sentiment_filter: {
604
+ # sentiments: ["POSITIVE"], # required, accepts POSITIVE, NEGATIVE, NEUTRAL, MIXED
605
+ # absolute_time_range: {
606
+ # start_time: 1,
607
+ # end_time: 1,
608
+ # first: 1,
609
+ # last: 1,
610
+ # },
611
+ # relative_time_range: {
612
+ # start_percentage: 1,
613
+ # end_percentage: 1,
614
+ # first: 1,
615
+ # last: 1,
616
+ # },
617
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
618
+ # negate: false,
619
+ # },
620
+ # },
621
+ # ],
622
+ # }
623
+ #
624
+ # @!attribute [rw] category_name
625
+ # The name that you choose for your category when you create it.
626
+ # @return [String]
627
+ #
628
+ # @!attribute [rw] rules
629
+ # To create a category, you must specify between 1 and 20 rules. For
630
+ # each rule, you specify a filter to be applied to the attributes of
631
+ # the call. For example, you can specify a sentiment filter to detect
632
+ # if the customer's sentiment was negative or neutral.
633
+ # @return [Array<Types::Rule>]
634
+ #
635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateCallAnalyticsCategoryRequest AWS API Documentation
636
+ #
637
+ class CreateCallAnalyticsCategoryRequest < Struct.new(
638
+ :category_name,
639
+ :rules)
640
+ SENSITIVE = []
641
+ include Aws::Structure
642
+ end
643
+
644
+ # @!attribute [rw] category_properties
645
+ # The rules and associated metadata used to create a category.
646
+ # @return [Types::CategoryProperties]
647
+ #
648
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateCallAnalyticsCategoryResponse AWS API Documentation
649
+ #
650
+ class CreateCallAnalyticsCategoryResponse < Struct.new(
651
+ :category_properties)
652
+ SENSITIVE = []
653
+ include Aws::Structure
654
+ end
655
+
77
656
  # @note When making an API call, you may pass CreateLanguageModelRequest
78
657
  # data as a hash:
79
658
  #
@@ -172,8 +751,8 @@ module Aws::TranscribeService
172
751
  #
173
752
  # @!attribute [rw] vocabulary_name
174
753
  # The name of the custom vocabulary. This case-sensitive name must be
175
- # unique within an AWS account. If you try to create a vocabulary with
176
- # the same name as a previous vocabulary, you get a
754
+ # unique within an Amazon Web Services account. If you try to create a
755
+ # vocabulary with the same name as a previous vocabulary, you get a
177
756
  # `ConflictException` error.
178
757
  # @return [String]
179
758
  #
@@ -187,9 +766,9 @@ module Aws::TranscribeService
187
766
  #
188
767
  # @!attribute [rw] vocabulary_file_uri
189
768
  # The location in Amazon S3 of the text file you use to define your
190
- # custom vocabulary. The URI must be in the same AWS Region as the
191
- # resource that you're calling. Enter information about your
192
- # `VocabularyFileUri` in the following format:
769
+ # custom vocabulary. The URI must be in the same Amazon Web Services
770
+ # Region as the resource that you're calling. Enter information about
771
+ # your `VocabularyFileUri` in the following format:
193
772
  #
194
773
  # `
195
774
  # https://s3.<aws-region>.amazonaws.com/<bucket-name>/<keyprefix>/<objectkey>
@@ -208,8 +787,8 @@ module Aws::TranscribeService
208
787
  #
209
788
  #
210
789
  #
211
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
212
- # [2]: http://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary-med
790
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
791
+ # [2]: https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary-med
213
792
  # @return [String]
214
793
  #
215
794
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateMedicalVocabularyRequest AWS API Documentation
@@ -223,8 +802,8 @@ module Aws::TranscribeService
223
802
  end
224
803
 
225
804
  # @!attribute [rw] vocabulary_name
226
- # The name of the vocabulary. The name must be unique within an AWS
227
- # account and is case sensitive.
805
+ # The name of the vocabulary. The name must be unique within an Amazon
806
+ # Web Services account and is case sensitive.
228
807
  # @return [String]
229
808
  #
230
809
  # @!attribute [rw] language_code
@@ -357,10 +936,10 @@ module Aws::TranscribeService
357
936
  # }
358
937
  #
359
938
  # @!attribute [rw] vocabulary_name
360
- # The name of the vocabulary. The name must be unique within an AWS
361
- # account. The name is case sensitive. If you try to create a
362
- # vocabulary with the same name as a previous vocabulary you will
363
- # receive a `ConflictException` error.
939
+ # The name of the vocabulary. The name must be unique within an Amazon
940
+ # Web Services account. The name is case sensitive. If you try to
941
+ # create a vocabulary with the same name as a previous vocabulary you
942
+ # will receive a `ConflictException` error.
364
943
  # @return [String]
365
944
  #
366
945
  # @!attribute [rw] language_code
@@ -385,8 +964,8 @@ module Aws::TranscribeService
385
964
  #
386
965
  #
387
966
  #
388
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
389
- # [2]: http://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary
967
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
968
+ # [2]: https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary
390
969
  # @return [String]
391
970
  #
392
971
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateVocabularyRequest AWS API Documentation
@@ -435,6 +1014,53 @@ module Aws::TranscribeService
435
1014
  include Aws::Structure
436
1015
  end
437
1016
 
1017
+ # @note When making an API call, you may pass DeleteCallAnalyticsCategoryRequest
1018
+ # data as a hash:
1019
+ #
1020
+ # {
1021
+ # category_name: "CategoryName", # required
1022
+ # }
1023
+ #
1024
+ # @!attribute [rw] category_name
1025
+ # The name of the call analytics category that you're choosing to
1026
+ # delete. The value is case sensitive.
1027
+ # @return [String]
1028
+ #
1029
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsCategoryRequest AWS API Documentation
1030
+ #
1031
+ class DeleteCallAnalyticsCategoryRequest < Struct.new(
1032
+ :category_name)
1033
+ SENSITIVE = []
1034
+ include Aws::Structure
1035
+ end
1036
+
1037
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsCategoryResponse AWS API Documentation
1038
+ #
1039
+ class DeleteCallAnalyticsCategoryResponse < Aws::EmptyStructure; end
1040
+
1041
+ # @note When making an API call, you may pass DeleteCallAnalyticsJobRequest
1042
+ # data as a hash:
1043
+ #
1044
+ # {
1045
+ # call_analytics_job_name: "CallAnalyticsJobName", # required
1046
+ # }
1047
+ #
1048
+ # @!attribute [rw] call_analytics_job_name
1049
+ # The name of the call analytics job you want to delete.
1050
+ # @return [String]
1051
+ #
1052
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsJobRequest AWS API Documentation
1053
+ #
1054
+ class DeleteCallAnalyticsJobRequest < Struct.new(
1055
+ :call_analytics_job_name)
1056
+ SENSITIVE = []
1057
+ include Aws::Structure
1058
+ end
1059
+
1060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsJobResponse AWS API Documentation
1061
+ #
1062
+ class DeleteCallAnalyticsJobResponse < Aws::EmptyStructure; end
1063
+
438
1064
  # @note When making an API call, you may pass DeleteLanguageModelRequest
439
1065
  # data as a hash:
440
1066
  #
@@ -583,6 +1209,70 @@ module Aws::TranscribeService
583
1209
  include Aws::Structure
584
1210
  end
585
1211
 
1212
+ # @note When making an API call, you may pass GetCallAnalyticsCategoryRequest
1213
+ # data as a hash:
1214
+ #
1215
+ # {
1216
+ # category_name: "CategoryName", # required
1217
+ # }
1218
+ #
1219
+ # @!attribute [rw] category_name
1220
+ # The name of the category you want information about. This value is
1221
+ # case sensitive.
1222
+ # @return [String]
1223
+ #
1224
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsCategoryRequest AWS API Documentation
1225
+ #
1226
+ class GetCallAnalyticsCategoryRequest < Struct.new(
1227
+ :category_name)
1228
+ SENSITIVE = []
1229
+ include Aws::Structure
1230
+ end
1231
+
1232
+ # @!attribute [rw] category_properties
1233
+ # The rules you've defined for a category.
1234
+ # @return [Types::CategoryProperties]
1235
+ #
1236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsCategoryResponse AWS API Documentation
1237
+ #
1238
+ class GetCallAnalyticsCategoryResponse < Struct.new(
1239
+ :category_properties)
1240
+ SENSITIVE = []
1241
+ include Aws::Structure
1242
+ end
1243
+
1244
+ # @note When making an API call, you may pass GetCallAnalyticsJobRequest
1245
+ # data as a hash:
1246
+ #
1247
+ # {
1248
+ # call_analytics_job_name: "CallAnalyticsJobName", # required
1249
+ # }
1250
+ #
1251
+ # @!attribute [rw] call_analytics_job_name
1252
+ # The name of the analytics job you want information about. This value
1253
+ # is case sensitive.
1254
+ # @return [String]
1255
+ #
1256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsJobRequest AWS API Documentation
1257
+ #
1258
+ class GetCallAnalyticsJobRequest < Struct.new(
1259
+ :call_analytics_job_name)
1260
+ SENSITIVE = []
1261
+ include Aws::Structure
1262
+ end
1263
+
1264
+ # @!attribute [rw] call_analytics_job
1265
+ # An object that contains the results of your call analytics job.
1266
+ # @return [Types::CallAnalyticsJob]
1267
+ #
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsJobResponse AWS API Documentation
1269
+ #
1270
+ class GetCallAnalyticsJobResponse < Struct.new(
1271
+ :call_analytics_job)
1272
+ SENSITIVE = []
1273
+ include Aws::Structure
1274
+ end
1275
+
586
1276
  # @note When making an API call, you may pass GetMedicalTranscriptionJobRequest
587
1277
  # data as a hash:
588
1278
  #
@@ -869,6 +1559,73 @@ module Aws::TranscribeService
869
1559
  include Aws::Structure
870
1560
  end
871
1561
 
1562
+ # An object that enables you to configure your category to be applied to
1563
+ # call analytics jobs where either the customer or agent was
1564
+ # interrupted.
1565
+ #
1566
+ # @note When making an API call, you may pass InterruptionFilter
1567
+ # data as a hash:
1568
+ #
1569
+ # {
1570
+ # threshold: 1,
1571
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
1572
+ # absolute_time_range: {
1573
+ # start_time: 1,
1574
+ # end_time: 1,
1575
+ # first: 1,
1576
+ # last: 1,
1577
+ # },
1578
+ # relative_time_range: {
1579
+ # start_percentage: 1,
1580
+ # end_percentage: 1,
1581
+ # first: 1,
1582
+ # last: 1,
1583
+ # },
1584
+ # negate: false,
1585
+ # }
1586
+ #
1587
+ # @!attribute [rw] threshold
1588
+ # The duration of the interruption.
1589
+ # @return [Integer]
1590
+ #
1591
+ # @!attribute [rw] participant_role
1592
+ # Indicates whether the caller or customer was interrupting.
1593
+ # @return [String]
1594
+ #
1595
+ # @!attribute [rw] absolute_time_range
1596
+ # An object you can use to specify a time range (in milliseconds) for
1597
+ # when you'd want to find the interruption. For example, you could
1598
+ # search for an interruption between the 30,000 millisecond mark and
1599
+ # the 45,000 millisecond mark. You could also specify the time period
1600
+ # as the first 15,000 milliseconds or the last 15,000 milliseconds.
1601
+ # @return [Types::AbsoluteTimeRange]
1602
+ #
1603
+ # @!attribute [rw] relative_time_range
1604
+ # An object that allows percentages to specify the proportion of the
1605
+ # call where there was a interruption. For example, you can specify
1606
+ # the first half of the call. You can also specify the period of time
1607
+ # between halfway through to three-quarters of the way through the
1608
+ # call. Because the length of conversation can vary between calls, you
1609
+ # can apply relative time ranges across all calls.
1610
+ # @return [Types::RelativeTimeRange]
1611
+ #
1612
+ # @!attribute [rw] negate
1613
+ # Set to `TRUE` to look for a time period where there was no
1614
+ # interruption.
1615
+ # @return [Boolean]
1616
+ #
1617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/InterruptionFilter AWS API Documentation
1618
+ #
1619
+ class InterruptionFilter < Struct.new(
1620
+ :threshold,
1621
+ :participant_role,
1622
+ :absolute_time_range,
1623
+ :relative_time_range,
1624
+ :negate)
1625
+ SENSITIVE = []
1626
+ include Aws::Structure
1627
+ end
1628
+
872
1629
  # Provides information about when a transcription job should be
873
1630
  # executed.
874
1631
  #
@@ -935,53 +1692,176 @@ module Aws::TranscribeService
935
1692
  # create the custom language model.
936
1693
  # @return [String]
937
1694
  #
938
- # @!attribute [rw] model_status
939
- # The creation status of a custom language model. When the status is
940
- # `COMPLETED` the model is ready for use.
1695
+ # @!attribute [rw] model_status
1696
+ # The creation status of a custom language model. When the status is
1697
+ # `COMPLETED` the model is ready for use.
1698
+ # @return [String]
1699
+ #
1700
+ # @!attribute [rw] upgrade_availability
1701
+ # Whether the base model used for the custom language model is up to
1702
+ # date. If this field is `true` then you are running the most
1703
+ # up-to-date version of the base model in your custom language model.
1704
+ # @return [Boolean]
1705
+ #
1706
+ # @!attribute [rw] failure_reason
1707
+ # The reason why the custom language model couldn't be created.
1708
+ # @return [String]
1709
+ #
1710
+ # @!attribute [rw] input_data_config
1711
+ # The data access role and Amazon S3 prefixes for the input files used
1712
+ # to train the custom language model.
1713
+ # @return [Types::InputDataConfig]
1714
+ #
1715
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/LanguageModel AWS API Documentation
1716
+ #
1717
+ class LanguageModel < Struct.new(
1718
+ :model_name,
1719
+ :create_time,
1720
+ :last_modified_time,
1721
+ :language_code,
1722
+ :base_model_name,
1723
+ :model_status,
1724
+ :upgrade_availability,
1725
+ :failure_reason,
1726
+ :input_data_config)
1727
+ SENSITIVE = []
1728
+ include Aws::Structure
1729
+ end
1730
+
1731
+ # Either you have sent too many requests or your input file is too long.
1732
+ # Wait before you resend your request, or use a smaller file and resend
1733
+ # the request.
1734
+ #
1735
+ # @!attribute [rw] message
1736
+ # @return [String]
1737
+ #
1738
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/LimitExceededException AWS API Documentation
1739
+ #
1740
+ class LimitExceededException < Struct.new(
1741
+ :message)
1742
+ SENSITIVE = []
1743
+ include Aws::Structure
1744
+ end
1745
+
1746
+ # @note When making an API call, you may pass ListCallAnalyticsCategoriesRequest
1747
+ # data as a hash:
1748
+ #
1749
+ # {
1750
+ # next_token: "NextToken",
1751
+ # max_results: 1,
1752
+ # }
1753
+ #
1754
+ # @!attribute [rw] next_token
1755
+ # When included, `NextToken`fetches the next set of categories if the
1756
+ # result of the previous request was truncated.
1757
+ # @return [String]
1758
+ #
1759
+ # @!attribute [rw] max_results
1760
+ # The maximum number of categories to return in the response. If there
1761
+ # are fewer results in the list, the response contains only the actual
1762
+ # results.
1763
+ # @return [Integer]
1764
+ #
1765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsCategoriesRequest AWS API Documentation
1766
+ #
1767
+ class ListCallAnalyticsCategoriesRequest < Struct.new(
1768
+ :next_token,
1769
+ :max_results)
1770
+ SENSITIVE = []
1771
+ include Aws::Structure
1772
+ end
1773
+
1774
+ # @!attribute [rw] next_token
1775
+ # The operation returns a page of jobs at a time. The maximum size of
1776
+ # the list is set by the `MaxResults` parameter. If there are more
1777
+ # categories in the list than the page size, Amazon Transcribe returns
1778
+ # the `NextPage` token. Include the token in the next request to the
1779
+ # operation to return the next page of analytics categories.
1780
+ # @return [String]
1781
+ #
1782
+ # @!attribute [rw] categories
1783
+ # A list of objects containing information about analytics categories.
1784
+ # @return [Array<Types::CategoryProperties>]
1785
+ #
1786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsCategoriesResponse AWS API Documentation
1787
+ #
1788
+ class ListCallAnalyticsCategoriesResponse < Struct.new(
1789
+ :next_token,
1790
+ :categories)
1791
+ SENSITIVE = []
1792
+ include Aws::Structure
1793
+ end
1794
+
1795
+ # @note When making an API call, you may pass ListCallAnalyticsJobsRequest
1796
+ # data as a hash:
1797
+ #
1798
+ # {
1799
+ # status: "QUEUED", # accepts QUEUED, IN_PROGRESS, FAILED, COMPLETED
1800
+ # job_name_contains: "CallAnalyticsJobName",
1801
+ # next_token: "NextToken",
1802
+ # max_results: 1,
1803
+ # }
1804
+ #
1805
+ # @!attribute [rw] status
1806
+ # When specified, returns only call analytics jobs with the specified
1807
+ # status. Jobs are ordered by creation date, with the most recent jobs
1808
+ # returned first. If you don't specify a status, Amazon Transcribe
1809
+ # returns all analytics jobs ordered by creation date.
941
1810
  # @return [String]
942
1811
  #
943
- # @!attribute [rw] upgrade_availability
944
- # Whether the base model used for the custom language model is up to
945
- # date. If this field is `true` then you are running the most
946
- # up-to-date version of the base model in your custom language model.
947
- # @return [Boolean]
1812
+ # @!attribute [rw] job_name_contains
1813
+ # When specified, the jobs returned in the list are limited to jobs
1814
+ # whose name contains the specified string.
1815
+ # @return [String]
948
1816
  #
949
- # @!attribute [rw] failure_reason
950
- # The reason why the custom language model couldn't be created.
1817
+ # @!attribute [rw] next_token
1818
+ # If you receive a truncated result in the previous request of ,
1819
+ # include `NextToken` to fetch the next set of jobs.
951
1820
  # @return [String]
952
1821
  #
953
- # @!attribute [rw] input_data_config
954
- # The data access role and Amazon S3 prefixes for the input files used
955
- # to train the custom language model.
956
- # @return [Types::InputDataConfig]
1822
+ # @!attribute [rw] max_results
1823
+ # The maximum number of call analytics jobs to return in the response.
1824
+ # If there are fewer results in the list, this response contains only
1825
+ # the actual results.
1826
+ # @return [Integer]
957
1827
  #
958
- # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/LanguageModel AWS API Documentation
1828
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsJobsRequest AWS API Documentation
959
1829
  #
960
- class LanguageModel < Struct.new(
961
- :model_name,
962
- :create_time,
963
- :last_modified_time,
964
- :language_code,
965
- :base_model_name,
966
- :model_status,
967
- :upgrade_availability,
968
- :failure_reason,
969
- :input_data_config)
1830
+ class ListCallAnalyticsJobsRequest < Struct.new(
1831
+ :status,
1832
+ :job_name_contains,
1833
+ :next_token,
1834
+ :max_results)
970
1835
  SENSITIVE = []
971
1836
  include Aws::Structure
972
1837
  end
973
1838
 
974
- # Either you have sent too many requests or your input file is too long.
975
- # Wait before you resend your request, or use a smaller file and resend
976
- # the request.
1839
+ # @!attribute [rw] status
1840
+ # When specified, returns only call analytics jobs with that status.
1841
+ # Jobs are ordered by creation date, with the most recent jobs
1842
+ # returned first. If you don't specify a status, Amazon Transcribe
1843
+ # returns all transcription jobs ordered by creation date.
1844
+ # @return [String]
977
1845
  #
978
- # @!attribute [rw] message
1846
+ # @!attribute [rw] next_token
1847
+ # The operation returns a page of jobs at a time. The maximum size of
1848
+ # the page is set by the `MaxResults` parameter. If there are more
1849
+ # jobs in the list than the page size, Amazon Transcribe returns the
1850
+ # `NextPage` token. Include the token in your next request to the
1851
+ # operation to return next page of jobs.
979
1852
  # @return [String]
980
1853
  #
981
- # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/LimitExceededException AWS API Documentation
1854
+ # @!attribute [rw] call_analytics_job_summaries
1855
+ # A list of objects containing summary information for a transcription
1856
+ # job.
1857
+ # @return [Array<Types::CallAnalyticsJobSummary>]
982
1858
  #
983
- class LimitExceededException < Struct.new(
984
- :message)
1859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsJobsResponse AWS API Documentation
1860
+ #
1861
+ class ListCallAnalyticsJobsResponse < Struct.new(
1862
+ :status,
1863
+ :next_token,
1864
+ :call_analytics_job_summaries)
985
1865
  SENSITIVE = []
986
1866
  include Aws::Structure
987
1867
  end
@@ -1411,6 +2291,7 @@ module Aws::TranscribeService
1411
2291
  #
1412
2292
  # {
1413
2293
  # media_file_uri: "Uri",
2294
+ # redacted_media_file_uri: "Uri",
1414
2295
  # }
1415
2296
  #
1416
2297
  # @!attribute [rw] media_file_uri
@@ -1425,13 +2306,19 @@ module Aws::TranscribeService
1425
2306
  #
1426
2307
  #
1427
2308
  #
1428
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
2309
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
2310
+ # @return [String]
2311
+ #
2312
+ # @!attribute [rw] redacted_media_file_uri
2313
+ # The S3 object location for your redacted output media file. This is
2314
+ # only supported for call analytics jobs.
1429
2315
  # @return [String]
1430
2316
  #
1431
2317
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/Media AWS API Documentation
1432
2318
  #
1433
2319
  class Media < Struct.new(
1434
- :media_file_uri)
2320
+ :media_file_uri,
2321
+ :redacted_media_file_uri)
1435
2322
  SENSITIVE = []
1436
2323
  include Aws::Structure
1437
2324
  end
@@ -1478,8 +2365,8 @@ module Aws::TranscribeService
1478
2365
  # If you don't specify the sample rate, Amazon Transcribe Medical
1479
2366
  # determines it for you. If you choose to specify the sample rate, it
1480
2367
  # must match the rate detected by Amazon Transcribe Medical. In most
1481
- # cases, you should leave the `MediaSampleHertz` blank and let Amazon
1482
- # Transcribe Medical determine the sample rate.
2368
+ # cases, you should leave the `MedicalMediaSampleHertz` blank and let
2369
+ # Amazon Transcribe Medical determine the sample rate.
1483
2370
  # @return [Integer]
1484
2371
  #
1485
2372
  # @!attribute [rw] media_format
@@ -1576,7 +2463,11 @@ module Aws::TranscribeService
1576
2463
  # The type of speech in the transcription job. `CONVERSATION` is
1577
2464
  # generally used for patient-physician dialogues. `DICTATION` is the
1578
2465
  # setting for physicians speaking their notes after seeing a patient.
1579
- # For more information, see how-it-works-med
2466
+ # For more information, see [What is Amazon Transcribe Medical?][1].
2467
+ #
2468
+ #
2469
+ #
2470
+ # [1]: https://docs.aws.amazon.com/transcribe/latest/dg/what-is-transcribe-med.html
1580
2471
  # @return [String]
1581
2472
  #
1582
2473
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/MedicalTranscriptionJob AWS API Documentation
@@ -1777,6 +2668,67 @@ module Aws::TranscribeService
1777
2668
  include Aws::Structure
1778
2669
  end
1779
2670
 
2671
+ # An object that enables you to configure your category to be applied to
2672
+ # call analytics jobs where either the customer or agent was
2673
+ # interrupted.
2674
+ #
2675
+ # @note When making an API call, you may pass NonTalkTimeFilter
2676
+ # data as a hash:
2677
+ #
2678
+ # {
2679
+ # threshold: 1,
2680
+ # absolute_time_range: {
2681
+ # start_time: 1,
2682
+ # end_time: 1,
2683
+ # first: 1,
2684
+ # last: 1,
2685
+ # },
2686
+ # relative_time_range: {
2687
+ # start_percentage: 1,
2688
+ # end_percentage: 1,
2689
+ # first: 1,
2690
+ # last: 1,
2691
+ # },
2692
+ # negate: false,
2693
+ # }
2694
+ #
2695
+ # @!attribute [rw] threshold
2696
+ # The duration of the period when neither the customer nor agent was
2697
+ # talking.
2698
+ # @return [Integer]
2699
+ #
2700
+ # @!attribute [rw] absolute_time_range
2701
+ # An object you can use to specify a time range (in milliseconds) for
2702
+ # when no one is talking. For example, you could specify a time period
2703
+ # between the 30,000 millisecond mark and the 45,000 millisecond mark.
2704
+ # You could also specify the time period as the first 15,000
2705
+ # milliseconds or the last 15,000 milliseconds.
2706
+ # @return [Types::AbsoluteTimeRange]
2707
+ #
2708
+ # @!attribute [rw] relative_time_range
2709
+ # An object that allows percentages to specify the proportion of the
2710
+ # call where there was silence. For example, you can specify the first
2711
+ # half of the call. You can also specify the period of time between
2712
+ # halfway through to three-quarters of the way through the call.
2713
+ # Because the length of conversation can vary between calls, you can
2714
+ # apply relative time ranges across all calls.
2715
+ # @return [Types::RelativeTimeRange]
2716
+ #
2717
+ # @!attribute [rw] negate
2718
+ # Set to `TRUE` to look for a time period when people were talking.
2719
+ # @return [Boolean]
2720
+ #
2721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/NonTalkTimeFilter AWS API Documentation
2722
+ #
2723
+ class NonTalkTimeFilter < Struct.new(
2724
+ :threshold,
2725
+ :absolute_time_range,
2726
+ :relative_time_range,
2727
+ :negate)
2728
+ SENSITIVE = []
2729
+ include Aws::Structure
2730
+ end
2731
+
1780
2732
  # We can't find the requested resource. Check the name and try your
1781
2733
  # request again.
1782
2734
  #
@@ -1791,6 +2743,189 @@ module Aws::TranscribeService
1791
2743
  include Aws::Structure
1792
2744
  end
1793
2745
 
2746
+ # An object that allows percentages to specify the proportion of the
2747
+ # call where you would like to apply a filter. For example, you can
2748
+ # specify the first half of the call. You can also specify the period of
2749
+ # time between halfway through to three-quarters of the way through the
2750
+ # call. Because the length of conversation can vary between calls, you
2751
+ # can apply relative time ranges across all calls.
2752
+ #
2753
+ # @note When making an API call, you may pass RelativeTimeRange
2754
+ # data as a hash:
2755
+ #
2756
+ # {
2757
+ # start_percentage: 1,
2758
+ # end_percentage: 1,
2759
+ # first: 1,
2760
+ # last: 1,
2761
+ # }
2762
+ #
2763
+ # @!attribute [rw] start_percentage
2764
+ # A value that indicates the percentage of the beginning of the time
2765
+ # range. To set a relative time range, you must specify a start
2766
+ # percentage and an end percentage. For example, if you specify the
2767
+ # following values:
2768
+ #
2769
+ # * StartPercentage - 10
2770
+ #
2771
+ # * EndPercentage - 50
2772
+ #
2773
+ # This looks at the time range starting from 10% of the way into the
2774
+ # call to 50% of the way through the call. For a call that lasts
2775
+ # 100,000 milliseconds, this example range would apply from the 10,000
2776
+ # millisecond mark to the 50,000 millisecond mark.
2777
+ # @return [Integer]
2778
+ #
2779
+ # @!attribute [rw] end_percentage
2780
+ # A value that indicates the percentage of the end of the time range.
2781
+ # To set a relative time range, you must specify a start percentage
2782
+ # and an end percentage. For example, if you specify the following
2783
+ # values:
2784
+ #
2785
+ # * StartPercentage - 10
2786
+ #
2787
+ # * EndPercentage - 50
2788
+ #
2789
+ # This looks at the time range starting from 10% of the way into the
2790
+ # call to 50% of the way through the call. For a call that lasts
2791
+ # 100,000 milliseconds, this example range would apply from the 10,000
2792
+ # millisecond mark to the 50,000 millisecond mark.
2793
+ # @return [Integer]
2794
+ #
2795
+ # @!attribute [rw] first
2796
+ # A range that takes the portion of the call up to the time in
2797
+ # milliseconds set by the value that you've specified. For example,
2798
+ # if you specify `120000`, the time range is set for the first 120,000
2799
+ # milliseconds of the call.
2800
+ # @return [Integer]
2801
+ #
2802
+ # @!attribute [rw] last
2803
+ # A range that takes the portion of the call from the time in
2804
+ # milliseconds set by the value that you've specified to the end of
2805
+ # the call. For example, if you specify `120000`, the time range is
2806
+ # set for the last 120,000 milliseconds of the call.
2807
+ # @return [Integer]
2808
+ #
2809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/RelativeTimeRange AWS API Documentation
2810
+ #
2811
+ class RelativeTimeRange < Struct.new(
2812
+ :start_percentage,
2813
+ :end_percentage,
2814
+ :first,
2815
+ :last)
2816
+ SENSITIVE = []
2817
+ include Aws::Structure
2818
+ end
2819
+
2820
+ # A condition in the call between the customer and the agent that you
2821
+ # want to filter for.
2822
+ #
2823
+ # @note Rule is a union - when making an API calls you must set exactly one of the members.
2824
+ #
2825
+ # @note Rule is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Rule corresponding to the set member.
2826
+ #
2827
+ # @!attribute [rw] non_talk_time_filter
2828
+ # A condition for a time period when neither the customer nor the
2829
+ # agent was talking.
2830
+ # @return [Types::NonTalkTimeFilter]
2831
+ #
2832
+ # @!attribute [rw] interruption_filter
2833
+ # A condition for a time period when either the customer or agent was
2834
+ # interrupting the other person.
2835
+ # @return [Types::InterruptionFilter]
2836
+ #
2837
+ # @!attribute [rw] transcript_filter
2838
+ # A condition that catches particular words or phrases based on a
2839
+ # exact match. For example, if you set the phrase "I want to speak to
2840
+ # the manager", only that exact phrase will be returned.
2841
+ # @return [Types::TranscriptFilter]
2842
+ #
2843
+ # @!attribute [rw] sentiment_filter
2844
+ # A condition that is applied to a particular customer sentiment.
2845
+ # @return [Types::SentimentFilter]
2846
+ #
2847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/Rule AWS API Documentation
2848
+ #
2849
+ class Rule < Struct.new(
2850
+ :non_talk_time_filter,
2851
+ :interruption_filter,
2852
+ :transcript_filter,
2853
+ :sentiment_filter,
2854
+ :unknown)
2855
+ SENSITIVE = []
2856
+ include Aws::Structure
2857
+ include Aws::Structure::Union
2858
+
2859
+ class NonTalkTimeFilter < Rule; end
2860
+ class InterruptionFilter < Rule; end
2861
+ class TranscriptFilter < Rule; end
2862
+ class SentimentFilter < Rule; end
2863
+ class Unknown < Rule; end
2864
+ end
2865
+
2866
+ # An object that enables you to specify a particular customer or agent
2867
+ # sentiment. If at least 50 percent of the conversation turns (the
2868
+ # back-and-forth between two speakers) in a specified time period match
2869
+ # the specified sentiment, Amazon Transcribe will consider the sentiment
2870
+ # a match.
2871
+ #
2872
+ # @note When making an API call, you may pass SentimentFilter
2873
+ # data as a hash:
2874
+ #
2875
+ # {
2876
+ # sentiments: ["POSITIVE"], # required, accepts POSITIVE, NEGATIVE, NEUTRAL, MIXED
2877
+ # absolute_time_range: {
2878
+ # start_time: 1,
2879
+ # end_time: 1,
2880
+ # first: 1,
2881
+ # last: 1,
2882
+ # },
2883
+ # relative_time_range: {
2884
+ # start_percentage: 1,
2885
+ # end_percentage: 1,
2886
+ # first: 1,
2887
+ # last: 1,
2888
+ # },
2889
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
2890
+ # negate: false,
2891
+ # }
2892
+ #
2893
+ # @!attribute [rw] sentiments
2894
+ # An array that enables you to specify sentiments for the customer or
2895
+ # agent. You can specify one or more values.
2896
+ # @return [Array<String>]
2897
+ #
2898
+ # @!attribute [rw] absolute_time_range
2899
+ # The time range, measured in seconds, of the sentiment.
2900
+ # @return [Types::AbsoluteTimeRange]
2901
+ #
2902
+ # @!attribute [rw] relative_time_range
2903
+ # The time range, set in percentages, that correspond to proportion of
2904
+ # the call.
2905
+ # @return [Types::RelativeTimeRange]
2906
+ #
2907
+ # @!attribute [rw] participant_role
2908
+ # A value that determines whether the sentiment belongs to the
2909
+ # customer or the agent.
2910
+ # @return [String]
2911
+ #
2912
+ # @!attribute [rw] negate
2913
+ # Set to `TRUE` to look for sentiments that weren't specified in the
2914
+ # request.
2915
+ # @return [Boolean]
2916
+ #
2917
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/SentimentFilter AWS API Documentation
2918
+ #
2919
+ class SentimentFilter < Struct.new(
2920
+ :sentiments,
2921
+ :absolute_time_range,
2922
+ :relative_time_range,
2923
+ :participant_role,
2924
+ :negate)
2925
+ SENSITIVE = []
2926
+ include Aws::Structure
2927
+ end
2928
+
1794
2929
  # Provides optional settings for the `StartTranscriptionJob` operation.
1795
2930
  #
1796
2931
  # @note When making an API call, you may pass Settings
@@ -1891,6 +3026,158 @@ module Aws::TranscribeService
1891
3026
  include Aws::Structure
1892
3027
  end
1893
3028
 
3029
+ # @note When making an API call, you may pass StartCallAnalyticsJobRequest
3030
+ # data as a hash:
3031
+ #
3032
+ # {
3033
+ # call_analytics_job_name: "CallAnalyticsJobName", # required
3034
+ # media: { # required
3035
+ # media_file_uri: "Uri",
3036
+ # redacted_media_file_uri: "Uri",
3037
+ # },
3038
+ # output_location: "Uri",
3039
+ # output_encryption_kms_key_id: "KMSKeyId",
3040
+ # data_access_role_arn: "DataAccessRoleArn", # required
3041
+ # settings: {
3042
+ # vocabulary_name: "VocabularyName",
3043
+ # vocabulary_filter_name: "VocabularyFilterName",
3044
+ # vocabulary_filter_method: "remove", # accepts remove, mask, tag
3045
+ # language_model_name: "ModelName",
3046
+ # content_redaction: {
3047
+ # redaction_type: "PII", # required, accepts PII
3048
+ # redaction_output: "redacted", # required, accepts redacted, redacted_and_unredacted
3049
+ # },
3050
+ # language_options: ["af-ZA"], # accepts af-ZA, ar-AE, ar-SA, cy-GB, da-DK, de-CH, de-DE, en-AB, en-AU, en-GB, en-IE, en-IN, en-US, en-WL, es-ES, es-US, fa-IR, fr-CA, fr-FR, ga-IE, gd-GB, he-IL, hi-IN, id-ID, it-IT, ja-JP, ko-KR, ms-MY, nl-NL, pt-BR, pt-PT, ru-RU, ta-IN, te-IN, tr-TR, zh-CN
3051
+ # },
3052
+ # channel_definitions: [
3053
+ # {
3054
+ # channel_id: 1,
3055
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
3056
+ # },
3057
+ # ],
3058
+ # }
3059
+ #
3060
+ # @!attribute [rw] call_analytics_job_name
3061
+ # The name of the call analytics job. You can't use the string "."
3062
+ # or ".." by themselves as the job name. The name must also be
3063
+ # unique within an AWS account. If you try to create a call analytics
3064
+ # job with the same name as a previous call analytics job, you get a
3065
+ # `ConflictException` error.
3066
+ # @return [String]
3067
+ #
3068
+ # @!attribute [rw] media
3069
+ # Describes the input media file in a transcription request.
3070
+ # @return [Types::Media]
3071
+ #
3072
+ # @!attribute [rw] output_location
3073
+ # The Amazon S3 location where the output of the call analytics job is
3074
+ # stored. You can provide the following location types to store the
3075
+ # output of call analytics job:
3076
+ #
3077
+ # * s3://DOC-EXAMPLE-BUCKET1
3078
+ #
3079
+ # If you specify a bucket, Amazon Transcribe saves the output of the
3080
+ # analytics job as a JSON file at the root level of the bucket.
3081
+ #
3082
+ # * s3://DOC-EXAMPLE-BUCKET1/folder/
3083
+ #
3084
+ # f you specify a path, Amazon Transcribe saves the output of the
3085
+ # analytics job as
3086
+ # s3://DOC-EXAMPLE-BUCKET1/folder/your-transcription-job-name.json
3087
+ #
3088
+ # If you specify a folder, you must provide a trailing slash.
3089
+ #
3090
+ # * s3://DOC-EXAMPLE-BUCKET1/folder/filename.json
3091
+ #
3092
+ # If you provide a path that has the filename specified, Amazon
3093
+ # Transcribe saves the output of the analytics job as
3094
+ # s3://DOC-EXAMPLEBUCKET1/folder/filename.json
3095
+ #
3096
+ # You can specify an AWS Key Management Service key to encrypt the
3097
+ # output of our analytics job using the `OutputEncryptionKMSKeyId`
3098
+ # parameter. If you don't specify a KMS key, Amazon Transcribe uses
3099
+ # the default Amazon S3 key for server-side encryption of the
3100
+ # analytics job output that is placed in your S3 bucket.
3101
+ # @return [String]
3102
+ #
3103
+ # @!attribute [rw] output_encryption_kms_key_id
3104
+ # The Amazon Resource Name (ARN) of the AWS Key Management Service key
3105
+ # used to encrypt the output of the call analytics job. The user
3106
+ # calling the operation must have permission to use the specified KMS
3107
+ # key.
3108
+ #
3109
+ # You use either of the following to identify an AWS KMS key in the
3110
+ # current account:
3111
+ #
3112
+ # * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
3113
+ #
3114
+ # * KMS Key Alias: "alias/ExampleAlias"
3115
+ #
3116
+ # You can use either of the following to identify a KMS key in the
3117
+ # current account or another account:
3118
+ #
3119
+ # * Amazon Resource Name (ARN) of a KMS key in the current account or
3120
+ # another account: "arn:aws:kms:region:account
3121
+ # ID:key/1234abcd-12ab-34cd-56ef1234567890ab"
3122
+ #
3123
+ # * ARN of a KMS Key Alias: "arn:aws:kms:region:account
3124
+ # ID:alias/ExampleAlias"
3125
+ #
3126
+ # If you don't specify an encryption key, the output of the call
3127
+ # analytics job is encrypted with the default Amazon S3 key (SSE-S3).
3128
+ #
3129
+ # If you specify a KMS key to encrypt your output, you must also
3130
+ # specify an output location in the `OutputLocation` parameter.
3131
+ # @return [String]
3132
+ #
3133
+ # @!attribute [rw] data_access_role_arn
3134
+ # The Amazon Resource Name (ARN) of a role that has access to the S3
3135
+ # bucket that contains your input files. Amazon Transcribe assumes
3136
+ # this role to read queued audio files. If you have specified an
3137
+ # output S3 bucket for your transcription results, this role should
3138
+ # have access to the output bucket as well.
3139
+ # @return [String]
3140
+ #
3141
+ # @!attribute [rw] settings
3142
+ # A `Settings` object that provides optional settings for a call
3143
+ # analytics job.
3144
+ # @return [Types::CallAnalyticsJobSettings]
3145
+ #
3146
+ # @!attribute [rw] channel_definitions
3147
+ # When you start a call analytics job, you must pass an array that
3148
+ # maps the agent and the customer to specific audio channels. The
3149
+ # values you can assign to a channel are 0 and 1. The agent and the
3150
+ # customer must each have their own channel. You can't assign more
3151
+ # than one channel to an agent or customer.
3152
+ # @return [Array<Types::ChannelDefinition>]
3153
+ #
3154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartCallAnalyticsJobRequest AWS API Documentation
3155
+ #
3156
+ class StartCallAnalyticsJobRequest < Struct.new(
3157
+ :call_analytics_job_name,
3158
+ :media,
3159
+ :output_location,
3160
+ :output_encryption_kms_key_id,
3161
+ :data_access_role_arn,
3162
+ :settings,
3163
+ :channel_definitions)
3164
+ SENSITIVE = []
3165
+ include Aws::Structure
3166
+ end
3167
+
3168
+ # @!attribute [rw] call_analytics_job
3169
+ # An object containing the details of the asynchronous call analytics
3170
+ # job.
3171
+ # @return [Types::CallAnalyticsJob]
3172
+ #
3173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartCallAnalyticsJobResponse AWS API Documentation
3174
+ #
3175
+ class StartCallAnalyticsJobResponse < Struct.new(
3176
+ :call_analytics_job)
3177
+ SENSITIVE = []
3178
+ include Aws::Structure
3179
+ end
3180
+
1894
3181
  # @note When making an API call, you may pass StartMedicalTranscriptionJobRequest
1895
3182
  # data as a hash:
1896
3183
  #
@@ -1901,6 +3188,7 @@ module Aws::TranscribeService
1901
3188
  # media_format: "mp3", # accepts mp3, mp4, wav, flac, ogg, amr, webm
1902
3189
  # media: { # required
1903
3190
  # media_file_uri: "Uri",
3191
+ # redacted_media_file_uri: "Uri",
1904
3192
  # },
1905
3193
  # output_bucket_name: "OutputBucketName", # required
1906
3194
  # output_key: "OutputKey",
@@ -1921,9 +3209,10 @@ module Aws::TranscribeService
1921
3209
  # @!attribute [rw] medical_transcription_job_name
1922
3210
  # The name of the medical transcription job. You can't use the
1923
3211
  # strings "`.`" or "`..`" by themselves as the job name. The name
1924
- # must also be unique within an AWS account. If you try to create a
1925
- # medical transcription job with the same name as a previous medical
1926
- # transcription job, you get a `ConflictException` error.
3212
+ # must also be unique within an Amazon Web Services account. If you
3213
+ # try to create a medical transcription job with the same name as a
3214
+ # previous medical transcription job, you get a `ConflictException`
3215
+ # error.
1927
3216
  # @return [String]
1928
3217
  #
1929
3218
  # @!attribute [rw] language_code
@@ -1963,8 +3252,8 @@ module Aws::TranscribeService
1963
3252
  # Transcribe Medical to put files in the bucket. For more information,
1964
3253
  # see [Permissions Required for IAM User Roles][1].
1965
3254
  #
1966
- # You can specify an AWS Key Management Service (KMS) key to encrypt
1967
- # the output of your transcription using the
3255
+ # You can specify an Amazon Web Services Key Management Service (KMS)
3256
+ # key to encrypt the output of your transcription using the
1968
3257
  # `OutputEncryptionKMSKeyId` parameter. If you don't specify a KMS
1969
3258
  # key, Amazon Transcribe Medical uses the default Amazon S3 key for
1970
3259
  # server-side encryption of transcripts that are placed in your S3
@@ -1999,10 +3288,10 @@ module Aws::TranscribeService
1999
3288
  # @return [String]
2000
3289
  #
2001
3290
  # @!attribute [rw] output_encryption_kms_key_id
2002
- # The Amazon Resource Name (ARN) of the AWS Key Management Service
2003
- # (KMS) key used to encrypt the output of the transcription job. The
2004
- # user calling the StartMedicalTranscriptionJob operation must have
2005
- # permission to use the specified KMS key.
3291
+ # The Amazon Resource Name (ARN) of the Amazon Web Services Key
3292
+ # Management Service (KMS) key used to encrypt the output of the
3293
+ # transcription job. The user calling the StartMedicalTranscriptionJob
3294
+ # operation must have permission to use the specified KMS key.
2006
3295
  #
2007
3296
  # You use either of the following to identify a KMS key in the current
2008
3297
  # account:
@@ -2092,6 +3381,7 @@ module Aws::TranscribeService
2092
3381
  # media_format: "mp3", # accepts mp3, mp4, wav, flac, ogg, amr, webm
2093
3382
  # media: { # required
2094
3383
  # media_file_uri: "Uri",
3384
+ # redacted_media_file_uri: "Uri",
2095
3385
  # },
2096
3386
  # output_bucket_name: "OutputBucketName",
2097
3387
  # output_key: "OutputKey",
@@ -2124,8 +3414,8 @@ module Aws::TranscribeService
2124
3414
  # @!attribute [rw] transcription_job_name
2125
3415
  # The name of the job. You can't use the strings "`.`" or "`..`"
2126
3416
  # by themselves as the job name. The name must also be unique within
2127
- # an AWS account. If you try to create a transcription job with the
2128
- # same name as a previous transcription job, you get a
3417
+ # an Amazon Web Services account. If you try to create a transcription
3418
+ # job with the same name as a previous transcription job, you get a
2129
3419
  # `ConflictException` error.
2130
3420
  # @return [String]
2131
3421
  #
@@ -2170,8 +3460,8 @@ module Aws::TranscribeService
2170
3460
  # Amazon Transcribe to put files in the bucket. For more information,
2171
3461
  # see [Permissions Required for IAM User Roles][1].
2172
3462
  #
2173
- # You can specify an AWS Key Management Service (KMS) key to encrypt
2174
- # the output of your transcription using the
3463
+ # You can specify an Amazon Web Services Key Management Service (KMS)
3464
+ # key to encrypt the output of your transcription using the
2175
3465
  # `OutputEncryptionKMSKeyId` parameter. If you don't specify a KMS
2176
3466
  # key, Amazon Transcribe uses the default Amazon S3 key for
2177
3467
  # server-side encryption of transcripts that are placed in your S3
@@ -2212,10 +3502,10 @@ module Aws::TranscribeService
2212
3502
  # @return [String]
2213
3503
  #
2214
3504
  # @!attribute [rw] output_encryption_kms_key_id
2215
- # The Amazon Resource Name (ARN) of the AWS Key Management Service
2216
- # (KMS) key used to encrypt the output of the transcription job. The
2217
- # user calling the `StartTranscriptionJob` operation must have
2218
- # permission to use the specified KMS key.
3505
+ # The Amazon Resource Name (ARN) of the Amazon Web Services Key
3506
+ # Management Service (KMS) key used to encrypt the output of the
3507
+ # transcription job. The user calling the `StartTranscriptionJob`
3508
+ # operation must have permission to use the specified KMS key.
2219
3509
  #
2220
3510
  # You can use either of the following to identify a KMS key in the
2221
3511
  # current account:
@@ -2276,6 +3566,10 @@ module Aws::TranscribeService
2276
3566
  # your collection of audio files. Automatic language identification
2277
3567
  # chooses a language that best matches the source audio from that
2278
3568
  # list.
3569
+ #
3570
+ # To transcribe speech in Modern Standard Arabic (ar-SA), your audio
3571
+ # or video file must be encoded at a sample rate of 16000 Hz or
3572
+ # higher.
2279
3573
  # @return [Array<String>]
2280
3574
  #
2281
3575
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartTranscriptionJobRequest AWS API Documentation
@@ -2342,6 +3636,79 @@ module Aws::TranscribeService
2342
3636
  include Aws::Structure
2343
3637
  end
2344
3638
 
3639
+ # Matches the output of the transcription to either the specific phrases
3640
+ # that you specify, or the intent of the phrases that you specify.
3641
+ #
3642
+ # @note When making an API call, you may pass TranscriptFilter
3643
+ # data as a hash:
3644
+ #
3645
+ # {
3646
+ # transcript_filter_type: "EXACT", # required, accepts EXACT
3647
+ # absolute_time_range: {
3648
+ # start_time: 1,
3649
+ # end_time: 1,
3650
+ # first: 1,
3651
+ # last: 1,
3652
+ # },
3653
+ # relative_time_range: {
3654
+ # start_percentage: 1,
3655
+ # end_percentage: 1,
3656
+ # first: 1,
3657
+ # last: 1,
3658
+ # },
3659
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
3660
+ # negate: false,
3661
+ # targets: ["NonEmptyString"], # required
3662
+ # }
3663
+ #
3664
+ # @!attribute [rw] transcript_filter_type
3665
+ # Matches the phrase to the transcription output in a word for word
3666
+ # fashion. For example, if you specify the phrase "I want to speak to
3667
+ # the manager." Amazon Transcribe attempts to match that specific
3668
+ # phrase to the transcription.
3669
+ # @return [String]
3670
+ #
3671
+ # @!attribute [rw] absolute_time_range
3672
+ # A time range, set in seconds, between two points in the call.
3673
+ # @return [Types::AbsoluteTimeRange]
3674
+ #
3675
+ # @!attribute [rw] relative_time_range
3676
+ # An object that allows percentages to specify the proportion of the
3677
+ # call where you would like to apply a filter. For example, you can
3678
+ # specify the first half of the call. You can also specify the period
3679
+ # of time between halfway through to three-quarters of the way through
3680
+ # the call. Because the length of conversation can vary between calls,
3681
+ # you can apply relative time ranges across all calls.
3682
+ # @return [Types::RelativeTimeRange]
3683
+ #
3684
+ # @!attribute [rw] participant_role
3685
+ # Determines whether the customer or the agent is speaking the phrases
3686
+ # that you've specified.
3687
+ # @return [String]
3688
+ #
3689
+ # @!attribute [rw] negate
3690
+ # If `TRUE`, the rule that you specify is applied to everything except
3691
+ # for the phrases that you specify.
3692
+ # @return [Boolean]
3693
+ #
3694
+ # @!attribute [rw] targets
3695
+ # The phrases that you're specifying for the transcript filter to
3696
+ # match.
3697
+ # @return [Array<String>]
3698
+ #
3699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/TranscriptFilter AWS API Documentation
3700
+ #
3701
+ class TranscriptFilter < Struct.new(
3702
+ :transcript_filter_type,
3703
+ :absolute_time_range,
3704
+ :relative_time_range,
3705
+ :participant_role,
3706
+ :negate,
3707
+ :targets)
3708
+ SENSITIVE = []
3709
+ include Aws::Structure
3710
+ end
3711
+
2345
3712
  # Describes an asynchronous transcription job that was created with the
2346
3713
  # `StartTranscriptionJob` operation.
2347
3714
  #
@@ -2575,6 +3942,121 @@ module Aws::TranscribeService
2575
3942
  include Aws::Structure
2576
3943
  end
2577
3944
 
3945
+ # @note When making an API call, you may pass UpdateCallAnalyticsCategoryRequest
3946
+ # data as a hash:
3947
+ #
3948
+ # {
3949
+ # category_name: "CategoryName", # required
3950
+ # rules: [ # required
3951
+ # {
3952
+ # non_talk_time_filter: {
3953
+ # threshold: 1,
3954
+ # absolute_time_range: {
3955
+ # start_time: 1,
3956
+ # end_time: 1,
3957
+ # first: 1,
3958
+ # last: 1,
3959
+ # },
3960
+ # relative_time_range: {
3961
+ # start_percentage: 1,
3962
+ # end_percentage: 1,
3963
+ # first: 1,
3964
+ # last: 1,
3965
+ # },
3966
+ # negate: false,
3967
+ # },
3968
+ # interruption_filter: {
3969
+ # threshold: 1,
3970
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
3971
+ # absolute_time_range: {
3972
+ # start_time: 1,
3973
+ # end_time: 1,
3974
+ # first: 1,
3975
+ # last: 1,
3976
+ # },
3977
+ # relative_time_range: {
3978
+ # start_percentage: 1,
3979
+ # end_percentage: 1,
3980
+ # first: 1,
3981
+ # last: 1,
3982
+ # },
3983
+ # negate: false,
3984
+ # },
3985
+ # transcript_filter: {
3986
+ # transcript_filter_type: "EXACT", # required, accepts EXACT
3987
+ # absolute_time_range: {
3988
+ # start_time: 1,
3989
+ # end_time: 1,
3990
+ # first: 1,
3991
+ # last: 1,
3992
+ # },
3993
+ # relative_time_range: {
3994
+ # start_percentage: 1,
3995
+ # end_percentage: 1,
3996
+ # first: 1,
3997
+ # last: 1,
3998
+ # },
3999
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
4000
+ # negate: false,
4001
+ # targets: ["NonEmptyString"], # required
4002
+ # },
4003
+ # sentiment_filter: {
4004
+ # sentiments: ["POSITIVE"], # required, accepts POSITIVE, NEGATIVE, NEUTRAL, MIXED
4005
+ # absolute_time_range: {
4006
+ # start_time: 1,
4007
+ # end_time: 1,
4008
+ # first: 1,
4009
+ # last: 1,
4010
+ # },
4011
+ # relative_time_range: {
4012
+ # start_percentage: 1,
4013
+ # end_percentage: 1,
4014
+ # first: 1,
4015
+ # last: 1,
4016
+ # },
4017
+ # participant_role: "AGENT", # accepts AGENT, CUSTOMER
4018
+ # negate: false,
4019
+ # },
4020
+ # },
4021
+ # ],
4022
+ # }
4023
+ #
4024
+ # @!attribute [rw] category_name
4025
+ # The name of the analytics category to update. The name is case
4026
+ # sensitive. If you try to update a call analytics category with the
4027
+ # same name as a previous category you will receive a
4028
+ # `ConflictException` error.
4029
+ # @return [String]
4030
+ #
4031
+ # @!attribute [rw] rules
4032
+ # The rules used for the updated analytics category. The rules that
4033
+ # you provide in this field replace the ones that are currently being
4034
+ # used.
4035
+ # @return [Array<Types::Rule>]
4036
+ #
4037
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateCallAnalyticsCategoryRequest AWS API Documentation
4038
+ #
4039
+ class UpdateCallAnalyticsCategoryRequest < Struct.new(
4040
+ :category_name,
4041
+ :rules)
4042
+ SENSITIVE = []
4043
+ include Aws::Structure
4044
+ end
4045
+
4046
+ # @!attribute [rw] category_properties
4047
+ # The attributes describing the analytics category. You can see
4048
+ # information such as the rules that you've used to update the
4049
+ # category and when the category was originally created.
4050
+ # @return [Types::CategoryProperties]
4051
+ #
4052
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateCallAnalyticsCategoryResponse AWS API Documentation
4053
+ #
4054
+ class UpdateCallAnalyticsCategoryResponse < Struct.new(
4055
+ :category_properties)
4056
+ SENSITIVE = []
4057
+ include Aws::Structure
4058
+ end
4059
+
2578
4060
  # @note When making an API call, you may pass UpdateMedicalVocabularyRequest
2579
4061
  # data as a hash:
2580
4062
  #
@@ -2598,9 +4080,9 @@ module Aws::TranscribeService
2598
4080
  #
2599
4081
  # @!attribute [rw] vocabulary_file_uri
2600
4082
  # The location in Amazon S3 of the text file that contains the you use
2601
- # for your custom vocabulary. The URI must be in the same AWS Region
2602
- # as the resource that you are calling. The following is the format
2603
- # for a URI:
4083
+ # for your custom vocabulary. The URI must be in the same Amazon Web
4084
+ # Services Region as the resource that you are calling. The following
4085
+ # is the format for a URI:
2604
4086
  #
2605
4087
  # `
2606
4088
  # https://s3.<aws-region>.amazonaws.com/<bucket-name>/<keyprefix>/<objectkey>
@@ -2618,8 +4100,8 @@ module Aws::TranscribeService
2618
4100
  #
2619
4101
  #
2620
4102
  #
2621
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
2622
- # [2]: http://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary
4103
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
4104
+ # [2]: https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary
2623
4105
  # @return [String]
2624
4106
  #
2625
4107
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateMedicalVocabularyRequest AWS API Documentation
@@ -2780,8 +4262,8 @@ module Aws::TranscribeService
2780
4262
  #
2781
4263
  #
2782
4264
  #
2783
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
2784
- # [2]: http://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary
4265
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys
4266
+ # [2]: https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary
2785
4267
  # @return [String]
2786
4268
  #
2787
4269
  # @see http://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateVocabularyRequest AWS API Documentation