Class ScriptApp

স্ক্রিপ্ট অ্যাপ

স্ক্রিপ্ট প্রকাশনা এবং ট্রিগার অ্যাক্সেস এবং ম্যানিপুলেট করুন। এই ক্লাসটি ব্যবহারকারীদের স্ক্রিপ্ট ট্রিগার তৈরি করতে এবং পরিষেবা হিসাবে স্ক্রিপ্ট প্রকাশনা নিয়ন্ত্রণ করতে দেয়।

বৈশিষ্ট্য

সম্পত্তি আদর্শ বিবরণ
Auth Mode Auth Mode একটি গণনা যা চিহ্নিত করে যে অ্যাপস স্ক্রিপ্ট কোন শ্রেণীর অনুমোদিত পরিষেবাগুলি ট্রিগার করা ফাংশনের মাধ্যমে কার্যকর করতে সক্ষম।
Authorization Status Authorization Status একটি স্ক্রিপ্টের অনুমোদনের অবস্থা নির্দেশ করে এমন একটি গণনা।
Event Type Event Type ট্রিগার করা ইভেন্টের ধরণ নির্দেশ করে এমন একটি গণনা।
Installation Source Installation Source একটি গণনা যা নির্দেশ করে যে স্ক্রিপ্টটি কীভাবে ব্যবহারকারীর কাছে অ্যাড-অন হিসেবে ইনস্টল করা হয়েছিল।
Trigger Source Trigger Source ট্রিগারটি যে ঘটনার কারণে জ্বলে ওঠে তার উৎস নির্দেশ করে এমন একটি গণনা।
Week Day Weekday সপ্তাহের দিনগুলির প্রতিনিধিত্বকারী একটি গণনা।

পদ্ধতি

পদ্ধতি রিটার্ন টাইপ সংক্ষিপ্ত বিবরণ
delete Trigger(trigger) void প্রদত্ত ট্রিগারটি সরিয়ে দেয় যাতে এটি আর চলে না।
get Authorization Info(authMode) Authorization Info একটি অবজেক্ট পায় যা ব্যবহারকারী সমস্ত স্ক্রিপ্ট প্রয়োজনীয়তার জন্য অনুমোদন দিয়েছে কিনা তা পরীক্ষা করে।
get Authorization Info(authMode, oAuthScopes) Authorization Info একটি অবজেক্ট পায় যা ব্যবহারকারী অনুরোধকৃত স্কোপগুলির জন্য অনুমোদন দিয়েছে কিনা তা পরীক্ষা করে।
get Identity Token() String|null যদি openid সুযোগ মঞ্জুর করা হয়, তাহলে কার্যকর ব্যবহারকারীর জন্য একটি Open ID Connect পরিচয় টোকেন পায়।
get Installation Source() Installation Source একটি enum মান প্রদান করে যা নির্দেশ করে যে স্ক্রিপ্টটি বর্তমান ব্যবহারকারীর জন্য অ্যাড-অন হিসেবে কীভাবে ইনস্টল করা হয়েছিল (উদাহরণস্বরূপ, ব্যবহারকারী Chrome ওয়েব স্টোরের মাধ্যমে ব্যক্তিগতভাবে এটি ইনস্টল করেছেন কিনা, অথবা কোনও ডোমেন প্রশাসক এটি সমস্ত ব্যবহারকারীর জন্য ইনস্টল করেছেন কিনা)।
get OAuth Token() String কার্যকর ব্যবহারকারীর জন্য OAuth 2.0 অ্যাক্সেস টোকেন পায়।
get Project Triggers() Trigger[] বর্তমান প্রকল্প এবং বর্তমান ব্যবহারকারীর সাথে সম্পর্কিত সমস্ত ইনস্টলযোগ্য ট্রিগার পায়।
get Script Id() String স্ক্রিপ্ট প্রকল্পের অনন্য আইডি পায়।
get Service() Service একটি ওয়েব অ্যাপ হিসেবে স্ক্রিপ্ট প্রকাশ নিয়ন্ত্রণ করতে ব্যবহৃত একটি বস্তু পায়।
get User Triggers(document) Trigger[] শুধুমাত্র এই স্ক্রিপ্ট বা অ্যাড-অনের জন্য, প্রদত্ত নথিতে এই ব্যবহারকারীর মালিকানাধীন সমস্ত ইনস্টলযোগ্য ট্রিগার পায়।
get User Triggers(form) Trigger[] এই ব্যবহারকারীর মালিকানাধীন সমস্ত ইনস্টলযোগ্য ট্রিগার প্রদত্ত ফর্মে, শুধুমাত্র এই স্ক্রিপ্ট বা অ্যাড-অনের জন্য পায়।
get User Triggers(spreadsheet) Trigger[] শুধুমাত্র এই স্ক্রিপ্ট বা অ্যাড-অনের জন্য, প্রদত্ত স্প্রেডশিটে এই ব্যবহারকারীর মালিকানাধীন সমস্ত ইনস্টলযোগ্য ট্রিগার পায়।
invalidate Auth() void বর্তমান স্ক্রিপ্টটি কার্যকর করার জন্য কার্যকর ব্যবহারকারীর যে অনুমোদন রয়েছে তা বাতিল করে।
new State Token() State Token Builder একটি স্টেট টোকেনের জন্য একটি বিল্ডার তৈরি করে যা একটি কলব্যাক API (যেমন একটি OAuth প্রবাহ) তে ব্যবহার করা যেতে পারে।
new Trigger(functionName) Trigger Builder একটি ইনস্টলযোগ্য ট্রিগার তৈরির প্রক্রিয়া শুরু করে যা চালু হলে, একটি প্রদত্ত ফাংশনকে কল করে।
require All Scopes(authMode) void স্ক্রিপ্টের অনুরোধ করা সমস্ত স্কোপের জন্য ব্যবহারকারী সম্মতি দিয়েছেন কিনা তা যাচাই করে।
require Scopes(authMode, oAuthScopes) void ব্যবহারকারী অনুরোধকৃত স্কোপের জন্য সম্মতি দিয়েছেন কিনা তা যাচাই করে।

