

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan header SIP di layanan audio Amazon Chime SDK PTSN
<a name="sip-headers"></a>

Anda sekarang dapat mengirim dan menerima User-To-User header, header Diversion, dan header SIP khusus dalam AWS Lambda fungsi Anda ketika Anda ingin bertukar informasi konteks panggilan dengan infrastruktur SIP Anda. 
+ Header User-to-User (UUI) dapat digunakan untuk mengirim data kontrol panggilan. Data ini dimasukkan oleh aplikasi yang memulai sesi dan digunakan oleh aplikasi yang menerima sesi. Ini tidak digunakan untuk fungsi SIP dasar apa pun. Misalnya, Anda dapat menggunakan header UUI di pusat panggilan untuk menyampaikan informasi antar agen tentang panggilan.
+ Header Diversion digunakan untuk menunjukkan dari mana panggilan dialihkan dan mengapa. Anda dapat menggunakan header ini untuk melihat informasi pengalihan dari agen SIP lain, atau meneruskannya.
+ Header SIP Kustom memungkinkan Anda menyampaikan informasi lain yang Anda inginkan. Misalnya, jika Anda ingin meneruskan id akun, Anda dapat membuat header X yang disebut “X-Account-Id” dan menambahkan informasi ini.

Anda harus mengawali header SIP kustom Anda dengan. `x-` Header diekspos dalam AWS Lambda fungsi dan diterima sebagai bagian dari `NEW_INBOUND_CALL` acara selama panggilan masuk. Anda juga dapat menyertakan header ini di kaki panggilan keluar saat memicu tindakan atau [CallAndBridge](call-and-bridge.md) [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html)API.

`Participants`Bagian dari fungsi Lambda berisi bidang. `SipHeaders` Bidang ini tersedia saat Anda menerima header khusus, atau saat Anda mengisi `User-to-User` atau `Diversion` header.

Contoh ini menunjukkan respons yang diharapkan ketika pemanggilan AWS Lambda berisi header SIP.

```
{
    "SchemaVersion": "1.0",
    "Sequence": 3,
    "InvocationEventType": "ACTION_SUCCESSFUL",
    "ActionData": {
        "Type":"actionType",
        "Parameters":{
            // Parameters vary by actionType
        }
    },
    "CallDetails":{
        .....
        .....
        "Participants":[
            {
                "CallId": "call-id-1",
                "ParticipantTag": "LEG-A",
                ..... 
                "Status": "Connected"
                "SipHeaders": {
                    "X-Test-Value": "String",
                    "User-to-User": "616d617a6f6e5f6368696d655f636f6e6e6563745f696e746567726174696f6e;encoding=hex",
                    "Diversion": "sip:+11234567891@public.test.com;reason=unconditional"
                }
            },
            {
            "CallId": "call-id-2",
            "ParticipantTag": "LEG-B",
            .....
            "Status": "Connected"
            }
        ]
    }
}
```

Contoh berikut menunjukkan [CallAndBridge](call-and-bridge.md) tindakan yang berhasil, karena entri yang tidak valid untuk parameter. `SipHeaders` 

```
{
    "SchemaVersion": "1.0",
    "Actions":[
        {
            "Type": "CallAndBridge",
            "Parameters":{
            "CallTimeoutSeconds": 30,
            "CallerIdNumber": "e164PhoneNumber", // required
            "RingbackTone": { // optional
                "Type": "S3",
                "BucketName": "s3_bucket_name",
                "Key": "audio_file_name"
            },
            "Endpoints":[
               {
                    "Uri":"e164PhoneNumber", // required
                    "BridgeEndpointType":"PSTN" // required
               }
            ],
            "SipHeaders": {
                "X-Test-Value": "String",
                "User-to-User": "616d617a6f6e5f6368696d655f636f6e6e6563745f696e746567726174696f6e;encoding=hex",
                "Diversion": "sip:+11234567891@public.test.com;reason=unconditional"
            }
         }
      }
   ]
}
```

Contoh berikut menunjukkan [CallAndBridge](call-and-bridge.md) tindakan gagal yang disebabkan oleh parameter yang tidak valid`SipHeaders`.

```
{
    "SchemaVersion":"1.0",
    "Sequence":3,
    "InvocationEventType":"ACTION_FAILED",
    "ActionData":{
        "Type":"actionType",
        "Parameters":{
            // Parameters vary by Action Type
            "SipHeaders": {
                "X-AMZN": "String",
                "User-to-User": "616d617a6f6e5f6368696d655f636f6e6e6563745f696e746567726174696f6e;encoding=hex",
                "Diversion": "sip:+11234567891@public.test.com;reason=unconditional"
             },
        },
        "ErrorType": "InvalidActionParameter",
        "ErrorMessage": "Invalid SIP header(s) provided: X-AMZN"
   },
   "CallDetails":{
      .....
      "Participants":[
         {
            "CallId":"call-id-1",
            "ParticipantTag":"LEG-A",
            .....   
            "Status":"Connected"
         },
         {
            "CallId":"call-id-2",
            "ParticipantTag":"LEG-B",
            .....
            "Status":"Connected"
         }
      ]
   }
}
```

## Menggunakan SipHeaders bidang
<a name="custom-headers"></a>

Saat Anda memicu [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html)API, `SipHeaders` bidang opsional memungkinkan Anda untuk meneruskan header SIP khusus ke leg panggilan keluar. Kunci header yang valid harus menyertakan salah satu dari yang berikut: 
+ `x-`Awalan
+ `User-to-User`Header
+ `Diversion`Header

`X-AMZN`adalah header yang dicadangkan. Jika Anda menggunakan header ini dalam panggilan API, itu akan gagal. Header dapat memiliki panjang maksimum 2048 karakter. 

Contoh berikut menunjukkan tipikal [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html)API di antarmuka baris perintah dengan parameter opsional`SipHeaders`.

```
create-sip-media-application-call
    --from-phone-number value // (string)
    --to-phone-number value // (string)
    --sip-media-application-id value // (string)
    --sip-headers // (map)
```

Untuk informasi lebih lanjut, lihat [Mekanisme untuk Mengangkut Informasi Kontrol User-to-User Panggilan di SIP](https://datatracker.ietf.org/doc/html/rfc7433) dan [Indikasi Pengalihan di](https://datatracker.ietf.org/doc/html/rfc5806) SIP.