গুগল এডিটর ইন্টারফেস তৈরি করা

Google Workspace অ্যাড-অনগুলির সাহায্যে, আপনি Google ডক্স, শীট এবং স্লাইড সহ সম্পাদকদের মধ্যে কাস্টমাইজড ইন্টারফেস প্রদান করতে পারেন। এটি আপনাকে ব্যবহারকারীকে প্রাসঙ্গিক তথ্য প্রদান করতে, কাজগুলি স্বয়ংক্রিয় করতে এবং সম্পাদকদের সাথে তৃতীয় পক্ষের সিস্টেমগুলিকে সংযুক্ত করতে দেয়৷

অ্যাড-অন UI অ্যাক্সেস করা হচ্ছে

ডক্স, শীট এবং স্লাইড ইউজার ইন্টারফেসের ডানদিকে Google Workspace কুইক অ্যাক্সেস সাইড প্যানেলে আইকনটি দেখা গেলে আপনি সম্পাদকদের মধ্যে একটি Google Workspace অ্যাড-অন খুলতে পারেন।

একটি Google Workspace অ্যাড-অন নিম্নলিখিত ইন্টারফেসগুলি উপস্থাপন করতে পারে:

  • হোমপেজ ইন্টারফেস : অ্যাড-অনের ম্যানিফেস্টে যদি সম্পাদকের জন্য ট্রিগার EDITOR_NAME .homepageTrigger অন্তর্ভুক্ত থাকে, ব্যবহারকারী অ্যাড-অনটি খোলে, অ্যাড-অনটি সেই সম্পাদকের জন্য বিশেষভাবে একটি হোমপেজ কার্ড তৈরি করে এবং ফেরত দেয়। অ্যাড-অন-এর ম্যানিফেস্টে যদি সম্পাদকের জন্য EDITOR_NAME .homepageTrigger অন্তর্ভুক্ত না থাকে, ব্যবহারকারী এটি খোলে, তার পরিবর্তে একটি জেনেরিক হোমপেজ কার্ড প্রদর্শিত হয়৷

  • REST API ইন্টারফেস : যদি অ্যাড-অন REST API ব্যবহার করে, তাহলে আপনি ট্রিগারগুলি অন্তর্ভুক্ত করতে পারেন যা drive.file স্কোপ ব্যবহার করে একটি নথিতে প্রতি-ফাইল অ্যাক্সেসের অনুরোধ করে। একবার মঞ্জুর হলে, EDITOR_NAME .onFileScopeGrantedTrigger নামে আরেকটি ট্রিগার ফাইলের জন্য নির্দিষ্ট একটি ইন্টারফেস এক্সিকিউট করে এবং প্রদর্শন করে।

  • লিংক প্রিভিউ ইন্টারফেস : যদি আপনার অ্যাড-অন কোনো তৃতীয় পক্ষের পরিষেবার সাথে একীভূত হয়, তাহলে আপনি এমন কার্ড তৈরি করতে পারেন যা আপনার পরিষেবার URL থেকে বিষয়বস্তুর পূর্বরূপ দেখায়।

এডিটর অ্যাড-অনগুলির জন্য ইন্টারফেস তৈরি করা