বিস্তারিত ডকুমেন্টেশন

delete Trigger(trigger)

প্রদত্ত ট্রিগারটি সরিয়ে দেয় যাতে এটি আর চলে না।

// Deletes all triggers in the current project.
const triggers = ScriptApp.getProjectTriggers();
for (let i = 0; i < triggers.length; i++) {
  ScriptApp.deleteTrigger(triggers[i]);
}

পরামিতি

নাম আদর্শ বিবরণ
trigger Trigger মুছে ফেলার জন্য ট্রিগার।

অনুমোদন

এই পদ্ধতি ব্যবহার করে এমন স্ক্রিপ্টগুলির জন্য নিম্নলিখিত এক বা একাধিক স্কোপের অনুমোদন প্রয়োজন:

  • https://www.googleapis.com/auth/script.scriptapp

get Authorization Info(authMode)

একটি অবজেক্ট পায় যা ব্যবহারকারীকে সমস্ত স্ক্রিপ্ট প্রয়োজনীয়তার জন্য অনুমোদন দেওয়া হয়েছে কিনা তা পরীক্ষা করে। অবজেক্টটি ব্যবহারকারীদের সেই অনুমতিগুলি প্রদানের জন্য একটি অনুমোদন URLও প্রদান করে, যদি কোনও স্ক্রিপ্ট প্রয়োজনীয়তা অনুমোদিত না হয়।

কিছু স্ক্রিপ্ট এক্সিকিউশন ব্যবহারকারীর সম্মতি ছাড়াই স্ক্রিপ্ট দ্বারা ব্যবহৃত সমস্ত প্রয়োজনীয় স্কোপের জন্য শুরু হতে পারে। এই অবজেক্টের তথ্য আপনাকে কোডের সেই বিভাগগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে দেয় যার জন্য নির্দিষ্ট স্কোপের প্রয়োজন হয় এবং পরবর্তী এক্সিকিউশনের জন্য সেই স্কোপের অনুমোদনের অনুরোধ করতে দেয়।

const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL);
const status = authInfo.getAuthorizationStatus();
const url = authInfo.getAuthorizationUrl();

পরামিতি

