Amazon EventBridge 与一起使用 Amazon Transcribe - Amazon Transcribe

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon EventBridge 与一起使用 Amazon Transcribe

使用 Amazon EventBridge,您可以通过在其他任务中启动事件来响应 Amazon Transcribe 任务中的状态变化 AWS 服务。当转录作业改变状态时, EventBridge 会自动向事件流发送事件。您可以创建规则来定义希望在事件流中监控的事件以及在这些事件发生时 EventBridge 应采取的操作。例如,将事件路由到其他服务(或目标),然后再采取操作。例如,您可以配置一条规则,以便在转录作业成功完成后将事件路由到 AWS Lambda 函数。要定义 EventBridge 规则,请参阅以下各节。

可以通过多个渠道接收事件通知,包括电子邮件、AWS Chatbot聊天通知或AWS Console Mobile Application推送通知。还可以在控制台通知中心中查看通知。如果要设置通知,可以使用AWS 用户通知服务。 AWS 用户通知服务 支持聚合,这可以减少您在特定事件期间收到的通知数量。

定义 EventBridge 规则

要定义 EventBridge 规则,请使用AWS Management Console。在定义规则时,将 Amazon Transcribe 用作服务名称。有关如何创建 EventBridge 规则的示例,请参阅Amazon EventBridge 规则

使用前 EventBridge,请注意以下定义:

  • 事件–事件指示某个转录作业的状态发生更改。例如,当作业的 TranscriptionJobStatusIN_PROGRESS 更改为 COMPLETED 时。

  • 目标–目标是其它处理事件的 AWS 服务 。例如, AWS Lambda 或 Amazon Simple Notification Service (Amazon SNS)。目标接收 JSON 格式的事件。

  • 规则-规则匹配您 EventBridge 要监视的传入事件,并将它们路由到一个或多个目标进行处理。如果规则将一个事件路由到多个目标,则所有目标将并行处理该事件。规则可以自定义发送到目标的 JSON。

Amazon EventBridge 事件是在尽力而为的基础上发出的。有关在中创建和管理事件的更多信息 EventBridge,请参阅《Amazon EventBridge 用户指南》中的Amazon EventBridge 事件

以下是转录作业状态变 Amazon Transcribe 为COMPLETEDFAILED时启动的 EventBridge 规则示例。

{ "source": [ "aws.transcribe" ], "detail-type": [ "Transcribe Job State Change" ], "detail": { "TranscriptionJobStatus": [ "COMPLETED", "FAILED" ] } }

规则包含以下字段:

  • source–事件的来源。因为 Amazon Transcribe,永远如此aws.transcribe

  • detail-type–事件的详细信息的标识符。对于 Amazon Transcribe,这始终为 Transcribe Job State Change

  • detail–转录作业的新作业状态。在此示例中,规则将在作业状态变为 COMPLETEDFAILED 时触发事件。

Amazon Transcribe 事件

Amazon EventBridge 记录几个 Amazon Transcribe 事件:

这些事件都包含以下共享字段:

  • version:事件数据的版本。此值始终为 0

  • id:为事件生成的 EventBridge 唯一标识符。

  • detail-type:事件的详细信息的标识符。例如,Transcribe Job State Change

  • source:事件的来源。因为永远 Amazon Transcribe 如此aws.transcribe

  • account:生成 API 调用的账户的 AWS 账户 ID。

  • time:事件的交付日期和时间。

  • region: AWS 区域 在其中发出请求的。

  • resources:API 调用使用的资源。对于 Amazon Transcribe,此字段始终为空。

  • detail:有关事件的其它详细信息。

    • FailureReason:如果状态更改为 FAILED,则会显示此字段,并描述 FAILED 状态的原因。

    • 每种事件类型都有额外的唯一字段,显示在 detail 下面。每个事件示例之后会在以下部分中定义这些唯一字段。

转录作业事件

当作业的状态从变IN_PROGRESSCOMPLETED或时FAILED, Amazon Transcribe 会生成一个事件。要标识已更改状态并在您的目标中发起事件的作业,请使用事件的 TranscriptionJobName 字段。 Amazon Transcribe 事件包含以下信息。如果您的转录作业状态为 FAILED,则会在 detail 下添加一个 FailureReason 字段。

请注意,此事件仅适用于 StartTranscriptionJob API 操作。

{ "version": "0", "id": "event ID", "detail-type":"Transcribe Job State Change", "source": "aws.transcribe", "account": "111122223333", "time": "timestamp", "region": "us-west-2", "resources": [], "detail": { "TranscriptionJobName": "my-first-transcription-job", "TranscriptionJobStatus": "COMPLETED" (or "FAILED") } }
  • TranscriptionJobName:您为转录作业选择的唯一名称。

  • TranscriptionJobStatus :转录作业的状态。可以是 COMPLETEDFAILED

语言识别事件

启用自动语言识别时, Amazon Transcribe 会在语言识别状态为 COMPLETEDFAILED 时生成一个事件。要标识已更改状态并在您的目标中发起事件的作业,请使用事件的 JobName 字段。 Amazon Transcribe 事件包含以下信息。如果您的语言识别状态为 FAILED,则会在 detail 下添加一个 FailureReason 字段。

