翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Connect Voice ID イベントスキーマ
Voice ID は、ウォッチリスト内の不正行為者の登録、認証、検出など、すべてのトランザクションについてイベントを生成します。イベントは EventBridge のデフォルトのイベントバスに送信されます。
EventBridge を使用して Voice ID イベントをモニタリングすることで、Voice ID 認証の結果からウォッチリスト内の不正行為者を検出する分析パイプラインを作成できます。このトピックで利用可能なスキーマを使用して、関連する Voice ID イベントをリッスンおよびフィルタリングするように EventBridge ルールを設定し、Amazon Data Firehose を介してそれらを処理して、選択したデータウェアハウスに保存できます。
例えば、Voice ID 分析をほぼリアルタイムにトラッキングしたい場合があります。そのためには、すべての Evaluate-Session
イベントを取得すれば、authenticationResult
および fraudDetectionResult
を取得できます。
イベントは、ベストエフォートベースで出力されます。
イベント内の共通フィールド
-
version
- イベントデータのバージョン。 -
id
- EventBridge によって生成されたイベントの一意の識別子。 -
detail-type
- イベントの詳細の識別子。 -
source
- イベントのソース。これは常にaws.voiceid
です。 -
account
- AWS アカウント ID。 -
timestamp
- イベントが発行された日時 (UTC)。 -
region
- API コールが行われた AWS リージョン。 -
resources
- API コールによって使用されたリソース。 -
detail
- イベントに関する詳細:-
detail.sourceId
- 重複除外に使用できる Voice ID によって生成された一意の ID。 -
detail.action
- 呼び出される API と同様です。 -
detail.status
- アクションのステータス (成功または失敗) を指定します。 -
detail.errorInfo
- 指定したアクションが Voice ID でエラーとなったときに入力されます。
-
以下は、発行されるイベントのスキーマです。
セッション開始アクション
ストリーム開始 (セットアップ後)、ストリーム終了、および障害時にイベントを発行します。
{...commonfields
"detail-type": "VoiceId Start Session Action",
"detail": {
"sourceId": String,
"action": "START_SESSION",
"status": String,
"domainId": String,
"session": {
"sessionId": String,
"sessionName": String,
"authenticationConfiguration": {
"acceptanceThreshold":Integer
},
"fraudDetectionConfiguration": {
"riskThreshold":Integer,
"watchlistId": String
},
"streamingConfiguration": {
"authenticationMinimumSpeechInSeconds": Integer
},
"enrollmentAudioProgress": {
"audioAggregationStatus": String,
"audioAggregationStartedAt": "Timestamp",
"audioAggregationEndedAt": "Timestamp"
},
"authenticationAudioProgress": {
"audioAggregationStartedAt": "Timestamp",
"audioAggregationEndedAt": "Timestamp"
},
"fraudDetectionAudioProgress": {
"audioAggregationStartedAt": "Timestamp",
"audioAggregationEndedAt": "Timestamp"
},
"generatedSpeakerId": String
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
セッション更新アクション
内部セッションの更新が成功または失敗したときにイベントを発行します。
{...commonfields
"detail-type": "VoiceId Update Session Action",
"detail": {
"sourceId": String,
"action": "UPDATE_SESSION",
"status": String,
"domainId": String,
"session": {
"sessionId": String,
"sessionName": String,
"authenticationConfiguration": {
"acceptanceThreshold": Integer
},
"fraudDetectionConfiguration": {
"riskThreshold": Integer,
"watchlistId": String
},
"streamingConfiguration": {
"authenticationMinimumSpeechInSeconds": Integer
},
"generatedSpeakerId": String
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
セッション評価アクション
セッション評価が成功または失敗したときにイベントを発行します。理由としては、KNOWN_FRAUDSTER または VOICE_SPOOFING があります。
{...commonfields
"detail-type": "VoiceId Evaluate Session Action",
"detail": {
"sourceId": String,
"action": "EVALUATE_SESSION",
"status": String,
"domainId": String,
"session": {
"sessionId": String,
"sessionName": String,
"generatedSpeakerId": String,
"streamingStatus": String,
"authenticationResult": {
"authenticationResultId": String,
"decision": String,
"score": Integer,
"audioAggregationStartedAt": "Timestamp",
"audioAggregationEndedAt": "Timestamp",
"configuration": {
"acceptanceThreshold": Integer
}
},
"fraudDetectionResult": {
"fraudDetectionResultId": String,
"decision": String,
"reasons": [String],
"audioAggregationStartedAt": "Timestamp",
"audioAggregationEndedAt": "Timestamp",
"configuration": {
"riskThreshold": Integer
},
"riskDetails": {
"knownFraudsterRisk": {
"generatedFraudsterId": String,
"riskScore": Integer,
"watchlistId": String
},
"voiceSpoofingRisk": {
"riskScore": Integer
}
}
}
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
発話者アクション
発話者のオプトアウト、発話者の削除、または発話者の登録が成功または失敗したときにイベントを発行します。
{...commonfields
"detail-type": "VoiceId Speaker Action",
"detail": {
"sourceId": String,
"domainID": String,
"action": String,
"status": String,
"generatedSpeakerId": String,
"data": {
"enrollmentSource": String,
"enrollmentSourceId": String,
"enrollmentStatus": String
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
不正行為者アクション
不正行為者が正常に登録または削除されると、イベントが送信されます。
不正行為者がウォッチリストに関連付けられたり、関連付けが解除されたりしても、イベントは送信されません。
{...commonfields
"detail-type": "VoiceId Fraudster Action",
"detail": {
"sourceId": String,
"domainID": String,
"action": String,
"status": String,
"generatedFraudsterId": String,
"watchlistIds": [String],
"data": {
"registrationSource": String,
"registrationSourceId": String,
"registrationStatus": String
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
EnrollBySession
登録リクエストが送信されたときにこのイベントを発行します。実際の登録が成功または失敗したときには Speaker
イベントが発行されます。
{...commonfields
"detail-type": "VoiceId Session Speaker Enrollment Action",
"detail": {
"sourceId": String,
"domainId": String,
"action": "SESSION_ENROLLMENT_REQUEST",
"status": String,
"sessionId": String,
"sessionName": String,
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
StartSpeakerEnrollmentJob
一括登録リクエストの送信、成功、または失敗の場合に、このイベントを発行します。Speaker
イベントは個々の発話者について発行され、対応する登録が成功したか失敗したかを示します。
{...commonfields
"detail-type": "VoiceID Batch Speaker Enrollment Action",
"detail": {
"sourceId": String,
"domainId": String,
"action": "BATCH_ENROLLMENT_REQUEST",
"status": String,
"batchJobId": String,
"data": {
"dataAccessRoleArn": String,
"enrollmentConfig": {
"existingEnrollmentAction": String,
"fraudDetectionConfig": {
"fraudDetectionAction": String,
"riskThreshold": Integer,
"watchlistIds": [String],
}
},
"inputDataConfig": {
"s3Uri": String
},
"outputDataConfig": {
"s3Uri": String,
"kmsKeyId": String
}
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}
StartFraudsterRegistrationJob
一括登録リクエストの送信、成功、または失敗の場合に、このイベントを発行します。Fraudster
イベントは個々の不正行為者について発行され、対応する登録が成功したか失敗したかを示します。
{...commonfields
"detail-type": "VoiceId Batch Fraudster Registration Action",
"detail": {
"sourceId": String,
"domainId": String,
"action": "BATCH_REGISTRATION_REQUEST",
"status": String,
"batchJobId": String,
"data": {
"dataAccessRoleArn": String,
"registrationConfig": {
"duplicateRegistrationAction": String,
"fraudsterSimilarityThreshold": Integer,
"watchlistIds": [String],
}
"inputDataConfig": {
"s3Uri": String
},
"outputDataConfig": {
"s3Uri": String,
"kmsKeyId": String
}
},
"errorInfo": {
"errorMessage": String,
"errorType": String,
"errorCode": Integer
}
}
}