পুশ বিজ্ঞপ্তি

এই ডকুমেন্টে বর্ণনা করা হয়েছে যে কীভাবে পুশ নোটিফিকেশন ব্যবহার করবেন যা আপনার অ্যাপ্লিকেশনকে কোনও রিসোর্স পরিবর্তনের সময় অবহিত করে।

সংক্ষিপ্ত বিবরণ

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

পুশ নোটিফিকেশন ব্যবহার করতে, আপনাকে দুটি জিনিস করতে হবে:

  • আপনার রিসিভিং URL অথবা "webhook" কলব্যাক রিসিভার সেট আপ করুন।

    এটি একটি HTTPS সার্ভার যা API বিজ্ঞপ্তি বার্তাগুলি পরিচালনা করে যা কোনও সংস্থান পরিবর্তনের সময় ট্রিগার হয়।

  • আপনি যে রিসোর্স এন্ডপয়েন্টটি দেখতে চান তার জন্য একটি ( বিজ্ঞপ্তি চ্যানেল ) সেট আপ করুন।

    একটি চ্যানেল বিজ্ঞপ্তি বার্তাগুলির জন্য রাউটিং তথ্য নির্দিষ্ট করে। চ্যানেল সেটআপের অংশ হিসাবে, আপনাকে অবশ্যই সেই নির্দিষ্ট URL টি চিহ্নিত করতে হবে যেখানে আপনি বিজ্ঞপ্তি পেতে চান। যখনই কোনও চ্যানেলের রিসোর্স পরিবর্তন হয়, তখন Google Calendar API সেই URL এ POST অনুরোধ হিসাবে একটি বিজ্ঞপ্তি বার্তা পাঠায়।

বর্তমানে, Google Calendar API Acl , CalendarList , Events এবং Settings রিসোর্সে পরিবর্তনের জন্য বিজ্ঞপ্তি সমর্থন করে।

বিজ্ঞপ্তি চ্যানেল তৈরি করুন

পুশ নোটিফিকেশনের অনুরোধ করতে, আপনি যে রিসোর্সগুলি পর্যবেক্ষণ করতে চান তার জন্য আপনাকে একটি নোটিফিকেশন চ্যানেল সেট আপ করতে হবে। আপনার নোটিফিকেশন চ্যানেলগুলি সেট আপ হওয়ার পরে, কোনও দেখা রিসোর্স পরিবর্তন হলে Google ক্যালেন্ডার API আপনার অ্যাপ্লিকেশনকে অবহিত করে।

ঘড়ির অনুরোধ করুন

প্রতিটি দেখার যোগ্য Google Calendar API রিসোর্সের নিম্নলিখিত ফর্মের একটি URI-তে একটি সম্পর্কিত watch পদ্ধতি থাকে:

https://www.googleapis.com/API_NAME/API_VERSION/RESOURCE_PATH/watch

একটি নির্দিষ্ট রিসোর্সে পরিবর্তন সম্পর্কে বার্তাগুলির জন্য একটি বিজ্ঞপ্তি চ্যানেল সেট আপ করতে, রিসোর্সের জন্য watch পদ্ধতিতে একটি POST অনুরোধ পাঠান।

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

উদাহরণ

একটি নির্দিষ্ট ক্যালেন্ডারে ইভেন্টের সংগ্রহে পরিবর্তনগুলি দেখতে শুরু করুন:

POST https://www.googleapis.com/calendar/v3/calendars/my_calendar@gmail.com/events/watch
Authorization: Bearer auth_token_for_current_user
Content-Type: application/json

{
  "id": "01234567-89ab-cdef-0123456789ab",
  "type": "web_hook",
  "address": "https://mydomain.com/notifications",
  ...
  "token": "target=myApp-myCalendarChannelDest",
  "expiration": 1426325213000
}

অনুরোধের বডিতে, আপনার চ্যানেল id , web_hook type এবং address আপনার গ্রহণকারী URL প্রদান করুন। আপনি ঐচ্ছিকভাবেও প্রদান করতে পারেন:

  • আপনার চ্যানেল টোকেন হিসেবে ব্যবহারের জন্য একটি token
  • আপনার অনুরোধ করা চ্যানেলের মেয়াদ expiration হওয়ার সময় মিলিসেকেন্ডে।

প্রয়োজনীয় বৈশিষ্ট্য

