

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

# 使用 Amazon Chime SDK PSTN 音訊服務結束通話
<a name="case-5"></a>

您可以使用 [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_CreateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_CreateSipMediaApplicationCall.html) API 來結束外撥通話。API 會叫用指定 **SIP 媒體應用程式 ID** 的端點。客戶可以透過將動作傳回 SIP 媒體應用程式來控制通話的流程。

如果成功回應，API 會傳回 202 http 狀態碼與 `transactionId`，您可以將其與 [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_UpdateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_UpdateSipMediaApplicationCall.html) API 搭配使用，以更新進行中的呼叫。

下圖顯示對傳出呼叫的 AWS Lambda 函數端點發出的呼叫。

![叫用 CreateSipMediaApplicationCall API 時的資料流程。當外撥通話的狀態變更時，API 會叫用不同的端點。](http://docs.aws.amazon.com/zh_tw/chime-sdk/latest/dg/images/sip-api-1.png)


針對 SIP 媒體應用程式設定的端點會針對撥出通話的不同狀態調用。當客戶和 呼叫時，Amazon Chime SDK 會使用`HANGUP`呼叫事件類型叫用端點。

此範例顯示 的典型調用事件`HANGUP`。

```
{
    "SchemaVersion": "1.0",
    "Sequence": {{6}},
    "InvocationEventType": "HANGUP",
    "ActionData": {
        "Type": "Hangup",
        "Parameters": {
            "CallId": "{{call-id-1}}",
            "ParticipantTag": "LEG-A"
        }
    },
    "CallDetails": {
        "TransactionId": "{{transaction-id}}",
        "AwsAccountId": "{{aws-account-id}}",
        "AwsRegion": "{{us-east-1}}",
        "SipRuleId": "{{sip-rule-id}}",
        "SipApplicationId": "{{sip-application-id}}",
        "Participants": [
            {
                "CallId": "{{call-id-1}}",
                "ParticipantTag": "LEG-A",
                "Direction": "Inbound",
                 "To": "{{+12065551212}}",
                "From": "{{+15105550101}}",
                "StartTimeInMilliseconds": "{{1597009588}}",
                "Status": "Disconnected"
            }
        ]
    }
}

// if LEG-B receives a hangup in a bridged call, such as a meeting ending
{
    "SchemaVersion": "1.0",
    "Sequence": {{6}},
    "InvocationEventType": "HANGUP",
    "ActionData": {
        "Type": "ReceiveDigits",
        "Parameters": {
            "CallId": "{{call-id-2}}",
            "ParticipantTag": "LEG-B"
        }
    },
    "CallDetails": {
        "TransactionId": "{{transaction-id}}",
        "AwsAccountId": "{{aws-account-id}}",
        "AwsRegion": "{{us-east-1}}",
        "SipRuleId": "{{sip-rule-id}}",
        "SipApplicationId": "{{sip-application-id}}",
        "Participants": [
            {
                "CallId": "{{call-id-1}}",
                "ParticipantTag": "Leg-A",
                 "To": "{{+12065551212}}",
                "From": "{{+15105550101}}",
                "Direction": "Inbound",
                "StartTimeInMilliseconds": "{{1597009588}}",
                "Status": "Connected"
            },
            {
                "CallId": "{{call-id-2}}",
                "ParticipantTag": "Leg-B",
                "To": "{{+17035550122}}",
                "From": "SMA",
                "Direction": "Outbound",
                "StartTimeInMilliseconds": "{{15010595}}",
                "Status": "Disconnected"
            }
        ]
    }
}
```