Reaksi email memungkinkan pengguna merespons pesan email dengan cara yang menyenangkan dan tanpa hambatan menggunakan emoji.
Format
Reaksi email adalah email berformat MIME biasa dengan bagian khusus yang menunjukkan bahwa itu adalah reaksi.
Format pesan keseluruhan
Email harus memiliki bagian isi yang memiliki Content-Type:
text/vnd.google.email-reaction+json yang diformat seperti yang dijelaskan dalam
definisi.
Bagian isi adalah:
- Bagian tingkat atas pesan. Artinya, header
Content-Typeemail adalahtext/vnd.google.email-reaction+json. - Sub-bagian dari bagian MIME multipart yang memiliki
Content-Typedaritext/vnd.google.email-reaction+jsondanContent-Dispositionyang bukanattachment.
Email reaksi juga harus memiliki bagian text/plain dan text/html biasa sehingga program email yang tidak mendukung reaksi email tetap menampilkan sesuatu sebagai respons. Gmail merekomendasikan untuk menempatkan bagian text/vnd.google.email-reaction+json di antara bagian text/plain dan text/html. Hal ini karena beberapa program email selalu menampilkan bagian terakhir, terlepas dari apakah program tersebut benar-benar memahami jenis MIME-nya. Demikian pula, beberapa program email hanya menampilkan bagian pertama.
Email juga harus memiliki header In-Reply-To yang berisi ID pesan yang menjadi tujuan reaksi. ID ini harus berupa ID pesan tunggal.
Definisi bagian text/vnd.google.email-reaction+json
Bagian MIME ini dalam format JSON. Bagian ini memiliki dua kolom:
version: Bilangan bulat yang mewakili versi format reaksi email yang dipatuhi oleh bagian ini. Nilai ini harus1.emoji: String yang mewakili tepat satu simbol emoji seperti yang ditentukan oleh Unicode Technical Standard 51.
Jika Content-Transfer-Encoding adalah format biner, JSON harus menggunakan encoding karakter UTF-8. Jika tidak, Content-Transfer-Encoding dapat berupa encoding standar apa pun.
Interpretasi Gmail terhadap text/vnd.google.email-reaction+json
Saat Gmail menerima pesan yang terlihat seperti reaksi, Gmail akan memvalidasi bagian reaksi dan menerapkan perlakuan tampilan khusus pada pesan tersebut.
Validasi
Gmail memvalidasi semua pesan dengan bagian text/vnd.google.email-reaction+json yang diterimanya. Jika bagian tersebut salah format, bagian tersebut akan dianggap tidak valid dan pesan tidak diperlakukan sebagai reaksi.
Khususnya:
Gmail mengurai JSON dan memeriksa validitasnya. Jika JSON salah format, Gmail akan menganggap bagian tersebut tidak valid.
Gmail memeriksa kolom versi. Versi harus tepat 1. Versi harus berupa bilangan bulat; tidak boleh berupa string. Seiring perkembangan format, versi lain mungkin akan diterima. Jika versi tidak diketahui atau tidak ada, Gmail akan menganggap bagian tersebut tidak valid.
Gmail memeriksa kolom emoji. Konten harus tepat salah satu emoji yang ditentukan oleh Unicode Technical Standard 51 versi 15 atau yang lebih baru termasuk ekstensi yang direferensikan, seperti warna kulit. Seiring perkembangan standar emoji, Gmail berkomitmen untuk mendukung setidaknya versi terbaru - 1. Gmail kemungkinan mendukung versi terbaru, kecuali untuk jangka waktu yang diperlukan untuk menerapkan standar yang baru dirilis. Jika kolom tidak ada, kosong, atau tidak berisi tepat satu emoji, Gmail akan menganggap bagian tersebut tidak valid.
Tampilan
Untuk pesan dengan bagian reaksi email yang valid, Gmail akan menampilkan emoji di kolom emoji di dekat pesan yang ditentukan oleh header In-Reply-To. Hal ini mungkin juga mencakup jumlah reaksi yang diterima dengan emoji tersebut, mungkin menampilkan pengirim reaksi tersebut, dan berpotensi perlakuan UI lainnya. Jika header In-Reply-To tidak ada atau pesan dengan ID yang diberikan tidak dapat ditemukan dalam rangkaian percakapan, Gmail akan menampilkan pesan reaksi sebagai email biasa. Perhatikan bahwa Gmail mungkin tidak dapat menemukan pesan karena pengguna menghapusnya, rangkaian percakapan terlalu panjang, atau karena berbagai alasan lainnya.
Saat menampilkan pesan reaksi email yang tidak valid, Gmail akan menampilkan bagian text/html jika ada. Jika tidak, Gmail akan menggunakan bagian text/plain. Jika tidak ada bagian isi dengan salah satu dari keduanya, Gmail akan menampilkan pesan kosong.
Batas
Gmail merekomendasikan agar klien yang ingin menambahkan dukungan untuk reaksi email menambahkan beberapa batasan untuk mencegah reaksi membanjiri pengguna. Khususnya:
- Pesan dari milis tidak boleh mengizinkan reaksi.
- Pesan dengan terlalu banyak penerima tidak boleh mengizinkan reaksi. (Gmail menggunakan batas 20 penerima berbeda dalam kolom
TodanCCgabungan.) - Pesan yang penerimanya tidak ada di kolom
ToatauCCtidak boleh mengizinkan reaksi. - Pesan yang sudah memiliki banyak reaksi tidak boleh mengizinkan reaksi. (Gmail menggunakan batas 20 reaksi per pengguna untuk satu pesan.)
Batasan ini dan batasan lainnya juga dijelaskan di bagian "Tidak dapat mengirim reaksi emoji" pada Membalas email dengan reaksi emoji.