ساخت رابط های گوگل درایو

وقتی کاربر از Google Drive استفاده می‌کند، افزونه‌های Google Workspace می‌توانند رابط‌های سفارشی‌سازی شده را ارائه دهند. این به شما امکان می دهد اطلاعات مرتبط اضافی را در اختیار کاربر قرار دهید، وظایف را خودکار کنید و سیستم های شخص ثالث را به Google Drive متصل کنید.

دسترسی به رابط کاربری افزونه

اگر آیکون آن در ستون نماد در سمت راست رابط کاربری Drive ظاهر شود، می‌توانید افزونه Google Workspace را در Google Drive باز کنید. یک افزونه Google Workspace می تواند یک رابط صفحه اصلی، یک رابط انتخاب مورد یا هر دو را تعریف کند:

  • اگر کاربر در حین حضور در Google Drive روی نماد افزونه کلیک کند، این افزونه عملکرد drive.homepageTrigger مربوطه را (در صورت وجود) اجرا می کند. این تابع یک کارت صفحه اصلی را برای نمایش به Google Drive می سازد و برمی گرداند. اگر عملکرد drive.homepageTrigger تعریف نشده باشد، به جای آن یک کارت صفحه اصلی عمومی نمایش داده می شود.
  • اگر کاربر یک یا چند مورد را در Google Drive انتخاب کند و سپس روی نماد برافزا کلیک کند، یا در حالی که افزونه باز است، موارد را انتخاب کند، برافزا تابع متنی drive.onItemsSelectedTrigger مربوطه را (در صورت وجود) اجرا می‌کند. این تابع رابط کاربری متنی «اقلام انتخاب شده» Google Drive افزونه را می سازد و آن را برای نمایش به Google Drive برمی گرداند.

ساخت رابط افزودنی Drive

با دنبال کردن این مراحل کلی می‌توانید رابط‌هایی بسازید که Google Drive را گسترش دهند:

  1. تصمیم بگیرید که آیا می‌خواهید افزونه شما یک صفحه اصلی مخصوص Drive داشته باشد یا خیر. همچنین تصمیم بگیرید که آیا می‌خواهید یک رابط متنی برای زمانی که کاربر موارد Drive را انتخاب می‌کند ارائه دهید.
  2. فیلدهای addOns.common و addOns.drive مناسب را به مانیفست پروژه اسکریپت افزودنی اضافه کنید، از جمله هر حوزه Drive مورد نیاز.
  3. اگر یک صفحه اصلی مخصوص Drive ارائه می‌کنید، تابع drive.homepageTrigger را برای ساخت این رابط پیاده‌سازی کنید. همچنین می‌توانید از رابط common.homepageTrigger برای چندین میزبان Google Workspace استفاده کنید.
  4. اگر یک واسط انتخاب آیتم متنی Drive ارائه می‌کنید، باید یک تابع راه‌انداز متنی drive.onItemsSelectedTrigger را برای ساخت این رابط پیاده‌سازی کنید. برای جزئیات بیشتر به رابط متنی Drive برای موارد انتخاب شده مراجعه کنید.
  5. توابع مربوط به پاسخ به تماس مورد نیاز برای پاسخگویی به تعاملات رابط کاربری کاربر، مانند کلیک روی دکمه، را اجرا کنید.

درایو صفحات اصلی

Google Drive از نمایش صفحات اصلی افزونه Google Workspace پشتیبانی می کند. برای نشان دادن صفحه اصلی مشترک افزونه خود در Google Drive، فقط مطمئن شوید که یک فیلد addOns.drive در مانیفست افزونه وجود دارد.

از طرف دیگر، یک drive.homepageTrigger را به مانیفست افزودنی اضافه کنید تا یک صفحه اصلی مخصوص Drive ارائه شود.

