Reaksi email

Reaksi email memungkinkan pengguna merespons pesan email dengan cara yang menyenangkan dan mudah 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 pesan tingkat teratas. Artinya, header Content-Type email adalah text/vnd.google.email-reaction+json.
  • Sub-bagian dari bagian MIME multipart yang memiliki Content-Type text/vnd.google.email-reaction+json dan Content-Disposition yang bukan attachment.

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 dari pesan yang diberi reaksi. Ini harus berupa satu ID pesan.

Definisi bagian text/vnd.google.email-reaction+json

Bagian MIME ini dalam format JSON. Objek ini memiliki dua kolom:

  • version: Bilangan bulat yang merepresentasikan versi format reaksi email yang dipatuhi bagian ini. Nilai ini harus 1.
  • emoji: String yang merepresentasikan tepat satu simbol emoji sebagaimana ditentukan oleh Unicode Technical Standard 51.

Jika Content-Transfer-Encoding adalah format biner, maka 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 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 bentuk, maka dianggap tidak valid dan pesan tidak diperlakukan sebagai reaksi.

Khususnya:

  1. Gmail mengurai JSON dan memeriksa validitasnya. Jika JSON salah bentuk, Gmail menganggap bagian tersebut tidak valid.

  2. Gmail akan memeriksa kolom versi. Versinya harus tepat 1. Harus berupa bilangan bulat; tidak boleh berupa string. Seiring berkembangnya format, versi lain mungkin dapat diterima. Jika versi tidak diketahui atau tidak ada, Gmail akan menganggap bagian tersebut tidak valid.

  3. Gmail akan memeriksa kolom emoji. Konten harus berupa salah satu emoji yang ditentukan oleh Unicode Technical Standard 51 versi 15 atau yang lebih tinggi, termasuk ekstensi yang dirujuk, seperti warna kulit. Seiring berkembangnya 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, maka Gmail menganggap bagian tersebut tidak valid.

Display

Untuk pesan dengan bagian reaksi email yang valid, Gmail menampilkan emoji di kolom emoji di dekat pesan yang ditentukan oleh header In-Reply-To. Hal ini juga dapat mencakup jumlah reaksi yang diterima dengan emoji tersebut, dapat menampilkan pengirim reaksi tersebut, dan berpotensi menampilkan perlakuan UI lainnya. Jika header In-Reply-To tidak ada atau pesan dengan ID tertentu 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 pesan 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 tubuh 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 di kolom gabungan To dan CC.)
  • Pesan yang penerimanya tidak ada di kolom To atau CC tidak boleh mengizinkan reaksi.
  • Pesan yang sudah memiliki banyak reaksi tidak boleh mengizinkan reaksi. (Gmail menggunakan batas 20 reaksi per pengguna untuk setiap pesan.)

Batas ini dan batas lainnya juga dijelaskan di bagian "Tidak dapat mengirim reaksi emoji" pada artikel Membalas email dengan reaksi emoji.