সিম্পল ট্রিগার এবং ইন্সটলেবল ট্রিগার গুগল অ্যাপস স্ক্রিপ্টকে কোনো নির্দিষ্ট ঘটনা ঘটলে স্বয়ংক্রিয়ভাবে একটি ফাংশন চালাতে দেয়। যখন একটি ট্রিগার ফায়ার হয়, অ্যাপস স্ক্রিপ্ট ফাংশনটিতে একটি ইভেন্ট অবজেক্ট আর্গুমেন্ট হিসেবে পাঠায়, যা সাধারণত 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 | LIMITED |
source | একটি Spreadsheet |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)। 4034124084959907503 |
user | একটি amin@example.com |
পরিবর্তন( স্থাপনযোগ্য ) | |
|---|---|
authMode | FULL |
changeType | পরিবর্তনের ধরণ ( INSERT_ROW |
source | একটি Spreadsheet |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি। 4034124084959907503 |
user | একটি amin@example.com |
সম্পাদনা( সহজ এবং ইনস্টলযোগ্য ) | |
|---|---|
authMode | LIMITED |
oldValue | সম্পাদনার আগে সেলের মান, যদি থাকে। এটি শুধুমাত্র তখনই উপলব্ধ হবে যখন সম্পাদিত পরিসরটি একটি একক সেল হবে। সেলটিতে পূর্বে কোনো বিষয়বস্তু না থাকলে এটি অনির্ধারিত থাকবে। 1234 |
range | একটি Range |
source | একটি Spreadsheet |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)। 4034124084959907503 |
user | একটি amin@example.com |
value | সম্পাদনার পর নতুন সেল মান। এটি শুধুমাত্র তখনই উপলব্ধ হবে যখন সম্পাদিত পরিসরটি একটি একক সেল হবে। 10 |
ফর্ম জমা দিন( স্থাপনযোগ্য ) | |
|---|---|
authMode | FULL |
namedValues | ফর্ম জমা থেকে প্রাপ্ত প্রশ্নগুলোর নাম এবং মান ধারণকারী একটি অবজেক্ট। {
'First Name': ['Jane'],
'Timestamp': ['6/7/2015 20:54:13'],
'Last Name': ['Doe']
} |
range | একটি Range |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি। 4034124084959907503 |
values | অ্যারে, যার মানগুলো স্প্রেডশিটে যেভাবে আছে ঠিক সেই ক্রমেই সাজানো। ['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill', '28', 'Susan', '25'] |
গুগল ডক্স ইভেন্ট
ব্যবহারকারী যখন কোনো ডকুমেন্ট খোলে, তখন ট্রিগারের মাধ্যমে Docs সাড়া দেয়।
খোলা( সহজ এবং ইনস্টলযোগ্য ) | |
|---|---|
authMode | LIMITED |
source | একটি Document |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)। 4034124084959907503 |
user | একটি amin@example.com |
গুগল স্লাইডস ইভেন্ট
ব্যবহারকারী যখন কোনো প্রেজেন্টেশন খোলে, তখন ট্রিগারের মাধ্যমে স্লাইডস সাড়া দেয়।
খোলা( সরল ) | |
|---|---|
authMode | LIMITED |
source | একটি Presentation |
user | একটি amin@example.com |
গুগল ফর্ম ইভেন্ট
ফর্ম-নির্দিষ্ট ট্রিগারগুলো স্ক্রিপ্টকে তখন সাড়া দিতে সক্ষম করে, যখন কোনো ব্যবহারকারী একটি ফর্ম সম্পাদনা করে বা কোনো প্রতিক্রিয়া জমা দেয়।
খোলা( সহজ এবং ইনস্টলযোগ্য ) | |
|---|---|
authMode | LIMITED |
source | একটি Form |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি তৈরি করেছে তার আইডি (শুধুমাত্র ইনস্টলযোগ্য ট্রিগারের ক্ষেত্রে প্রযোজ্য)। 4034124084959907503 |
user | একটি amin@example.com |
এই ইভেন্টটি তখন ঘটে না যখন কোনো ব্যবহারকারী উত্তর দেওয়ার জন্য ফর্মটি খোলে, বরং তখন ঘটে যখন কোনো সম্পাদক ফর্মটি পরিবর্তন করার জন্য খোলে।
ফর্ম জমা দিন( স্থাপনযোগ্য ) | |
|---|---|
authMode | FULL |
response | একটি FormResponse |
source | একটি Form |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি। 4034124084959907503 |
গুগল ক্যালেন্ডার ইভেন্ট
যখন কোনো ব্যবহারকারীর ক্যালেন্ডারের ইভেন্ট আপডেট করা হয় (তৈরি, সম্পাদনা বা মুছে ফেলা হয়), তখন গুগল ক্যালেন্ডার ট্রিগার সক্রিয় হয়।
এই ট্রিগারগুলো আপনাকে জানায় না যে কোন ইভেন্টটি পরিবর্তিত হয়েছে বা কীভাবে পরিবর্তিত হয়েছে। পরিবর্তে, এগুলো নির্দেশ করে যে ক্যালেন্ডারের সাম্প্রতিক পরিবর্তনগুলো গ্রহণ করার জন্য আপনার কোডকে একটি ইনক্রিমেন্টাল সিঙ্ক অপারেশন করতে হবে। এই পদ্ধতির সম্পূর্ণ বিবরণের জন্য, ক্যালেন্ডার এপিআই- এর রিসোর্স সিঙ্ক্রোনাইজেশন গাইডটি দেখুন।
অ্যাপস স্ক্রিপ্টে ক্যালেন্ডারের সাথে সিঙ্ক্রোনাইজ করতে, নিম্নলিখিত ধাপগুলো অনুসরণ করুন:
- স্ক্রিপ্ট প্রজেক্টের জন্য ক্যালেন্ডার অ্যাডভান্সড সার্ভিসটি সক্রিয় করুন। এই ওয়ার্কফ্লোর জন্য বিল্ট-ইন ক্যালেন্ডার সার্ভিসটি যথেষ্ট নয়।
- কোন কোন ক্যালেন্ডার সিঙ্ক্রোনাইজ করতে হবে তা নির্ধারণ করুন। প্রতিটি ক্যালেন্ডারের জন্য, ক্যালেন্ডার অ্যাডভান্সড সার্ভিসের Events.list() মেথড ব্যবহার করে একটি প্রাথমিক সিঙ্ক অপারেশন সম্পাদন করুন।
- প্রাথমিক সিঙ্ক সেই ক্যালেন্ডারের জন্য একটি
nextSyncTokenফেরত দেয়। পরবর্তী ব্যবহারের জন্য এই টোকেনটি সংরক্ষণ করুন। - যখন অ্যাপস স্ক্রিপ্টের
EventUpdatedট্রিগারটি কোনো ক্যালেন্ডার ইভেন্টের পরিবর্তন নির্দেশ করে ফায়ার করে, তখন সংরক্ষিতnextSyncTokenব্যবহার করে সংশ্লিষ্ট ক্যালেন্ডারের জন্য একটি ইনক্রিমেন্টাল সিঙ্ক সম্পাদন করুন। এটি মূলত আরেকটি Events.list() রিকোয়েস্ট, কিন্তুnextSyncTokenপ্রদান করার ফলে রেসপন্সটি শুধুমাত্র সেইসব ইভেন্টের মধ্যে সীমাবদ্ধ থাকে যেগুলো শেষ সিঙ্কের পর পরিবর্তিত হয়েছে। - কোন ইভেন্টগুলো আপডেট করা হয়েছে তা জানতে সিঙ্কের প্রতিক্রিয়া পরীক্ষা করুন এবং আপনার কোডকে যথাযথভাবে সাড়া দিতে বলুন। উদাহরণস্বরূপ, পরিবর্তনটি লগ করুন, একটি স্প্রেডশীট আপডেট করুন, ইমেল বিজ্ঞপ্তি পাঠান বা অন্যান্য পদক্ষেপ নিন।
- ইনক্রিমেন্টাল সিঙ্ক রিকোয়েস্ট থেকে প্রাপ্ত নেক্সটসিঙ্কটোকেন দিয়ে সেই ক্যালেন্ডারের জন্য সংরক্ষিত
nextSyncTokenআপডেট করুন। এর ফলে পরবর্তী সিঙ্ক অপারেশনটি শুধুমাত্র সর্বশেষ পরিবর্তনগুলোই ফেরত দেবে।
মাঝে মাঝে সার্ভার দ্বারা সিঙ্ক টোকেনগুলি অবৈধ হয়ে যায়, যার ফলে একটি 410 ত্রুটি দেখা দেয়। যখন এমন হয়, তখন আপনার কোডের উচিত একটি সম্পূর্ণ সিঙ্ক করা এবং সেই ক্যালেন্ডারের জন্য সংরক্ষিত সমস্ত সিঙ্ক করা ডেটা ও টোকেন প্রতিস্থাপন করা।
ইভেন্ট আপডেট করা হয়েছে( স্থাপনযোগ্য ) | |
|---|---|
authMode | FULL |
calendarId | যে ক্যালেন্ডারে ইভেন্ট আপডেটটি ঘটেছে, তার স্ট্রিং আইডি। susan@example.com |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি। 4034124084959907503 |
গুগল ওয়ার্কস্পেস অ্যাড-অন ইভেন্ট
যখন কোনো ব্যবহারকারী একটি অ্যাড-অন ইনস্টল করেন, তখন onInstall() ট্রিগারটি স্বয়ংক্রিয়ভাবে চালু হয়।
ইনস্টল করুন( সরল ) | |
|---|---|
authMode | FULL |
গুগল চ্যাট অ্যাপ ইভেন্ট
Google Chat-এর ইভেন্ট অবজেক্ট সম্পর্কে জানতে, আপনার Google Chat অ্যাপের সাথে ইন্টারঅ্যাকশন গ্রহণ ও তার উত্তর দেওয়া দেখুন।
সময়-চালিত ঘটনা
টাইম-ড্রাইভেন ট্রিগার (যাকে ক্লক ট্রিগারও বলা হয়) স্ক্রিপ্টকে একটি নির্দিষ্ট সময়ে বা পুনরাবৃত্ত বিরতিতে কার্যকর হতে দেয়।
| সময়-চালিত ( ইনস্টলযোগ্য ) | |
|---|---|
authMode | FULL |
day-of-month | যেহেতু এই প্রপার্টির নামে ড্যাশ রয়েছে, তাই এটিকে ডট নোটেশনের পরিবর্তে 31 |
day-of-week | যেহেতু এই প্রপার্টির নামে ড্যাশ রয়েছে, তাই এটিকে ডট নোটেশনের পরিবর্তে 7 |
hour | 23 |
minute | 59 |
month | 12 |
second | 59 |
timezone | সময় অঞ্চল। UTC |
triggerUid | যে ট্রিগারটি এই ইভেন্টটি ঘটিয়েছে তার আইডি। 4034124084959907503 |
week-of-year | যেহেতু এই প্রপার্টির নামে ড্যাশ রয়েছে, তাই এটিকে ডট নোটেশনের পরিবর্তে 52 |
year | বছরটি। 2015 |