/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the chime-sdk-meetings-2021-07-15.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ChimeSDKMeetings.Model
{
///
/// Settings specific for Amazon Transcribe as the live transcription engine.
///
///
///
/// If you specify an invalid combination of parameters, a TranscriptFailed
/// event will be sent with the contents of the BadRequestException
generated
/// by Amazon Transcribe. For more information on each parameter and which combinations
/// are valid, refer to the StartStreamTranscription
/// API in the Amazon Transcribe Developer Guide.
///
///
public partial class EngineTranscribeSettings
{
private TranscribeContentIdentificationType _contentIdentificationType;
private TranscribeContentRedactionType _contentRedactionType;
private bool? _enablePartialResultsStabilization;
private bool? _identifyLanguage;
private TranscribeLanguageCode _languageCode;
private string _languageModelName;
private string _languageOptions;
private TranscribePartialResultsStability _partialResultsStability;
private string _piiEntityTypes;
private TranscribeLanguageCode _preferredLanguage;
private TranscribeRegion _region;
private TranscribeVocabularyFilterMethod _vocabularyFilterMethod;
private string _vocabularyFilterName;
private string _vocabularyFilterNames;
private string _vocabularyName;
private string _vocabularyNames;
///
/// Gets and sets the property ContentIdentificationType.
///
/// Labels all personally identifiable information (PII) identified in your transcript.
/// If you don't include PiiEntityTypes
, all PII is identified.
///
///
///
/// You can’t set ContentIdentificationType
and ContentRedactionType
.
///
///
///
public TranscribeContentIdentificationType ContentIdentificationType
{
get { return this._contentIdentificationType; }
set { this._contentIdentificationType = value; }
}
// Check to see if ContentIdentificationType property is set
internal bool IsSetContentIdentificationType()
{
return this._contentIdentificationType != null;
}
///
/// Gets and sets the property ContentRedactionType.
///
/// Content redaction is performed at the segment level. If you don't include PiiEntityTypes
,
/// all PII is redacted.
///
///
///
/// You can’t set ContentRedactionType
and ContentIdentificationType
.
///
///
///
public TranscribeContentRedactionType ContentRedactionType
{
get { return this._contentRedactionType; }
set { this._contentRedactionType = value; }
}
// Check to see if ContentRedactionType property is set
internal bool IsSetContentRedactionType()
{
return this._contentRedactionType != null;
}
///
/// Gets and sets the property EnablePartialResultsStabilization.
///
/// Enables partial result stabilization for your transcription. Partial result stabilization
/// can reduce latency in your output, but may impact accuracy.
///
///
public bool EnablePartialResultsStabilization
{
get { return this._enablePartialResultsStabilization.GetValueOrDefault(); }
set { this._enablePartialResultsStabilization = value; }
}
// Check to see if EnablePartialResultsStabilization property is set
internal bool IsSetEnablePartialResultsStabilization()
{
return this._enablePartialResultsStabilization.HasValue;
}
///
/// Gets and sets the property IdentifyLanguage.
///
/// Enables automatic language identification for your transcription.
///
///
///
/// If you include IdentifyLanguage
, you can optionally use LanguageOptions
/// to include a list of language codes that you think may be present in your audio stream.
/// Including language options can improve transcription accuracy.
///
///
///
/// You can also use PreferredLanguage
to include a preferred language. Doing
/// so can help Amazon Transcribe identify the language faster.
///
///
///
/// You must include either LanguageCode
or IdentifyLanguage
.
///
///
///
/// Language identification can't be combined with custom language models or redaction.
///
///
public bool IdentifyLanguage
{
get { return this._identifyLanguage.GetValueOrDefault(); }
set { this._identifyLanguage = value; }
}
// Check to see if IdentifyLanguage property is set
internal bool IsSetIdentifyLanguage()
{
return this._identifyLanguage.HasValue;
}
///
/// Gets and sets the property LanguageCode.
///
/// Specify the language code that represents the language spoken.
///
///
///
/// If you're unsure of the language spoken in your audio, consider using IdentifyLanguage
/// to enable automatic language identification.
///
///
public TranscribeLanguageCode LanguageCode
{
get { return this._languageCode; }
set { this._languageCode = value; }
}
// Check to see if LanguageCode property is set
internal bool IsSetLanguageCode()
{
return this._languageCode != null;
}
///
/// Gets and sets the property LanguageModelName.
///
/// Specify the name of the custom language model that you want to use when processing
/// your transcription. Note that language model names are case sensitive.
///
///
///
/// The language of the specified language model must match the language code. If the
/// languages don't match, the custom language model isn't applied. There are no errors
/// or warnings associated with a language mismatch.
///
///
///
/// If you use Amazon Transcribe in multiple Regions, the custom language model must be
/// available in Amazon Transcribe in each Region.
///
///
[AWSProperty(Min=1, Max=200)]
public string LanguageModelName
{
get { return this._languageModelName; }
set { this._languageModelName = value; }
}
// Check to see if LanguageModelName property is set
internal bool IsSetLanguageModelName()
{
return this._languageModelName != null;
}
///
/// Gets and sets the property LanguageOptions.
///
/// Specify two or more language codes that represent the languages you think may be present
/// in your media; including more than five is not recommended. If you're unsure what
/// languages are present, do not include this parameter.
///
///
///
/// Including language options can improve the accuracy of language identification.
///
///
///
/// If you include LanguageOptions
, you must also include IdentifyLanguage
.
///
///
///
/// You can only include one language dialect per language. For example, you cannot include
/// en-US
and en-AU
.
///
///
///
[AWSProperty(Min=1, Max=200)]
public string LanguageOptions
{
get { return this._languageOptions; }
set { this._languageOptions = value; }
}
// Check to see if LanguageOptions property is set
internal bool IsSetLanguageOptions()
{
return this._languageOptions != null;
}
///
/// Gets and sets the property PartialResultsStability.
///
/// Specify the level of stability to use when you enable partial results stabilization
/// (EnablePartialResultsStabilization
).
///
///
///
/// Low stability provides the highest accuracy. High stability transcribes faster, but
/// with slightly lower accuracy.
///
///
public TranscribePartialResultsStability PartialResultsStability
{
get { return this._partialResultsStability; }
set { this._partialResultsStability = value; }
}
// Check to see if PartialResultsStability property is set
internal bool IsSetPartialResultsStability()
{
return this._partialResultsStability != null;
}
///
/// Gets and sets the property PiiEntityTypes.
///
/// Specify which types of personally identifiable information (PII) you want to redact
/// in your transcript. You can include as many types as you'd like, or you can select
/// ALL
.
///
///
///
/// Values must be comma-separated and can include: ADDRESS
, BANK_ACCOUNT_NUMBER
,
/// BANK_ROUTING
, CREDIT_DEBIT_CVV
, CREDIT_DEBIT_EXPIRY
/// CREDIT_DEBIT_NUMBER
, EMAIL
,NAME
, PHONE
,
/// PIN
, SSN
, or ALL
.
///
///
///
/// Note that if you include PiiEntityTypes
, you must also include ContentIdentificationType
/// or ContentRedactionType
.
///
///
///
/// If you include ContentRedactionType
or ContentIdentificationType
,
/// but do not include PiiEntityTypes, all PII is redacted or identified.
///
///
[AWSProperty(Min=1, Max=300)]
public string PiiEntityTypes
{
get { return this._piiEntityTypes; }
set { this._piiEntityTypes = value; }
}
// Check to see if PiiEntityTypes property is set
internal bool IsSetPiiEntityTypes()
{
return this._piiEntityTypes != null;
}
///
/// Gets and sets the property PreferredLanguage.
///
/// Specify a preferred language from the subset of languages codes you specified in LanguageOptions
.
///
///
///
/// You can only use this parameter if you include IdentifyLanguage
and LanguageOptions
.
///
///
public TranscribeLanguageCode PreferredLanguage
{
get { return this._preferredLanguage; }
set { this._preferredLanguage = value; }
}
// Check to see if PreferredLanguage property is set
internal bool IsSetPreferredLanguage()
{
return this._preferredLanguage != null;
}
///
/// Gets and sets the property Region.
///
/// The AWS Region in which to use Amazon Transcribe.
///
///
///
/// If you don't specify a Region, then the MediaRegion
/// of the meeting is used. However, if Amazon Transcribe is not available in the MediaRegion
,
/// then a TranscriptFailed
event is sent.
///
///
///
/// Use auto
to use Amazon Transcribe in a Region near the meeting’s MediaRegion
.
/// For more information, refer to Choosing
/// a transcription Region in the Amazon Chime SDK Developer Guide.
///
///
public TranscribeRegion Region
{
get { return this._region; }
set { this._region = value; }
}
// Check to see if Region property is set
internal bool IsSetRegion()
{
return this._region != null;
}
///
/// Gets and sets the property VocabularyFilterMethod.
///
/// Specify how you want your vocabulary filter applied to your transcript.
///
///
///
/// To replace words with ***
, choose mask
.
///
///
///
/// To delete words, choose remove
.
///
///
///
/// To flag words without changing them, choose tag
.
///
///
public TranscribeVocabularyFilterMethod VocabularyFilterMethod
{
get { return this._vocabularyFilterMethod; }
set { this._vocabularyFilterMethod = value; }
}
// Check to see if VocabularyFilterMethod property is set
internal bool IsSetVocabularyFilterMethod()
{
return this._vocabularyFilterMethod != null;
}
///
/// Gets and sets the property VocabularyFilterName.
///
/// Specify the name of the custom vocabulary filter that you want to use when processing
/// your transcription. Note that vocabulary filter names are case sensitive.
///
///
///
/// If you use Amazon Transcribe in multiple Regions, the vocabulary filter must be available
/// in Amazon Transcribe in each Region.
///
///
///
/// If you include IdentifyLanguage
and want to use one or more vocabulary
/// filters with your transcription, use the VocabularyFilterNames
parameter
/// instead.
///
///
[AWSProperty(Max=4096)]
public string VocabularyFilterName
{
get { return this._vocabularyFilterName; }
set { this._vocabularyFilterName = value; }
}
// Check to see if VocabularyFilterName property is set
internal bool IsSetVocabularyFilterName()
{
return this._vocabularyFilterName != null;
}
///
/// Gets and sets the property VocabularyFilterNames.
///
/// Specify the names of the custom vocabulary filters that you want to use when processing
/// your transcription. Note that vocabulary filter names are case sensitive.
///
///
///
/// If you use Amazon Transcribe in multiple Regions, the vocabulary filter must be available
/// in Amazon Transcribe in each Region.
///
///
///
/// If you're not including IdentifyLanguage
and want to use a custom
/// vocabulary filter with your transcription, use the VocabularyFilterName
/// parameter instead.
///
///
[AWSProperty(Min=1, Max=3000)]
public string VocabularyFilterNames
{
get { return this._vocabularyFilterNames; }
set { this._vocabularyFilterNames = value; }
}
// Check to see if VocabularyFilterNames property is set
internal bool IsSetVocabularyFilterNames()
{
return this._vocabularyFilterNames != null;
}
///
/// Gets and sets the property VocabularyName.
///
/// Specify the name of the custom vocabulary that you want to use when processing your
/// transcription. Note that vocabulary names are case sensitive.
///
///
///
/// If you use Amazon Transcribe multiple Regions, the vocabulary must be available in
/// Amazon Transcribe in each Region.
///
///
///
/// If you include IdentifyLanguage
and want to use one or more custom vocabularies
/// with your transcription, use the VocabularyNames
parameter instead.
///
///
[AWSProperty(Max=4096)]
public string VocabularyName
{
get { return this._vocabularyName; }
set { this._vocabularyName = value; }
}
// Check to see if VocabularyName property is set
internal bool IsSetVocabularyName()
{
return this._vocabularyName != null;
}
///
/// Gets and sets the property VocabularyNames.
///
/// Specify the names of the custom vocabularies that you want to use when processing
/// your transcription. Note that vocabulary names are case sensitive.
///
///
///
/// If you use Amazon Transcribe in multiple Regions, the vocabulary must be available
/// in Amazon Transcribe in each Region.
///
///
///
/// If you don't include IdentifyLanguage
and want to use a custom vocabulary
/// with your transcription, use the VocabularyName
parameter instead.
///
///
[AWSProperty(Min=1, Max=3000)]
public string VocabularyNames
{
get { return this._vocabularyNames; }
set { this._vocabularyNames = value; }
}
// Check to see if VocabularyNames property is set
internal bool IsSetVocabularyNames()
{
return this._vocabularyNames != null;
}
}
}