নাম আদর্শ বিবরণ
auth Mode Auth Mode যে অনুমোদন মোডের জন্য অনুমোদনের তথ্য চাওয়া হয়; প্রায় সব ক্ষেত্রেই, auth Mode মান Script App.getAuthorizationInfo(ScriptApp.AuthMode.FULL) হওয়া উচিত, কারণ অন্য কোনও অনুমোদন মোডের জন্য ব্যবহারকারীদের অনুমোদন প্রদানের প্রয়োজন হয় না।

প্রত্যাবর্তন

Authorization Info — এমন একটি বস্তু যা ব্যবহারকারীর অনুমোদনের অবস্থা সম্পর্কে তথ্য প্রদান করতে পারে।


get Authorization Info(authMode, oAuthScopes)

একটি অবজেক্ট পায় যা ব্যবহারকারী অনুরোধকৃত স্কোপগুলির জন্য অনুমোদন প্রদান করেছেন কিনা তা পরীক্ষা করে। অনুরোধকৃত স্কোপগুলির কোনওটি অনুমোদিত না হলে, ব্যবহারকারীদের সেই অনুমতিগুলি প্রদানের জন্য অবজেক্টটি একটি অনুমোদন URLও প্রদান করে।

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

const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL, [
  'https://www.googleapis.com/auth/documents',
  'https://www.googleapis.com/auth/presentations',
]);
const status = authInfo.getAuthorizationStatus();
const url = authInfo.getAuthorizationUrl();

পরামিতি

নাম আদর্শ বিবরণ
auth Mode Auth Mode যে অনুমোদন মোডের জন্য অনুমোদনের তথ্য চাওয়া হয়; প্রায় সব ক্ষেত্রেই, auth Mode মান Script App.AuthMode.FULL হওয়া উচিত, কারণ অন্য কোনও অনুমোদন মোডের জন্য ব্যবহারকারীদের অনুমোদন প্রদানের প্রয়োজন হয় না।
oAuthScopes String[] OAuth স্কোপগুলি সেইসব বিষয়কে নির্দেশ করে যার জন্য অনুমোদনের তথ্য অনুরোধ করা হয়েছে।

প্রত্যাবর্তন

Authorization Info — এমন একটি বস্তু যা ব্যবহারকারীর অনুমোদনের স্থিতি এবং কিছু সম্মতি অনুপস্থিত থাকলে একটি অনুমোদনের URL সম্পর্কে তথ্য প্রদান করে।


get Identity Token()

যদি openid স্কোপটি মঞ্জুর করা হয়ে থাকে, তাহলে কার্যকর ব্যবহারকারীর জন্য একটি Open ID Connect পরিচয় টোকেন পায়। এই স্কোপটি ডিফল্টরূপে অন্তর্ভুক্ত থাকে না এবং এটির অনুরোধ করার জন্য আপনাকে ম্যানিফেস্ট ফাইলে এটি একটি স্পষ্ট স্কোপ হিসাবে যুক্ত করতে হবে। টোকেনে অতিরিক্ত ব্যবহারকারীর তথ্য ফেরত দিতে https://www.googleapis.com/auth/userinfo.email অথবা https://www.googleapis.com/auth/userinfo.profile স্কোপগুলি অন্তর্ভুক্ত করুন।

ফেরত দেওয়া আইডি টোকেনটি একটি এনকোডেড JSON ওয়েব টোকেন (JWT) এবং এটি থেকে তথ্য বের করার জন্য এটি ডিকোড করতে হবে। নিম্নলিখিত উদাহরণগুলি দেখায় যে কীভাবে টোকেনটি ডিকোড করতে হয় এবং কার্যকর ব্যবহারকারীর গুগল প্রোফাইল আইডি বের করতে হয়।

const idToken = ScriptApp.getIdentityToken();
const body = idToken.split('.')[1];
const decoded = Utilities
                    .newBlob(
                        Utilities.base64Decode(body),
                        )
                    .getDataAsString();
const payload = JSON.parse(decoded);

Logger.log(`Profile ID: ${payload.sub}`);
ফিরে আসা ক্ষেত্রগুলির (দাবিগুলির) সম্পূর্ণ তালিকার জন্য Open ID Connect ডকুমেন্টেশন দেখুন।

প্রত্যাবর্তন

