ওভারভিউ

Google Wallet Passes API অংশীদারদের জন্য Google Wallet-এ রোটেটিং বারকোড সংরক্ষণ করার ক্ষমতা প্রদান করে৷ এই বারকোডগুলি শুধুমাত্র অল্প সময়ের জন্য বৈধ, বারকোড স্ক্রিনশটিংয়ের ঝুঁকি কমাতে অতিরিক্ত নিরাপত্তা প্রদান করে৷ RFC 6238 অনুযায়ী ডিভাইসে বারকোড তৈরি করা হয়, অংশীদার গোপন কী প্রদান করে। যাইহোক, যদি একজন অংশীদার নিজেরাই বারকোড তৈরি করতে চান, তাহলে Google একটি API প্রদান করে যাতে বারকোডগুলি Google-এ ব্যাচ আপলোড করা যায়। এই বারকোডগুলি তারপরে ব্যবহারকারীদের ফোনে পাঠানো হবে, যেখানে তারা অল্প সময়ের জন্য প্রদর্শিত বারকোডগুলি ঘোরানোর মতো কাজ করবে৷ আমরা এই সমাধানটিকে পার্টনার-জেনারেটেড রোটেটিং বারকোড হিসাবে উল্লেখ করি।

পার্টনার-জেনারেটেড রোটেটিং বারকোড API

পার্টনার-জেনারেটেড রোটেটিং বারকোড একই ঘূর্ণন বারকোড অবজেক্ট ব্যবহার করে তৈরি করা হয়। শুধুমাত্র টাইপ প্রয়োজন, যদিও আমরা বারকোডের একটি ছোট, স্টার্টার সেট তৈরি করার পরামর্শ দিই (~10 মিনিটের মূল্যের), এবং সেগুলিকে initialRotatingBarcodeValues পাঠানো। ব্যবহারকারীর জন্য সর্বদা একটি বৈধ বারকোড প্রস্তুত রয়েছে তা নিশ্চিত করার জন্য অংশীদার দায়ী, এবং initialRotatingBarcodeValues পরবর্তী ব্যাচ আপলোড কলটিকে অ্যাসিঙ্ক্রোনাস হতে দেয়।

  rotatingBarcode {
    initialRotatingBarcodeValues: object (RotatingBarcodeValues),
    type: enum (BarcodeType),
  }
মাঠ বর্ণনা
initialRotatingBarcodeValues

object ( RotatingBarcodeValues )

বারকোডে এনকোড করার মানগুলি৷ অন্তত একটি মান প্রয়োজন. এই প্রাথমিক বারকোডগুলি ব্যবহারকারী যখন প্রথমবার তাদের পাস অর্জন করে এবং পরবর্তী ব্যাচ আপলোড কল করা হয় তখন এর মধ্যে ব্যবধান পূরণ করার জন্য।

type

enum ( BarcodeType )

প্রয়োজন। এই বারকোডের ধরন।

গ্রহণযোগ্য মান হল:

  • QR_CODE
  • PDF_417

আবর্তিত বারকোড মান
মাঠ বর্ণনা
startDateTime

string

প্রথম বারকোড যে তারিখ/সময় থেকে বৈধ। periodMillis ব্যবহার করে বারকোডগুলি ঘোরানো হবে।

এটি একটি ISO 8601 বর্ধিত বিন্যাস তারিখ/সময়, একটি অফসেট সহ।

values[]

string

বারকোডে এনকোড করার মানগুলি৷ অন্তত একটি মান প্রয়োজন.

কোন সর্বোচ্চ সংখ্যক মান নেই, তবে মনে রাখবেন অনুরোধের অংশের আকার 5MB এর বেশি হতে পারে না।

periodMillis

number

প্রতিটি বারকোড কত সময়ের জন্য বৈধ।

ব্যাচ আপডেট করা বারকোড মান

RotatingBarcode অবজেক্ট তৈরি হওয়ার পর, ব্যবহারকারীর পাসের মেয়াদ শেষ না হওয়া পর্যন্ত আমরা প্রতিদিন এক দিনের মূল্যের বারকোড আপলোড করার পরামর্শ দিই। এটি নিম্নলিখিত REST API শেষ পয়েন্ট দিয়ে করা যেতে পারে।

পদ্ধতি: transitobject.uploadrotatingbarcodevalues

প্রদত্ত অবজেক্ট আইডি দ্বারা উল্লেখিত ট্রানজিট অবজেক্টে ঘূর্ণায়মান বারকোড মান আপলোড করে।

HTTP অনুরোধ

POST https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc eId}/uploadRotatingBarcodeValues

পাথ প্যারামিটার

প্যারামিটার বর্ণনা
resourceId

string

একটি বস্তুর অনন্য শনাক্তকারী।

শরীরের অনুরোধ

অনুরোধের মূল অংশে (যা 5MB অতিক্রম করতে পারে না) RotatingBarcodeValues- এর একটি উদাহরণ রয়েছে।

পদ্ধতি: transitobject.downloadrotatingbarcodevalues

প্রদত্ত অবজেক্ট আইডি দ্বারা উল্লেখিত ট্রানজিট অবজেক্টের জন্য ঘূর্ণমান বারকোড মান ডাউনলোড করে। অংশীদাররা সর্বশেষ ব্যাচ যাচাই করতে চাইলে এটি কার্যকর।

HTTP অনুরোধ

GET https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do wnloadRotatingBarcodeValues?alt=media

পাথ প্যারামিটার

প্যারামিটার বর্ণনা
resourceId

string

একটি বস্তুর অনন্য শনাক্তকারী।

ফলব্যাক মেকানিজম

মনে রাখবেন যে যদি অন্যথায়-বৈধ RotatingBarcode-এর প্রদর্শনের জন্য কোনো বৈধ বারকোড না থাকে (সেগুলি এখনও আপলোড করা হয়নি, বা সমস্ত বর্তমান বারকোড ব্যবহার করা হয়েছে), ব্যবহারকারীকে একটি ত্রুটি বার্তা দেখানো হবে৷