প্রতিটি watch অনুরোধের সাথে, আপনাকে এই ক্ষেত্রগুলি অবশ্যই প্রদান করতে হবে:

  • একটি id প্রপার্টি স্ট্রিং যা আপনার প্রোজেক্টের মধ্যে এই নতুন বিজ্ঞপ্তি চ্যানেলটিকে অনন্যভাবে শনাক্ত করে। আমরা একটি সর্বজনীন অনন্য শনাক্তকারী ( UUID ) বা অনুরূপ যেকোনো অনন্য স্ট্রিং ব্যবহার করার পরামর্শ দিচ্ছি। সর্বাধিক দৈর্ঘ্য: 64 অক্ষর।

    আপনার সেট করা আইডি মানটি এই চ্যানেলের জন্য প্রাপ্ত প্রতিটি বিজ্ঞপ্তি বার্তার X-Goog-Channel-Id HTTP হেডারে প্রতিধ্বনিত হবে।

  • একটি type প্রোপার্টি স্ট্রিং যা web_hook মানের সাথে সেট করা আছে।

  • এই বিজ্ঞপ্তি চ্যানেলের জন্য বিজ্ঞপ্তিগুলি শোনা এবং প্রতিক্রিয়া জানানোর জন্য URL-এ সেট করা একটি address সম্পত্তি স্ট্রিং। এটি আপনার ওয়েবহুক কলব্যাক URL, এবং এটি অবশ্যই HTTPS ব্যবহার করবে।

    মনে রাখবেন যে আপনার ওয়েব সার্ভারে একটি বৈধ SSL সার্টিফিকেট ইনস্টল থাকলেই Google Calendar API এই HTTPS ঠিকানায় বিজ্ঞপ্তি পাঠাতে সক্ষম। অবৈধ সার্টিফিকেটের মধ্যে রয়েছে:

    • স্ব-স্বাক্ষরিত সার্টিফিকেট।
    • একটি অবিশ্বস্ত উৎস দ্বারা স্বাক্ষরিত সার্টিফিকেট।
    • যেসব সার্টিফিকেট বাতিল করা হয়েছে।
    • যেসব সার্টিফিকেটের বিষয় লক্ষ্য হোস্টনামের সাথে মেলে না।

ঐচ্ছিক বৈশিষ্ট্য

আপনার watch অনুরোধের সাথে আপনি এই ঐচ্ছিক ক্ষেত্রগুলিও নির্দিষ্ট করতে পারেন:

  • একটি token প্রপার্টি যা চ্যানেল টোকেন হিসেবে ব্যবহারের জন্য একটি নির্বিচারে স্ট্রিং মান নির্দিষ্ট করে। আপনি বিভিন্ন উদ্দেশ্যে বিজ্ঞপ্তি চ্যানেল টোকেন ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনি টোকেনটি ব্যবহার করে যাচাই করতে পারেন যে প্রতিটি আগত বার্তা আপনার অ্যাপ্লিকেশন দ্বারা তৈরি করা চ্যানেলের জন্য - বিজ্ঞপ্তিটি জাল করা হচ্ছে না তা নিশ্চিত করতে - অথবা এই চ্যানেলের উদ্দেশ্যের উপর ভিত্তি করে আপনার অ্যাপ্লিকেশনের মধ্যে বার্তাটিকে সঠিক গন্তব্যে রুট করতে পারেন। সর্বোচ্চ দৈর্ঘ্য: ২৫৬ অক্ষর।

    এই চ্যানেলের জন্য আপনার অ্যাপ্লিকেশন যে প্রতিটি বিজ্ঞপ্তি বার্তা পায়, তাতে টোকেনটি X-Goog-Channel-Token HTTP হেডারে অন্তর্ভুক্ত থাকে।

    আপনি যদি বিজ্ঞপ্তি চ্যানেল টোকেন ব্যবহার করেন, তাহলে আমরা আপনাকে সুপারিশ করব যে:

    • একটি এক্সটেনসিবল এনকোডিং ফর্ম্যাট ব্যবহার করুন, যেমন URL কোয়েরি প্যারামিটার। উদাহরণ: forwardTo=hr&createdBy=mobile

    • OAuth টোকেনের মতো সংবেদনশীল ডেটা অন্তর্ভুক্ত করবেন না।

  • এই বিজ্ঞপ্তি চ্যানেলের জন্য যখন আপনি Google Calendar API বার্তা পাঠানো বন্ধ করতে চান, তখন একটি expiration সম্পত্তি স্ট্রিং একটি Unix টাইমস্ট্যাম্পে (মিলিসেকেন্ডে) সেট করা থাকে।

    যদি কোনও চ্যানেলের মেয়াদ শেষ হওয়ার সময় থাকে, তাহলে আপনার অ্যাপ্লিকেশনটি এই চ্যানেলের জন্য প্রাপ্ত প্রতিটি বিজ্ঞপ্তি বার্তায় X-Goog-Channel-Expiration HTTP হেডারের (মানব-পঠনযোগ্য ফর্ম্যাটে) মান হিসাবে এটি অন্তর্ভুক্ত করা হয়।