String|null — যদি পাওয়া যায় তাহলে পরিচয় টোকেন; অন্যথায় null


get Installation Source()

একটি enum মান প্রদান করে যা নির্দেশ করে যে স্ক্রিপ্টটি বর্তমান ব্যবহারকারীর জন্য অ্যাড-অন হিসেবে কীভাবে ইনস্টল করা হয়েছিল (উদাহরণস্বরূপ, ব্যবহারকারী Chrome ওয়েব স্টোরের মাধ্যমে ব্যক্তিগতভাবে এটি ইনস্টল করেছেন কিনা, অথবা কোনও ডোমেন প্রশাসক এটি সমস্ত ব্যবহারকারীর জন্য ইনস্টল করেছেন কিনা)।

প্রত্যাবর্তন

Installation Source — ইনস্টলেশনের উৎস।


get OAuth Token()

কার্যকর ব্যবহারকারীর জন্য OAuth 2.0 অ্যাক্সেস টোকেন পায়। যদি স্ক্রিপ্টের OAuth স্কোপগুলি অন্য কোনও Google API অনুমোদনের জন্য যথেষ্ট হয় যার জন্য সাধারণত নিজস্ব OAuth প্রবাহের প্রয়োজন হয় (যেমন Google Picker ), তাহলে স্ক্রিপ্টগুলি এই টোকেনটি পাস করে দ্বিতীয় অনুমোদন প্রম্পটটি বাইপাস করতে পারে। টোকেনটি একটি সময় পরে (কমপক্ষে কয়েক মিনিট) মেয়াদ শেষ হয়ে যায়; স্ক্রিপ্টগুলি অনুমোদনের ব্যর্থতাগুলি পরিচালনা করবে এবং প্রয়োজনে একটি নতুন টোকেন পেতে এই পদ্ধতিটি কল করবে।

এই পদ্ধতিতে ফেরত দেওয়া টোকেনে শুধুমাত্র সেইসব স্কোপ থাকে যা স্ক্রিপ্টের বর্তমানে প্রয়োজন। যেসব স্কোপ আগে অনুমোদিত ছিল কিন্তু স্ক্রিপ্ট এখন আর ব্যবহার করে না, সেগুলো ফেরত দেওয়া টোকেনে অন্তর্ভুক্ত থাকে না। যদি স্ক্রিপ্টের প্রয়োজনের বাইরে অতিরিক্ত OAuth স্কোপ প্রয়োজন হয়, তাহলে সেগুলো স্ক্রিপ্টের ম্যানিফেস্ট ফাইলে নির্দিষ্ট করা যেতে পারে।

এই পদ্ধতি ব্যবহার করে আপনি Google API গুলিকে কল করতে পারেন যেগুলি Apps Script সরাসরি সমর্থন করে না। Url Fetch App.fetch(url, params) ব্যবহার করে HTTP অনুরোধের `Authorization` হেডারে ফেরত টোকেনটি পাস করুন।

const url = 'https://www.googleapis.com/drive/v3/files';
const method = 'GET';
const headers = {
  Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
};
const response = UrlFetchApp.fetch(url, {
  method,
  headers,
});

প্রত্যাবর্তন

String — OAuth 2.0 টোকেনের একটি স্ট্রিং উপস্থাপনা।


get Project Triggers()

বর্তমান প্রকল্প এবং বর্তমান ব্যবহারকারীর সাথে সম্পর্কিত সমস্ত ইনস্টলযোগ্য ট্রিগার পায়।

Logger.log(
    `Current project has ${ScriptApp.getProjectTriggers().length} triggers.`,
);

প্রত্যাবর্তন

Trigger[] — এই প্রকল্পের সাথে সম্পর্কিত বর্তমান ব্যবহারকারীর ট্রিগারগুলির একটি অ্যারে।

অনুমোদন

এই পদ্ধতি ব্যবহার করে এমন স্ক্রিপ্টগুলির জন্য নিম্নলিখিত এক বা একাধিক স্কোপের অনুমোদন প্রয়োজন:

  • https://www.googleapis.com/auth/script.scriptapp

get Script Id()

