رابط برنامهنویسی کاربردی جیمیل (Gmail API) از منابع Thread برای گروهبندی پاسخهای ایمیل به همراه پیام اصلیشان در یک مکالمه یا رشتهی واحد استفاده میکند. این به شما امکان میدهد تمام پیامهای یک مکالمه را به ترتیب بازیابی کنید و زمینهی یک پیام یا اصلاح نتایج جستجو را آسانتر کنید.
مانند پیامها ، میتوان به رشتهها نیز برچسبهایی اعمال کرد. با این حال، برخلاف پیامها، رشتهها را نمیتوان ایجاد کرد، بلکه فقط میتوان آنها را حذف کرد. با این حال، پیامها را میتوان در یک رشته قرار داد.
فهرست مطالب
بازیابی نخها
رشتهها (Threads) روشی ساده برای بازیابی پیامها در یک مکالمه به ترتیب ارائه میدهند. با فهرست کردن مجموعهای از رشتهها، میتوانید پیامها را بر اساس مکالمه گروهبندی کنید و زمینه بیشتری فراهم کنید. میتوانید با استفاده از متد threads.list لیستی از رشتهها را بازیابی کنید، یا با استفاده از threads.get یک رشته خاص را بازیابی کنید. همچنین میتوانید رشتهها را با استفاده از پارامترهای پرسوجوی مشابه منبع Message فیلتر کنید . اگر هر پیامی در یک رشته با پرسوجو مطابقت داشته باشد، آن رشته در نتیجه بازگردانده میشود.
نمونه کد زیر نحوه استفاده از هر دو روش را در نمونهای که پرتکرارترین تاپیکها را در صندوق ورودی شما نمایش میدهد، نشان میدهد. متد threads.list شناسههای همه تاپیکها را دریافت میکند، سپس threads.get همه پیامهای هر تاپیک را میگیرد. برای آنهایی که ۳ پاسخ یا بیشتر دارند، خط Subject را استخراج میکنیم و موارد غیر خالی به علاوه تعداد پیامهای موجود در تاپیک را نمایش میدهیم. همچنین میتوانید این نمونه کد را در ویدیوی مربوطه DevByte مشاهده کنید.
پایتون
افزودن پیشنویسها و پیامها به رشتهها
اگر پیامهایی را ارسال یا منتقل میکنید که پاسخی به ایمیل دیگری یا بخشی از یک مکالمه هستند، برنامه شما باید آن پیام را به رشته مرتبط اضافه کند. این کار باعث میشود کاربران Gmail که در مکالمه شرکت میکنند، راحتتر بتوانند پیام را در چارچوب خود نگه دارند.
میتوان به عنوان بخشی از ایجاد ، بهروزرسانی یا ارسال پیام پیشنویس، یک پیشنویس به یک رشته اضافه کرد. همچنین میتوانید به عنوان بخشی از درج یا ارسال پیام، یک پیام را به یک رشته اضافه کنید.
برای اینکه یک پیام یا پیشنویس بخشی از یک رشته پیام باشد، باید معیارهای زیر را داشته باشد:
-
threadIdدرخواستی باید درMessageیاDraft.Messageکه به درخواست خود ارائه میدهید، مشخص شود. - سربرگهای
ReferencesوIn-Reply-Toباید مطابق با استاندارد RFC 2822 تنظیم شوند. - سرتیترهای
Subjectباید مطابقت داشته باشند.
به مثالهای ایجاد پیشنویس یا ارسال پیام نگاهی بیندازید. در هر دو مورد، شما به سادگی یک کلید threadId را به همراه یک شناسه thread به ابرداده پیام، یعنی شیء message ، اضافه میکنید.