এই পদক্ষেপগুলি অনুসরণ করে সম্পাদকদের জন্য এডিটর অ্যাড-অন ইন্টারফেস তৈরি করুন:

  1. অ্যাড-অন স্ক্রিপ্ট প্রজেক্ট ম্যানিফেস্টে উপযুক্ত addOns.common , addOns.docs , addOns.sheets , এবং addOns.slides ক্ষেত্র যোগ করুন।
  2. আপনার স্ক্রিপ্ট প্রজেক্ট ম্যানিফেস্টে যেকোনো প্রয়োজনীয় এডিটর স্কোপ যোগ করুন।
  3. আপনি যদি একটি সম্পাদক-নির্দিষ্ট হোমপেজ প্রদান করেন, তাহলে ইন্টারফেস তৈরি করতে EDITOR_NAME .homepageTrigger ফাংশনটি প্রয়োগ করুন৷ যদি না হয়, আপনার হোস্ট অ্যাপের জন্য একটি সাধারণ হোমপেজ তৈরি করতে common.homepageTrigger ইন্টারফেস ব্যবহার করুন।
  4. আপনি যদি REST API ব্যবহার করেন, খোলা ফাইলের জন্য নির্দিষ্ট একটি ইন্টারফেস প্রদর্শন করতে drive.file স্কোপ অনুমোদন প্রবাহ এবং EDITOR_NAME .onFileScopeGrantedTrigger ট্রিগার ফাংশন প্রয়োগ করুন। আরও তথ্যের জন্য, REST API ইন্টারফেস দেখুন।
  5. আপনি যদি তৃতীয় পক্ষের পরিষেবা থেকে লিঙ্ক প্রিভিউ কনফিগার করছেন, তাহলে https://www.googleapis.com/auth/workspace.linkpreview স্কোপ অনুমোদন প্রবাহ এবং linkPreviewTriggers ফাংশন প্রয়োগ করুন। আরও তথ্যের জন্য, লিঙ্ক প্রিভিউ ইন্টারফেস দেখুন।
  6. ব্যবহারকারীর UI ইন্টারঅ্যাকশনগুলিতে প্রতিক্রিয়া জানাতে প্রয়োজনীয় সংশ্লিষ্ট কলব্যাক ফাংশনগুলি প্রয়োগ করুন, যেমন বোতাম ক্লিক৷

সম্পাদক হোমপেজ

আপনার অ্যাড-অনের স্ক্রিপ্ট প্রকল্পে আপনাকে অবশ্যই একটি হোমপেজ ট্রিগার ফাংশন প্রদান করতে হবে যা একটি একক Card বা Card অবজেক্টের একটি অ্যারে তৈরি করে এবং ফেরত দেয় যা অ্যাড-অনের হোমপেজ তৈরি করে।

হোমপেজ ট্রিগার ফাংশনটি একটি ইভেন্ট অবজেক্টকে একটি প্যারামিটার হিসাবে পাস করা হয় যাতে ক্লায়েন্টের প্ল্যাটফর্মের মতো তথ্য থাকে। হোমপেজ নির্মাণের জন্য আপনি ইভেন্ট অবজেক্ট ডেটা ব্যবহার করতে পারেন।

আপনি একটি সাধারণ হোমপেজ বা একটি হোমপেজ উপস্থাপন করতে পারেন যা ব্যবহারকারী আপনার অ্যাড-অন খোলে সম্পাদকের জন্য নির্দিষ্ট।

সাধারণ হোমপেজ প্রদর্শন করুন

সম্পাদকদের মধ্যে আপনার অ্যাড-অনের সাধারণ হোমপেজ দেখাতে, অ্যাড-অনের ম্যানিফেস্টে উপযুক্ত সম্পাদক ক্ষেত্রগুলি, যেমন addOns.docs , addOns.sheets , বা addOns.slides অন্তর্ভুক্ত করুন৷

নিম্নলিখিত উদাহরণে Google Workspace অ্যাড-অন ম্যানিফেস্টের addons অংশ দেখানো হয়েছে। অ্যাড-অনটি ডক্স, শীট এবং স্লাইডকে প্রসারিত করে এবং প্রতিটি হোস্ট অ্যাপে সাধারণ হোমপেজ দেখায়।

 "addOns": {
    "common": {
      "name": "Translate",
      "logoUrl": "https://www.gstatic.com/images/branding/product/1x/translate_24dp.png",
      "layoutProperties": {
        "primaryColor": "#2772ed"
      },
      "homepageTrigger": {
        "runFunction": "onHomepage"
      }
    },
    "docs": {},
    "sheets": {},
    "slides": {}
  }
}

একটি সম্পাদক-নির্দিষ্ট হোমপেজ প্রদর্শন করুন

একজন সম্পাদকের জন্য নির্দিষ্ট একটি হোমপেজ উপস্থাপন করতে, অ্যাড-অন ম্যানিফেস্টে EDITOR_NAME .homepageTrigger যোগ করুন।