স্ক্রিপ্ট প্রজেক্টের অনন্য আইডি পায়। স্ক্রিপ্ট প্রজেক্টের জন্য অনন্য শনাক্তকারী পাওয়ার জন্য এটি পছন্দের পদ্ধতি, get Project Key() এর বিপরীতে। এই আইডিটি এমন সব জায়গায় ব্যবহার করা যেতে পারে যেখানে আগে প্রজেক্ট কী দেওয়া হয়েছিল।

প্রত্যাবর্তন

String — স্ক্রিপ্ট প্রকল্পের আইডি।


get Service()

একটি ওয়েব অ্যাপ হিসেবে স্ক্রিপ্ট প্রকাশ নিয়ন্ত্রণ করতে ব্যবহৃত একটি বস্তু পায়।

// Get the URL of the published web app.
const url = ScriptApp.getService().getUrl();

প্রত্যাবর্তন

Service — একটি ওয়েব অ্যাপ হিসেবে স্ক্রিপ্ট প্রকাশ পর্যবেক্ষণ এবং নিয়ন্ত্রণ করতে ব্যবহৃত একটি বস্তু।


get User Triggers(document)

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

const doc = DocumentApp.getActiveDocument();
const triggers = ScriptApp.getUserTriggers(doc);
// Log the handler function for the first trigger in the array.
Logger.log(triggers[0].getHandlerFunction());

পরামিতি

নাম আদর্শ বিবরণ
document Document একটি Google ডক্স ফাইল যাতে ইনস্টলযোগ্য ট্রিগার থাকতে পারে।

প্রত্যাবর্তন

Trigger[] — প্রদত্ত নথিতে এই ব্যবহারকারীর মালিকানাধীন ট্রিগারগুলির একটি অ্যারে।

অনুমোদন

এই পদ্ধতি ব্যবহার করে এমন স্ক্রিপ্টগুলির জন্য নিম্নলিখিত এক বা একাধিক স্কোপের অনুমোদন প্রয়োজন:

  • https://www.googleapis.com/auth/script.scriptapp

get User Triggers(form)

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

const form = FormApp.getActiveForm();
const triggers = ScriptApp.getUserTriggers(form);
// Log the trigger source for the first trigger in the array.
Logger.log(triggers[0].getTriggerSource());

পরামিতি

নাম আদর্শ বিবরণ
form Form একটি Google ফর্ম ফাইল যাতে ইনস্টলযোগ্য ট্রিগার থাকতে পারে।

প্রত্যাবর্তন

Trigger[] — প্রদত্ত ফর্মে এই ব্যবহারকারীর মালিকানাধীন ট্রিগারগুলির একটি অ্যারে।

অনুমোদন

এই পদ্ধতি ব্যবহার করে এমন স্ক্রিপ্টগুলির জন্য নিম্নলিখিত এক বা একাধিক স্কোপের অনুমোদন প্রয়োজন:

  • https://www.googleapis.com/auth/script.scriptapp

get User Triggers(spreadsheet)

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const triggers = ScriptApp.getUserTriggers(ss);
// Log the event type for the first trigger in the array.
Logger.log(triggers[0].getEventType());

পরামিতি

নাম আদর্শ বিবরণ
spreadsheet Spreadsheet একটি Google Sheets ফাইল যাতে ইনস্টলযোগ্য ট্রিগার থাকতে পারে।

প্রত্যাবর্তন

Trigger[] — প্রদত্ত স্প্রেডশিটে এই ব্যবহারকারীর মালিকানাধীন ট্রিগারগুলির একটি অ্যারে।

অনুমোদন

এই পদ্ধতি ব্যবহার করে এমন স্ক্রিপ্টগুলির জন্য নিম্নলিখিত এক বা একাধিক স্কোপের অনুমোদন প্রয়োজন:

  • https://www.googleapis.com/auth/script.scriptapp

invalidate Auth()

