উন্নত ক্যালেন্ডার পরিষেবা আপনাকে অ্যাপস স্ক্রিপ্টে পাবলিক গুগল ক্যালেন্ডার এপিআই ব্যবহার করার অনুমতি দেয়। অ্যাপস স্ক্রিপ্টের অন্তর্নির্মিত ক্যালেন্ডার পরিষেবার মতো, এই এপিআই স্ক্রিপ্টগুলিকে ব্যবহারকারীর গুগল ক্যালেন্ডার অ্যাক্সেস এবং সংশোধন করার অনুমতি দেয়, যার মধ্যে ব্যবহারকারীর সাবস্ক্রাইব করা অতিরিক্ত ক্যালেন্ডারও অন্তর্ভুক্ত থাকে। বেশিরভাগ ক্ষেত্রে, অন্তর্নির্মিত পরিষেবাটি ব্যবহার করা সহজ, তবে এই উন্নত পরিষেবাটি কয়েকটি অতিরিক্ত বৈশিষ্ট্য সরবরাহ করে, যার মধ্যে রয়েছে পৃথক ইভেন্টের জন্য পটভূমির রঙ সেট করা।
তথ্যসূত্র
এই পরিষেবা সম্পর্কে বিস্তারিত তথ্যের জন্য, পাবলিক গুগল ক্যালেন্ডার API-এর রেফারেন্স ডকুমেন্টেশন দেখুন। অ্যাপস স্ক্রিপ্টের সমস্ত উন্নত পরিষেবার মতো, উন্নত ক্যালেন্ডার পরিষেবা পাবলিক API-এর মতো একই বস্তু, পদ্ধতি এবং পরামিতি ব্যবহার করে। আরও তথ্যের জন্য, পদ্ধতি স্বাক্ষর কীভাবে নির্ধারণ করা হয় তা দেখুন।
সমস্যাগুলি রিপোর্ট করতে এবং অন্যান্য সহায়তা পেতে, ক্যালেন্ডার সহায়তা নির্দেশিকা দেখুন।
HTTP অনুরোধের শিরোনাম
উন্নত ক্যালেন্ডার পরিষেবা HTTP অনুরোধ শিরোনাম If-Match এবং If-None-Match গ্রহণ করতে পারে। বিস্তারিত জানার জন্য, রেফারেন্স ডকুমেন্টেশন দেখুন।
নমুনা কোড
নীচের নমুনা কোডটি API এর 3 সংস্করণ ব্যবহার করে।
ইভেন্ট তৈরি করা হচ্ছে
নিম্নলিখিত উদাহরণটি ব্যবহারকারীর ডিফল্ট ক্যালেন্ডারে কীভাবে একটি ইভেন্ট তৈরি করতে হয় তা দেখায়।
তালিকাভুক্ত ক্যালেন্ডার
নিম্নলিখিত উদাহরণটি ব্যবহারকারীর ক্যালেন্ডার তালিকায় প্রদর্শিত ক্যালেন্ডার সম্পর্কে বিশদ কীভাবে পুনরুদ্ধার করবেন তা দেখায়।
ইভেন্ট তালিকাভুক্ত করা
নিম্নলিখিত উদাহরণটি ব্যবহারকারীর ডিফল্ট ক্যালেন্ডারে পরবর্তী ১০টি আসন্ন ইভেন্ট কীভাবে তালিকাভুক্ত করতে হয় তা দেখায়।
শর্তসাপেক্ষে একটি ইভেন্ট পরিবর্তন করা
নিম্নলিখিত উদাহরণে দেখানো হয়েছে কিভাবে If-Match হেডার ব্যবহার করে একটি ক্যালেন্ডার ইভেন্ট শর্তসাপেক্ষে আপডেট করতে হয়। স্ক্রিপ্টটি একটি নতুন ইভেন্ট তৈরি করে, 30 সেকেন্ড অপেক্ষা করে, তারপর ইভেন্টটি আপডেট করে শুধুমাত্র তখনই যদি ইভেন্ট তৈরির পর থেকে কোনও ইভেন্টের বিবরণ পরিবর্তন না হয়।
শর্তসাপেক্ষে একটি ইভেন্ট পুনরুদ্ধার করা হচ্ছে
নিম্নলিখিত উদাহরণে দেখানো হয়েছে কিভাবে If-None-Match হেডার ব্যবহার করে একটি ক্যালেন্ডার ইভেন্ট শর্তসাপেক্ষে আনতে হয়। স্ক্রিপ্টটি একটি নতুন ইভেন্ট তৈরি করে, তারপর 30 সেকেন্ডের জন্য পরিবর্তনের জন্য ইভেন্টটি পোল করে। যেকোনো সময় ইভেন্টটি পরিবর্তন হলে, নতুন সংস্করণটি আনা হয়।
ইভেন্টগুলি সিঙ্ক্রোনাইজ করা হচ্ছে
নিম্নলিখিত উদাহরণটি দেখায় কিভাবে সিঙ্ক টোকেন ব্যবহার করে ইভেন্টগুলি পুনরুদ্ধার করা যায়। যখন আপনি একটি ক্যালেন্ডার অ্যাডভান্সড সার্ভিস রিকোয়েস্টে একটি সিঙ্ক টোকেন অন্তর্ভুক্ত করেন, তখন ফলাফলের প্রতিক্রিয়ায় কেবল সেই আইটেমগুলি অন্তর্ভুক্ত থাকে যা সেই টোকেন তৈরি হওয়ার পর থেকে পরিবর্তিত হয়েছে, যা আরও দক্ষ প্রক্রিয়াকরণ সক্ষম করে। সিঙ্কিং প্রক্রিয়া সম্পর্কে আরও বিশদের জন্য সিঙ্ক্রোনাইজ রিসোর্সগুলি দক্ষতার সাথে দেখুন।
নিচের উদাহরণে উপরের উদাহরণগুলিতে সংজ্ঞায়িত একই getRelativeDate(daysOffset, hour) পদ্ধতি ব্যবহার করা হয়েছে।