در هر صورت، باید نام یک تابع راه‌اندازی صفحه اصلی را در پروژه اسکریپت افزونه خود وارد کنید. این تابع به طور خودکار برای ساختن صفحه اصلی Drive در صورت نیاز فراخوانی می شود. شما باید این تابع را برای ساختن و برگرداندن یک Card یا آرایه ای از اشیاء Card که صفحه اصلی را تشکیل می دهند، پیاده سازی کنید. تابع ماشه صفحه اصلی به یک شی رویداد به عنوان پارامتر ارسال می شود که حاوی برخی اطلاعات کلی مانند پلت فرم مشتری است. می‌توانید از داده‌های شی رویداد برای تنظیم ساخت صفحه اصلی استفاده کنید.

رابط متنی را برای موارد انتخاب شده هدایت کنید

Google Drive برای تعیین اینکه چه رابطی (در صورت وجود) هنگام انتخاب یک یا چند مورد Google Drive توسط کاربر نمایش داده شود، به یک راه‌انداز متنی متکی است. هنگامی که تریگر فعال می شود، تابع تریگر متنی مشخص شده توسط drive.onItemsSelectedTrigger.runFunction در مانیفست افزودنی را اجرا می کند.

برای ایجاد یک رابط انتخاب مورد متنی برای Drive، باید موارد زیر را انجام دهید:

  1. مطمئن شوید که مانیفست افزونه شامل https://www.googleapis.com/auth/drive.addons.metadata.readonly محدوده

  2. مطمئن شوید که مانیفست دارای یک بخش drive.onItemsSelectedTrigger است.

  3. تابع نامگذاری شده در قسمت drive.onItemsSelectedTrigger را پیاده سازی کنید. این تابع یک شی رویداد را به عنوان آرگومان می پذیرد و باید یک شی Card یا آرایه ای از اشیاء Card را برگرداند.

  4. مانند هر کارت دیگری، باید هر توابع پاسخ به تماسی را که برای ارائه تعامل ویجت برای رابط استفاده می شود، پیاده سازی کنید. برای مثال، اگر دکمه‌ای را در اینترفیس قرار دهید، باید یک Action پیوست و یک تابع callback اجرا شده داشته باشد که با کلیک روی دکمه اجرا شود.

اشیاء رویداد

هنگامی که آن توابع فراخوانی می شوند، یک شی رویداد ایجاد می شود و به تابع محرک drive.homepageTrigger یا drive.onItemsSelectedTrigger ارسال می شود. تابع ماشه می تواند از اطلاعات موجود در این شی رویداد برای تعیین نحوه ساخت کارت های افزودنی یا کنترل رفتار افزونه استفاده کند.

ساختار کامل اشیاء رویداد در اشیاء رویداد توضیح داده شده است. وقتی Drive برنامه میزبان فعال افزونه است، اشیاء رویداد متنی شامل فیلد شی رویداد Drive است که اطلاعات مشتری خاص Drive را حمل می کند.

اشیاء رویداد Contextual Drive برای محرک‌های انتخاب مورد شامل اطلاعات مواردی است که کاربر هنگام فعال شدن ماشه انتخاب کرده است. وقتی کاربر بیش از یک مورد را در Drive انتخاب می‌کند، یکی از موارد مورد علاقه اصلی در نظر گرفته می‌شود. این مورد به عنوان آیتم مکان نما فعال نامیده می شود.

مثال زیر یک شی رویداد Drive را نشان می دهد که به یک تابع drive.onItemsSelectedTrigger ارسال می شود:

    {
      "commonEventObject": { ... },
      "drive": {
        "activeCursorItem":{
          "addonHasFileScopePermission": true,
          "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
          "iconUrl": "https://drive-thirdparty.googleusercontent.com...",
          "mimeType":"application/pdf",
          "title":"How to get started with Drive"
        },
        "selectedItems": [
          {
            "addonHasFileScopePermission": true,
            "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
            "iconUrl":"https://drive-thirdparty.googleusercontent.com...",
            "mimeType":"application/pdf",
            "title":"How to get started with Drive"
          },
          ...
        ]
      },
      ...
    }