همگام نگه داشتن مشتری شما با Gmail برای اکثر سناریوهای برنامه مهم است. دو سناریو همگام سازی کلی وجود دارد: همگام سازی کامل و همگام سازی جزئی. اولین باری که مشتری شما به Gmail وصل می شود و در برخی از حالات نادر دیگر، همگام سازی کامل لازم است. اگر مشتری شما اخیراً همگامسازی شده است، همگامسازی جزئی یک جایگزین سبکتر برای همگامسازی کامل است. همچنین میتوانید از اعلانهای فشاری برای راهاندازی همگامسازی جزئی در زمان واقعی و تنها در مواقع ضروری استفاده کنید، بنابراین از نظرسنجی بیضرور اجتناب کنید.
مطالب
همگام سازی کامل
اولین باری که برنامه شما به Gmail متصل می شود، یا اگر همگام سازی جزئی در دسترس نیست، باید همگام سازی کامل انجام دهید. در یک عملیات همگامسازی کامل، برنامه شما باید هر تعداد از پیامها یا رشتههای اخیر را که برای هدف شما ضروری است، بازیابی و ذخیره کند. برای مثال، اگر برنامه شما فهرستی از پیامهای اخیر را نمایش میدهد، ممکن است بخواهید پیامهای کافی را بازیابی و ذخیره کنید تا اگر کاربر فراتر از چند پیام اول نمایش داده شده حرکت کند، یک رابط پاسخگو را فراهم کند. روش کلی برای انجام عملیات همگام سازی کامل به شرح زیر است:
- برای بازیابی صفحه اول شناسه پیام
messages.list
فراخوانی کنید. - یک درخواست دسته ای از درخواست های
messages.get
برای هر یک از پیام های بازگردانده شده توسط درخواست لیست ایجاد کنید. اگر برنامه شما محتویات پیام را نمایش می دهد، باید ازformat=FULL
یاformat=RAW
اولین باری که برنامه شما پیامی را بازیابی می کند استفاده کنید و نتایج را در حافظه پنهان نگه دارید تا از عملیات بازیابی اضافی جلوگیری شود. اگر در حال بازیابی یک پیام ذخیره شده قبلی هستید، بایدformat=MINIMAL
برای کاهش اندازه پاسخ استفاده کنید زیرا فقطlabelIds
ممکن است تغییر کند. - به روز رسانی ها را در نتایج ذخیره شده خود ادغام کنید. برنامه شما باید
historyId
آخرین پیام (اولین پیام در پاسخlist
) را برای همگام سازی جزئی در آینده ذخیره کند.
همگام سازی جزئی
اگر برنامه شما اخیراً همگامسازی شده است، میتوانید با استفاده از روش history.list
یک همگامسازی جزئی انجام دهید تا تمام رکوردهای سابقه جدیدتر از startHistoryId
که در درخواست خود مشخص کردهاید بازگردانید. سوابق سابقه شناسههای پیام و نوع تغییر را برای هر پیام ارائه میکنند، مانند پیامهایی که از زمان startHistoryId
اضافه شده، حذف شدهاند، یا برچسبهایی اصلاح شدهاند. میتوانید historyId
جدیدترین پیام را از یک همگامسازی کامل یا جزئی دریافت و ذخیره کنید تا بهعنوان startHistoryId
برای عملیات همگامسازی جزئی در آینده ارائه شود.
محدودیت ها
سوابق تاریخ معمولاً حداقل برای یک هفته و اغلب بیشتر در دسترس هستند. با این حال، دوره زمانی که برای آن سوابق موجود است ممکن است به میزان قابل توجهی کمتر باشد و گاهی اوقات ممکن است در موارد نادر سوابق در دسترس نباشد. اگر startHistoryId
ارائه شده توسط مشتری شما خارج از محدوده موجود رکوردهای سابقه باشد، API یک پاسخ خطای HTTP 404
را برمیگرداند. در این مورد، مشتری شما باید یک همگام سازی کامل را همانطور که در بخش قبل توضیح داده شد انجام دهد.
همگام نگه داشتن مشتری شما با Gmail برای اکثر سناریوهای برنامه مهم است. دو سناریو همگام سازی کلی وجود دارد: همگام سازی کامل و همگام سازی جزئی. اولین باری که مشتری شما به Gmail وصل می شود و در برخی از حالات نادر دیگر، همگام سازی کامل لازم است. اگر مشتری شما اخیراً همگامسازی شده است، همگامسازی جزئی یک جایگزین سبکتر برای همگامسازی کامل است. همچنین میتوانید از اعلانهای فشاری برای راهاندازی همگامسازی جزئی در زمان واقعی و تنها در مواقع ضروری استفاده کنید، بنابراین از نظرسنجی بیضرور اجتناب کنید.
مطالب
همگام سازی کامل
اولین باری که برنامه شما به Gmail متصل می شود، یا اگر همگام سازی جزئی در دسترس نیست، باید همگام سازی کامل انجام دهید. در یک عملیات همگامسازی کامل، برنامه شما باید هر تعداد از پیامها یا رشتههای اخیر را که برای هدف شما ضروری است، بازیابی و ذخیره کند. برای مثال، اگر برنامه شما فهرستی از پیامهای اخیر را نمایش میدهد، ممکن است بخواهید پیامهای کافی را بازیابی و ذخیره کنید تا اگر کاربر فراتر از چند پیام اول نمایش داده شده حرکت کند، یک رابط پاسخگو را فراهم کند. روش کلی برای انجام عملیات همگام سازی کامل به شرح زیر است:
- برای بازیابی صفحه اول شناسه پیام
messages.list
فراخوانی کنید. - یک درخواست دسته ای از درخواست های
messages.get
برای هر یک از پیام های بازگردانده شده توسط درخواست لیست ایجاد کنید. اگر برنامه شما محتویات پیام را نمایش می دهد، باید ازformat=FULL
یاformat=RAW
اولین باری که برنامه شما پیامی را بازیابی می کند استفاده کنید و نتایج را در حافظه پنهان نگه دارید تا از عملیات بازیابی اضافی جلوگیری شود. اگر در حال بازیابی یک پیام ذخیره شده قبلی هستید، بایدformat=MINIMAL
برای کاهش اندازه پاسخ استفاده کنید زیرا فقطlabelIds
ممکن است تغییر کند. - به روز رسانی ها را در نتایج ذخیره شده خود ادغام کنید. برنامه شما باید
historyId
آخرین پیام (اولین پیام در پاسخlist
) را برای همگام سازی جزئی در آینده ذخیره کند.
همگام سازی جزئی
اگر برنامه شما اخیراً همگامسازی شده است، میتوانید با استفاده از روش history.list
یک همگامسازی جزئی انجام دهید تا تمام رکوردهای سابقه جدیدتر از startHistoryId
که در درخواست خود مشخص کردهاید بازگردانید. سوابق سابقه شناسههای پیام و نوع تغییر را برای هر پیام ارائه میکنند، مانند پیامهایی که از زمان startHistoryId
اضافه شده، حذف شدهاند، یا برچسبهایی اصلاح شدهاند. میتوانید historyId
جدیدترین پیام را از یک همگامسازی کامل یا جزئی دریافت و ذخیره کنید تا بهعنوان startHistoryId
برای عملیات همگامسازی جزئی در آینده ارائه شود.
محدودیت ها
سوابق تاریخ معمولاً حداقل برای یک هفته و اغلب بیشتر در دسترس هستند. با این حال، دوره زمانی که برای آن سوابق موجود است ممکن است به میزان قابل توجهی کمتر باشد و گاهی اوقات ممکن است در موارد نادر سوابق در دسترس نباشد. اگر startHistoryId
ارائه شده توسط مشتری شما خارج از محدوده موجود رکوردهای سابقه باشد، API یک پاسخ خطای HTTP 404
را برمیگرداند. در این مورد، مشتری شما باید یک همگام سازی کامل را همانطور که در بخش قبل توضیح داده شد انجام دهد.