

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

# Mengirim dan menerima pesan AS2
<a name="send-as2-messages"></a>

Bagian ini menjelaskan proses untuk mengirim dan menerima pesan AS2. Ini juga memberikan rincian tentang nama file dan lokasi yang terkait dengan pesan AS2.

Tabel berikut mencantumkan algoritma enkripsi yang tersedia untuk pesan AS2, dan kapan Anda dapat menggunakannya.


| Enkripsi algoritme | HTTP | HTTPS | Catatan | 
| --- |--- |--- |--- |
| AES128\_CBC | Ya | Ya |  | 
| AES192\_CBC | Ya | Ya |  | 
| AES256\_CBC | Ya | Ya |  | 
| DES\_EDE3\_CBC | Ya | Ya | Hanya gunakan algoritma ini jika Anda harus mendukung klien lama yang membutuhkannya, karena ini adalah algoritma enkripsi yang lemah. | 
| NONE | Tidak | Ya | Jika Anda mengirim pesan ke server Transfer Family, Anda hanya dapat memilih NONE apakah Anda menggunakan Application Load Balancer (ALB). | 

**Topics**
+ [Menerima proses pesan AS2](#as2-inbound-process)
+ [Mengirim dan menerima pesan AS2 melalui HTTPS](#as2-https-process)
+ [Mentransfer file dengan menggunakan konektor AS2](#transfer-as2-connectors)
+ [Nama dan lokasi file](#file-names-as2)
+ [Kode status](#status-codes)
+ [Contoh file JSON](#file-as2-json)

## Menerima proses pesan AS2
<a name="as2-inbound-process"></a>

Proses inbound didefinisikan sebagai pesan atau file yang sedang ditransfer ke AWS Transfer Family server Anda. Urutan pesan masuk adalah sebagai berikut:

1. Admin atau proses otomatis memulai transfer file AS2 di server AS2 jarak jauh mitra.

1. Server AS2 jarak jauh mitra menandatangani dan mengenkripsi konten file, lalu mengirimkan permintaan HTTP POST ke titik akhir masuk AS2 yang dihosting di Transfer Family.

1. Menggunakan nilai yang dikonfigurasi untuk server, mitra, sertifikat, dan perjanjian, Transfer Family mendekripsi dan memverifikasi payload AS2. Isi file disimpan di toko file Amazon S3 yang dikonfigurasi.

1. Respons MDN yang ditandatangani dikembalikan baik sebaris dengan respons HTTP, atau secara asinkron melalui permintaan HTTP POST terpisah kembali ke server asal.

1. Jejak audit ditulis ke Amazon CloudWatch dengan rincian tentang pertukaran.

1. File yang didekripsi tersedia dalam folder bernama. `inbox/processed`

![Diagram yang menunjukkan urutan pemrosesan untuk pesan masuk.](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/as2-architecture-inbound.png)


## Mengirim dan menerima pesan AS2 melalui HTTPS
<a name="as2-https-process"></a>

Bagian ini menjelaskan cara mengonfigurasi server Transfer Family yang menggunakan protokol AS2 untuk mengirim dan menerima pesan melalui HTTPS.

**Topics**
+ [Kirim pesan AS2 melalui HTTPS](#send-https)
+ [Terima pesan AS2 melalui HTTPS](#receive-https)

### Kirim pesan AS2 melalui HTTPS
<a name="send-https"></a>

Untuk mengirim pesan AS2 menggunakan HTTPS, buat konektor dengan informasi berikut:
+ Untuk URL, tentukan URL HTTPS
+ Untuk algoritma enkripsi, pilih salah satu algoritma yang tersedia.
**catatan**  
 Untuk mengirim pesan ke server Transfer Family saat tidak menggunakan enkripsi (yaitu, Anda memilih `NONE` algoritma enkripsi), Anda harus menggunakan Application Load Balancer (ALB).
+ Berikan nilai yang tersisa untuk konektor seperti yang dijelaskan dalam[Konfigurasikan konektor AS2](configure-as2-connector.md).

### Terima pesan AS2 melalui HTTPS
<a name="receive-https"></a>

 AWS Transfer Family Server AS2 saat ini hanya menyediakan transportasi HTTP melalui port 5080. Namun, Anda dapat menghentikan TLS pada penyeimbang beban jaringan atau aplikasi di depan titik akhir VPC server Transfer Family Anda dengan menggunakan port dan sertifikat pilihan Anda. Dengan pendekatan ini, Anda dapat memiliki pesan AS2 yang masuk menggunakan HTTPS.

**Prasyarat**
+ VPC harus sama AWS Region dengan server Transfer Family Anda.
+ Subnet VPC Anda harus berada dalam Availability Zones tempat Anda ingin menggunakan server Anda.
**catatan**  
Setiap server Transfer Family dapat mendukung hingga tiga Availability Zone.
+ Alokasikan hingga tiga alamat IP Elastis di Wilayah yang sama dengan server Anda. Atau, Anda dapat memilih untuk membawa rentang alamat IP Anda sendiri (BYOIP).
**catatan**  
Jumlah alamat IP Elastis harus sesuai dengan jumlah Availability Zone yang Anda gunakan dengan endpoint server Anda.

Anda dapat mengonfigurasi Network Load Balance (NLB) atau Application Load Balancer (ALB). Tabel berikut mencantumkan pro dan kontra untuk setiap pendekatan.

Tabel di bawah ini memberikan perbedaan kemampuan saat Anda menggunakan NLB versus ALB untuk mengakhiri TLS.


| Fitur | Network Load Balancer (NLB) | Application Load Balancer (ALB) | 
| --- | --- | --- | 
| Latensi | Latensi yang lebih rendah karena beroperasi pada lapisan jaringan. | Latensi yang lebih tinggi karena beroperasi pada lapisan aplikasi. | 
| Dukungan IP statis | Dapat melampirkan alamat IP Elastis yang bisa statis. | Tidak dapat melampirkan alamat IP Elastis: menyediakan domain yang alamat IP dasarnya dapat berubah. | 
| Perutean lanjutan | Tidak mendukung perutean lanjutan. | Mendukung perutean lanjutan. Dapat menyuntikkan `X-Forwarded-Proto` header yang diperlukan untuk AS2 tanpa enkripsi.<br />Header ini dijelaskan di situs [X-Forwarded-Proto](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto)web [developer.mozilla.org.](https://developer.mozilla.org/) | 
| TLS/SSL pemutusan | Mendukung TLS/SSL penghentian | Mendukung TLS/SSL penghentian | 
| TLS Bersama (mTLS) | Transfer Family saat ini tidak mendukung penggunaan NLB untuk mTL | Support untuk mTLS | 

------
#### [ Configure NLB ]

Prosedur ini menjelaskan cara mengatur Network Load Balancer (NLB) yang menghadap ke internet di VPC Anda.<a name="create-nlb-AS2"></a>

**Untuk membuat Network Load Balancer dan mendefinisikan titik akhir VPC server sebagai target penyeimbang beban**

1. Buka konsol Amazon Elastic Compute Cloud di [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dari panel navigasi, pilih **Load Balancers, lalu pilih **Create** load balancer**.

1. Di bawah **Penyeimbang Beban Jaringan**, pilih **Buat**.

1. Di bagian **Konfigurasi dasar**, masukkan informasi berikut:
   + Untuk **Nama**, masukkan nama deskriptif untuk penyeimbang beban.
   + Untuk **Skema**, pilih **Internet-facing**.
   + Untuk **jenis alamat IP**, pilih **IPv4**.

1. Di bagian **Pemetaan jaringan**, masukkan informasi berikut:
   + Untuk **VPC**, pilih virtual private cloud (VPC) yang Anda buat.
   + Di bawah **Pemetaan**, pilih Availability Zones yang terkait dengan subnet publik yang tersedia di VPC yang sama yang Anda gunakan dengan endpoint server Anda.
   + Untuk **alamat IPv4** dari setiap subnet, pilih salah satu alamat IP elastis yang Anda alokasikan.

1. Di bagian **Pendengar dan perutean**, masukkan informasi berikut:
   + Untuk **Protokol**, pilih **TLS.**
   + Untuk **Port**, masukkan **5080**.
   + Untuk **tindakan Default**, pilih **Buat grup target**. Untuk detail pembuatan grup target baru, lihat[Untuk membuat grup target](#create-target-group).

   Setelah Anda membuat grup target, masukkan namanya di bidang **Tindakan default**.

1. Di bagian **Pengaturan pendengar aman**, pilih sertifikat Anda di area ** SSL/TLS sertifikat default**.

1. Pilih **Buat penyeimbang beban** untuk membuat NLB Anda.

1. (Opsional, tetapi disarankan) Aktifkan log akses untuk Network Load Balancer untuk mempertahankan jejak audit penuh, seperti yang dijelaskan dalam [log Access untuk Network Load Balancer Anda](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-access-logs.html).

   Kami merekomendasikan langkah ini karena koneksi TLS dihentikan di NLB. Oleh karena itu, alamat IP sumber yang tercermin dalam grup CloudWatch log Transfer Family AS2 Anda adalah alamat IP pribadi NLB, bukan alamat IP eksternal mitra dagang Anda.

------
#### [ Configure ALB ]

Prosedur ini menjelaskan cara menyiapkan Application Load Balancer (ALB) di VPC Anda.<a name="create-alb-AS2"></a>

**Untuk membuat Application Load Balancer dan mendefinisikan titik akhir VPC server sebagai target penyeimbang beban**

1. Buka konsol Amazon Elastic Compute Cloud di [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dari panel navigasi, pilih **Load Balancers, lalu pilih **Create** load balancer**.

1. **Di bawah **Application Load Balancer**, pilih Buat.**

1. Di konsol ALB, buat pendengar HTTP baru di port 443 (HTTPS).

1. (Opsional). Jika Anda ingin mengatur otentikasi timbal balik (mTL), konfigurasikan pengaturan keamanan dan toko kepercayaan.

   1. Lampirkan SSL/TLS sertifikat Anda ke pendengar.

   1. Di bawah **penanganan sertifikat Klien**, pilih **Mutual Authentication (mTLS**).

   1. Pilih **Verifikasi dengan toko kepercayaan**.

   1. Di bawah **pengaturan mTLS tingkat lanjut**, pilih atau buat toko kepercayaan dengan mengunggah sertifikat CA Anda.

1. Buat grup target baru dan tambahkan alamat IP pribadi titik akhir server Transfer Family AS2 Anda sebagai target pada port 5080. Untuk detail pembuatan grup target baru, lihat[Untuk membuat grup target](#create-target-group).

1. Konfigurasikan pemeriksaan kesehatan untuk kelompok target untuk menggunakan protokol HTTP pada port 5080.

1. Buat aturan baru untuk meneruskan lalu lintas HTTPS dari pendengar ke grup target.

1. Konfigurasikan listener untuk menggunakan SSL/TLS sertifikat Anda.

------

Setelah Anda mengatur penyeimbang beban, klien berkomunikasi dengan penyeimbang beban melalui pendengar port kustom. Kemudian, penyeimbang beban berkomunikasi dengan server melalui port 5080.<a name="create-target-group"></a>

**Untuk membuat grup target**

1. Setelah Anda memilih **Buat grup target** dalam prosedur sebelumnya, Anda akan dibawa ke halaman **Tentukan rincian grup** untuk grup target baru.

1.  Di bagian **Konfigurasi dasar**, masukkan informasi berikut.
   + Untuk **Pilih jenis target**, pilih **alamat IP**.
   + Untuk **Name**, masukkan nama untuk grup target.
   + Untuk **Protokol**, pilihan Anda tergantung pada apakah Anda menggunakan ALB atau NLB.
     + **Untuk Network Load Balancer (NLB), pilih TCP**
     + **Untuk Application Load Balancer (ALB), pilih HTTP**
   + Untuk **Port**, masukkan **5080**. 
   + Untuk jenis **alamat IP**, pilih **IPv4**.
   + Untuk **VPC, pilih VPC** yang Anda buat untuk server Transfer Family AS2 Anda.

1. <a name="vpc-register-targets"></a>Di bagian **Pemeriksaan Kesehatan**, pilih **protokol Pemeriksaan Kesehatan**.
   + **Untuk ALB, pilih HTTP**
   + **Untuk NLB, pilih TCP**

1. <a name="vpc-add-to-list"></a>Pilih **Berikutnya**.

1. Pada halaman **Daftar target**, masukkan informasi berikut:
   + Untuk **Jaringan**, konfirmasikan bahwa VPC yang Anda buat untuk server Transfer Family AS2 Anda ditentukan.
   + Untuk alamat **IPv4, masukkan alamat** IPv4 pribadi dari endpoint server Transfer Family AS2 Anda.

      Jika Anda memiliki lebih dari satu titik akhir untuk server Anda, pilih **Tambahkan alamat IPv4 untuk menambahkan baris lain untuk memasukkan alamat** IPv4 lain. Ulangi proses ini sampai Anda memasukkan alamat IP pribadi untuk semua titik akhir server Anda.
   + Pastikan bahwa **Port** diatur ke**5080**.
   + Pilih **Sertakan sebagai tertunda di bawah ini** untuk menambahkan entri Anda ke bagian **Tinjau target**.

1. Di bagian **Tinjau target**, tinjau target IP Anda.

1. Pilih **Buat grup target**, lalu kembali ke prosedur sebelumnya untuk membuat NLB Anda dan masukkan grup target baru di mana ditunjukkan.

**Uji akses ke server dari alamat IP Elastis**

Connect ke server melalui port kustom dengan menggunakan alamat IP Elastis atau nama DNS Network Load Balancer.

**penting**  
Kelola akses ke server Anda dari alamat IP klien dengan menggunakan [daftar kontrol akses jaringan (ACL jaringan)](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) untuk subnet yang dikonfigurasi pada penyeimbang beban. Izin ACL jaringan ditetapkan pada tingkat subnet, sehingga aturan berlaku untuk semua sumber daya yang menggunakan subnet. Anda tidak dapat mengontrol akses dari alamat IP klien dengan menggunakan grup keamanan, karena jenis target penyeimbang beban disetel ke **alamat IP**, bukan **Instans**. Oleh karena itu, penyeimbang beban tidak mempertahankan alamat IP sumber. Jika [pemeriksaan kesehatan Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-health-checks.html) gagal, ini berarti penyeimbang beban tidak dapat terhubung ke titik akhir server. Untuk memecahkan masalah ini, periksa hal berikut:  
Konfirmasikan bahwa [grup keamanan terkait titik akhir](https://aws.amazon.com/premiumsupport/knowledge-center/sftp-enable-elastic-ip-custom-port/) server memungkinkan koneksi masuk dari subnet yang dikonfigurasi pada penyeimbang beban. Load balancer harus dapat terhubung ke endpoint server melalui port 5080.
Konfirmasikan bahwa **Status** server sedang **Online**.

## Mentransfer file dengan menggunakan konektor AS2
<a name="transfer-as2-connectors"></a>

Konektor AS2 membangun hubungan antara mitra dagang untuk transfer pesan AS2 dari server Transfer Family ke tujuan eksternal milik mitra.

Anda dapat menggunakan Transfer Family untuk mengirim pesan AS2 dengan mereferensikan ID konektor dan jalur ke file, seperti yang diilustrasikan dalam perintah `start-file-transfer` AWS Command Line Interface ()AWS CLI berikut:

```
aws transfer start-file-transfer --connector-id c-{{1234567890abcdef0}} \
--send-file-paths "/amzn-s3-demo-source-bucket{{/myfile1.txt}}" "/amzn-s3-demo-source-bucket{{/myfile2.txt}}"
```

Untuk mendapatkan detail konektor Anda, jalankan perintah berikut:

```
aws transfer list-connectors
```

`list-connectors`Perintah mengembalikan ID konektor, URL, dan Nama Sumber Daya Amazon (ARN) untuk konektor Anda.

Untuk mengembalikan properti konektor tertentu, jalankan perintah berikut dengan ID yang ingin Anda gunakan:

```
aws transfer describe-connector --connector-id {{your-connector-id}}
```

`describe-connector`Perintah mengembalikan semua properti untuk konektor, termasuk URL, peran, profil, Pemberitahuan Disposisi Pesan (mDNS), tag, dan metrik pemantauan.

Anda dapat mengonfirmasi bahwa mitra berhasil menerima file dengan melihat file JSON dan MDN. File-file ini diberi nama sesuai dengan konvensi yang dijelaskan dalam[Nama dan lokasi file](#file-names-as2). Jika Anda mengonfigurasi peran logging saat membuat konektor, Anda juga dapat memeriksa CloudWatch log Anda untuk status pesan AS2.

Untuk melihat detail konektor AS2, lihat[Lihat detail konektor AS2](configure-as2-connector.md#connectors-view-info). Untuk informasi selengkapnya tentang membuat konektor AS2, lihat[Konfigurasikan konektor AS2](configure-as2-connector.md).

**Untuk mengirim pesan keluar AS2**

Proses keluar didefinisikan sebagai pesan atau file yang dikirim dari AWS ke klien atau layanan eksternal. Urutan pesan keluar adalah sebagai berikut:

1. Admin memanggil perintah `start-file-transfer` AWS Command Line Interface (AWS CLI) atau operasi `StartFileTransfer` API. Operasi ini mereferensikan `connector` konfigurasi.

1. Transfer Family mendeteksi permintaan file baru dan menemukan file tersebut. File dikompresi, ditandatangani, dan dienkripsi. 

1. Klien HTTP transfer melakukan permintaan HTTP POST untuk mengirimkan muatan ke server AS2 mitra. 

1. Proses mengembalikan respons MDN yang ditandatangani, baik sejalan dengan respons HTTP (MDN sinkron atau asinkron).

1. Saat file bergerak di antara berbagai tahap transmisi, proses memberikan tanda terima respons MDN dan rincian pemrosesan kepada pelanggan. 

1. Server AS2 jarak jauh membuat file yang didekripsi dan diverifikasi tersedia untuk admin mitra.

![Diagram yang menunjukkan urutan pemrosesan untuk pesan keluar.](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/as2-architecture-outbound.png)


Pemrosesan AS2 mendukung banyak protokol RFC 4130, dengan fokus pada kasus penggunaan umum dan integrasi dengan implementasi server yang ada. AS2-enabled Untuk detail konfigurasi yang didukung, lihat[Konfigurasi AS2](create-b2b-server.md#as2-supported-configurations).

## Nama dan lokasi file
<a name="file-names-as2"></a>

Bagian ini membahas konvensi penamaan file untuk transfer AS2.

Untuk transfer file masuk, perhatikan hal berikut:
+ Anda menentukan direktori dasar dalam perjanjian. Direktori dasar adalah nama bucket Amazon S3 yang dikombinasikan dengan awalan, jika ada. Misalnya, `/amzn-s3-demo-bucket/AS2-folder`.
+ Jika file yang masuk berhasil diproses, file (dan file JSON yang sesuai) disimpan ke folder`/processed`. Misalnya, `/amzn-s3-demo-bucket/AS2-folder/processed`.

  File JSON berisi bidang-bidang berikut:
  + `agreement-id` 
  + `as2-from`
  + `as2-to`
  + `as2-message-id`
  + `transfer-id`
  + `client-ip`
  + `connector-id`
  + `failure-message`
  + `file-path`
  + `message-subject`
  + `mdn-message-id`
  + `mdn-subject`
  + `requester-file-name`
  + `requester-content-type`
  + `server-id`
  + `status-code`
  + `failure-code`
  + `transfer-size`
+ Jika file yang masuk tidak dapat diproses dengan sukses, file (dan file JSON yang sesuai) disimpan ke folder`/failed`. Misalnya, `/amzn-s3-demo-bucket/AS2-folder/failed`.
+ File yang ditransfer disimpan dalam `processed` folder sebagai`{{original_filename}}.{{messageId}}.{{original_extension}}`. Artinya, ID pesan untuk transfer ditambahkan ke nama file, sebelum ekstensi aslinya.
+ File JSON dibuat dan disimpan sebagai `{{original_filename}}.{{messageId}}.{{original_extension}}.json` file. Selain ID pesan yang ditambahkan, string `.json` ditambahkan ke nama file yang ditransfer.
+ File Message Disposition Notice (MDN) dibuat dan disimpan sebagai `{{original_filename}}.{{messageId}}.{{original_extension}}.mdn` file. Selain ID pesan yang ditambahkan, string `.mdn` ditambahkan ke nama file yang ditransfer.
+ Jika ada file inbound bernama`ExampleFileInS3Payload.dat`, file-file berikut dibuat:
  + **Berkas** — `ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat`
  + **JSON** — `ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat.json` 
  + **MDN** — `ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat.mdn` 

Untuk transfer keluar, penamaannya serupa, dengan perbedaan bahwa tidak ada file pesan masuk, dan juga, ID transfer untuk pesan yang ditransfer ditambahkan ke nama file. ID transfer dikembalikan oleh operasi `StartFileTransfer` API (atau ketika proses atau skrip lain memanggil operasi ini).
+ `transfer-id`Ini adalah pengidentifikasi yang terkait dengan transfer file. Semua permintaan yang merupakan bagian dari `StartFileTransfer` panggilan berbagi a`transfer-id`.
+ Direktori dasar sama dengan jalur yang Anda gunakan untuk file sumber. Artinya, direktori dasar adalah jalur yang Anda tentukan dalam operasi atau `start-file-transfer` AWS CLI perintah `StartFileTransfer` API. Contoh: 

  ```
  aws transfer start-file-transfer --send-file-paths {{/amzn-s3-demo-bucket/AS2-folder/file-to-send.txt}}
  ```

  Jika Anda menjalankan perintah ini, file MDN dan JSON disimpan di `/amzn-s3-demo-bucket/AS2-folder/processed` (untuk transfer yang berhasil), atau `/amzn-s3-demo-bucket/AS2-folder/failed` (untuk transfer yang gagal).
+ File JSON dibuat dan disimpan sebagai `{{original_filename}}.{{transferId}}.{{messageId}}.{{original_extension}}.json` file.
+ File MDN dibuat dan disimpan sebagai `{{original_filename}}.{{transferId}}.{{messageId}}.{{original_extension}}.mdn` file.
+ Jika ada file keluar bernama`ExampleFileOutTestOutboundSyncMdn.dat`, file berikut dibuat:
  + **JSON** — `ExampleFileOutTestOutboundSyncMdn.dedf4601-4e90-4043-b16b-579af35e0d83.fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa.dat.json`
  + **MDN** — `ExampleFileOutTestOutboundSyncMdn.dedf4601-4e90-4043-b16b-579af35e0d83.fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa.dat.mdn`

Anda juga dapat memeriksa CloudWatch log untuk melihat detail transfer Anda, termasuk yang gagal.

## Kode status
<a name="status-codes"></a>

Tabel berikut mencantumkan semua kode status yang dapat dicatat ke CloudWatch log saat Anda atau pasangan Anda mengirim pesan AS2. Langkah-langkah pemrosesan pesan yang berbeda berlaku untuk jenis pesan yang berbeda dan dimaksudkan untuk pemantauan saja. Status COMPLETED dan FAILED mewakili langkah terakhir dalam pemrosesan, dan terlihat dalam file JSON.


****  

| Kode | Deskripsi | Pemrosesan selesai? | 
| --- | --- | --- | 
| PENGOLAHAN | Pesan sedang dalam proses dikonversi ke format akhirnya. Misalnya, langkah dekompresi dan dekripsi keduanya memiliki status ini. | Tidak | 
| MDN\_TRANSMIT | Pemrosesan pesan adalah mengirimkan respons MDN. | Tidak | 
| MDN\_RECEIVE | Pemrosesan pesan menerima respons MDN. | Tidak | 
| DISELESAIKAN | Pemrosesan pesan telah selesai dengan sukses. Keadaan ini termasuk ketika MDN dikirim untuk pesan masuk atau untuk verifikasi MDN dari pesan keluar. | Ya | 
| FAILED | Pemrosesan pesan telah gagal. Untuk daftar kode kesalahan, lihat[Kode kesalahan AS2](as2-monitoring.md#as2-error-codes). | Ya | 

## Contoh file JSON
<a name="file-as2-json"></a>

Bagian ini mencantumkan contoh file JSON untuk transfer masuk dan keluar, termasuk file sampel untuk transfer yang berhasil dan transfer yang gagal.

Contoh file keluar yang berhasil ditransfer:

```
{
  "requester-content-type": "application/octet-stream",
  "message-subject": "File xyzTest from MyCompany_OID to partner YourCompany",
  "requester-file-name": "TestOutboundSyncMdn-9lmCr79hV.dat",
  "as2-from": "MyCompany_OID",
  "connector-id": "c-c21c63ceaaf34d99b",
  "status-code": "COMPLETED",
  "disposition": "automatic-action/MDN-sent-automatically; processed",
  "transfer-size": 3198,
  "mdn-message-id": "OPENAS2-11072022063009+0000-df865189-1450-435b-9b8d-d8bc0cee97fd@PartnerA_OID_MyCompany_OID",
  "mdn-subject": "Message be18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa has been accepted",
  "as2-to": "PartnerA_OID",
  "transfer-id": "dedf4601-4e90-4043-b16b-579af35e0d83",
  "file-path": "/amzn-s3-demo-bucket/as2testcell0000/openAs2/TestOutboundSyncMdn-9lmCr79hV.dat",
  "as2-message-id": "fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa",
  "timestamp": "2022-07-11T06:30:10.791274Z"
}
```

Contoh file keluar yang tidak berhasil ditransfer:

```
{
  "failure-code": "HTTP_ERROR_RESPONSE_FROM_PARTNER",
  "status-code": "FAILED",
  "requester-content-type": "application/octet-stream",
  "subject": "Test run from Id da86e74d6e57464aae1a55b8596bad0a to partner 9f8474d7714e476e8a46ce8c93a48c6c",
  "transfer-size": 3198,
  "requester-file-name": "openAs2TestOutboundWrongAs2Ids-necco-3VYn5n8wE.dat",
  "as2-message-id": "9a9cc9ab-7893-4cb6-992a-5ed8b90775ff@718de4cec1374598",
  "failure-message": "http://Test123456789.us-east-1.elb.amazonaws.com:10080 returned status 500 for message with ID 9a9cc9ab-7893-4cb6-992a-5ed8b90775ff@718de4cec1374598",
  "transfer-id": "07bd3e07-a652-4cc6-9412-73ffdb97ab92",
  "connector-id": "c-056e15cc851f4b2e9",
  "file-path": "/amzn-s3-demo-bucket-4c1tq6ohjt9y/as2IntegCell0002/openAs2/openAs2TestOutboundWrongAs2Ids-necco-3VYn5n8wE.dat",
  "timestamp": "2022-07-11T21:17:24.802378Z"
}
```

Contoh file inbound yang berhasil ditransfer:

```
{
  "requester-content-type": "application/EDI-X12",
  "subject": "File openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.dat sent from MyCompany to PartnerA",
  "client-ip": "10.0.109.105",
  "requester-file-name": "openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.dat",
  "as2-from": "MyCompany_OID",
  "status-code": "COMPLETED",
  "disposition": "automatic-action/MDN-sent-automatically; processed",
  "transfer-size": 1050,
  "mdn-subject": "Message Disposition Notification",
  "as2-message-id": "OPENAS2-11072022233606+0000-5dab0452-0ca1-4f9b-b622-fba84effff3c@MyCompany_OID_PartnerA_OID",
  "as2-to": "PartnerA_OID",
  "agreement-id": "a-f5c5cbea5f7741988",
  "file-path": "processed/openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.OPENAS2-11072022233606+0000-5dab0452-0ca1-4f9b-b622-fba84effff3c@MyCompany_OID_PartnerA_OID.dat",
  "server-id": "s-5f7422b04c2447ef9",
  "timestamp": "2022-07-11T23:36:36.105030Z"
}
```

Contoh file masuk yang tidak berhasil ditransfer:

```
{
  "failure-code": "INVALID_REQUEST",
  "status-code": "FAILED",
  "subject": "Sending a request from InboundHttpClientTests",
  "client-ip": "10.0.117.27",
  "as2-message-id": "testFailedLogs-TestRunConfig-Default-inbound-direct-integ-0c97ee55-af56-4988-b7b4-a3e0576f8f9c@necco",
  "as2-to": "0beff6af56c548f28b0e78841dce44f9",
  "failure-message": "Unsupported date format: 2022/123/456T",
  "agreement-id": "a-0ceec8ca0a3348d6a",
  "as2-from": "ab91a398aed0422d9dd1362710213880",
  "file-path": "failed/01187f15-523c-43ac-9fd6-51b5ad2b08f3.testFailedLogs-TestRunConfig-Default-inbound-direct-integ-0c97ee55-af56-4988-b7b4-a3e0576f8f9c@necco",
  "server-id": "s-0582af12e44540b9b",
  "timestamp": "2022-07-11T06:30:03.662939Z"
}
```