Reaksi email memungkinkan pengguna merespons pesan email dengan cara yang menyenangkan dan bebas hambatan menggunakan emoji.
Format
Reaksi email adalah email berformat MIME biasa dengan bagian khusus yang menunjukkan bahwa email tersebut adalah reaksi.
Format pesan secara keseluruhan
Email harus memiliki bagian isi yang memiliki Content-Type:
text/vnd.google.email-reaction+json
yang diformat seperti yang dijelaskan dalam
definisi.
Bagian tubuh adalah:
- Bagian level teratas pesan. Artinya, header
Content-Type
email adalahtext/vnd.google.email-reaction+json
. - Sub-bagian dari bagian MIME multibagian yang memiliki
Content-Type
text/vnd.google.email-reaction+json
danContent-Disposition
yang bukanattachment
.
Email reaksi juga harus memiliki bagian text/plain
dan text/html
reguler
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 klien email
selalu menampilkan bagian terakhir, terlepas dari apakah mereka 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
pesan yang reaksinya berlaku. ID ini harus berupa satu ID pesan.
Definisi bagian text/vnd.google.email-reaction+json
Bagian MIME ini dalam format JSON. Kolom ini memiliki dua kolom:
version
: Bilangan bulat yang mewakili versi format reaksi email yang sesuai dengan bagian ini. Ini harus berupa1
.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
enkode standar apa pun.
Penafsiran Gmail terhadap text/vnd.google.email-reaction+json
Saat menerima pesan yang terlihat seperti reaksi, Gmail akan memvalidasi bagian reaksi dan menerapkan perlakuan tampilan khusus ke pesan tersebut.
Validasi
Gmail memvalidasi semua pesan dengan bagian text/vnd.google.email-reaction+json
yang diterimanya. Jika bagian tersebut salah format, bagian tersebut 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 akan memeriksa kolom versi. Versi harus tepat 1. Harus berupa bilangan bulat; tidak boleh berupa string. Seiring perkembangan format, versi lain mungkin diterima. Jika versi tidak diketahui atau tidak ada, Gmail akan menganggap bagian tersebut tidak valid.
Gmail memeriksa kolom emoji. Konten harus persis salah satu emoji yang ditentukan oleh versi 15 atau yang lebih tinggi dari Standar Teknis Unicode 51 termasuk ekstensi yang dirujuk, seperti warna kulit. Seiring perkembangan standar emoji, Gmail berkomitmen untuk mendukung setidaknya versi terbaru - 1. Gmail kemungkinan mendukung versi terbaru, kecuali jendela 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.
Display
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
. Ini mungkin
juga mencakup jumlah reaksi yang diterima dengan emoji tersebut, mungkin menampilkan pengirim reaksi tersebut, dan kemungkinan perlakuan UI lainnya. Jika header In-Reply-To
tidak ada atau pesan dengan ID yang diberikan tidak dapat ditemukan di rangkaian pesan percakapan, Gmail akan menampilkan pesan reaksi sebagai email biasa. Perhatikan bahwa Gmail mungkin tidak dapat menemukan pesan karena
pengguna menghapusnya, rangkaian pesan menjadi terlalu panjang, atau karena sejumlah alasan lainnya.
Saat menampilkan pesan reaksi email yang tidak valid, Gmail akan menampilkan bagian text/html
jika ada. Jika tidak, bagian text/plain
akan digunakan. Jika tidak ada bagian
isi pesan yang berisi 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 yang berlebihan bagi pengguna. Khususnya:
- Pesan dari milis tidak boleh mengizinkan reaksi.
- Pesan yang memiliki terlalu banyak penerima tidak boleh mengizinkan reaksi. (Gmail menggunakan
batas 20 penerima berbeda di kolom
To
danCC
gabungan.) - Pesan yang penerimanya tidak ada di kolom
To
atauCC
tidak 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" di Membalas email dengan reaksi emoji.