ইভেন্ট অবজেক্ট

সিম্পল ট্রিগার এবং ইন্সটলেবল ট্রিগার গুগল অ্যাপস স্ক্রিপ্টকে কোনো নির্দিষ্ট ঘটনা ঘটলে স্বয়ংক্রিয়ভাবে একটি ফাংশন চালাতে দেয়। যখন একটি ট্রিগার ফায়ার হয়, অ্যাপস স্ক্রিপ্ট ফাংশনটিতে একটি ইভেন্ট অবজেক্ট আর্গুমেন্ট হিসেবে পাঠায়, যা সাধারণত e হয়ে থাকে। ইভেন্ট অবজেক্টটিতে সেই প্রেক্ষাপট সম্পর্কিত তথ্য থাকে যার কারণে ট্রিগারটি ফায়ার হয়েছে। উদাহরণস্বরূপ, নিচের নমুনা কোডটি একটি গুগল শিটস স্ক্রিপ্টের জন্য একটি সাধারণ onEdit(e) ট্রিগার দেখাচ্ছে, যা কোন সেলটি এডিট করা হয়েছে তা নির্ধারণ করতে ইভেন্ট অবজেক্টটি ব্যবহার করে।

function onEdit(e){
  // Set a comment on the edited cell to indicate when it was changed.
  var range = e.range;
  range.setNote('Last modified: ' + new Date());
}

এই পৃষ্ঠায় বিভিন্ন ধরনের ট্রিগারের জন্য ইভেন্ট অবজেক্টের ফিল্ডগুলো বর্ণনা করা হয়েছে।

ইনস্টলযোগ্য ট্রিগার দ্বারা উৎপাদিত ইভেন্টগুলিতে একটি triggerUid থাকে, যা ইভেন্টটি উৎপাদনকারী ট্রিগারটিকে শনাক্ত করে। এটি এমন স্ক্রিপ্টগুলিকে সাহায্য করে যেগুলিতে একাধিক ইনস্টলযোগ্য ট্রিগার রয়েছে।

গুগল শিটস ইভেন্ট

গুগল শিটস-এর বিভিন্ন নির্দিষ্ট ট্রিগার স্ক্রিপ্টকে স্প্রেডশিটে ব্যবহারকারীর কার্যকলাপের প্রতি সাড়া দিতে সাহায্য করে।

খোলা

( সহজ এবং ইনস্টলযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

LIMITED
source

একটি Spreadsheet অবজেক্ট, যা সেই শীটস ফাইলকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি সংযুক্ত।

Spreadsheet
triggerUid

যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)।

4034124084959907503
user

একটি User অবজেক্ট, যা সক্রিয় ব্যবহারকারীকে প্রতিনিধিত্ব করে, যদি উপলব্ধ থাকে ( জটিল নিরাপত্তা বিধিনিষেধের উপর নির্ভরশীল )।

amin@example.com

পরিবর্তন