বর্তমান স্ক্রিপ্টটি কার্যকর করার জন্য কার্যকর ব্যবহারকারীর যে অনুমোদন আছে তা বাতিল করে। বর্তমান স্ক্রিপ্টের জন্য যেকোনো অনুমতি বাতিল করতে ব্যবহৃত হয়। এটি বিশেষ করে ওয়ান-শট অনুমোদন হিসেবে ট্যাগ করা ফাংশনগুলির জন্য কার্যকর। যেহেতু ওয়ান-শট অনুমোদন ফাংশনগুলিকে স্ক্রিপ্ট অনুমোদন অর্জনের পরে কেবল প্রথম রান বলা যেতে পারে, যদি আপনি পরে কোনও কাজ করতে চান, তাহলে আপনাকে স্ক্রিপ্টের যে কোনও অনুমোদন বাতিল করতে হবে, যাতে ব্যবহারকারী আবার অনুমোদনের ডায়ালগ দেখতে পারেন।

ScriptApp.invalidateAuth();

থ্রো

Error — যখন অবৈধকরণ ব্যর্থ হয়


new State Token()

একটি স্টেট টোকেনের জন্য একটি বিল্ডার তৈরি করে যা একটি কলব্যাক API (যেমন একটি OAuth প্রবাহ) তে ব্যবহার করা যেতে পারে।

// Generate a callback URL, given the name of a callback function. The script
// does not need to be published as a web app; the /usercallback URL suffix
// replaces /edit in any script's URL.
function getCallbackURL(callbackFunction) {
  // IMPORTANT: Replace string below with the URL from your script, minus the
  // /edit at the end.
  const scriptUrl =
      'https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz';
  const urlSuffix = '/usercallback?state=';
  const stateToken = ScriptApp.newStateToken()
                         .withMethod(callbackFunction)
                         .withTimeout(120)
                         .createToken();
  return scriptUrl + urlSuffix + stateToken;
}

বেশিরভাগ OAuth2 প্রবাহে, state টোকেনটি সরাসরি অনুমোদনের শেষ বিন্দুতে প্রেরণ করা হয় (কলব্যাক URL এর অংশ হিসাবে নয়), এবং অনুমোদনের শেষ বিন্দুটি কলব্যাক URL এর অংশ হিসাবে এটি প্রেরণ করে।

