了解电话事件 - Amazon Chime SDK

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

了解电话事件

当呼叫期间发生某些事件时,音频服务会调用您的 AWS AWS Lambda 函数。以下示例显示了事件,并且示例后的文本对每个事件进行了解释。

{ "SchemaVersion": "1.0", "Sequence": 3, "InvocationEventType": "event-type", "CallDetails": { "TransactionId": "transaction-id-1", "AwsAccountId": "aws-acct-id-1", "AwsRegion": "us-east-1", "SipMediaApplicationId": "sip-media-app-id-1", "Participants": [ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", "To": "e164PhoneNumber", "From": "e164PhoneNumber", "Direction": "Inbound/Outbound", "StartTimeInMilliseconds": "1641998241509", "Status": "Connected/Disconnected" } ] } }
SchemaVersion

用于创建此事件对象的架构版本。

Sequence

调用您的 AWS Lambda 函数的事件序列。每次调用期间调用函数时,序列会递增。

InvocationEventType

触发 AWS Lambda 调用的事件类型。有关更多信息,请参阅本主题后面的事件类型

CallDetails

与调用关联的呼叫的 AWS Lambda 相关信息。

TransactionId

与调用关联的呼叫的 AWS Lambda ID。

AwsAccountId

与导致呼叫路由的 SIP 媒体应用程序关联的 AWS 账户 ID。

SipMediaApplicationId

与调用关联的 SIP 媒体应用程序的 ID。

Participants

有关调用函数的呼叫参与者的信息。 AWS AWS Lambda

CallId

分配给每个参与者的唯一 ID。

ParticipantTag

每个调用参与者会获得一个标签,LEG-ALEG-B

To

参与者的“收件人”电话号码,格式为 E.164。

From

参与者的“发件人”电话号码,格式为 E.164。

Direction

调用分支的来源方向。Inbound 表示对音频服务的调用。Outbound 表示从音频服务发起的调用。

StartTimeInMilliseconds

以毫秒为单位的纪元时间,从参与者加入调用时开始。

Status

参与者是 ConnectedDisconnected

事件类型

音频服务使用以下这些事件类型调用 Lambda 函数:

NEW_INBOUND_CALL

新调用由与您的 SIP 媒体应用程序关联的电话号码发起。

NEW_OUTBOUND_CALL

已通过 CreateSipMediaApplicationCallAPI 进行了新的出站呼叫。

ACTION_SUCCESSFUL

从您的 AWS Lambda 函数返回的操作已成功。成功的操作包括与成功操作相匹配的 ActionData

"ActionData": { // The previous successful action },
ACTION_FAILED

从您的 AWS Lambda 函数返回的操作未成功。不成功的操作包括与失败操作相匹配的 ActionData、错误类型以及描述失败的错误消息:

"ActionData": { // The previous unsuccessful action "ErrorType": "error-type", "ErrorMessage": "error message" },
ACTION_INTERRUPTED

运行过程中的操作被 UpdateSipMediaApplicationCallAPI 调用中断。ActionData 包括中断的操作:

"ActionData": { // The action that was interrupted },
HANGUP

用户或应用程序挂断调用分支。ActionData 包括有关该事件的以下详细信息:

"ActionData": { "Type": "Hangup", "Parameters": { "SipResponseCode": 486, "CallId": "c70f341a-adde-4406-9dea-1e01d34d033d", "ParticipantTag": "LEG-A" } },
Type

挂断

Parameters

有关 HANGUP 事件的信息。

  • SipResponseCode— 与事件关联的响应代码。最常见的代码是:

    • 0 — 正常清除

    • 480 — 无应答

    • 486 — 用户占线

  • CallId挂断电话的参与者的 ID。

  • ParticipantTag挂断的参与者的标签。

CALL_ANSWERED

音频服务已传入调用。除非呼叫已桥接,否则此事件会在拨出呼叫时返回。

INVALID_LAMBDA_RESPONSE

对上次 AWS Lambda 调用的响应导致了问题。ActionData 包括以下附加字段:

"ErrorType": "error-type-1", "ErrorMessage": "error-msg-1"
DIGITS_RECEIVED

应用程序在 ReceiveDigits 操作完成后收到 DTMF 位数。ActionData 包括收到的位数。

"ActionData": { "ReceivedDigits": ### // The ReceiveDigits action data },
CALL_UPDATE_REQUESTED

UpdateSipMediaApplicationCallAPI 已被调用。ActionData 包括有关更新请求的信息:

"ActionData": { "Type": "CallUpdateRequest", "Parameters": { "Arguments": { "leg": "LEG-A" } } }, }
RINGING

调用分支正在响铃