অনুরোধ সম্পর্কে আরও বিস্তারিত জানার জন্য, API রেফারেন্সে Acl , CalendarList , Events এবং Settings রিসোর্সের জন্য watch পদ্ধতিটি দেখুন।

ঘড়ির প্রতিক্রিয়া

যদি watch অনুরোধটি সফলভাবে একটি বিজ্ঞপ্তি চ্যানেল তৈরি করে, তাহলে এটি একটি HTTP 200 OK স্ট্যাটাস কোড প্রদান করে।

ঘড়ির প্রতিক্রিয়ার বার্তার মূল অংশটি আপনার তৈরি করা বিজ্ঞপ্তি চ্যানেল সম্পর্কে তথ্য প্রদান করে, যেমনটি নীচের উদাহরণে দেখানো হয়েছে।

{
  "kind": "api#channel",
  "id": "01234567-89ab-cdef-0123456789ab",
  "resourceId": "o3hgv1538sdjfh",
  "resourceUri": "https://www.googleapis.com/calendar/v3/calendars/my_calendar@gmail.com/events",
  "token": "target=myApp-myCalendarChannelDest",
  "expiration": 1426325213000
}

প্রতিক্রিয়া সংস্থাটি চ্যানেলের বিবরণ প্রদান করে যেমন:

  • kind : এটিকে একটি API চ্যানেল রিসোর্স হিসেবে চিহ্নিত করে।
  • id : এই চ্যানেলের জন্য আপনার নির্দিষ্ট করা আইডি।
  • resourceId : দেখা রিসোর্সের আইডি।
  • resourceUri : দেখা রিসোর্সের সংস্করণ-নির্দিষ্ট আইডি।
  • token : অনুরোধের মূল অংশে প্রদত্ত টোকেন।
  • expiration : ইউনিক্স টাইমস্ট্যাম্প হিসেবে চ্যানেলের মেয়াদোত্তীর্ণতা মিলিসেকেন্ডে।

আপনার অনুরোধের অংশ হিসেবে পাঠানো বৈশিষ্ট্যগুলি ছাড়াও, ফেরত দেওয়া তথ্যে resourceId এবং resourceUri ও অন্তর্ভুক্ত থাকে যা এই বিজ্ঞপ্তি চ্যানেলে দেখা রিসোর্সটি সনাক্ত করে।

আপনি ফেরত দেওয়া তথ্য অন্যান্য বিজ্ঞপ্তি চ্যানেল অপারেশনে পাঠাতে পারেন, যেমন যখন আপনি বিজ্ঞপ্তি পাওয়া বন্ধ করতে চান।

প্রতিক্রিয়া সম্পর্কে আরও বিস্তারিত জানার জন্য, API রেফারেন্সে Acl , CalendarList , Events এবং Settings রিসোর্সের জন্য watch পদ্ধতিটি দেখুন।

বার্তা সিঙ্ক করুন

কোনও রিসোর্স দেখার জন্য একটি বিজ্ঞপ্তি চ্যানেল তৈরি করার পরে, Google ক্যালেন্ডার API একটি sync বার্তা পাঠায় যা নির্দেশ করে যে বিজ্ঞপ্তিগুলি শুরু হচ্ছে। এই বার্তাগুলির জন্য X-Goog-Resource-State HTTP হেডার মান হল sync । নেটওয়ার্ক টাইমিং সমস্যার কারণে, আপনি watch পদ্ধতির প্রতিক্রিয়া পাওয়ার আগেই sync বার্তাটি পাওয়া সম্ভব।