উদাহরণস্বরূপ:

  • স্ক্রিপ্টটি ব্যবহারকারীকে OAuth2 অনুমোদন URL-এ পুনঃনির্দেশিত করে: https://accounts.google.com/o/oauth2/auth?state=token_generated_with_this_method&callback_uri=https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback&other_oauth2_parameters
  • ব্যবহারকারী অনুমোদনে ক্লিক করে, এবং OAuth2 অনুমোদন পৃষ্ঠা ব্যবহারকারীকে https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback?state=token_generated_with_this_method&other_params_that_include_tokens_or_grants এ পুনঃনির্দেশিত করে।
  • উপরের পুনঃনির্দেশনা ( http://script.google.com/... তে ফিরে যান), ব্রাউজার অনুরোধকে /usercallback তে পাঠায়, যা State Token Builder.withMethod(method) দ্বারা নির্দিষ্ট পদ্ধতিটি আহ্বান করে।

প্রত্যাবর্তন

State Token Builder — স্টেট-টোকেন-বিল্ডিং প্রক্রিয়া চালিয়ে যাওয়ার জন্য ব্যবহৃত একটি বস্তু।


new Trigger(functionName)

একটি ইনস্টলযোগ্য ট্রিগার তৈরির প্রক্রিয়া শুরু করে যা চালু হলে, একটি প্রদত্ত ফাংশনকে কল করে।

// Creates an edit trigger for a spreadsheet identified by ID.
ScriptApp.newTrigger('myFunction')
    .forSpreadsheet('1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3')
    .onEdit()
    .create();

ট্রিগার তৈরি করার আগে, যাচাই করুন যে সংশ্লিষ্ট ফাংশনটিতে সমস্ত প্রয়োজনীয় OAuth অনুমতি রয়েছে।

পরামিতি

নাম আদর্শ বিবরণ
function Name String ট্রিগারটি চালু হলে কল করার ফাংশন। আপনি অন্তর্ভুক্ত লাইব্রেরি থেকে ফাংশন ব্যবহার করতে পারেন, যেমন Library.libFunction1

প্রত্যাবর্তন

Trigger Builder — ট্রিগার-বিল্ডিং প্রক্রিয়া চালিয়ে যেতে ব্যবহৃত একটি বস্তু।

অনুমোদন

এই পদ্ধতি ব্যবহার করে এমন স্ক্রিপ্টগুলির জন্য নিম্নলিখিত এক বা একাধিক স্কোপের অনুমোদন প্রয়োজন:

  • https://www.googleapis.com/auth/script.scriptapp

require All Scopes(authMode)

স্ক্রিপ্টের অনুরোধ করা সমস্ত স্কোপের জন্য ব্যবহারকারী সম্মতি দিয়েছেন কিনা তা যাচাই করে। যদি কোনও এক্সিকিউশন ফ্লো স্ক্রিপ্টের অনুরোধ করা সমস্ত স্কোপের উপর নির্ভর করে তবে এই পদ্ধতিটি ব্যবহার করুন। যদি কোনও সম্মতি অনুপস্থিত থাকে, তাহলে এই পদ্ধতিটি বর্তমান এক্সিকিউশনটি শেষ করে এবং অনুপস্থিত সম্মতিগুলির অনুরোধ করার জন্য একটি অনুমোদন প্রম্পট রেন্ডার করে।

এই পদ্ধতিটি কেবল তখনই কাজ করে যখন ব্যবহারকারীরা এমন কোনও সারফেস থেকে স্ক্রিপ্ট চালান যা গ্রানুলার কনসেন্ট সাপোর্ট করে, উদাহরণস্বরূপ, অ্যাপস স্ক্রিপ্ট IDE এর মধ্যে থেকে। যখন কোনও অসমর্থিত সারফেস, যেমন Google Workspace অ্যাড-অন, থেকে অনুপস্থিত সম্মতি সহ স্ক্রিপ্ট চালানো হয়, তখন স্ক্রিপ্টটি কার্যকর করার শুরুতে সমস্ত স্কোপ অনুরোধ করার জন্য একটি অনুমোদন প্রম্পট রেন্ডার করে।

ScriptApp.requireAllScopes(ScriptApp.AuthMode.FULL);

পরামিতি

নাম আদর্শ বিবরণ
auth Mode Auth Mode যে অনুমোদন মোডের জন্য স্ক্রিপ্ট স্কোপগুলি মূল্যায়ন করা প্রয়োজন, প্রায় সব ক্ষেত্রেই, auth Mode মান Script App.AuthMode.FULL হওয়া উচিত, কারণ অন্য কোনও অনুমোদন মোডের জন্য ব্যবহারকারীদের অনুমোদন দেওয়ার প্রয়োজন হয় না।

require Scopes(authMode, oAuthScopes)

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

এই পদ্ধতিটি কেবল তখনই কাজ করে যখন ব্যবহারকারীরা এমন কোনও সারফেস থেকে স্ক্রিপ্ট চালান যা গ্রানুলার কনসেন্ট সাপোর্ট করে, উদাহরণস্বরূপ, অ্যাপস স্ক্রিপ্ট IDE এর মধ্যে থেকে। যখন কোনও অসমর্থিত সারফেস, যেমন Google Workspace অ্যাড-অন, থেকে অনুপস্থিত সম্মতি সহ স্ক্রিপ্ট চালানো হয়, তখন স্ক্রিপ্টটি কার্যকর করার শুরুতে সমস্ত স্কোপ অনুরোধ করার জন্য একটি অনুমোদন প্রম্পট রেন্ডার করে।

ScriptApp.requireScopes(ScriptApp.AuthMode.FULL, [
  'https://www.googleapis.com/auth/documents',
  'https://www.googleapis.com/auth/presentations',
]);

পরামিতি

নাম আদর্শ বিবরণ
auth Mode Auth Mode যে অনুমোদন মোডের জন্য অনুরোধ করা স্কোপগুলি মূল্যায়ন করা প্রয়োজন, প্রায় সব ক্ষেত্রেই, auth Mode মান Script App.AuthMode.FULL হওয়া উচিত, কারণ অন্য কোনও অনুমোদন মোডের জন্য ব্যবহারকারীদের অনুমোদন দেওয়ার প্রয়োজন হয় না।
oAuthScopes String[] প্রদত্ত এক্সিকিউশন ফ্লো সম্পূর্ণ করার জন্য প্রয়োজনীয় OAuth স্কোপগুলি।

অবচিত পদ্ধতি