নিম্নলিখিত উদাহরণে Google Workspace অ্যাড-অন ম্যানিফেস্টের addons অংশ দেখানো হয়েছে। ডক্স, পত্রক এবং স্লাইডের জন্য অ্যাড-অন সক্রিয় করা হয়েছে। এটি ডক্স এবং স্লাইডে সাধারণ হোমপেজ এবং পত্রকগুলিতে একটি অনন্য হোমপেজ প্রদর্শন করে৷ onSheetsHomepage কলব্যাক ফাংশনটি শীট-নির্দিষ্ট হোমপেজ কার্ড তৈরি করে।

 "addOns": {
    "common": {
      "name": "Translate",
      "logoUrl": "https://www.gstatic.com/images/branding/product/1x/translate_24dp.png",
      "layoutProperties": {
        "primaryColor": "#2772ed"
      },
      "homepageTrigger": {
        "runFunction": "onHomepage"
      }
    },
    "docs": {},
    "slides": {},
    "sheets": {
     "homepageTrigger": {
       "runFunction": "onSheetsHomepage"
     },
  }
}

REST API ইন্টারফেস

যদি আপনার অ্যাড-অন REST API ব্যবহার করে, যেমন Google Sheets API , তাহলে আপনি Editor হোস্ট অ্যাপে খোলা ফাইলের জন্য নির্দিষ্ট একটি নতুন ইন্টারফেস প্রদর্শন করতে onFileScopeGrantedTrigger ফাংশন ব্যবহার করতে পারেন।

onFileScopeGrantedTrigger ফাংশন ব্যবহার করার জন্য আপনাকে অবশ্যই drive.file স্কোপ অনুমোদনের প্রবাহ অন্তর্ভুক্ত করতে হবে। কিভাবে drive.file স্কোপের অনুরোধ করতে হয় তা জানতে, বর্তমান নথির জন্য ফাইল অ্যাক্সেসের অনুরোধ দেখুন।

যখন একজন ব্যবহারকারী drive.file স্কোপ দেয়, EDITOR_NAME .onFileScopeGrantedTrigger.runFunction ফায়ার হয়ে যায়। যখন ট্রিগার ফায়ার হয়, তখন এটি অ্যাড-অন ম্যানিফেস্টে EDITOR_NAME .onFileScopeGrantedTrigger.runFunction ফিল্ড দ্বারা নির্দিষ্ট করা প্রাসঙ্গিক ট্রিগার ফাংশনটি চালায়।

একজন সম্পাদকের জন্য একটি REST API ইন্টারফেস তৈরি করতে, নীচের পদক্ষেপগুলি অনুসরণ করুন৷ আপনি যে এডিটর হোস্ট অ্যাপটি ব্যবহার করতে চান তার সাথে EDITOR_NAME প্রতিস্থাপন করুন, উদাহরণস্বরূপ, sheets.onFileScopeGrantedTrigger

  1. আপনার ম্যানিফেস্টের উপযুক্ত সম্পাদকের বিভাগে EDITOR_NAME .onFileScopeGrantedTrigger অন্তর্ভুক্ত করুন। উদাহরণ স্বরূপ, আপনি যদি Google Sheets-এ এই ইন্টারফেস তৈরি করতে চান, তাহলে "sheets" বিভাগে ট্রিগার যোগ করুন।
  2. EDITOR_NAME .onFileScopeGrantedTrigger বিভাগে নাম দেওয়া ফাংশনটি প্রয়োগ করুন৷ এই ফাংশনটি একটি ইভেন্ট অবজেক্টকে একটি আর্গুমেন্ট হিসাবে গ্রহণ করে এবং অবশ্যই একটি একক Card অবজেক্ট বা Card অবজেক্টের একটি অ্যারে দিতে হবে।
  3. যেকোনো কার্ডের মতো, আপনাকে অবশ্যই ইন্টারফেসের জন্য উইজেট ইন্টারঅ্যাকটিভিটি প্রদান করতে ব্যবহৃত কলব্যাক ফাংশনগুলি বাস্তবায়ন করতে হবে। উদাহরণস্বরূপ, যদি আপনি ইন্টারফেসে একটি বোতাম অন্তর্ভুক্ত করেন, তাহলে এটিতে একটি সংযুক্ত অ্যাকশন এবং একটি বাস্তবায়িত কলব্যাক ফাংশন থাকা উচিত যা বোতামটি ক্লিক করা হলে চলে৷