sync বিজ্ঞপ্তি উপেক্ষা করা নিরাপদ, তবে আপনি এটি ব্যবহারও করতে পারেন। উদাহরণস্বরূপ, যদি আপনি সিদ্ধান্ত নেন যে আপনি চ্যানেলটি রাখতে চান না, তাহলে বিজ্ঞপ্তি পাওয়া বন্ধ করার জন্য আপনি একটি কলে X-Goog-Channel-ID এবং X-Goog-Resource-ID মান ব্যবহার করতে পারেন। পরবর্তী ইভেন্টগুলির জন্য প্রস্তুতি নেওয়ার জন্য আপনি কিছু প্রাথমিককরণ করতে sync বিজ্ঞপ্তি ব্যবহার করতে পারেন।

আপনার রিসিভিং URL-এ Google Calendar API যে sync বার্তাগুলি পাঠায় তার ফর্ম্যাটটি নীচে দেখানো হয়েছে।

POST https://mydomain.com/notifications // Your receiving URL.
X-Goog-Channel-ID: channel-ID-value
X-Goog-Channel-Token: channel-token-value
X-Goog-Channel-Expiration: expiration-date-and-time // In human-readable format. Present only if the channel expires.
X-Goog-Resource-ID: identifier-for-the-watched-resource
X-Goog-Resource-URI: version-specific-URI-of-the-watched-resource
X-Goog-Resource-State: sync
X-Goog-Message-Number: 1

সিঙ্ক বার্তাগুলির সর্বদা একটি X-Goog-Message-Number HTTP হেডার মান 1 থাকে। এই চ্যানেলের জন্য প্রতিটি পরবর্তী বিজ্ঞপ্তিতে একটি বার্তা নম্বর থাকে যা পূর্ববর্তীটির চেয়ে বড়, যদিও বার্তা নম্বরগুলি ক্রমানুসারে থাকবে না।

বিজ্ঞপ্তি চ্যানেলগুলি পুনর্নবীকরণ করুন

একটি বিজ্ঞপ্তি চ্যানেলের মেয়াদ শেষ হওয়ার সময় থাকতে পারে, যার মান আপনার অনুরোধ বা যেকোনো Google Calendar API অভ্যন্তরীণ সীমা বা ডিফল্ট দ্বারা নির্ধারিত হয় (যে মানটি আরও সীমাবদ্ধ হবে তা ব্যবহার করা হবে)। চ্যানেলের মেয়াদ শেষ হওয়ার সময়, যদি থাকে, তাহলে watch পদ্ধতি দ্বারা প্রদত্ত তথ্যে ইউনিক্স টাইমস্ট্যাম্প (মিলিসেকেন্ডে) হিসাবে অন্তর্ভুক্ত করা হয়। এছাড়াও, X-Goog-Channel-Expiration Expiration HTTP হেডারে এই চ্যানেলের জন্য আপনার অ্যাপ্লিকেশনটি যে প্রতিটি বিজ্ঞপ্তি বার্তা পায় তাতে মেয়াদ শেষ হওয়ার তারিখ এবং সময় (মানব-পঠনযোগ্য ফর্ম্যাটে) অন্তর্ভুক্ত করা হয়।

বর্তমানে, কোনও বিজ্ঞপ্তি চ্যানেল পুনর্নবীকরণের কোনও স্বয়ংক্রিয় উপায় নেই। যখন কোনও চ্যানেলের মেয়াদ শেষ হওয়ার কাছাকাছি থাকে, তখন আপনাকে অবশ্যই watch পদ্ধতিটি কল করে একটি নতুন দিয়ে এটি প্রতিস্থাপন করতে হবে। সর্বদা হিসাবে, আপনাকে নতুন চ্যানেলের id বৈশিষ্ট্যের জন্য একটি অনন্য মান ব্যবহার করতে হবে। মনে রাখবেন যে একই রিসোর্সের জন্য দুটি বিজ্ঞপ্তি চ্যানেল সক্রিয় থাকাকালীন একটি "ওভারল্যাপ" সময়কাল থাকার সম্ভাবনা রয়েছে।

বিজ্ঞপ্তি গ্রহণ করুন