请注意,此事件仅适用于包含 LanguageIdSettings 参数时的 StartTranscriptionJob API 操作。

{ "version": "0", "id": "event ID", "detail-type": "Language Identification State Change", "source": "aws.transcribe", "account": "111122223333", "time": "timestamp", "region": "us-west-2", "resources": [], "detail": { "JobType": "TranscriptionJob", "JobName": "my-first-lang-id-job", "LanguageIdentificationStatus": "COMPLETED" (or "FAILED") } }
  • JobType:对于转录作业,此值必须为 TranscriptionJob

  • JobName: 您的转录作业的唯一名称。

  • LanguageIdentificationStatus:转录作业中语言识别的状态。可以是 COMPLETEDFAILED

呼叫分析事件

呼叫分析作业的状态从 IN_PROGRESS 更改为 COMPLETEDFAILED 时, Amazon Transcribe 会生成事件。要标识已更改状态并在您的目标中触发事件的呼叫分析作业,请使用事件的 JobName 字段。 Amazon Transcribe 事件包含以下信息。如果您的呼叫分析作业状态为 FAILED,则会在 detail 下添加一个 FailureReason 字段。

请注意,此事件仅适用于 StartCallAnalyticsJob API 操作。

{ "version": "0", "id": "event ID", "detail-type": "Call Analytics Job State Change", "source": "aws.transcribe", "account": "111122223333", "time": "timestamp", "region": "us-west-2", "resources": [], "detail": { "JobName": "my-first-analytics-job", "JobStatus": "COMPLETED" (or "FAILED"), "AnalyticsJobDetails": { // only when you enable optional features such as Generative Call Summarization "Skipped": [] } } }
  • JobName:您的呼叫分析转录作业的唯一名称。

  • JobStatus:您的呼叫分析转录作业的状态。此值可以是 COMPLETEDFAILED

  • AnalyticsJobDetails:您的 Call Analytics 转录作业的详细信息,包括有关跳过的分析功能的信息。

呼叫分析通话后事件

通话后分析转录的状态从 IN_PROGRESS 变为 COMPLETEDFAILED 时, Amazon Transcribe 会生成一个事件。要标识已更改状态并在您的目标中触发事件的呼叫分析通话后作业,请使用事件的 StreamingSessionId 字段。

请注意,此事件仅适用于包含 PostCallAnalyticsSettings 参数时的 StartCallAnalyticsStreamTranscription API 操作。

COMPLETED 事件包含以下信息:

{ "version": "0", "id": "event ID", "detail-type": "Call Analytics Post Call Job State Change", "source": "aws.transcribe", "account": "111122223333", "time": "timestamp", "region": "us-west-2", "resources": [], "detail": { "StreamingSessionId": "session-id", "PostCallStatus": "COMPLETED", "Transcript": { "RedactedTranscriptFileUri": "s3://DOC-EXAMPLE-BUCKET/my-output-files/my-redacted-file.JSON", "TranscriptFileUri": "s3://DOC-EXAMPLE-BUCKET/my-output-files/my-file.JSON" }, "Media": { "MediaFileUri": "s3://DOC-EXAMPLE-BUCKET/my-output-files/my-redacted-file.WAV", "RedactedMediaFileUri": "s3://DOC-EXAMPLE-BUCKET/my-output-files/my-redacted-file.WAV" } } }

FAILED 事件包含以下信息:

{ "version": "0", "id": "event ID", "detail-type": "Call Analytics Post Call Job State Change", "source": "aws.transcribe", "account": "111122223333", "time": "timestamp", "region": "us-west-2", "resources": [], "detail": { "StreamingSessionId": "session-id", "PostCallStatus": "FAILED" } }
  • StreamingSessionId:分配给您的实时呼叫分析转录请求的识别码。

  • PostCallStatus:您的通话后呼叫分析转录的状态。此值可以是 COMPLETEDFAILED

  • Transcript: 您已编辑和未编辑的转录的 URI。

  • Media: 您已编辑和未编辑的音频文件的 URI。

词汇表事件

自定义词汇的状态从变PENDINGREADY或时FAILED, Amazon Transcribe 会生成一个事件。要标识已更改状态并在您的目标中发起事件的自定义词汇表,请使用事件的 VocabularyName 字段。 Amazon Transcribe 事件包含以下信息。如果您的自定义词汇表状态为 FAILED,则会在 detail 下添加一个 FailureReason 字段。

请注意,此事件仅适用于 CreateVocabulary API 操作。

{ "version": "0", "id": "event ID", "detail-type": "Vocabulary State Change", "source": "aws.transcribe", "account": "111122223333", "time": "timestamp", "region": "us-west-2", "resources": [], "detail": { "VocabularyName": "unique-vocabulary-name", "VocabularyState": "READY" (or "FAILED") } }
  • VocabularyName: 您的自定义词汇表的唯一名称。

  • VocabularyState: 您的自定义词汇表的处理状态。可以是 READYFAILED