本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon EventBridge 搭配 使用 Amazon Transcribe
使用 Amazon EventBridge,您可以透過在其他 中啟動事件來回應任務 Amazon Transcribe 中的狀態變更 AWS 服務。當轉錄任務變更狀態時, EventBridge 會自動將事件傳送至事件串流。您會建立規則以定義要在事件串流中監控的事件,以及發生這些事件時 EventBridge 應該採取的動作。例如,將事件路由到另一個服務 (或目標),此服務可接著採取動作。例如,您可以設定規則,在轉錄任務成功完成時將事件路由至 AWS Lambda 函數。若要定義EventBridge 規則,請參閱下列各節。
您可以透過多個管道接收事件的通知,包括電子郵件、聊天應用程式中的 Amazon Q Developer 聊天通知或AWS Console Mobile Application推播通知。您也可以在主控台通知中心
定義 EventBridge 規則
若要定義 EventBridge 規則,請使用 AWS 管理主控台
使用前 EventBridge,請注意下列定義:
-
事件–事件表示您其中一個轉錄作業的狀態變更。例如,工作的
TranscriptionJobStatus從IN_PROGRESS變更為COMPLETED。 -
目標-目標是處理事件的另一個 AWS 服務 。例如, AWS Lambda 或 Amazon Simple Notification Service (Amazon SNS)。目標會收到 JSON 格式的事件。
-
規則 – 規則符合您要 EventBridge 監看的傳入事件,並將其路由至目標或目標進行處理。如果規則將事件路由到多個目標,所有的目標都會平行處理事件。規則可自訂傳送到目標的 JSON。
Amazon EventBridge 事件會盡最大努力發出。如需在 中建立和管理事件的詳細資訊 EventBridge,請參閱Amazon EventBridge 《 使用者指南》中的Amazon EventBridge 事件。
以下是轉錄任務的狀態變更為 COMPLETED或 時 Amazon Transcribe 啟動的 EventBridge 規則範例FAILED。
{ "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–轉錄作業的新作業狀態。在這個範例中,規則會在工作狀態變更為COMPLETED或FAILED時啟動事件。
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:轉錄作業的狀態。此值可以為COMPLETED或FAILED。
語言識別事件
您啟用自動語言識別時, Amazon Transcribe 會在語言識別狀態為 COMPLETED 或 FAILED 時產生事件。若要識別變更狀態且在目標中啟動事件的工作,請使用該事件的 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:轉錄作業中語言識別的狀態。此值可以為COMPLETED或FAILED。
呼叫分析事件
通話分析工作狀態從 IN_PROGRESS 變更為 COMPLETED 或 FAILED 時, 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"), "FailureReason": "failure reason", // only present when JobStatus is FAILED "AnalyticsJobDetails": { // only when you enable optional features such as Generative Call Summarization "Skipped": [] } } }
-
JobName:通話分析轉錄作業的唯一名稱。 -
JobStatus:您的通話分析轉錄作業的狀態。可以是COMPLETED或FAILED。 -
FailureReason:只有在JobStatus為 時,才會出現此欄位FAILED,並說明失敗的原因。 -
AnalyticsJobDetails:通話分析轉錄任務的詳細資訊,包括略過的分析功能的相關資訊。
通話分析通話後事件
通話後分析轉錄狀態從 IN_PROGRESS 變更為 COMPLETED 或 FAILED 時, Amazon Transcribe 會產生事件。若要識別變更狀態且在目標中啟動事件的通話分析通話後工作,請使用該事件的 StreamingSessionId 欄位。
請注意,此事件僅適用於包含 PostCallAnalyticsSettings 參數時的 StartCallAnalyticsStreamTranscriptionAPI 操作。
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://amzn-s3-demo-bucket/my-output-files/my-redacted-file.JSON", "TranscriptFileUri": "s3://amzn-s3-demo-bucket/my-output-files/my-file.JSON" }, "Media": { "MediaFileUri": "s3://amzn-s3-demo-bucket/my-output-files/my-redacted-file.WAV", "RedactedMediaFileUri": "s3://amzn-s3-demo-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:通話後通話分析轉錄的狀態。可以是COMPLETED或FAILED。 -
Transcript:您修訂和未修訂的文字記錄的 URI。 -
Media:您修訂和未修訂的音訊檔案的 URI。
AWS HealthScribe 串流後分析事件
當 a AWS HealthScribe 串流後分析操作的狀態變更時,例如從 變更為 IN_PROGRESS 的 ClinicalNoteGenerationResultCOMPLETED, AWS HealthScribe 會產生包含下列資訊的事件:
{ "version":"0", "id":"event ID", "detail-type":"MedicalScribe Post Stream Analytics Update", "source":"aws.transcribe", "account":"111122223333", "time":"timestamp", "region":"us-east-1", "resources":[], "detail":{ "SessionId": <SessionID>, "UpdateType": "ClinicalNoteGenerationResult", "ClinicalNoteGenerationResult": { "ClinicalNoteOutputLocation": s3://amzn-s3-demo-bucket/clinical-note-output-files/clinical-notes.JSON, "TranscriptOutputLocation": s3://amzn-s3-demo-bucket/my-output-files/my-file.JSON, "Status": <IN_PROGRESS | COMPLETED | FAILED>, "FailureReason": <failure_reason> } } }
-
UpdateType:產生事件的串流後分析操作類型。結果物件的內容會根據 而有所不同UpdateType。 -
SessionId: AWS HealthScribe 串流的識別號碼。使用此 ID 來識別原始串流工作階段,然後尋找產生事件的串流後分析。 -
Status:串流後分析操作的狀態。此值可以為IN_PROGRESS、COMPLETED或FAILED。 -
ClinicalNoteOutputLocation: 輸出 Amazon S3 儲存貯體的 URIClinicalNoteGenerationResult。 -
TranscriptOutputLocation:文字記錄的 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:自訂詞彙的處理狀態。此值可以為READY或FAILED。