/*
* 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-media-pipelines-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.ChimeSDKMediaPipelines.Model
{
///
/// A structure that contains the configuration settings for an Amazon Transcribe call
/// analytics processor.
///
public partial class AmazonTranscribeCallAnalyticsProcessorConfiguration
{
private List _callAnalyticsStreamCategories = new List();
private ContentType _contentIdentificationType;
private ContentType _contentRedactionType;
private bool? _enablePartialResultsStabilization;
private bool? _filterPartialResults;
private CallAnalyticsLanguageCode _languageCode;
private string _languageModelName;
private PartialResultsStability _partialResultsStability;
private string _piiEntityTypes;
private PostCallAnalyticsSettings _postCallAnalyticsSettings;
private VocabularyFilterMethod _vocabularyFilterMethod;
private string _vocabularyFilterName;
private string _vocabularyName;
///
/// Gets and sets the property CallAnalyticsStreamCategories.
///
/// By default, all CategoryEvents
are sent to the insights target. If this
/// parameter is specified, only included categories are sent to the insights target.
///
///
///
[AWSProperty(Min=1, Max=20)]
public List CallAnalyticsStreamCategories
{
get { return this._callAnalyticsStreamCategories; }
set { this._callAnalyticsStreamCategories = value; }
}
// Check to see if CallAnalyticsStreamCategories property is set
internal bool IsSetCallAnalyticsStreamCategories()
{
return this._callAnalyticsStreamCategories != null && this._callAnalyticsStreamCategories.Count > 0;
}
///
/// Gets and sets the property ContentIdentificationType.
///
/// Labels all personally identifiable information (PII) identified in your transcript.
///
///
///
/// Content identification is performed at the segment level; PII specified in PiiEntityTypes
/// is flagged upon complete transcription of an audio segment.
///
///
///
/// You can’t set ContentIdentificationType
and ContentRedactionType
/// in the same request. If you do, your request returns a BadRequestException
.
///
///
///
/// For more information, see Redacting
/// or identifying personally identifiable information in the Amazon Transcribe
/// Developer Guide.
///
///
public ContentType 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.
///
/// Redacts all personally identifiable information (PII) identified in your transcript.
///
///
///
/// Content redaction is performed at the segment level; PII specified in PiiEntityTypes
/// is redacted upon complete transcription of an audio segment.
///
///
///
/// You can’t set ContentRedactionType
and ContentIdentificationType
/// in the same request. If you do, your request returns a BadRequestException
.
///
///
///
/// For more information, see Redacting
/// or identifying personally identifiable information in the Amazon Transcribe
/// Developer Guide.
///
///
public ContentType 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. For more information,
/// see Partial-result
/// stabilization in the Amazon Transcribe Developer Guide.
///
///
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 FilterPartialResults.
///
/// If true, UtteranceEvents
with IsPartial: true
are filtered
/// out of the insights target.
///
///
public bool FilterPartialResults
{
get { return this._filterPartialResults.GetValueOrDefault(); }
set { this._filterPartialResults = value; }
}
// Check to see if FilterPartialResults property is set
internal bool IsSetFilterPartialResults()
{
return this._filterPartialResults.HasValue;
}
///
/// Gets and sets the property LanguageCode.
///
/// The language code in the configuration.
///
///
[AWSProperty(Required=true)]
public CallAnalyticsLanguageCode 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.
///
/// Specifies the name of the custom language model to use when processing a transcription.
/// Note that language model names are case sensitive.
///
///
///
/// The language of the specified language model must match the language code specified
/// in the transcription request. If the languages don't match, the custom language model
/// isn't applied. Language mismatches don't generate errors or warnings.
///
///
///
/// For more information, see Custom
/// language models in the Amazon Transcribe Developer Guide.
///
///
[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 PartialResultsStability.
///
/// Specifies 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.
///
///
///
/// For more information, see Partial-result
/// stabilization in the Amazon Transcribe Developer Guide.
///
///
public PartialResultsStability 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.
///
/// Specifies the types of personally identifiable information (PII) to redact from a
/// transcript. You can include as many types as you'd like, or you can select ALL
.
///
///
///
/// To include PiiEntityTypes
in your Call Analytics request, you must also
/// include ContentIdentificationType
or ContentRedactionType
,
/// but you can't include both.
///
///
///
/// 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
.
///
///
///
/// Length Constraints: Minimum length of 1. Maximum length of 300.
///
///
[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 PostCallAnalyticsSettings.
///
/// The settings for a post-call analysis task in an analytics configuration.
///
///
public PostCallAnalyticsSettings PostCallAnalyticsSettings
{
get { return this._postCallAnalyticsSettings; }
set { this._postCallAnalyticsSettings = value; }
}
// Check to see if PostCallAnalyticsSettings property is set
internal bool IsSetPostCallAnalyticsSettings()
{
return this._postCallAnalyticsSettings != null;
}
///
/// Gets and sets the property VocabularyFilterMethod.
///
/// Specifies how to apply a vocabulary filter to a transcript.
///
///
///
/// To replace words with ***, choose mask
.
///
///
///
/// To delete words, choose remove
.
///
///
///
/// To flag words without changing them, choose tag
.
///
///
public VocabularyFilterMethod 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.
///
/// Specifies the name of the custom vocabulary filter to use when processing a transcription.
/// Note that vocabulary filter names are case sensitive.
///
///
///
/// If the language of the specified custom vocabulary filter doesn't match the language
/// identified in your media, the vocabulary filter is not applied to your transcription.
///
///
///
/// For more information, see Using
/// vocabulary filtering with unwanted words in the Amazon Transcribe Developer
/// Guide.
///
///
///
/// Length Constraints: Minimum length of 1. Maximum length of 200.
///
///
[AWSProperty(Min=1, Max=200)]
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 VocabularyName.
///
/// Specifies the name of the custom vocabulary to use when processing a transcription.
/// Note that vocabulary names are case sensitive.
///
///
///
/// If the language of the specified custom vocabulary doesn't match the language identified
/// in your media, the custom vocabulary is not applied to your transcription.
///
///
///
/// For more information, see Custom
/// vocabularies in the Amazon Transcribe Developer Guide.
///
///
///
/// Length Constraints: Minimum length of 1. Maximum length of 200.
///
///
[AWSProperty(Min=1, Max=200)]
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;
}
}
}