

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 了解 Amazon Chime SDK PSTN 音訊服務的電話語音事件
<a name="pstn-invocations"></a>

當通話期間發生特定事件時，Audio Service 會叫用您的 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 調用的事件類型。如需詳細資訊，請參閱本主題後面部分的 [Event types (事件類型)](#pstn-event-types)。

**CallDetails**  
與 AWS Lambda 調用相關聯的呼叫資訊。

**TransactionId**  
與 AWS Lambda 呼叫相關聯的呼叫 ID。

**AwsAccountId**  
與導致通話轉接的 SIP 媒體應用程式相關聯的 AWS 帳戶 ID。

**SipMediaApplicationId**  
與呼叫相關聯的 SIP 媒體應用程式的 ID。

**Participants**  
叫用 AWS AWS Lambda 函數之通話參與者的相關資訊。

**CallId**  
指派給每個參與者的唯一 ID。

**ParticipantTag**  
每個通話參與者都會取得標籤 `LEG-A`或 `LEG-B`。

**To**  
參與者「收件人」電話號碼，格式為 E.164。

**From**  
參與者「寄件人」電話號碼，格式為 E.164。

**Direction**  
呼叫腿的來源方向。 `Inbound`代表對音訊服務的呼叫。 `Outbound`代表從音訊服務發出的呼叫。

**StartTimeInMilliseconds**  
以毫秒為單位的 epoch 時間，從參與者加入通話開始。

**Status**  
參與者是 `Connected`還是 `Disconnected`

## Event types (事件類型)
<a name="pstn-event-types"></a>

Audio Service 會使用下列事件類型叫用 Lambda 函數：

**NEW\$1INBOUND\$1CALL**  
與您的 SIP 媒體應用程式相關聯的電話號碼已啟動新呼叫。

**NEW\$1OUTBOUND\$1CALL**  
已透過 [CreateSipMediaApplicationCall](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_CreateSipMediaApplicationCall.html) API 進行新的外撥通話。

**ACTION\$1SUCCESSFUL**  
從 AWS Lambda 函數傳回的動作已成功。成功的動作包括`ActionData`符合成功動作的動作。  

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

**ACTION\$1FAILED**  
從 AWS Lambda 函數傳回的動作未成功。不成功的動作包括與失敗動作`ActionData`相符的動作、錯誤類型，以及描述失敗的錯誤訊息：  

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

**ACTION\$1INTERRUPTED**  
執行過程中的動作被 [ UpdateSipMediaApplicationCall](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_UpdateSipMediaApplicationCall.html) 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\$1ANSWERED**  
Audio Service 已接聽來電。除非呼叫橋接，否則此事件會在撥出呼叫時傳回。

**INVALID\$1LAMBDA\$1RESPONSE**  
提供給上次調 AWS Lambda 用的回應會導致問題。`ActionData` 包含下列其他欄位：  

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

**DIGITS\$1RECEIVED**  
應用程式在`ReceiveDigits`動作完成後收到 DTMF 數字。`ActionData` 包含收到的數字。  

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

**CALL\$1UPDATE\$1REQUESTED**  
[UpdateSipMediaApplicationCall](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_UpdateSipMediaApplicationCall.html) API 已叫用。`ActionData` 包含更新請求的相關資訊：  

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

**RINGING**  
通話分支正在響鈴