সেশন তৈরি করুন এবং পরিচালনা করুন

সেশনগুলি পিকার API-এর কেন্দ্রবিন্দুতে রয়েছে, ব্যবহারকারীদের তাদের Google ফটো লাইব্রেরি থেকে ফটো এবং ভিডিও নির্বাচন করার জন্য একটি নিরাপদ এবং নিয়ন্ত্রিত উপায় প্রদান করে৷ এই নির্দেশিকাটি আপনার অ্যাপে নির্বিঘ্ন ফটো নির্বাচন সক্ষম করতে কীভাবে তৈরি, পরিচালনা এবং কার্যকরভাবে পোল সেশনগুলি তৈরি করতে হয় তার রূপরেখা দেয়৷

আপনি শুরু করার আগে

  • আপনার অ্যাপ কনফিগার করুন: API সক্ষম করুন এবং প্রমাণীকরণ সেট আপ করুন। বিস্তারিত পদক্ষেপের জন্য আপনার অ্যাপ কনফিগার করুন দেখুন।
  • প্রবাহটি বুঝুন: সম্পূর্ণ ফটো নির্বাচন প্রক্রিয়ার একটি ওভারভিউয়ের জন্য পিকার API দিয়ে শুরু করুন
  • প্রয়োজনীয় অনুমোদনের সুযোগগুলি পর্যালোচনা করুন : সেশনগুলির সাথে কাজ করার জন্য photospicker.mediaitems.readonly সুযোগ প্রয়োজন৷ স্কোপ সম্পর্কে আরও তথ্যের জন্য, অনুমোদনের সুযোগগুলি দেখুন।

সেশন জীবনচক্র

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

  1. একজন ব্যবহারকারীকে মিডিয়া আইটেম নির্বাচন করতে সক্ষম করতে একটি সেশন তৈরি করুন
  2. ব্যবহারকারী কখন মিডিয়া আইটেম নির্বাচন করা শেষ করেছে তা পরীক্ষা করতে সেশনে পোল করুন
  3. মিডিয়া আইটেম তালিকা এবং পুনরুদ্ধার করুন .
  4. এটি মুছে সেশন পরিষ্কার করুন .

সেশন তৈরি করুন

একটি সেশন তৈরি করুন যাতে আপনার ব্যবহারকারীরা নিরাপদে তাদের Google Photos অ্যাপ থেকে সরাসরি ফটো বাছাই করতে পারে এবং সেগুলিকে আপনার অ্যাপ্লিকেশনে শেয়ার করতে পারে।

sessions.create একটি নতুন সেশন তৈরি করে, একটি অনন্য pickerUri ফিরিয়ে দেয় যা আপনি আপনার ব্যবহারকারীদের কাছে উপস্থাপন করতে পারেন। ব্যবহারকারী সফলভাবে মিডিয়া আইটেম বা সেশনের সময় শেষ না হওয়া পর্যন্ত সেশনটি সক্রিয় থাকে।

সেশনের সীমা

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

পোল এবং নিরীক্ষণ সেশন

একবার একটি সেশন তৈরি হয়ে গেলে, পর্যায়ক্রমে একটি সেশনের স্থিতি পেতে sessions.get এন্ডপয়েন্টে পোল করুন। প্রতিক্রিয়ায় mediaItemsSet প্রপার্টিটি true দেখায় যখন ব্যবহারকারী তাদের নির্বাচন সম্পন্ন করে।

দক্ষ ভোটিং ব্যবহার নিশ্চিত করুন. sessions.get প্রতিক্রিয়া pollingConfig অবজেক্ট অন্তর্ভুক্ত করে। অপ্রয়োজনীয় কল এড়াতে এবং একটি মসৃণ ব্যবহারকারীর অভিজ্ঞতা তৈরি করতে আপনাকে সাহায্য করতে নিম্নলিখিত ক্ষেত্রগুলি ব্যবহার করুন:

  • pollInterval : সর্বোত্তম ভোটদানের ব্যবধান
  • timeoutIn ইন: টাইমআউট সময়কাল

আরো বিস্তারিত জানার জন্য উদাহরণ পোলিং প্রবাহ দেখুন.

সেশনগুলি মুছুন এবং পরিষ্কার করুন

sessions.delete একটি সেশন সরিয়ে দেয়, সাধারণত ব্যবহারকারী মিডিয়া নির্বাচন করা শেষ করার পরে বা সেশনের সময় শেষ হলে পরিষ্কার করার জন্য ব্যবহৃত হয়।

ব্যবহারকারী মিডিয়া আইটেম নির্বাচন করে এবং আপনার অ্যাপ মিডিয়া আইটেম বাইট পুনরুদ্ধার করা হলে সেশনগুলি মুছে ফেলার জন্য এটি একটি সর্বোত্তম অনুশীলন৷

ভোটের প্রবাহের উদাহরণ

এটি একটি অধিবেশন তৈরি এবং ভোটদানের একটি উদাহরণ। প্রথমে আপনার ব্যবহারকারীকে প্রমাণীকরণ করার পরে, একটি নতুন সেশন তৈরি করুন।

  1. একটি সেশন তৈরি করুন: একটি নতুন সেশন শুরু করতে এবং pickerUri পেতে sessions.create কে কল করুন।
  2. ব্যবহারকারীর কাছে pickerUri উপস্থাপন করুন: ইউআরএলটি প্রদর্শন করুন বা ব্যবহারকারীকে স্ক্যান করার জন্য একটি QR কোড তৈরি করুন।
  3. অধিবেশন পোল:
    1. pollingConfig থেকে প্রস্তাবিত pollInterval ব্যবহার করুন।
    2. mediaItemsSet সত্য কিনা পরীক্ষা করুন.
      1. true হলে, নির্বাচিত মিডিয়া আইটেম তালিকা করতে এগিয়ে যান।
      2. false হলে, timeoutIn না পৌঁছানো পর্যন্ত পোলিং চালিয়ে যান।
    3. টাইমআউট এবং বাতিলকরণ সুন্দরভাবে পরিচালনা করুন।
GET https://photoslibrary.googleapis.com/v1/sessions/{sessionId}

এখানে একটি উদাহরণ প্রতিক্রিয়া:

{
  "id": string,
  "pickerUri": string,
  "pollingConfig": {
    object (PollingConfig)
  },
  "mediaItemsSet": boolean
}

ব্যবহারকারীর কাছে pickerUri উপস্থাপন করুন এবং তারপর সেশনটি পোল করা শুরু করুন।

নিম্নলিখিত জন্য প্রতিক্রিয়া চেক করুন:

  • mediaItemsSet : ব্যবহারকারী মিডিয়া আইটেম নির্বাচন করা শেষ হলে সত্য
  • pollingConfig.pollInterval : পরবর্তী ভোটের আগে অপেক্ষা করার প্রস্তাবিত সময়
  • pollingConfig.timeoutIn : সময় শেষ হওয়ার আগে অপেক্ষা করার জন্য মোট সময়

যদি mediaItemsSet মিথ্যা হয় এবং timeoutIn পৌঁছানো না হয়, pollInterval এর জন্য অপেক্ষা করুন এবং তারপর আবার পোল করুন।

যদি mediaItemsSet সত্য হয়, নির্বাচিত মিডিয়া আইটেম তালিকা করতে এগিয়ে যান।

যদি timeoutIn পৌঁছে যায়, টাইমআউটটি সুন্দরভাবে পরিচালনা করুন।