( স্থাপনযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

FULL
changeType

পরিবর্তনের ধরণ ( EDIT , INSERT_ROW , INSERT_COLUMN , REMOVE_ROW , কলাম REMOVE_COLUMN , INSERT_GRID , REMOVE_GRID , FORMAT করুন , অথবা OTHER )।

INSERT_ROW
source

একটি Spreadsheet অবজেক্ট, যা সেই শীটস ফাইলকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি সংযুক্ত।

Spreadsheet
triggerUid

যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি।

4034124084959907503
user

একটি User অবজেক্ট, যা সক্রিয় ব্যবহারকারীকে প্রতিনিধিত্ব করে, যদি উপলব্ধ থাকে ( জটিল নিরাপত্তা বিধিনিষেধের উপর নির্ভরশীল )।

amin@example.com

সম্পাদনা

( সহজ এবং ইনস্টলযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

LIMITED
oldValue

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

1234
range

একটি Range অবজেক্ট, যা সম্পাদিত সেল বা সেলগুলোর পরিসরকে প্রতিনিধিত্ব করে।

Range
source

একটি Spreadsheet অবজেক্ট, যা সেই শীটস ফাইলকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি সংযুক্ত।

Spreadsheet
triggerUid

যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)।

4034124084959907503
user

একটি User অবজেক্ট, যা সক্রিয় ব্যবহারকারীকে প্রতিনিধিত্ব করে, যদি উপলব্ধ থাকে ( জটিল নিরাপত্তা বিধিনিষেধের উপর নির্ভরশীল )।

amin@example.com
value

সম্পাদনার পর নতুন সেল মান। এটি শুধুমাত্র তখনই উপলব্ধ হবে যখন সম্পাদিত পরিসরটি একটি একক সেল হবে।

10

ফর্ম জমা দিন

( স্থাপনযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

FULL
namedValues

ফর্ম জমা থেকে প্রাপ্ত প্রশ্নগুলোর নাম এবং মান ধারণকারী একটি অবজেক্ট।

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

একটি Range অবজেক্ট, যা সম্পাদিত সেল বা সেলগুলোর পরিসরকে প্রতিনিধিত্ব করে।

Range
triggerUid

যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি।

4034124084959907503
values

অ্যারে, যার মানগুলো স্প্রেডশিটে যেভাবে আছে ঠিক সেই ক্রমেই সাজানো।

['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill',
'28', 'Susan', '25']

গুগল ডক্স ইভেন্ট

ব্যবহারকারী যখন কোনো ডকুমেন্ট খোলে, তখন ট্রিগারের মাধ্যমে Docs সাড়া দেয়।

খোলা

( সহজ এবং ইনস্টলযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

LIMITED
source

একটি Document অবজেক্ট, যা সেই ডক্স ফাইলকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি আবদ্ধ।

Document
triggerUid

যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)।

4034124084959907503
user

একটি User অবজেক্ট, যা সক্রিয় ব্যবহারকারীকে প্রতিনিধিত্ব করে, যদি উপলব্ধ থাকে ( জটিল নিরাপত্তা বিধিনিষেধের উপর নির্ভরশীল )।

amin@example.com

গুগল স্লাইডস ইভেন্ট

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

খোলা

( সরল )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

LIMITED
source

একটি Presentation অবজেক্ট, যা সেই স্লাইডস ফাইলটিকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি আবদ্ধ।

Presentation
user

একটি User অবজেক্ট, যা সক্রিয় ব্যবহারকারীকে প্রতিনিধিত্ব করে, যদি উপলব্ধ থাকে ( জটিল নিরাপত্তা বিধিনিষেধের উপর নির্ভরশীল )।

amin@example.com

গুগল ফর্ম ইভেন্ট

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

খোলা

( সহজ এবং ইনস্টলযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

LIMITED
source

একটি Form অবজেক্ট, যা সেই ফর্মস ফাইলটিকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি আবদ্ধ।

Form
triggerUid

যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)।

4034124084959907503
user

একটি User অবজেক্ট, যা সক্রিয় ব্যবহারকারীকে প্রতিনিধিত্ব করে, যদি উপলব্ধ থাকে ( জটিল নিরাপত্তা বিধিনিষেধের উপর নির্ভরশীল )।

amin@example.com

এই ইভেন্টটি তখন ঘটে না যখন কোনো ব্যবহারকারী উত্তর দেওয়ার জন্য ফর্মটি খোলে, বরং তখন ঘটে যখন কোনো সম্পাদক ফর্মটি পরিবর্তন করার জন্য খোলে।

ফর্ম জমা দিন

( স্থাপনযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

FULL
response

একটি FormResponse অবজেক্ট, যা সম্পূর্ণ ফর্মটির প্রতি ব্যবহারকারীর প্রতিক্রিয়া উপস্থাপন করে।

FormResponse
source

একটি Form অবজেক্ট, যা সেই ফর্মস ফাইলটিকে প্রতিনিধিত্ব করে যার সাথে স্ক্রিপ্টটি আবদ্ধ।

Form
triggerUid

যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি।

4034124084959907503

গুগল ক্যালেন্ডার ইভেন্ট

যখন কোনো ব্যবহারকারীর ক্যালেন্ডারের ইভেন্ট আপডেট করা হয় (তৈরি, সম্পাদনা বা মুছে ফেলা হয়), তখন গুগল ক্যালেন্ডার ট্রিগার সক্রিয় হয়।

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

অ্যাপস স্ক্রিপ্টে ক্যালেন্ডারের সাথে সিঙ্ক্রোনাইজ করতে, নিম্নলিখিত ধাপগুলো অনুসরণ করুন:

  1. স্ক্রিপ্ট প্রজেক্টের জন্য ক্যালেন্ডার অ্যাডভান্সড সার্ভিসটি সক্রিয় করুন। এই ওয়ার্কফ্লোর জন্য বিল্ট-ইন ক্যালেন্ডার সার্ভিসটি যথেষ্ট নয়।
  2. কোন কোন ক্যালেন্ডার সিঙ্ক্রোনাইজ করতে হবে তা নির্ধারণ করুন। প্রতিটি ক্যালেন্ডারের জন্য, ক্যালেন্ডার অ্যাডভান্সড সার্ভিসের Events.list() মেথড ব্যবহার করে একটি প্রাথমিক সিঙ্ক অপারেশন সম্পাদন করুন।
  3. প্রাথমিক সিঙ্ক সেই ক্যালেন্ডারের জন্য একটি nextSyncToken ফেরত দেয়। পরবর্তী ব্যবহারের জন্য এই টোকেনটি সংরক্ষণ করুন।
  4. যখন অ্যাপস স্ক্রিপ্টের EventUpdated ট্রিগারটি কোনো ক্যালেন্ডার ইভেন্টের পরিবর্তন নির্দেশ করে ফায়ার করে, তখন সংরক্ষিত nextSyncToken ব্যবহার করে সংশ্লিষ্ট ক্যালেন্ডারের জন্য একটি ইনক্রিমেন্টাল সিঙ্ক সম্পাদন করুন। এটি মূলত আরেকটি Events.list() রিকোয়েস্ট, কিন্তু nextSyncToken প্রদান করার ফলে রেসপন্সটি শুধুমাত্র সেইসব ইভেন্টের মধ্যে সীমাবদ্ধ থাকে যেগুলো শেষ সিঙ্কের পর পরিবর্তিত হয়েছে।
  5. কোন ইভেন্টগুলো আপডেট করা হয়েছে তা জানতে সিঙ্কের প্রতিক্রিয়া পরীক্ষা করুন এবং আপনার কোডকে যথাযথভাবে সাড়া দিতে বলুন। উদাহরণস্বরূপ, পরিবর্তনটি লগ করুন, একটি স্প্রেডশীট আপডেট করুন, ইমেল বিজ্ঞপ্তি পাঠান বা অন্যান্য পদক্ষেপ নিন।
  6. ইনক্রিমেন্টাল সিঙ্ক রিকোয়েস্ট থেকে প্রাপ্ত নেক্সটসিঙ্কটোকেন দিয়ে সেই ক্যালেন্ডারের জন্য সংরক্ষিত nextSyncToken আপডেট করুন। এর ফলে পরবর্তী সিঙ্ক অপারেশনটি শুধুমাত্র সর্বশেষ পরিবর্তনগুলোই ফেরত দেবে।

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

ইভেন্ট আপডেট করা হয়েছে

( স্থাপনযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

FULL
calendarId

যে ক্যালেন্ডারে ইভেন্ট আপডেটটি ঘটেছে, তার স্ট্রিং আইডি।

susan@example.com
triggerUid

যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি।

4034124084959907503

গুগল ওয়ার্কস্পেস অ্যাড-অন ইভেন্ট

যখন কোনো ব্যবহারকারী একটি অ্যাড-অন ইনস্টল করেন, তখন onInstall() ট্রিগারটি স্বয়ংক্রিয়ভাবে চালু হয়।

ইনস্টল করুন

( সরল )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

FULL

গুগল চ্যাট অ্যাপ ইভেন্ট

Google Chat-এর ইভেন্ট অবজেক্ট সম্পর্কে জানতে, আপনার Google Chat অ্যাপের সাথে ইন্টারঅ্যাকশন গ্রহণ ও তার উত্তর দেওয়া দেখুন।

সময়-চালিত ঘটনা

টাইম-ড্রাইভেন ট্রিগার (যাকে ক্লক ট্রিগারও বলা হয়) স্ক্রিপ্টকে একটি নির্দিষ্ট সময়ে বা পুনরাবৃত্ত বিরতিতে কার্যকর হতে দেয়।

সময়-চালিত ( ইনস্টলযোগ্য )
authMode

ScriptApp.AuthMode enum থেকে প্রাপ্ত একটি মান।

FULL
day-of-month

1 থেকে 31 এর মধ্যে।

যেহেতু এই প্রপার্টির নামে ড্যাশ রয়েছে, তাই এটিকে ডট নোটেশনের পরিবর্তে e['day-of-month'] এর মাধ্যমে অ্যাক্সেস করতে হবে।

31
day-of-week

1 (সোমবার) থেকে 7 (রবিবার)-এর মধ্যে।

যেহেতু এই প্রপার্টির নামে ড্যাশ রয়েছে, তাই এটিকে ডট নোটেশনের পরিবর্তে e['day-of-week'] এর মাধ্যমে অ্যাক্সেস করতে হবে।

7
hour

0 থেকে 23 মধ্যে।

23
minute

0 থেকে 59 মধ্যে।

59
month

1 থেকে 12 এর মধ্যে।

12
second

0 থেকে 59 মধ্যে।

59
timezone

সময় অঞ্চল।

UTC
triggerUid

যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি।

4034124084959907503
week-of-year

1 থেকে 52 এর মধ্যে।

যেহেতু এই প্রপার্টির নামে ড্যাশ রয়েছে, তাই এটিকে ডট নোটেশনের পরিবর্তে e['week-of-year'] এর মাধ্যমে অ্যাক্সেস করতে হবে।

52
year

বছরটি।

2015