নিম্নলিখিত উদাহরণে Google Workspace অ্যাড-অন ম্যানিফেস্টের addons অংশ দেখানো হয়েছে। অ্যাড-অন REST API ব্যবহার করে, তাই onFileScopeGrantedTrigger Google পত্রকের জন্য অন্তর্ভুক্ত করা হয়েছে। যখন একজন ব্যবহারকারী drive.file স্কোপ প্রদান করে, তখন onFileScopeGrantedSheets কলব্যাক ফাংশন একটি ফাইল-নির্দিষ্ট ইন্টারফেস তৈরি করে।

"addOns": {
   "common": {
     "name": "Productivity add-on",
     "logoUrl": "https://www.gstatic.com/images/icons/material/system_gm/1x/work_outline_black_18dp.png",
     "layoutProperties": {
       "primaryColor": "#669df6",
       "secondaryColor": "#ee675c"
     }
   },
   "sheets": {
     "homepageTrigger": {
       "runFunction": "onEditorsHomepage"
     },
     "onFileScopeGrantedTrigger": {
       "runFunction": "onFileScopeGrantedSheets"
     }
   }

একটি তৃতীয় পক্ষের পরিষেবার জন্য লিঙ্ক প্রিভিউ চালু করতে, আপনাকে অবশ্যই আপনার অ্যাড-অনের ম্যানিফেস্টে লিঙ্ক প্রিভিউ কনফিগার করতে হবে এবং একটি ফাংশন তৈরি করতে হবে যা একটি প্রিভিউ কার্ড প্রদান করে৷ ব্যবহারকারীর অনুমোদনের প্রয়োজন হয় এমন পরিষেবাগুলির জন্য, আপনার ফাংশনকে অবশ্যই অনুমোদনের প্রবাহকে আহ্বান করতে হবে।

লিঙ্ক প্রিভিউ চালু করার ধাপগুলির জন্য, স্মার্ট চিপগুলির সাথে লিঙ্কগুলির পূর্বরূপ দেখুন।

ঘটনা বস্তু

একটি ইভেন্ট অবজেক্ট তৈরি করা হয় এবং ট্রিগার ফাংশনে প্রেরণ করা হয়, যেমন EDITOR_NAME .homepageTrigger বা EDITOR_NAME .onFileScopeGrantedTrigger । ট্রিগার ফাংশন ইভেন্ট অবজেক্টের তথ্য ব্যবহার করে কিভাবে অ্যাড-অন কার্ড তৈরি করতে হয় বা অন্যথায় অ্যাড-অন আচরণ নিয়ন্ত্রণ করতে হয়।

ইভেন্ট অবজেক্টের সম্পূর্ণ গঠন ইভেন্ট অবজেক্টে বর্ণনা করা হয়েছে।

যখন একজন সম্পাদক অ্যাড-অনের ভারপ্রাপ্ত হোস্ট অ্যাপ হয়, তখন ইভেন্ট অবজেক্টের মধ্যে ডক্স , শীট বা স্লাইড ইভেন্ট অবজেক্ট ফিল্ড অন্তর্ভুক্ত থাকে যা ক্লায়েন্টের তথ্য বহন করে।

যদি অ্যাড-অনে বর্তমান ব্যবহারকারী বা নথির জন্য drive.file স্কোপের অনুমোদন না থাকে, তাহলে ইভেন্ট অবজেক্টে শুধুমাত্র docs.addonHasFileScopePermission , sheets.addonHasFileScopePermission বা slides.addonHasFileScopePermission ক্ষেত্র থাকে। অ্যাড-অনের অনুমোদন থাকলে, ইভেন্ট অবজেক্টে সমস্ত এডিটর ইভেন্ট অবজেক্ট ক্ষেত্র থাকে।

নিম্নলিখিত উদাহরণটি একটি সম্পাদক ইভেন্ট অবজেক্ট দেখায় যা একটি sheets.onFileScopeGrantedTrigger ফাংশনে পাস করা হয়৷ এখানে, অ্যাড-অনটির বর্তমান নথির জন্য drive.file সুযোগ অনুমোদন রয়েছে:

`        {
          "commonEventObject": { ... },
          "sheets": {
            "addonHasFileScopePermission": true,
            "id":"A_24Q3CDA23112312ED52",
            "title":"How to get started with Sheets"
          },
          ...
        }