যখনই কোনও পর্যবেক্ষণকৃত রিসোর্স পরিবর্তন হয়, তখন আপনার অ্যাপ্লিকেশনটি পরিবর্তনটি বর্ণনা করে একটি বিজ্ঞপ্তি বার্তা পায়। Google Calendar API এই বার্তাগুলিকে HTTPS POST অনুরোধ হিসাবে আপনার দ্বারা এই বিজ্ঞপ্তি চ্যানেলের address সম্পত্তি হিসাবে নির্দিষ্ট করা URL-এ পাঠায়।

বিজ্ঞপ্তি বার্তার ফর্ম্যাটটি ব্যাখ্যা করুন

সমস্ত বিজ্ঞপ্তি বার্তায় HTTP হেডারের একটি সেট থাকে যার X-Goog- উপসর্গ থাকে। কিছু ধরণের বিজ্ঞপ্তিতে একটি বার্তার মূল অংশও অন্তর্ভুক্ত থাকতে পারে।

শিরোনাম

আপনার রিসিভিং URL-এ Google Calendar API দ্বারা পোস্ট করা বিজ্ঞপ্তি বার্তাগুলিতে নিম্নলিখিত HTTP হেডারগুলি অন্তর্ভুক্ত থাকে:

হেডার বিবরণ
সর্বদা উপস্থিত
X-Goog-Channel-ID এই বিজ্ঞপ্তি চ্যানেলটি সনাক্ত করার জন্য আপনার দেওয়া UUID অথবা অন্য কোনও অনন্য স্ট্রিং।
X-Goog-Message-Number এই বিজ্ঞপ্তি চ্যানেলের জন্য এই বার্তাটি শনাক্তকারী পূর্ণসংখ্যা। sync বার্তাগুলির জন্য মান সর্বদা 1 চ্যানেলে প্রতিটি পরবর্তী বার্তার জন্য বার্তা সংখ্যা বৃদ্ধি পায়, কিন্তু সেগুলি ক্রমানুসারে হয় না।
X-Goog-Resource-ID একটি অস্বচ্ছ মান যা দেখা রিসোর্সটি সনাক্ত করে। এই আইডিটি API সংস্করণ জুড়ে স্থিতিশীল।
X-Goog-Resource-State নতুন রিসোর্স অবস্থা যা বিজ্ঞপ্তিটি ট্রিগার করেছে। সম্ভাব্য মান: sync , exists , অথবা not_exists .
X-Goog-Resource-URI দেখা রিসোর্সের জন্য একটি API-সংস্করণ-নির্দিষ্ট শনাক্তকারী।
মাঝে মাঝে উপস্থিত
X-Goog-Channel-Expiration বিজ্ঞপ্তি চ্যানেলের মেয়াদ শেষ হওয়ার তারিখ এবং সময়, মানুষের পঠনযোগ্য ফর্ম্যাটে প্রকাশ করা হয়েছে। শুধুমাত্র সংজ্ঞায়িত হলেই উপস্থিত।
X-Goog-Channel-Token আপনার অ্যাপ্লিকেশন দ্বারা সেট করা বিজ্ঞপ্তি চ্যানেল টোকেন, এবং আপনি বিজ্ঞপ্তির উৎস যাচাই করতে ব্যবহার করতে পারেন। শুধুমাত্র সংজ্ঞায়িত থাকলেই উপস্থিত থাকবে।

আপনার রিসিভিং URL-এ Google Calendar API দ্বারা পোস্ট করা বিজ্ঞপ্তি বার্তাগুলিতে কোনও বার্তার মূল অংশ থাকে না। এই বার্তাগুলিতে আপডেট করা সংস্থান সম্পর্কে নির্দিষ্ট তথ্য থাকে না, সম্পূর্ণ পরিবর্তনের বিবরণ দেখতে আপনাকে আরেকটি API কল করতে হবে।

উদাহরণ

ইভেন্টের পরিবর্তিত সংগ্রহের জন্য বিজ্ঞপ্তি বার্তা পরিবর্তন করুন:

POST https://mydomain.com/notifications // Your receiving URL.
Content-Type: application/json; utf-8
Content-Length: 0
X-Goog-Channel-ID: 4ba78bf0-6a47-11e2-bcfd-0800200c9a66
X-Goog-Channel-Token: 398348u3tu83ut8uu38
X-Goog-Channel-Expiration: Tue, 19 Nov 2013 01:13:52 GMT
X-Goog-Resource-ID:  ret08u3rv24htgh289g
X-Goog-Resource-URI: https://www.googleapis.com/calendar/v3/calendars/my_calendar@gmail.com/events
X-Goog-Resource-State:  exists
X-Goog-Message-Number: 10

