واکنشهای ایمیل به کاربران این امکان را میدهد که با استفاده از ایموجی، به روشی سرگرمکننده و بدون دردسر به پیامهای ایمیل پاسخ دهند.
قالب
یک واکنش ایمیلی، یک ایمیل معمولی با فرمت MIME است که بخش خاصی دارد که نشان میدهد این یک واکنش است.
قالب کلی پیام
The email must have a body part that has Content-Type: text/vnd.google.email-reaction+json that's formatted as described in the definition .
یک عضو بدن یکی از موارد زیر است:
- بخش سطح بالای پیام. این به این معنی است که سربرگ
Content-Typeایمیلtext/vnd.google.email-reaction+jsonاست. - زیربخشی از یک بخش MIME چندبخشی که دارای
Content-Typetext/vnd.google.email-reaction+jsonو نوعContent-Dispositionغیرattachmentاست.
ایمیل واکنش همچنین باید بخشهای text/plain و text/html معمولی داشته باشد تا کلاینتهای ایمیلی که از واکنشهای ایمیل پشتیبانی نمیکنند، همچنان پاسخی را نشان دهند. جیمیل توصیه میکند بخش text/vnd.google.email-reaction+json را بین بخشهای text/plain و text/html قرار دهید. دلیل این امر این است که برخی از کلاینتهای ایمیل همیشه بخش آخر را نمایش میدهند، صرف نظر از اینکه آیا واقعاً نوع MIME آن را درک میکنند یا خیر. به همین ترتیب، برخی از کلاینتهای ایمیل فقط بخش اول را نمایش میدهند.
ایمیل همچنین باید یک In-Reply-To داشته باشد که حاوی شناسه پیام مربوط به پیامی باشد که واکنش به آن اعمال میشود. این باید یک شناسه پیام واحد باشد.
تعریف بخش text/vnd.google.email-reaction+json
این بخش MIME در قالب JSON است و دو فیلد دارد:
-
version: یک عدد صحیح که نشان دهنده نسخه قالب واکنش ایمیل است که این بخش با آن مطابقت دارد. این باید1باشد. -
emoji: رشتهای که دقیقاً نشاندهنده یک نماد ایموجی است، همانطور که توسط استاندارد فنی یونیکد ۵۱ تعریف شده است.
اگر Content-Transfer-Encoding یک فرمت دودویی (binary) باشد، JSON باید از کدگذاری کاراکتر UTF-8 استفاده کند. در غیر این صورت، کدگذاری انتقال محتوا ( Content-Transfer-Encoding میتواند هر کدگذاری استانداردی باشد.
تفسیر جیمیل از text/vnd.google.email-reaction+json
وقتی جیمیل پیامی دریافت میکند که شبیه یک واکنش است، بخش واکنش را اعتبارسنجی میکند و نحوهی نمایش خاصی را برای آن پیام اعمال میکند.
اعتبارسنجی
جیمیل تمام پیامهایی را که بخش text/vnd.google.email-reaction+json آنها را دریافت میکند، اعتبارسنجی میکند. اگر این بخش ناقص باشد، نامعتبر تلقی میشود و پیام به عنوان یک واکنش در نظر گرفته نمیشود .
به طور خاص:
جیمیل فایل JSON را تجزیه و اعتبار آن را بررسی میکند. اگر JSON ناقص باشد، جیمیل آن بخش را نامعتبر میداند.
جیمیل فیلد نسخه را بررسی میکند. نسخه باید دقیقاً ۱ باشد. باید یک عدد صحیح باشد؛ نمیتواند یک رشته باشد. با تغییر قالب، ممکن است نسخههای دیگر پذیرفته شوند. اگر نسخه ناشناخته یا مفقود باشد، جیمیل آن بخش را نامعتبر میداند.
جیمیل فیلد ایموجی را بررسی میکند. محتویات باید دقیقاً یکی از ایموجیهای مشخص شده توسط نسخه ۱۵ یا بالاتر از استاندارد فنی یونیکد ۵۱ باشد، از جمله هرگونه پسوند ارجاع شده، مانند رنگ پوست. با تکامل استاندارد ایموجی، جیمیل متعهد میشود که حداقل از آخرین نسخه پشتیبانی کند - ۱. جیمیل احتمالاً از آخرین نسخه پشتیبانی میکند، به جز پنجرهای که برای پیادهسازی هر استاندارد تازه منتشر شده لازم است. اگر فیلد وجود نداشته باشد، خالی باشد یا دقیقاً شامل یک ایموجی نباشد، جیمیل آن بخش را نامعتبر میداند.
نمایش
برای پیامهایی که بخشهای واکنش ایمیل معتبری دارند، جیمیل ایموجی را در فیلد ایموجی نزدیک به پیامی که توسط سربرگ In-Reply-To مشخص شده است، نمایش میدهد. این ممکن است شامل تعداد واکنشهای دریافت شده با آن ایموجی، نمایش فرستنده آن واکنش و احتمالاً سایر تنظیمات رابط کاربری باشد. اگر سربرگ In-Reply-To وجود نداشته باشد یا پیامی با شناسه داده شده در رشته مکالمه پیدا نشود، جیمیل پیام واکنش را به عنوان یک ایمیل معمولی نمایش میدهد. توجه داشته باشید که جیمیل ممکن است نتواند پیام را پیدا کند زیرا کاربر آن را حذف کرده است، رشته مکالمه خیلی طولانی شده است یا به هر دلیل دیگری.
هنگام نمایش پیامهای واکنش به ایمیلهای نامعتبر، جیمیل در صورت وجود، بخش text/html را نمایش میدهد. در غیر این صورت، از بخش text/plain استفاده میکند. اگر هیچ بخشی از بدنه با هیچ یک از این دو وجود نداشته باشد، جیمیل یک پیام خالی نمایش میدهد.
محدودیتها
جیمیل به مشتریانی که به دنبال پشتیبانی از واکنشهای ایمیل هستند، توصیه میکند محدودیتهایی را برای جلوگیری از واکنشهای بیش از حد کاربران اعمال کنند. به طور خاص:
- پیامهای دریافتی از فهرستهای پستی نباید اجازه واکنش بدهند.
- پیامهایی که تعداد گیرندگانشان خیلی زیاد است، نباید اجازه واکنش بدهند. (جیمیل در فیلدهای ترکیبی
ToوCC، محدودیت ۲۰ گیرنده مجزا را دارد.) - پیامهایی که نام گیرنده در فیلدهای
ToیاCCنیست، نباید اجازه واکنش نشان دادن داشته باشند. - پیامهایی که از قبل واکنشهای زیادی داشتهاند، نباید اجازه واکنش داشته باشند. (جیمیل برای هر پیام، محدودیت ۲۰ واکنش برای هر کاربر را اعمال میکند.)
این محدودیتها و محدودیتهای دیگر نیز در بخش «عدم امکان ارسال واکنشهای ایموجی» از بخش «پاسخ به ایمیلها با واکنشهای ایموجی » شرح داده شدهاند.