了解 Amazon Chime SDK PSTN 音频服务的电话事件 - Amazon Chime SDK

了解 Amazon Chime SDK PSTN 音频服务的电话事件

当调用期间发生某些事件时,音频服务会调用您的 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

通过 CreateSipMediaApplicationCall API 进行新的出站调用。

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

正在运行的操作被 UpdateSipMediaApplicationCall API 调用中断。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

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

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

调用分支正在响铃