বিজ্ঞপ্তির উত্তর দিন

সাফল্য নির্দেশ করতে, আপনি নিম্নলিখিত যেকোনো স্ট্যাটাস কোড ফেরত দিতে পারেন: 200 , 201 , 202 , 204 , অথবা 102

যদি আপনার পরিষেবা Google এর API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে এবং 500 , 502 , 503 , অথবা 504 রিটার্ন করে, তাহলে Google Calendar API এক্সপোনেনশিয়াল ব্যাকঅফ দিয়ে পুনরায় চেষ্টা করে। অন্য প্রতিটি রিটার্ন স্ট্যাটাস কোডকে একটি বার্তা ব্যর্থতা হিসাবে বিবেচনা করা হয়।

গুগল ক্যালেন্ডার এপিআই বিজ্ঞপ্তি ইভেন্টগুলি বুঝুন

এই বিভাগটি Google Calendar API-এর মাধ্যমে পুশ বিজ্ঞপ্তি ব্যবহার করার সময় আপনি যে বিজ্ঞপ্তি বার্তাগুলি পেতে পারেন তার বিশদ বিবরণ প্রদান করে।

এক্স-গুগ-রিসোর্স-স্টেট প্রযোজ্য যখন ডেলিভারি করা হয়
sync ACL, ক্যালেন্ডার তালিকা, ইভেন্ট, সেটিংস। একটি নতুন চ্যানেল সফলভাবে তৈরি করা হয়েছে। আপনি এটির জন্য বিজ্ঞপ্তি পেতে শুরু করতে পারেন।
exists ACL, ক্যালেন্ডার তালিকা, ইভেন্ট, সেটিংস। একটি রিসোর্সে পরিবর্তন হয়েছে। সম্ভাব্য পরিবর্তনের মধ্যে রয়েছে একটি নতুন রিসোর্স তৈরি করা, অথবা বিদ্যমান রিসোর্সের পরিবর্তন বা মুছে ফেলা।

বিজ্ঞপ্তি বন্ধ করুন

expiration বৈশিষ্ট্যটি নিয়ন্ত্রণ করে কখন বিজ্ঞপ্তিগুলি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়। আপনি নিম্নলিখিত URI-তে stop পদ্ধতিটি কল করে মেয়াদোত্তীর্ণ হওয়ার আগে একটি নির্দিষ্ট চ্যানেলের জন্য বিজ্ঞপ্তিগুলি পাওয়া বন্ধ করতে পারেন:

https://www.googleapis.com/calendar/v3/channels/stop

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

শুধুমাত্র সঠিক অনুমতিপ্রাপ্ত ব্যবহারকারীরা একটি চ্যানেল বন্ধ করতে পারবেন। বিশেষ করে:

  • যদি চ্যানেলটি একটি নিয়মিত ব্যবহারকারী অ্যাকাউন্ট দ্বারা তৈরি করা হয়, তাহলে শুধুমাত্র একই ক্লায়েন্টের (auth টোকেন থেকে OAuth 2.0 ক্লায়েন্ট আইডি দ্বারা চিহ্নিত) একই ব্যবহারকারী যিনি চ্যানেলটি তৈরি করেছেন তিনিই চ্যানেলটি বন্ধ করতে পারবেন।
  • যদি চ্যানেলটি কোনও পরিষেবা অ্যাকাউন্ট দ্বারা তৈরি করা হয়, তাহলে একই ক্লায়েন্টের যেকোনো ব্যবহারকারী চ্যানেলটি বন্ধ করতে পারবেন।

নিম্নলিখিত কোড নমুনাটি দেখায় কিভাবে বিজ্ঞপ্তি পাওয়া বন্ধ করতে হয়:

POST https://www.googleapis.com/calendar/v3/channels/stop
  
Authorization: Bearer CURRENT_USER_AUTH_TOKEN
Content-Type: application/json

{
  "id": "4ba78bf0-6a47-11e2-bcfd-0800200c9a66",
  "resourceId": "ret08u3rv24htgh289g"
}