این صفحه ساختار اشیاء رویداد افزونههای Google Workspace را شرح میدهد.
اشیاء رویداد، ساختارهای JSON هستند که به طور خودکار ساخته شده و به عنوان پارامتر به توابع فراخوانی یا فراخوانی ارسال میشوند، زمانی که کاربر با یک افزونه تعامل دارد. اشیاء رویداد، اطلاعات سمت کلاینت در مورد برنامه میزبان و زمینه فعلی را به تابع فراخوانی سمت سرور افزونه منتقل میکنند.
افزونههای Google Workspace از اشیاء رویداد در مکانهای زیر استفاده میکنند:
تریگرهای صفحه اصلی . هر تابع
homepageTriggerکه تعریف میکنید، هنگام فعال شدن تابع تریگر صفحه اصلی، به طور خودکار یک شیء رویداد ارسال میشود. میتوانید از این شیء در تابع تریگر صفحه اصلی خود برای شناسایی برنامه میزبان فعال، پلتفرم کلاینت، زبان کاربر و سایر اطلاعات استفاده کنید.اشیاء رویدادی که هنگام فعال شدن صفحه اصلی ایجاد میشوند، شامل تمام فیلدهای موجود در دو مورد دیگر نیستند؛ فیلدهای مربوط به ویجتها و اطلاعات زمینهای حذف شدهاند.
محرکهای زمینهای . هر برنامه میزبان مجموعه متفاوتی از محرکهای زمینهای را ارائه میدهد که هنگام ورود کاربر به یک زمینه خاص فعال میشوند. برای مثال:
- جیمیل یک محرک زمینهای برای زمانی که کاربر پیامی را باز میکند و یک محرک دیگر برای زمانی که کاربر پیامی را مینویسد، فراهم میکند.
- تقویم گوگل یک محرک زمینهای برای زمانی که کاربر یک رویداد را باز میکند، فراهم میکند.
- گوگل درایو یک محرک زمینهای برای زمانی که کاربر فایلهای درایو را انتخاب میکند، فراهم میکند.
وقتی یک تریگر زمینهای فعال میشود، برنامه میزبان تابع
runFunctionمربوطه که در مانیفست افزونه ذکر شده است را فراخوانی میکند و یک شیء رویداد را به عنوان پارامتر به آن ارسال میکند. اشیاء رویداد ایجاد شده هنگام فعال شدن تریگرهای زمینهای شامل تمام فیلدهای موجود در اشیاء رویداد تریگر صفحه اصلی، به علاوه فیلدهای حاوی اطلاعات زمینهای هستند.اقدامات ویجت . اشیاء رویداد نیز برای ارائه تعامل ویجت ، با استفاده از همان مدل عملی که افزونههای Gmail استفاده میکنند، استفاده میشوند. افزونههای Google Workspace از تمام توابع کنترلکننده ویجت، اشیاء
Actionو پاسخهای اکشن یکسان استفاده میکنند. با این حال، در افزونههای Google Workspace ، اشیاء رویداد اکشن شامل اطلاعات بیشتری هستند که یک تابع فراخوانی میتواند روی آنها عمل کند.اشیاء رویداد ایجاد شده به عنوان نتیجه اقدامات ویجت شامل تمام فیلدهای موجود در اشیاء رویداد محرک متنی، به علاوه فیلدهای حاوی اطلاعات ویجت هستند.
پیشنمایش محرکهای لینک . در Google Docs، Sheets و Slides، میتوانید پیشنمایشهای لینک را برای سرویسهای شخص ثالث بر اساس الگوهای خاص URL پیکربندی کنید. هنگامی که کاربران با لینکی که با الگو مطابقت دارد تعامل میکنند،
linkPreviewTriggersفعال میشود و یک شیء رویداد که حاوی لینک است به تابع فراخوانی trigger ارسال میشود. افزونه شما میتواند از این شیء رویداد برای ساخت یک تراشه و کارت هوشمند استفاده کند که اطلاعات مربوط به لینک را در برنامه میزبان نمایش میدهد. همچنین میتوانید اقدامات ویجت را ایجاد کنید تا کاربران بتوانند با کارت پیشنمایش و محتوای آن تعامل داشته باشند.تریگرهای برنامه چت گوگل . در گوگل چت، افزونه شما به عنوان یک برنامه چت برای کاربران ظاهر میشود و کاربران میتوانند با اضافه کردن آن به فاصلهها، ارسال پیام، استفاده از دستورات اسلش و موارد دیگر با آن تعامل داشته باشند. برای ساخت ویژگیهای تعاملی، تریگرهای مختلف برنامه چت را تنظیم و استفاده میکنید. هر تریگر یک رویداد متفاوت ارسال میکند که به شما کمک میکند تا هر نوع تعامل را پردازش یا به آن پاسخ دهید.
ساختار شیء رویداد
جدول زیر ساختار سطح بالای اشیاء رویداد افزونههای Google Workspace را شرح میدهد. ساختار شیء رویداد شامل یک فیلد سطح بالای commonEventObject برای اطلاعات مستقل از میزبان است. هر شیء رویداد همچنین میتواند یکی از فیلدهای سطح بالای مختص میزبان زیر را داشته باشد که توسط برنامه میزبان فعال تعیین میشود: gmailEventObject ، calendarEventObject یا driveEventObject .
برای سازگاری با نسخههای قبلی، اشیاء رویداد افزونههای Google Workspace شامل تمام فیلدهای اصلی مورد استفاده در اشیاء رویداد اقدام افزونه Gmail نیز میشوند. این فیلدها در جدول زیر در بخش «فیلدهای افزونه اصلی Gmail» فهرست شدهاند؛ اطلاعات موجود در این فیلدها در ساختار شیء جدید بازتولید شده است.
| شیء رویداد | |
|---|---|
eventObject.commonEventObject | Common fields objectشیءای که حاوی اطلاعات مشترک بین همه اشیاء رویداد، صرف نظر از برنامه میزبان، است. |
eventObject.calendar | Calendar event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، تقویم گوگل باشد . یک شیء حاوی اطلاعات تقویم و رویداد. |
eventObject.chat | Chat event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، Google Chat باشد . یک شیء حاوی اطلاعات Chat. |
eventObject.drive | Drive event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، گوگل درایو باشد . یک شیء حاوی اطلاعات درایو. |
eventObject.gmail | Gmail event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، Gmail باشد . یک شیء حاوی اطلاعات Gmail. |
eventObject.docs | Docs event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، Google Docs باشد . یک شیء حاوی اطلاعات Docs. |
eventObject.sheets | Sheets event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، Google Sheets باشد . یک شیء حاوی اطلاعات Sheets. |
eventObject.slides | Slides event objectفقط در صورتی ارائه میشود که میزبان فراخوانی، Google Slides باشد . یک شیء حاوی اطلاعات Slides. |
| فیلدهای افزونه اصلی جیمیل | |
eventObject.messageMetadata.accessToken | stringمنسوخ شده. یک توکن دسترسی. میتوانید از این برای فعال کردن دسترسی به دادههای کاربر با استفاده از محدودههای موقت افزونههای جیمیل استفاده کنید. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.messageMetadata.messageId | stringمنسوخ شده. شناسه پیام مربوط به رشتهای که در رابط کاربری Gmail باز است. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.clientPlatform | stringمنسوخ شده. نشان میدهد که رویداد از کجا سرچشمه میگیرد (وب، iOS یا اندروید). برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.formInput | objectمنسوخ شده. نقشهای از مقادیر فعلی تمام ویجتهای فرم در کارت، که به یک مقدار برای هر ویجت محدود شده است. کلیدها، شناسههای رشتهای مرتبط با ویجتها هستند و مقادیر، رشتهها میباشند. شیء رویداد formInput را به عنوان یک ابزارک برای راحتی شما فراهم میکند، زمانی که نیاز به خواندن دادهها از چندین ویجت با مقادیر منفرد مورد انتظار، مانند ورودیهای متنی و سوئیچها، دارید. برای ویجتهای چند مقداری مانند چکباکسها، میتوانید هر مقدار را از formInputs بخوانید. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.formInputs | objectمنسوخ شده. نقشهای از مقادیر فعلی ویجتها در کارت، که به صورت لیستی از رشتهها ارائه میشود. کلیدها، شناسههای رشتهای مرتبط با ویجت هستند. برای ویجتهای تک مقداری، مقدار در یک آرایه تک عنصری ارائه میشود. برای ویجتهای چند مقداری مانند گروههای چکباکس، تمام مقادیر در یک لیست ارائه میشوند. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.parameters | objectمنسوخ شده. نقشهای از هر پارامتر اضافی که با استفاده از Action.setParameters() به Action ارائه میدهید. کلیدها و مقادیر نقشه، رشته هستند. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.userCountry | stringبه طور پیشفرض منسوخ و غیرفعال شده است . کد دو حرفی که کشور یا منطقه کاربر را نشان میدهد. همچنین میتواند یک کد کشور عددی UN M49 باشد. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.userLocale | stringبه طور پیشفرض منسوخ و غیرفعال شده است . کد دو حرفی ISO 639 که زبان کاربر را نشان میدهد. برای جزئیات بیشتر به بخش دسترسی به زبان و منطقه زمانی کاربر مراجعه کنید. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.userTimezone.id | stringبه طور پیشفرض منسوخ و غیرفعال شده است . شناسه منطقه زمانی منطقه زمانی کاربر. مثالها عبارتند از: America/New_York ، Europe/Vienna و Asia/Seoul . برای جزئیات بیشتر به بخش دسترسی به زبان و منطقه زمانی کاربر مراجعه کنید. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
eventObject.userTimezone.offset | stringبه طور پیشفرض منسوخ و غیرفعال شده است . اختلاف زمانی از زمان هماهنگ جهانی (UTC) منطقه زمانی کاربر، که بر حسب میلیثانیه اندازهگیری میشود. برای جزئیات بیشتر به دسترسی به زبان و منطقه زمانی کاربر مراجعه کنید. برای افزونههای Google Workspace، این اطلاعات را در فیلد |
شیء رویداد مشترک
شیء رویداد مشترک، بخشی از شیء رویداد کلی است که اطلاعات عمومی و مستقل از میزبان را از کلاینت کاربر به افزونه منتقل میکند. این اطلاعات شامل جزئیاتی مانند زبان کاربر، برنامه میزبان و پلتفرم است.
علاوه بر تریگرهای صفحه اصلی و زمینهای، افزونهها اشیاء رویداد را ساخته و به توابع فراخوانی اکشن منتقل میکنند، زمانی که کاربر با ویجتها تعامل دارد. تابع فراخوانی افزونه شما میتواند از شیء رویداد مشترک برای تعیین محتوای ویجتهای باز در کلاینت کاربر پرسوجو کند. به عنوان مثال، افزونه شما میتواند متنی را که کاربر در یک ویجت TextInput در شیء eventObject.commentEventObject.formInputs وارد کرده است، پیدا کند.
| فیلدهای شیء رویداد مشترک | |
|---|---|
commonEventObject.platform | stringنشان میدهد که رویداد از کجا سرچشمه میگیرد (`WEB`، `IOS` یا `ANDROID`). |
commonEventObject.formInputs | objectنقشهای حاوی مقادیر فعلی ویجتها در کارت نمایش داده شده. کلیدهای نقشه، شناسههای رشتهای هستند که به هر ویجت اختصاص داده شدهاند. ساختار شیء مقدار نقشه به نوع ویجت بستگی دارد: برای مثال، به جای برای کسب اطلاعات بیشتر در مورد زمانهای اجرا در Apps Script، به نمای کلی زمان اجرای V8 مراجعه کنید.
|
commonEventObject.hostApp | stringنشان میدهد که افزونه هنگام تولید شیء رویداد، در کدام برنامه میزبان فعال است. مقادیر ممکن شامل موارد زیر است:
|
commonEventObject.parameters | objectهر پارامتر اضافی که با استفاده از actionParameters یا Action.setParameters() به یک اکشن ارائه میدهید. پیشنمایش توسعهدهندگان: برای افزونههایی که Google Chat را توسعه میدهند ، برای پیشنهاد موارد بر اساس آنچه کاربران در منوهای چندگزینهای تایپ میکنند، از مقدار کلید |
commonEventObject.userLocale | stringبه طور پیشفرض غیرفعال است . زبان و شناسه کشور/منطقه کاربر در قالب کد زبان ISO 639 - کد کشور/منطقه ISO 3166. به عنوان مثال، en-US . برای فعال کردن این فیلد، باید |
commonEventObject.timeZone | stringبه طور پیشفرض غیرفعال است . شناسه و فاصله زمانی منطقه زمانی. برای فعال کردن این فیلد، باید addOns.common.useLocaleFromApp در مانیفست افزونه خود روی true تنظیم کنید. لیست دامنه افزونه شما باید شامل https://www.googleapis.com/auth/script.locale نیز باشد. برای جزئیات بیشتر به دسترسی به زبان کاربر و منطقه زمانی مراجعه کنید. |
commonEventObject.timeZone.id | stringشناسه منطقه زمانی منطقه زمانی کاربر. مثالها عبارتند از: America/New_York ، Europe/Vienna و Asia/Seoul . برای فعال کردن این فیلد، باید addOns.common.useLocaleFromApp در مانیفست افزونه خود روی true تنظیم کنید. لیست محدوده افزونه شما همچنین باید شامل https://www.googleapis.com/auth/script.locale باشد. برای جزئیات بیشتر به بخش دسترسی به منطقه زمانی و منطقه زمانی کاربر مراجعه کنید. |
commonEventObject.timeZone.offset | stringاختلاف زمانی منطقه زمانی کاربر با زمان هماهنگ جهانی (UTC) که بر حسب میلیثانیه اندازهگیری میشود. برای جزئیات بیشتر به بخش دسترسی به منطقه زمانی و زبان کاربر مراجعه کنید. |
ورودیهای فرم انتخابگر تاریخ و زمان
توابع فراخوانی اکشن میتوانند مقادیر فعلی ویجت را در فیلد commonEventObject.formInputs دریافت کنند. این شامل مقادیر تاریخ یا زمان انتخاب شده توسط کاربر در ویجتهای انتخابگر تاریخ یا زمان میشود. با این حال، ساختار اطلاعات بسته به اینکه آیا ویجت به عنوان یک انتخابگر تاریخ-زمان، یک انتخابگر فقط تاریخ یا یک انتخابگر فقط زمان پیکربندی شده باشد، متفاوت است. تفاوتهای ساختاری در جدول زیر شرح داده شده است:
شیء رویداد چت
شیء رویداد Chat بخشی از شیء رویداد کلی است که اطلاعات مربوط به تعاملات کاربر با یک برنامه Chat را در خود جای میدهد. این شیء فقط در صورتی در یک شیء رویداد وجود دارد که افزونه، Google Chat را ارثبری کند .
| چت | |
|---|---|
chat.user | object ( User )کاربر چتی که با برنامه چت تعامل داشته است. |
chat.space | object ( Space )فضای چتی که کاربر در آن با برنامه چت تعامل داشته است. |
chat.eventTime | |
| |
chat.messagePayload | بار دادهای که برنامههای چت از یک تریگر پیام دریافت میکنند. |
chat.addedToSpacePayload | بار دادهای که برنامههای چت از یک تریگر Added to space دریافت میکنند. |
chat.removedFromSpacePayload | بار دادهای که برنامههای چت از یک تریگر حذفشده از فضا دریافت میکنند. |
chat.buttonClickedPayload | بار دادهای که برنامههای چت هنگام کلیک کاربران روی دکمهای از یک پیام یا کارت دریافت میکنند. اگر کاربری برای ارسال اطلاعات روی دکمهای کلیک کند، شیء |
chat.widgetUpdatedPayload | بار دادهای که برنامههای چت هنگام تایپ متن توسط کاربران در منوی چندگزینهای ویجت شیء |
chat.appCommandPayload | بار دادهای که برنامههای چت هنگام استفاده کاربر از دستوری از برنامه چت دریافت میکنند. |
بار مفید
بسته به نوع تعامل برنامه چت، این رویداد شامل یک payload با یک یا چند منبع Chat API است.
بار مفید پیام
پیامپِیلود chat.messagePayload.message object ( Message )
پیام چتی که باعث ایجاد این رویداد شده است. chat.messagePayload.space object ( Space )
فضای چتی که کاربر در آن پیامی ارسال کرده که برنامه چت را فراخوانی کرده است. chat.messagePayload.configCompleteRedirectUri string
آدرس اینترنتی (URL) که برنامه چت باید پس از تکمیل فرآیند مجوزدهی یا پیکربندی خارج از گوگل چت، کاربر را به آن هدایت کند. برای اطلاعات بیشتر، به بخش «افزونه Google Workspace خود را به یک سرویس شخص ثالث متصل کنید» مراجعه کنید.
وقتی مدیران برنامههای چت را نصب میکنند، فیلد به محموله فضایی اضافه شد
بارگیری به فضا (AddedToSpacePayload) chat.addedToSpacePayload.space object ( Space )
فضای چتی که کاربر برنامه چت را به آن اضافه یا نصب کرده است.space.adminInstalled روی true تنظیم میشود. chat.addedToSpacePayload.interactionAdd boolean
اینکه آیا کاربر برنامه چت را با استفاده از یک پیام به یک فضا اضافه میکند یا خیر. برای مثال، با @mention برنامه چت را فراخوانی میکند یا از یک دستور استفاده میکند. اگر true ، چت یک شیء رویداد دیگر را با یک messagePayload ارسال میکند که حاوی اطلاعاتی در مورد پیام است. chat.addedToSpacePayload.configCompleteRedirectUri string
آدرس اینترنتی (URL) که برنامه چت باید پس از تکمیل فرآیند مجوزدهی یا پیکربندی خارج از گوگل چت، کاربر را به آن هدایت کند. برای اطلاعات بیشتر، به بخش «افزونه Google Workspace خود را به یک سرویس شخص ثالث متصل کنید» مراجعه کنید.
وقتی مدیران، برنامههای چت را حذف نصب میکنند، فیلد از محموله فضایی حذف شد
RemovedFromSpacePayload chat.removedFromSpacePayload.space object ( Space )
فضای چتی که کاربر برنامه چت را از آن حذف یا لغو نصب کرده است.space.adminInstalled روی false تنظیم میشود.
نوع رویداد محاورهای شمارشی (Enum مقدار بار داده کلیک شده روی دکمه
بارگذاری کلیکشدهی دکمه chat.buttonClickedPayload.message object ( Message )
پیام چتی که حاوی دکمهای است که کاربر روی آن کلیک کرده است. chat.buttonClickedPayload.space object ( Space )
فضای چتی که کاربر در آن روی دکمهای از یک پیام برنامه چت کلیک کرده است. chat.buttonClickedPayload.isDialogEvent boolean
اینکه آیا کاربر برای تعامل با یک کادر محاورهای روی دکمه کلیک کرده است یا خیر. chat.buttonClickedPayload.dialogEventType enum ( DialogEventType )
اگر isDialogEvent true باشد، نوع تعامل در یک دیالوگ را نشان میدهد.DialogEventType ).dialogEventType فقط میتواند یکی از موارد زیر باشد: TYPE_UNSPECIFIED مقدار پیشفرض. نامشخص. REQUEST_DIALOG کاربر درخواست یک دیالوگ را میدهد. برای مثال، او از یک دستور استفاده میکند یا روی دکمهای از یک پیام کلیک میکند. SUBMIT_DIALOG کاربر روی یک عنصر تعاملی در یک کادر محاورهای کلیک میکند. برای مثال، کاربر اطلاعاتی را در یک کادر محاورهای وارد میکند و روی دکمهای برای ارسال اطلاعات کلیک میکند.
بار مفید ویجت بهروزرسانی شد
بار داده ویجت بهروز شده chat.widgetUpdatedPayload.space object ( Space )
فضای چتی که تعامل در آن رخ داده است.
نوع رویداد محاورهای شمارشی (Enum مقدار شناسه فرمان. نوع دستور برنامه شمارشی (Enum مقدار بار مفید دستور برنامه
بارگذاری فرمان AppCommand chat.appCommandPayload.appCommandMetadata object ( AppCommandMetadata )
فرادادههایی درباره اینکه کاربر از کدام دستور استفاده کرده و چگونه دستور را فعال کرده است. chat.appCommandPayload.space object ( Space )
فضای چتی که کاربر در آن از دستور استفاده کرده است. chat.appCommandPayload.thread object ( Thread )
اگر تعامل در یک رشته چت رخ داده باشد، رشته چتی که کاربر در آن از دستور استفاده کرده است. chat.appCommandPayload.message object ( Message )
برای دستورات اسلش، پیامی که حاوی دستور اسلش است. chat.appCommandPayload.configCompleteRedirectUri string
اگر برای اجرای دستور به مجوز یا پیکربندی نیاز باشد، یک URL برای هدایت کاربر به آن پس از تکمیل فرآیند خارج از Google Chat. chat.appCommandPayload.isDialogEvent boolean
اینکه آیا دستور، کادر محاورهای باز میکند یا خیر. chat.appCommandPayload.dialogEventType enum ( DialogEventType )
نوع تعامل با یک دیالوگ.DialogEventType ).dialogEventType فقط میتواند یکی از موارد زیر باشد: TYPE_UNSPECIFIED مقدار پیشفرض. نامشخص. REQUEST_DIALOG کاربر درخواست یک دیالوگ را میدهد. برای مثال، او از یک دستور استفاده میکند یا روی دکمهای از یک پیام کلیک میکند. SUBMIT_DIALOG کاربر روی یک عنصر تعاملی در یک کادر محاورهای کلیک میکند. برای مثال، کاربر اطلاعاتی را در یک کادر محاورهای وارد میکند و روی دکمهای برای ارسال اطلاعات کلیک میکند. فراداده دستور برنامه
فرادادهی AppCommand chat.appCommandPayload.appCommandMetadata.appCommandIdstring ( int64 format) chat.appCommandPayload.appCommandMetadata.appCommandType enum ( AppCommandType )
نوع فرمان.AppCommandType ).AppCommandType فقط میتواند یکی از موارد زیر باشد: APP_COMMAND_TYPE_UNSPECIFIED مقدار پیشفرض. نامشخص. SLASH_COMMAND کاربر با ارسال پیامی که با یک اسلش / شروع میشود، از این دستور استفاده میکند. QUICK_COMMAND کاربر دستور را از منوی چت در قسمت پاسخ پیام انتخاب میکند.
شیء رویداد تقویم
شیء رویداد تقویم بخشی از شیء رویداد کلی است که اطلاعات مربوط به تقویم کاربر و رویدادهای تقویم را در خود جای میدهد. این شیء فقط در صورتی در یک شیء رویداد وجود دارد که افزونه، تقویم گوگل را توسعه دهد.
جدول زیر فیلدهای موجود در فیلد calendarEventObject از یک شیء رویداد را فهرست میکند. فیلدهایی که به عنوان دادههای تولید شده توسط کاربر علامتگذاری شدهاند، در شیء رویداد وجود دارند اگر و فقط اگر دادهها در رویداد Calendar وجود داشته باشند و افزونه فیلد manifest مربوط به addOns.calendar.currentEventAccess خود را روی READ یا READ_WRITE تنظیم کند.
| شیء رویداد تقویم | |
|---|---|
calendar.attendees[] | list of attendee objectsدادههای تولید شده توسط کاربر. فهرستی از شرکتکنندگان در رویداد تقویم. |
calendar.calendarId | stringشناسه تقویم. |
calendar.capabilities | objectدادههای تولید شده توسط کاربر. یک شیء که قابلیتهای افزونه را برای مشاهده یا بهروزرسانی اطلاعات رویداد توصیف میکند. |
calendar.capabilities.canAddAttendees | booleanدادههای تولید شده توسط کاربر. اگر افزونه بتواند شرکتکنندگان جدیدی را به لیست شرکتکنندگان رویداد اضافه کند، true و در غیر این صورت false برمیگرداند. |
calendar.capabilities.canSeeAttendees | booleanدادههای تولید شده توسط کاربر. اگر افزونه بتواند لیست شرکتکنندگان رویداد را بخواند، true و در غیر این صورت false برمیگرداند. |
calendar.capabilities.canSeeConferenceData | booleanدادههای تولید شده توسط کاربر. اگر افزونه بتواند دادههای کنفرانس رویداد را بخواند، true و در غیر این صورت false برمیگرداند. |
calendar.capabilities.canSetConferenceData | booleanدادههای تولید شده توسط کاربر. اگر افزونه بتواند دادههای کنفرانس رویداد را بهروزرسانی کند، true و در غیر این صورت false برمیگرداند. |
calendar.capabilities.canAddAttachments | booleanدادههای تولید شده توسط کاربر. اگر افزونه بتواند پیوستهای جدید به رویداد اضافه کند، true و در غیر این صورت false برمیگرداند. |
calendar.conferenceData | Conference data objectدادههای تولید شده توسط کاربر. یک شیء که نشاندهنده هرگونه داده کنفرانس مرتبط با این رویداد است، مانند جزئیات کنفرانس Google Meet. |
calendar.id | stringشناسه رویداد. |
calendar.organizer | objectیک شیء که نشان دهنده برگزارکننده رویداد است. |
calendar.organizer.email | stringآدرس ایمیل برگزارکننده رویداد. |
calendar.recurringEventId | stringشناسه یک رویداد تکرارشونده. |
شرکت کننده
اشیاء شرکتکننده اطلاعات مربوط به شرکتکنندگان را به رویدادهای تقویم گوگل منتقل میکنند. این اطلاعات در شیء رویداد وجود دارد اگر و فقط اگر دادهها در رویداد تقویم وجود داشته باشند و افزونه فیلد مانیفست addOns.calendar.currentEventAccess خود را روی READ یا READ_WRITE تنظیم کند.
| شیء شرکتکننده | |
|---|---|
attendee.additionalGuests | numberتعداد مهمانان اضافی که شرکتکننده اعلام کرده بود با خود میآورد. به طور پیشفرض روی صفر تنظیم شده است. |
attendee.comment | stringنظر پاسخ شرکتکننده، در صورت وجود. |
attendee.displayName | stringشرکتکننده نام خود را نمایش داد. |
attendee.email | stringآدرس ایمیل شرکتکننده. |
attendee.optional | booleanاگر حضور این شرکتکننده اختیاری باشد، true و در غیر این صورت false برمیگرداند. |
attendee.organizer | booleanاگر شرکتکننده، برگزارکنندهی این رویداد باشد، true . |
attendee.resource | booleanاگر شرکتکننده نشاندهندهی یک منبع، مانند اتاق یا قطعهای از تجهیزات باشد، true ؛ در غیر این صورت false . |
attendee.responseStatus | stringوضعیت پاسخ شرکتکننده. مقادیر ممکن شامل موارد زیر است:
|
attendee.self | booleanاگر این شرکتکننده نمایانگر تقویمی باشد که این رویداد در آن ظاهر میشود، true و در غیر این صورت false برمیگرداند. |
دادههای کنفرانس
اشیاء داده کنفرانس، اطلاعات مربوط به کنفرانسهایی را که به رویدادهای تقویم گوگل پیوست شدهاند، حمل میکنند. این رویدادها میتوانند راهحلهای کنفرانس گوگل، مانند Google Meet، یا کنفرانسهای شخص ثالث باشند. این اطلاعات در شیء رویداد وجود دارد اگر و فقط اگر دادهها در رویداد تقویم وجود داشته باشند و افزونه، فیلد مانیفست addOns.calendar.currentEventAccess خود را روی READ یا READ_WRITE تنظیم کند.
| شیء داده کنفرانس | |
|---|---|
conferenceData.conferenceId | stringشناسه کنفرانس. این شناسه برای این است که برنامهها بتوانند کنفرانسها را پیگیری کنند؛ شما نباید این شناسه را به کاربران نمایش دهید. |
conferenceData.conferenceSolution | objectیک شیء که نشاندهندهی راهکار کنفرانس، مانند Hangouts یا Google Meet است. |
conferenceData.conferenceSolution.iconUri | stringآدرس اینترنتی (URI) مربوط به آیکون قابل مشاهده توسط کاربر که نشاندهندهی این راهکار کنفرانس است. |
conferenceData.conferenceSolution.key | objectکلیدی که به طور منحصر به فرد، راهکار کنفرانس را برای این رویداد مشخص میکند. |
conferenceData.conferenceSolution.key.type | stringنوع راهکار کنفرانس. مقادیر ممکن شامل موارد زیر است:
|
conferenceData.conferenceSolution.name | stringنام قابل مشاهده توسط کاربر برای این راهکار کنفرانس (بومیسازی نشده). |
conferenceData.entryPoints[] | list of entry point objectsفهرست نقاط ورود به کنفرانس، مانند نشانیهای اینترنتی یا شماره تلفنها. |
conferenceData.notes | stringیادداشتهای اضافی (مانند دستورالعملهای مدیر دامنه یا اطلاعیههای قانونی) در مورد کنفرانس برای نمایش به کاربر. میتواند شامل HTML باشد. حداکثر طول آن ۲۰۴۸ کاراکتر است. |
conferenceData.parameters | objectیک شیء حاوی نقشهای از دادههای پارامتر تعریفشده برای استفاده توسط افزونه. |
conferenceData.parameters.addOnParameters | objectنقشهای از کلیدها و مقادیر رشته پارامتر. این کلیدها و مقادیر توسط توسعهدهنده افزونه تعریف شدهاند تا اطلاعات را به یک کنفرانس خاص برای استفاده افزونه پیوست کنند. |
نقطه ورود
اشیاء نقطه ورود، اطلاعاتی در مورد روشهای تعیینشده برای دسترسی به یک کنفرانس معین، مانند تلفن یا ویدیو، را حمل میکنند. این اطلاعات در شیء رویداد وجود دارد اگر و تنها اگر دادهها در رویداد تقویم وجود داشته باشند و افزونه، فیلد مانیفست addOns.calendar.currentEventAccess خود را روی READ یا READ_WRITE تنظیم کند.
| شیء نقطه ورود | |
|---|---|
entryPoint.accessCode | stringکد دسترسی مورد استفاده برای دسترسی به کنفرانس. حداکثر طول آن ۱۲۸ کاراکتر است. ارائه دهندگان کنفرانس معمولاً فقط از زیرمجموعهای از { accessCode , meetingCode , passcode , password , pin } برای ارائه دسترسی به کنفرانسها استفاده میکنند. فیلدهایی را که ارائه دهنده کنفرانس استفاده میکند، مطابقت دهید و فقط نمایش دهید. |
entryPoint.entryPointFeatures | listویژگیهای نقطه ورود. در حال حاضر این ویژگیها فقط برای نقاط ورود phone اعمال میشوند:
|
entryPoint.entryPointType | stringنوع نقطه ورود. مقادیر ممکن به شرح زیر است:
|
entryPoint.label | stringبرچسب قابل مشاهده توسط کاربر برای URI نقطه ورود (بومیسازی نشده). |
entryPoint.meetingCode | stringکد جلسهای که برای دسترسی به کنفرانس استفاده میشود. حداکثر طول آن ۱۲۸ کاراکتر است. ارائهدهندگان کنفرانس معمولاً فقط از زیرمجموعهای از { accessCode , meetingCode , passcode , password , pin } برای ارائه دسترسی به کنفرانسها استفاده میکنند. فیلدهایی را که ارائهدهنده کنفرانس استفاده میکند، مطابقت دهید و فقط نمایش دهید. |
entryPoint.passcode | stringکد عبور مورد استفاده برای دسترسی به کنفرانس. حداکثر طول آن ۱۲۸ کاراکتر است. ارائه دهندگان کنفرانس معمولاً فقط از زیرمجموعهای از { accessCode , meetingCode , passcode , password , pin } برای ارائه دسترسی به کنفرانسها استفاده میکنند. فیلدهایی را که ارائه دهنده کنفرانس استفاده میکند، مطابقت دهید و فقط نمایش دهید. |
entryPoint.password | stringرمز عبوری که برای دسترسی به کنفرانس استفاده میشود. حداکثر طول آن ۱۲۸ کاراکتر است. ارائهدهندگان کنفرانس معمولاً فقط از زیرمجموعهای از { accessCode , meetingCode , passcode , password , pin } برای ارائه دسترسی به کنفرانسها استفاده میکنند. فیلدهایی را که ارائهدهنده کنفرانس استفاده میکند، مطابقت دهید و فقط نمایش دهید. |
entryPoint.pin | stringپین مورد استفاده برای دسترسی به کنفرانس. حداکثر طول آن ۱۲۸ کاراکتر است. ارائه دهندگان کنفرانس معمولاً فقط از زیرمجموعهای از { accessCode , meetingCode , passcode , password , pin } برای ارائه دسترسی به کنفرانسها استفاده میکنند. فیلدهایی را که ارائه دهنده کنفرانس استفاده میکند، مطابقت دهید و فقط نمایش دهید. |
entryPoint.regionCode | stringکد منطقه شماره تلفن. اگر URI شامل کد کشور نباشد، کاربران به آن نیاز دارند. مقادیر بر اساس فهرست عمومی کدهای منطقه CLDR هستند. |
entryPoint.uri | stringآدرس اینترنتی (URI) نقطه ورود. حداکثر طول آن ۱۳۰۰ کاراکتر است. قالببندی آن به نوع نقطه ورود بستگی دارد:
|
شیء رویداد درایو
شیء رویداد Drive بخشی از شیء رویداد کلی است که اطلاعات مربوط به گوگل درایو کاربر و محتویات آن را در خود جای میدهد. این شیء فقط در صورتی در یک شیء رویداد وجود دارد که افزونه، گوگل درایو را توسعه دهد.
| شیء رویداد درایو | |
|---|---|
drive.activeCursorItem | Drive item objectمورد درایو در حال حاضر فعال است. |
drive.selectedItems[] | list of Drive item objectsفهرستی از موارد (فایلها یا پوشهها) انتخابشده در درایو. |
مورد درایو
اشیاء آیتم درایو، اطلاعاتی در مورد آیتمهای خاص درایو، مانند فایلها یا پوشهها، را حمل میکنند.
| شیء مورد درایو | |
|---|---|
item.addonHasFileScopePermission | booleanاگر مقدار true ، افزونه مجوز دامنه https://www.googleapis.com/auth/drive.file را برای این مورد درخواست و دریافت کرده است؛ در غیر این صورت این فیلد false است. |
item.id | stringشناسهی آیتم انتخاب شده. |
item.iconUrl | stringآدرس اینترنتی (URL) آیکونی که نشان دهنده آیتم انتخاب شده است. |
item.mimeType | stringنوع MIME مورد انتخاب شده. |
item.title | stringعنوان مورد انتخاب شده. |
شیء رویداد جیمیل
شیء رویداد Gmail بخشی از شیء رویداد کلی است که اطلاعات مربوط به پیامهای Gmail کاربر را در خود جای میدهد. این شیء فقط در صورتی در یک شیء رویداد وجود دارد که برنامه میزبان Gmail باشد.
| شیء رویداد جیمیل | |
|---|---|
gmail.accessToken | stringتوکن دسترسی مخصوص جیمیل. شما میتوانید از این توکن به همراه متد GmailApp.setCurrentMessageAccessToken(accessToken) استفاده کنید تا به افزونه خود دسترسی موقت به پیام جیمیل باز فعلی کاربر بدهید یا به افزونه خود اجازه دهید پیشنویسهای جدید بنویسد. |
gmail.bccRecipients[] | list of stringsبه طور پیشفرض غیرفعال است . فهرست آدرسهای ایمیل گیرنده "BCC:" که در حال حاضر در پیشنویسی که افزونه در حال نوشتن آن است، وجود دارد. برای فعال کردن این فیلد، باید فیلد addOns.gmail.composeTrigger.draftAccess را در مانیفست خود روی METADATA تنظیم کنید. |
gmail.ccRecipients[] | list of stringsبه طور پیشفرض غیرفعال است . فهرست آدرسهای ایمیل گیرنده "CC:" که در حال حاضر در پیشنویسی که افزونه در حال نوشتن آن است، وجود دارد. برای فعال کردن این فیلد، باید فیلد addOns.gmail.composeTrigger.draftAccess را در مانیفست خود روی METADATA تنظیم کنید. |
gmail.messageId | stringشناسه پیام Gmail که در حال حاضر باز است. |
gmail.threadId | stringشناسهی رشتهی جیمیلِ در حال حاضر باز. |
gmail.toRecipients[] | list of stringsبه طور پیشفرض غیرفعال است . فهرست آدرسهای ایمیل گیرنده "To:" که در حال حاضر در پیشنویسی که افزونه در حال نوشتن آن است، وجود دارد. برای فعال کردن این فیلد، باید فیلد addOns.gmail.composeTrigger.draftAccess را در مانیفست خود روی METADATA تنظیم کنید. |
شیء رویداد اسناد
شیء رویداد Docs بخشی از شیء رویداد کلی است که اطلاعات مربوط به سند کاربر و محتویات آن را در خود جای میدهد. این شیء فقط در صورتی در یک شیء رویداد وجود دارد که افزونه، Google Docs را توسعه دهد.
| شیء رویداد اسناد | |
|---|---|
docs.id | stringفقط در صورتی ارائه میشود که دامنه https://www.googleapis.com/auth/drive.file توسط کاربر مجاز شده باشد .شناسه سندی که در رابط کاربری Docs باز است. |
docs.title | stringفقط در صورتی ارائه میشود که دامنه https://www.googleapis.com/auth/drive.file توسط کاربر مجاز شده باشد .عنوان سند در رابط کاربری Docs باز میشود. |
docs.addonHasFileScopePermission | booleanاگر مقدار true ، افزونه مجوز دامنه https://www.googleapis.com/auth/drive.file را برای سندی که در رابط کاربری Docs باز است درخواست و دریافت کرده است؛ در غیر این صورت این فیلد false است. |
docs.matchedUrl.url | stringفقط در صورت احراز شرایط زیر ارائه میشود:
آدرس اینترنتی (URL) لینکی که پیشنمایشی در Google Docs ایجاد میکند. برای استفاده از این فیلد، باید LinkPreviewTriggers را در مانیفست افزونه خود پیکربندی کنید. برای جزئیات بیشتر به پیشنمایش لینکها با تراشههای هوشمند مراجعه کنید. نمونهای از payload برای زمانی که کاربر پیشنمایش لینک "docs" : {
"matchedUrl" : {
"url" : "https://www.example.com/12345"
}
}
|
شیء رویداد Sheets
شیء رویداد Sheets بخشی از شیء رویداد کلی است که اطلاعات مربوط به سند کاربر و محتویات آن را در خود جای میدهد. این شیء فقط در صورتی در یک شیء رویداد وجود دارد که افزونه، Google Sheets را توسعه دهد.
| شیء رویداد Sheets | |
|---|---|
sheets.id | stringفقط در صورتی ارائه میشود که دامنه https://www.googleapis.com/auth/drive.file توسط کاربر مجاز شده باشد . شناسه صفحهگسترده باز شده در رابط کاربری Sheets. |
sheets.title | stringفقط در صورتی ارائه میشود که دامنه https://www.googleapis.com/auth/drive.file توسط کاربر مجاز شده باشد . عنوان صفحهگسترده باز شده در رابط کاربری Sheets. |
sheets.addonHasFileScopePermission | booleanاگر مقدار true ، افزونه مجوز دامنه https://www.googleapis.com/auth/drive.file را برای صفحهگسترده باز شده در رابط کاربری Sheets درخواست و دریافت کرده است؛ در غیر این صورت این فیلد false است. |
sheets.matchedUrl.url | stringفقط در صورت احراز شرایط زیر ارائه میشود:
آدرس اینترنتی (URL) لینکی که پیشنمایشی در گوگل شیت ایجاد میکند. برای استفاده از این فیلد، باید LinkPreviewTriggers را در مانیفست افزونه خود پیکربندی کنید. برای جزئیات بیشتر به پیشنمایش لینکها با تراشههای هوشمند مراجعه کنید. نمونهای از payload برای زمانی که کاربر پیشنمایش لینک "sheets" : {
"matchedUrl" : {
"url" : "https://www.example.com/12345"
}
}
|
شیء رویداد اسلایدها
The Slides event object is the portion of the overall event object that carries information about a user's document and its contents. It's only present in an event object if the add-on extends Google Slides.
| Slides event object | |
|---|---|
slides.id | stringOnly present if the https://www.googleapis.com/auth/drive.file scope has been authorized by the user . The ID of the presentation open in the Slides UI. |
slides.title | stringOnly present if the https://www.googleapis.com/auth/drive.file scope has been authorized by the user . The title of the presentation open in the Slides UI. |
slides.addonHasFileScopePermission | booleanIf true , the add-on has requested and received https://www.googleapis.com/auth/drive.file scope authorization for the presentation open in the Slides UI; otherwise this field is false . |
slides.matchedUrl.url | stringOnly present if the following conditions are met:
The URL of the link that generates a preview in Google Slides. To use this field, you must configure the LinkPreviewTriggers in your add-on's manifest. See Preview links with smart chips for more details. Example payload for when a user previews the link "slides" : {
"matchedUrl" : {
"url" : "https://www.example.com/12345"
}
}
|