Engage SDK Travel: থার্ড-পার্টি টেকনিক্যাল ইন্টিগ্রেশন সংক্রান্ত নির্দেশাবলী

ব্যবহারকারীরা যেখানে আছেন সেখানে তাদের কাছে পৌঁছে অ্যাপ এনগেজমেন্ট বুস্ট করুন। Engage SDK ইন্টিগ্রেট করুন যাতে একাধিক অন-ডিভাইস সারফেস জুড়ে ব্যবহারকারীদের সরাসরি পছন্দমতো সাজেশন এবং কন্টিনিউয়েশন কন্টেন্ট ডেলিভার করা যায়, যেমন কালেকশন, Entertainment Space এবং Play Store। ইন্টিগ্রেশনটি গড় APK-তে ৫০ কেবি (কমপ্রেস করা) থেকে কম যোগ করে এবং বেশিরভাগ অ্যাপের ক্ষেত্রে ডেভেলপারের প্রায় এক সপ্তাহ সময় নেয়। আমাদের ব্যবসার সাইট থেকে আরও জানুন।

এই গাইডে ডেভেলপার পার্টনারদের জন্য Engage কন্টেন্ট সারফেসে ভ্রমণ ও ইভেন্ট কন্টেন্ট ডেলিভার করার নির্দেশাবলী রয়েছে।

বিভাগ সংক্রান্ত সহায়তা ও সারফেস

Engage SDK সারফেসের উপযুক্ততা আপনার অ্যাপের কন্টেন্ট বিভাগের উপর নির্ভর করে। নির্দিষ্ট সারফেসে আপনার যোগ্যতা নির্ধারণ করতে নিম্নলিখিত টেবিল ব্যবহার করুন:

স্ট্যাটাস কন্টেন্ট বিভাগ বা ব্যবহারিক প্রয়োগ যেসব সারফেসে কাজ করে
কাজ করে
(সব সারফেসে উপযুক্ত)
  • সব ভ্রমণ ও স্থানীয় (এই টেবিলে তালিকাভুক্ত কাজ করে না এমন সাব-ক্যাটাগরি ছাড়া)
  • ইভেন্ট (সব সাব-ক্যাটাগরি)
  • পোষ্যদের অ্যাক্টিভিটি, মনিটর করা, বসানো, হাঁটানো
  • সংগ্রহ
  • Play Store অ্যাপ ট্যাব
  • Play Store-এর অ্যাকাউন্ট ট্যাব
  • Play Store-এর স্টোর লিস্টিং পৃষ্ঠা
কাজ করে না
  • ফ্লাইট ট্র্যাকার

ইন্টিগ্রেশনের বিবরণ

এই বিভাগে ভ্রমণ ও ইভেন্ট কন্টেন্টের জন্য Engage SDK-এর সাথে ইন্টিগ্রেট করার জন্য প্রয়োজনীয় ধাপ, ডেটা মডেল এবং পরিভাষা সম্পর্কে বিস্তারিত আলোচনা করা হয়েছে।

পরিভাষা

এই ইন্টিগ্রেশনে নিম্নলিখিত ক্লাস্টারের ধরন অন্তর্ভুক্ত: সাজেশন, ফিচার করা, রিজার্ভেশন এবং সার্চ করা চালিয়ে যান।

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

    • সাজেশন ক্লাস্টার ArticleEntity, EventEntity, LodgingEntity, PointOfInterestEntity বা StoreEntity তালিকা দিয়ে তৈরি করা যেতে পারে, তবে বিভিন্ন এন্টিটির ধরন মিশিয়ে নয়।

    আপনার সাজেশন নিম্নলিখিত স্ট্রাকচার অনুযায়ী তৈরি হয়:

    • সাজেশন ক্লাস্টার: একটি UI ভিউ যাতে একই ডেভেলপার পার্টনারের থেকে পাওয়া সাজেশনের একটি গ্রুপ থাকে।

    • এন্টিটি: ক্লাস্টারে একটি আইটেমকে উপস্থাপন করে এমন অবজেক্ট। এই ইন্টিগ্রেশন কিছু এন্টিটি অফার করে যা সাজেশন ক্লাস্টার ব্যবহার করে দেখানো হবে:

      • ArticleEntity: ArticleEntity হল ভ্রমণ ও ইভেন্ট সম্পর্কিত টেক্সট-ভিত্তিক কন্টেন্টের জন্য সাজেশন। এটি নিবন্ধ, ব্লগপোস্ট, মার্কেটিং কন্টেন্ট, খবরের স্নিপেট ইত্যাদির জন্য ব্যবহার করা যেতে পারে।

        ছবি ১: UI-তে সাজেশন ক্লাস্টারের মধ্যে একটি ArticleEntity দেখানো হচ্ছে।
      • EventEntity: EventEntity ভবিষ্যতে হতে চলা কোনও ইভেন্টকে বোঝায়। ইভেন্ট শুরুর সময় হল একটি গুরুত্বপূর্ণ তথ্য যা ব্যবহারকারীদের জানাতে হবে।

        ছবি ২: UI-তে সাজেশন ক্লাস্টারের মধ্যে একটি EventEntity দেখানো হচ্ছে।
      • LodgingEntity: LodgingEntity হল থাকার জায়গা, যেমন হোটেল, অ্যাপার্টমেন্ট, স্বল্প ও দীর্ঘ মেয়াদে ভাড়ার জন্য হলিডে হোম।

        ছবি ৩: UI-তে সাজেশন ক্লাস্টারের মধ্যে একটি LodgingEntity দেখানো হচ্ছে।
      • StoreEntity: StoreEntity কোনও স্টোর, রেস্তোরাঁ, ক্যাফে ইত্যাদি দেখায়। এটি এমন কন্টেন্ট হাইলাইট করে যেখানে ডাইনিং ভেন্যু বা স্টোর হল গুরুত্বপূর্ণ তথ্য যা ব্যবহারকারীদের জানানো প্রয়োজন।

        ছবি ৪: UI-তে সাজেশন ক্লাস্টারের মধ্যে একটি StoreEntity দেখানো হয়েছে।
      • PointOfInterestEntity: PointOfInterestEntity বলতে গ্যাস স্টেশন, ইভেন্টের স্থান, থিম পার্ক, মিউজিয়াম, পর্যটকদের আকর্ষণ, হাইকিং ট্রেল ইত্যাদির মতো আকর্ষণীয় স্থানকে বোঝায়। এটি এমন কন্টেন্ট হাইলাইট করে যেখানে লোকেশন হল তথ্যের একটি গুরুত্বপূর্ণ অংশ যা ব্যবহারকারীদের জানানো প্রয়োজন। এটি থাকার জায়গা, স্টোর বা ডাইনিং ভেন্যু হিসেবে ব্যবহার করা যাবে না।

        ছবি ৫: UI-তে সাজেশন ক্লাস্টারের মধ্যে একটি PointOfInterestEntity দেখানো হচ্ছে।
  • রিজার্ভেশন ক্লাস্টার, একাধিক ডেভেলপার পার্টনারের থেকে ব্যবহারকারীদের সম্প্রতি এনগেজ করা কন্টেন্ট একটি UI গ্রুপিংয়ে দেখায়। প্রতিটি ডেভেলপার পার্টনারকে রিজার্ভেশন ক্লাস্টারে সর্বাধিক ১০টি এন্টিটি ব্রডকাস্ট করার অনুমতি দেওয়া হবে।

    আপনার রিজার্ভেশন কন্টেন্ট নিম্নলিখিত স্ট্রাকচার অনুযায়ী হতে পারে:

    • RestaurantReservationEntity: RestaurantReservationEntity রেস্তোরাঁ বা ক্যাফেতে রিজার্ভেশনকে বোঝায় এবং ব্যবহারকারীদের আসন্ন বা চলমান রেস্তোরাঁ রিজার্ভেশন ট্র্যাক করতে সাহায্য করে।

      ছবি ৬. UI-তে রিজার্ভেশন ক্লাস্টারের মধ্যে একটি RestaurantReservationEntity দেখানো হচ্ছে।
    • EventReservationEntity: EventReservationEntity কোনও ইভেন্টের জন্য রিজার্ভেশনকে দেখায় এবং ব্যবহারকারীদের আসন্ন বা চলমান ইভেন্টের রিজার্ভেশন ট্র্যাক করতে সাহায্য করে। ইভেন্টের মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত থাকলেও তার মধ্যেই সীমিত নয়:

      • ফুটবল ম্যাচের জন্য রিজার্ভেশনের মতো স্পোর্টস ইভেন্ট
      • ই-স্পোর্টসের জন্য রিজার্ভেশনের মতো গেমিং ইভেন্ট
      • সিনেমা হলে সিনেমা দেখার জন্য রিজার্ভেশন, কনসার্ট, থিয়েটার, বইয়ে অটোগ্রাফ দেওয়ার মতো বিনোদনমূলক ইভেন্ট
      • ভ্রমণ বা আগ্রহের বিষয় সংক্রান্ত রিজার্ভেশন যেমন গাইডেড ট্যুর, মিউজিয়ামের টিকিট
      • সামাজিক / সেমিনার / কনফারেন্স রিজার্ভেশন
      • শিক্ষা / ট্রেনিং সেশন রিজার্ভেশন
      ছবি ৭. UI-তে রিজার্ভেশন ক্লাস্টারের মধ্যে একটি EventReservationEntity দেখানো হচ্ছে।
    • LodgingReservationEntity: LodgingEntityReservation হল ভ্রমণের সময় থাকার জায়গা রিজার্ভেশন সংক্রান্ত তথ্য এবং এটি ব্যবহারকারীকে আসন্ন বা চলমান হোটেল বা ভ্যাকেশন রেন্টাল রিজার্ভেশন ট্র্যাক করতে সাহায্য করে।

      ছবি ৮. রিজার্ভেশন ক্লাস্টারের মধ্যে একটি LodgingReservationEntity দেখানো UI।
    • TransportationReservationEntity: TransportationReservationEntity যেকোনও মোডে পরিবহনের জন্য রিজার্ভেশন দেখায় এবং ব্যবহারকারীদের আসন্ন বা চলমান ফ্লাইট, ফেরি, ট্রেন, বাস, রাইড-শেয়ারিং বা ক্রুজের জন্য রিজার্ভেশন ট্র্যাক করতে সাহায্য করে।

      ছবি ৯. রিজার্ভেশন ক্লাস্টারের মধ্যে একটি TransportationReservationEntity দেখানো UI।
    • VehicleRentalReservationEntity: VehicleRentalReservationEntity গাড়ি ভাড়া সংক্রান্ত রিজার্ভেশন দেখায় এবং ব্যবহারকারীদের আসন্ন বা চলমান গাড়ি ভাড়া সংক্রান্ত রিজার্ভেশন ট্র্যাক করতে সাহায্য করে।

      ছবি ১০. রিজার্ভেশন ক্লাস্টারের মধ্যে একটি VehicleRentalReservationEntity দেখানো UI।
  • ফিচার করা ক্লাস্টার, একটি UI গ্রুপিংয়ে একাধিক ডেভেলপার পার্টনারের থেকে বেছে নেওয়া এন্টিটি দেখায়। একটিই ফিচার করা ক্লাস্টার থাকবে, যা UI-এর উপরের দিকে দেখানো হবে এবং এটি সব সাজেশন ক্লাস্টারের উপরে অগ্রাধিকারের ভিত্তিতে প্লেস করা হবে। প্রত্যেক ডেভেলপার পার্টনারকে ফিচার করা ক্লাস্টারে সর্বাধিক ১০টি এন্টিটি ব্রডকাস্ট করার অনুমতি দেওয়া হবে।

    • GenericFeaturedEntity: GenericFeaturedEntity, সাজেশন আইটেমের থেকে আলাদা, কারণ ফিচার করা আইটেম ডেভেলপারদের থেকে পাওয়া একটি সেরা কন্টেন্টের জন্য ব্যবহার করা উচিত এবং এটি এমন একটি গুরুত্বপূর্ণ কন্টেন্টকে উপস্থাপন করা উচিত যা ব্যবহারকারীদের কাছে আকর্ষণীয় এবং প্রাসঙ্গিক হবে।

      ছবি ১১: UI-তে GenericFeaturedEntity-এর তালিকা সহ FeaturedCluster দেখানো হচ্ছে
  • সার্চ করা চালিয়ে যান ক্লাস্টার ব্যবহারকারীদের তাদের আগের ভ্রমণ সার্চের যাত্রা আবার শুরু করতে সাহায্য করে। এটি করার জন্য, ব্যবহারকারী সম্প্রতি তার সমস্ত ভ্রমণ অ্যাপ জুড়ে যেসব সার্চ কোয়েরি সার্চ করেছেন তার একটি তালিকা দেখায়। ক্লাস্টারটি দ্বিতীয় পজিশনে পিন করা হবে, রিজার্ভেশনের পরে এবং ফিচার করা ও সাজেস্ট করা ক্লাস্টারের আগে। প্রত্যেক ডেভেলপার পার্টনারকে 'সার্চ করা চালিয়ে যান' ক্লাস্টারে সর্বাধিক ৩টি এন্টিটি ব্রডকাস্ট করার অনুমতি দেওয়া হবে।

    • PointOfInterestEntity: PointOfInterestEntity বলতে কোনও আকর্ষণীয় স্থানকে বোঝায়, যেমন, গ্যাস স্টেশন, ইভেন্ট ভেন্যু, থিম পার্ক, মিউজিয়াম, পর্যটকদের আকর্ষণ, হাইকিং ট্রেল ইত্যাদি। এটি ব্যবহারকারীর আগে সার্চ করা কন্টেন্ট হাইলাইট করে।

প্রি-ওয়ার্ক

ন্যূনতম API লেভেল: ১৯

আপনার অ্যাপে com.google.android.engage:engage-core লাইব্রেরি যোগ করুন:

dependencies {
    // Make sure you also include that repository in your project's build.gradle file.
    implementation 'com.google.android.engage:engage-core:1.6.0'
}

সারাংশ

ডিজাইনটি বাউন্ড পরিষেবার ইমপ্লিমেন্টেশনের উপর ভিত্তি করে তৈরি করা হয়েছে।

ক্লায়েন্ট যে ডেটা প্রকাশ করতে পারে তা বিভিন্ন ক্লাস্টার ধরনের জন্য নিম্নলিখিত সীমার অধীন:

ক্লাস্টারের ধরন ক্লাস্টারের সীমা একটি ক্লাস্টারে এন্টিটির ন্যূনতম সীমা একটি ক্লাস্টারে সর্বাধিক এন্টিটি সীমা
সাজেশন ক্লাস্টার সর্বাধিক ৭টি অন্তত ১টি সর্বাধিক ৫০ (ArticleEntity, EventEntity, LodgingEntity, StoreEntity, অথবা PointOfInterestEntity)
রিজার্ভেশন ক্লাস্টার সর্বাধিক ১টি অন্তত ১টি সর্বাধিক ২০ (RestaurantReservationEntity, EventReservationEntity, LodgingReservationEntity, TransportationReservationEntity, অথবা VehicleRentalReservationEntity)
ফিচার করা ক্লাস্টার সর্বাধিক ১টি অন্তত ১টি সর্বাধিক ২০ (GenericFeaturedEntity)
সার্চ ক্লাস্টার চালিয়ে যান সর্বাধিক ১টি অন্তত ১টি সর্বাধিক ৩ (PointOfInterestEntity)

ধাপ ১: এন্টিটি ডেটা প্রদান করুন

প্রতিটি আইটেমের ধরন দেখানোর জন্য SDK-তে বিভিন্ন এন্টিটি সংজ্ঞায়িত করা আছে। আমরা ভ্রমণ ও ইভেন্ট বিভাগের জন্য নিম্নলিখিত এন্টিটি সাপোর্ট করি:

  1. GenericFeaturedEntity
  2. ArticleEntity
  3. EventEntity
  4. LodgingEntity
  5. StoreEntity
  6. PointOfInterestEntity
  7. RestaurantReservationEntity
  8. EventReservationEntity
  9. LodgingReservationEntity
  10. TransportationReservationEntity
  11. VehicleRentalReservationEntity

নিম্নলিখিত চার্টে প্রতিটি ধরনের জন্য উপলভ্য অ্যাট্রিবিউট ও প্রয়োজনীয়তার আউটলাইন দেওয়া আছে।

GenericFeaturedEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
পোস্টার ছবি প্রয়োজনীয়

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: ব্যাজ দেওয়া হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ স্পেস আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
শীর্ষক ঐচ্ছিক এন্টিটির শীর্ষক।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৫০টি অক্ষর

বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

ব্যাজগুলি ঐচ্ছিক

প্রতিটি ব্যাজ হয় ফ্রি টেক্সট (সর্বাধিক ১৫টি অক্ষর) অথবা ছোট ছবি।

ছবি/ভিডিওর উপরে বিশেষ UX ট্রিটমেন্ট, যেমন, ছবির উপরে ব্যাজ ওভারলে হিসেবে

  • "লাইভ আপডেট"
  • নিবন্ধ পড়ার সময়সীমা
ব্যাজ - টেক্সট ঐচ্ছিক

ব্যাজের শীর্ষক

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

ফ্রি টেক্সট

টেক্সটের সাজেস্ট করা সাইজ: সর্বাধিক ১৫টি অক্ষর

ব্যাজ - ছবি ঐচ্ছিক

ছোট ছবি

বিশেষ UX ট্রিটমেন্ট, যেমন ছবি/ভিডিও থাম্বনেলের উপর ব্যাজ ওভারলে।

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
কন্টেন্ট বিভাগ ঐচ্ছিক এন্টিটিতে কন্টেন্টের বিভাগ বর্ণনা করুন।

Enum-এর তালিকা

নির্দেশিকার জন্য কন্টেন্ট বিভাগ দেখুন।

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

ArticleEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

পোস্টার ছবি ঐচ্ছিক

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: ছবি যোগ করতে বিশেষভাবে সাজেস্ট করা হয়। ব্যাজ দেওয়া হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ জায়গা আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
সোর্স - শিরোনাম ঐচ্ছিক লেখক, সংস্থা বা রিপোর্টারের নাম

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ২৫ অক্ষরের কম

সোর্স - ছবি ঐচ্ছিক লেখক, সংস্থা, রিপোর্টারের মতো সোর্সের ছবি নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

ব্যাজগুলি ঐচ্ছিক

প্রতিটি ব্যাজ হয় ফ্রি টেক্সট (সর্বাধিক ১৫টি অক্ষর) অথবা ছোট ছবি।

ছবি/ভিডিওর উপরে বিশেষ UX ট্রিটমেন্ট, যেমন, ছবির উপরে ব্যাজ ওভারলে হিসেবে

  • "লাইভ আপডেট"
  • নিবন্ধ পড়ার সময়সীমা
ব্যাজ - টেক্সট ঐচ্ছিক

ব্যাজের শীর্ষক

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

ফ্রি টেক্সট

টেক্সটের সাজেস্ট করা সাইজ: সর্বাধিক ১৫টি অক্ষর

ব্যাজ - ছবি ঐচ্ছিক

ছোট ছবি

বিশেষ UX ট্রিটমেন্ট, যেমন ছবি/ভিডিও থাম্বনেলের উপর ব্যাজ ওভারলে।

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
কন্টেন্ট প্রকাশের সময় ঐচ্ছিক এটি হল মিলিসেকেন্ডে যুগ টাইমস্ট্যাম্প, যখন অ্যাপে কন্টেন্ট প্রকাশ / আপডেট করা হয়েছিল। মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষবার এনগেজ হওয়ার সময় ঐচ্ছিক

ব্যবহারকারী শেষবার এই এন্টিটির সাথে ইন্টার‍্যাক্ট করার সময় মিলিসেকেন্ডে ইপক টাইমস্ট্যাম্প।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
অগ্রগতির শতাংশ ঐচ্ছিক

আজ পর্যন্ত ব্যবহারকারীর দ্বারা সম্পূর্ণ কন্টেন্ট ব্যবহারের শতাংশ।

০~১০০-এর মধ্যে একটি int ভ্যালু।
কন্টেন্ট বিভাগ ঐচ্ছিক এন্টিটিতে কন্টেন্টের বিভাগ বর্ণনা করুন।

Enum-এর তালিকা

নির্দেশিকার জন্য কন্টেন্ট বিভাগ দেখুন।

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

EventEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

স্ট্রিং

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

লোকালাইজ করা শুরুর সময় - টাইমস্ট্যাম্প প্রয়োজনীয়

ইভেন্টটি কখন শুরু হবে বলে আশা করা হচ্ছে তার ইপোক টাইমস্ট্যাম্প।

Joda-Time Instant
স্থানীয় সময় অনুযায়ী শুরুর সময় - টাইমজোন প্রয়োজনীয়

যে টাইমজোনে ইভেন্ট শুরু হওয়ার কথা।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

ইভেন্ট মোড প্রয়োজনীয়

ইভেন্টটি ভার্চুয়াল, ইন-পার্সন নাকি দুটিই হবে তা উল্লেখ করার জন্য একটি ফিল্ড।

Enum: ভার্চুয়াল, ব্যক্তিগতভাবে বা হাইব্রিড
পোস্টার ছবি প্রয়োজনীয়

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: ছবি যোগ করতে বিশেষভাবে সাজেস্ট করা হয়। ব্যাজ দেওয়া হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ জায়গা আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
লোকেশন - দেশ শর্তসাপেক্ষে প্রয়োজন

যে দেশে ইভেন্টটি হচ্ছে।

মনে রাখবেন: এটি IN_PERSON বা HYBRID ইভেন্টের জন্য প্রয়োজন

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - শহর শর্তসাপেক্ষে প্রয়োজন

যে শহরে ইভেন্টটি হচ্ছে।

মনে রাখবেন: এটি IN_PERSON বা HYBRID ইভেন্টের জন্য প্রয়োজন

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - ঠিকানা দেখান শর্তসাপেক্ষে প্রয়োজন

ইভেন্টটি যেখানে হবে সেই ঠিকানা বা জায়গার নাম যা ব্যবহারকারীকে দেখানো উচিত।

মনে রাখবেন: এটি IN_PERSON বা HYBRID ইভেন্টের জন্য প্রয়োজন

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক যে লোকেশনে ইভেন্ট হোস্ট করা হচ্ছে সেখানকার রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাজ্য ঐচ্ছিক যে রাজ্য বা প্রদেশে (প্রযোজ্য হলে) ইভেন্টটি হোস্ট করা হচ্ছে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - পিন কোড ঐচ্ছিক যে লোকেশনে ইভেন্ট হোস্ট করা হচ্ছে সেখানকার পিন কোড (যদি প্রযোজ্য হয়)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - আশেপাশের এলাকা ঐচ্ছিক যে এলাকায় (প্রযোজ্য হলে) ইভেন্টটি হোস্ট করা হচ্ছে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

বন্ধ হওয়ার সময় ঐচ্ছিক

ইভেন্টটি কখন শেষ হবে বলে আশা করা হচ্ছে সেই ইপোক টাইমস্ট্যাম্প।

মনে রাখবেন:এটি মিলিসেকেন্ডে দেখানো হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

ব্যাজগুলি ঐচ্ছিক

প্রতিটি ব্যাজ হয় ফ্রি টেক্সট (সর্বাধিক ১৫টি অক্ষর) অথবা ছোট ছবি।

ব্যাজ - টেক্সট ঐচ্ছিক

ব্যাজের শীর্ষক

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

ফ্রি টেক্সট

টেক্সটের সাজেস্ট করা সাইজ: সর্বাধিক ১৫টি অক্ষর

ব্যাজ - ছবি ঐচ্ছিক

ছোট ছবি

বিশেষ UX ট্রিটমেন্ট, যেমন ছবি/ভিডিও থাম্বনেলের উপর ব্যাজ ওভারলে।

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

ইভেন্টের জন্য টিকিট/পাসের বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক ইভেন্টের জন্য টিকিট/পাসের আসল দাম। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (খুব বড় টেক্সট হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

কন্টেন্ট বিভাগ ঐচ্ছিক এন্টিটিতে কন্টেন্টের বিভাগ বর্ণনা করুন।

উপযুক্ত Enum-এর তালিকা

  • TYPE_MOVIES_AND_TV_SHOWS (উদাহরণ - সিনেমা)
  • TYPE_DIGITAL_GAMES (যেমন - eSports)
  • TYPE_MUSIC (যেমন - কনসার্ট)
  • TYPE_TRAVEL_AND_LOCAL (যেমন - ট্যুর, উৎসব)
  • TYPE_HEALTH_AND_FITENESS (যেমন - যোগ ক্লাস)
  • TYPE_EDUCATION (উদাহরণ - ক্লাস)
  • TYPE_SPORTS (যেমন - ফুটবল খেলা)
  • TYPE_DATING (উদাহরণ - meetup)

নির্দেশিকার জন্য কন্টেন্ট বিভাগ দেখুন।

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

LodgingEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

স্ট্রিং

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

পোস্টার ছবি প্রয়োজনীয়

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: ব্যাজ দেওয়া হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ স্পেস আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
লোকেশন - দেশ প্রয়োজনীয় যে দেশে লজিং হচ্ছে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - শহর প্রয়োজনীয় যে শহরে লজিং হচ্ছে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - ঠিকানা দেখান প্রয়োজনীয় ব্যবহারকারীকে যে ঠিকানা দেখানো হবে। আমরা সাজেস্ট করি যে বেশিরভাগ ক্ষেত্রে শহরের নাম এবং সম্ভব হলে রাজ্য বা দেশের নাম উল্লেখ করুন। ব্যবহারকারী লোকেশনের কাছাকাছি থাকলে, ব্যবহারকারী লোকেশন সম্পর্কে পরিচিত হলে অথবা ক্লাস্টার টাইটেলে শহরের নাম অন্তর্ভুক্ত থাকলে, শুধুমাত্র রাস্তার ঠিকানা বা আশেপাশের এলাকা অন্তর্ভুক্ত করুন। আপনি রাস্তার ঠিকানা যোগ করলে, সংক্ষিপ্ত ঠিকানা দিন, যেখানে সম্ভব সেখানে সংক্ষিপ্ত রূপ ব্যবহার করুন (যেমন, "Street"-এর জন্য "St", "Avenue"-এর জন্য "Ave")।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক লজিংয়ের রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাজ্য ঐচ্ছিক যে রাজ্য বা প্রদেশে (প্রযোজ্য হলে) লজিংটি অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - পিন কোড ঐচ্ছিক লজিংয়ের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - আশেপাশের এলাকা ঐচ্ছিক লজিংয়ের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ব্যাজগুলি ঐচ্ছিক

প্রতিটি ব্যাজ হয় ফ্রি টেক্সট (সর্বাধিক ১৫টি অক্ষর) অথবা ছোট ছবি।

ব্যাজ - টেক্সট ঐচ্ছিক

ব্যাজের শীর্ষক

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

ফ্রি টেক্সট

টেক্সটের সাজেস্ট করা সাইজ: সর্বাধিক ১৫টি অক্ষর

ব্যাজ - ছবি ঐচ্ছিক

ছোট ছবি

বিশেষ UX ট্রিটমেন্ট, যেমন ছবি/ভিডিও থাম্বনেলের উপর ব্যাজ ওভারলে।

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

AvailabilityTimeWindow - স্থানীয়করণ করা শুরুর সময় - টাইমস্ট্যাম্প ঐচ্ছিক লজিং কখন খোলা/উপলভ্য হবে বলে আশা করা হচ্ছে সেই সংক্রান্ত ইপক টাইমস্ট্যাম্প। Joda-Time Instant
AvailabilityTimeWindow - স্থানীয় সময় অনুযায়ী শুরুর সময় - টাইমজোন ঐচ্ছিক যে টাইমজোনে লজিং খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

AvailabilityTimeWindow - স্থানীয় সময় অনুযায়ী শেষ হওয়ার সময় - টাইমস্ট্যাম্প ঐচ্ছিক যে সময় পর্যন্ত লজিং খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে সেই সময় পর্যন্ত ইপক টাইমস্ট্যাম্প। Joda-Time Instant
AvailabilityTimeWindow - Localized End Time - Timezone ঐচ্ছিক যে টাইমজোনে লজিং খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

রেটিং - সর্বোচ্চ ভ্যালু ঐচ্ছিক

রেটিং স্কেলের সর্বাধিক মান।

রেটিংয়ের বর্তমান ভ্যালু দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - বর্তমান ভ্যালু ঐচ্ছিক

রেটিং স্কেলের বর্তমান ভ্যালু।

রেটিংয়ের সর্বাধিক মান দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - সংখ্যা ঐচ্ছিক

লজিংয়ের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনার অ্যাপ যদি ব্যবহারকারীদের কাছে এটি কীভাবে দেখানো হবে তা নিয়ন্ত্রণ করতে চায়, তাহলে এই ফিল্ডটি প্রদান করুন। ব্যবহারকারীকে দেখানো যেতে পারে এমন সংক্ষিপ্ত স্ট্রিং প্রদান করুন। যেমন, সংখ্যাটি যদি ১,০০০,০০০ হয়, তাহলে 1M-এর মতো সংক্ষিপ্ত রূপ ব্যবহার করার কথা বিবেচনা করুন, যাতে এটি ছোট ডিসপ্লে সাইজে কেটে না যায়।

স্ট্রিং
রেটিং - গণনা ভ্যালু ঐচ্ছিক

লজিংয়ের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনি যদি ডিসপ্লে অ্যাব্রিভিয়েশন লজিক নিজে ম্যানেজ করতে না চান, তাহলে এই ফিল্ডে তথ্য দিন। যদি Count এবং Count Value উভয়ই থাকে, তাহলে আমরা ব্যবহারকারীদের দেখানোর জন্য Count ব্যবহার করব

দীর্ঘ
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

থাকার জায়গার বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক লজিংয়ের আসল দাম, যা UI-তে কাটা চিহ্নের মাধ্যমে দেখানো হবে। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (খুব বড় টেক্সট হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

StoreEntity

StoreEntity অবজেক্টটি এমন একটি স্বতন্ত্র স্টোরকে দেখায় যা ডেভেলপার পার্টনাররা প্রকাশ করতে চান, যেমন একটি জনপ্রিয় ডাইনিং প্লেস বা খাবারের দোকান যা কারও ভ্রমণের অভিজ্ঞতার সাথে প্রাসঙ্গিক।

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
পোস্টার ছবি প্রয়োজনীয় অন্তত একটি ছবি দিতে হবে। নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক ঐচ্ছিক স্টোরের নাম।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (টেক্সট খুব বড় হলে উপবৃত্ত দেখানো হতে পারে)

লোকেশন ঐচ্ছিক স্টোরের লোকেশন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (টেক্সট খুব বড় হলে উপবৃত্ত দেখানো হতে পারে)

কলআউট ঐচ্ছিক স্টোরের জন্য প্রোমো, ইভেন্ট বা আপডেট ফিচার করার জন্য কলআউট, যদি উপলভ্য থাকে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (টেক্সট খুব বড় হলে উপবৃত্ত দেখানো হতে পারে)

কলআউট ফাইন প্রিন্ট ঐচ্ছিক কলআউটের জন্য ফাইন প্রিন্ট টেক্সট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (টেক্সট খুব বড় হলে উপবৃত্ত দেখানো হতে পারে)

বর্ণনা ঐচ্ছিক স্টোরের বিবরণ।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৯০ অক্ষরের কম (টেক্সট খুব বড় হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

বিভাগ ঐচ্ছিক

ডাইনিং প্লেসের প্রসঙ্গে, কোনও স্টোরের বিভাগ, এটি "ফ্রেঞ্চ", "নিউ আমেরিকান", "রামেন", "ফাইন ডাইনিং"-এর মতো ক্যুইজিন হতে পারে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (টেক্সট খুব বড় হলে উপবৃত্ত দেখানো হতে পারে)

রেটিং - সর্বোচ্চ ভ্যালু ঐচ্ছিক

রেটিং স্কেলের সর্বাধিক মান।

রেটিংয়ের বর্তমান ভ্যালু দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - বর্তমান ভ্যালু ঐচ্ছিক

রেটিং স্কেলের বর্তমান ভ্যালু।

রেটিংয়ের সর্বাধিক মান দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - সংখ্যা ঐচ্ছিক

লজিংয়ের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনার অ্যাপ যদি ব্যবহারকারীদের কাছে এটি কীভাবে দেখানো হবে তা নিয়ন্ত্রণ করতে চায়, তাহলে এই ফিল্ডটি প্রদান করুন। ব্যবহারকারীকে দেখানো যেতে পারে এমন সংক্ষিপ্ত স্ট্রিং প্রদান করুন। যেমন, সংখ্যাটি যদি ১,০০০,০০০ হয়, তাহলে 1M-এর মতো সংক্ষিপ্ত রূপ ব্যবহার করার কথা বিবেচনা করুন, যাতে এটি ছোট ডিসপ্লে সাইজে কেটে না যায়।

স্ট্রিং
রেটিং - গণনা ভ্যালু ঐচ্ছিক

লজিংয়ের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনি যদি ডিসপ্লে অ্যাব্রিভিয়েশন লজিক নিজে ম্যানেজ করতে না চান, তাহলে এই ফিল্ডে তথ্য দিন। যদি Count এবং Count Value উভয়ই থাকে, তাহলে আমরা ব্যবহারকারীদের দেখানোর জন্য Count ব্যবহার করব

দীর্ঘ
DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

PointOfInterestEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

স্ট্রিং

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

পোস্টার ছবি শর্তসাপেক্ষে প্রয়োজন

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: এন্টিটি যদি সাজেশন ক্লাস্টারের অংশ হয়, তাহলে ছবি দিতেই হবে। ব্যাজ প্রদান করা হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ স্পেস আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
শেষবার এনগেজ হওয়ার সময় শর্তসাপেক্ষে প্রয়োজন

ব্যবহারকারী শেষবার যখন এই এন্টিটির সাথে ইন্টার‍্যাক্ট করেছিলেন সেই সময়ের ইপক টাইমস্ট্যাম্প।

মনে রাখবেন: এন্টিটি যদি সার্চ ক্লাস্টার চালিয়ে যাওয়ার অংশ হয়, তাহলে এই ফিল্ডটি প্রয়োজন।

Joda-Time Instant
লোকেশন - দেশ শর্তসাপেক্ষে প্রয়োজন

যে দেশে উল্লেখযোগ্য স্থানটি অবস্থিত।

মনে রাখবেন: এন্টিটি সাজেশন ক্লাস্টারের অংশ হলে এই ফিল্ডটি প্রয়োজন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - শহর শর্তসাপেক্ষে প্রয়োজন

যে শহরে উল্লেখযোগ্য স্থানটি অবস্থিত।

মনে রাখবেন: এন্টিটি সাজেশন ক্লাস্টারের অংশ হলে এই ফিল্ডটি প্রয়োজন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - ঠিকানা দেখান শর্তসাপেক্ষে প্রয়োজন

ব্যবহারকারীকে যে ঠিকানা দেখানো হবে। সংক্ষিপ্ত ঠিকানা দিন, যেখানে সম্ভব সংক্ষিপ্ত রূপ ব্যবহার করুন (যেমন, "Street"-এর জন্য "St", "Avenue"-এর জন্য "Ave")। ব্যবহারকারীর ডিভাইস ও সেটিংসের উপর নির্ভর করে এই স্ট্রিং ছোট করা হতে পারে। স্পষ্টভাবে শনাক্ত করার জন্য শহরের নাম যোগ করুন।

মনে রাখবেন: এন্টিটি সাজেশন ক্লাস্টারের অংশ হলে এই ফিল্ডটি প্রয়োজন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~৩৫টি অক্ষর

লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক উল্লেখযোগ্য স্থানের রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাজ্য ঐচ্ছিক উল্লেখযোগ্য স্থানটি যে রাজ্য বা প্রদেশে (প্রযোজ্য হলে) অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - পিন কোড ঐচ্ছিক উল্লেখযোগ্য স্থানের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - আশেপাশের এলাকা ঐচ্ছিক উল্লেখযোগ্য স্থানের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

AvailabilityTimeWindow - স্থানীয় সময় অনুযায়ী শুরুর সময় - টাইমস্ট্যাম্প ঐচ্ছিক পয়েন্ট অফ ইন্টারেস্ট কখন খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে সেই সংক্রান্ত ইপক টাইমস্ট্যাম্প। Joda-Time Instant
AvailabilityTimeWindow - স্থানীয় সময় অনুযায়ী শুরুর সময় - টাইমজোন ঐচ্ছিক যে টাইমজোনে আকর্ষণীয় স্থানটি খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

AvailabilityTimeWindow - স্থানীয় সময় অনুযায়ী শেষ হওয়ার সময় - টাইমস্ট্যাম্প ঐচ্ছিক যে সময় পর্যন্ত আকর্ষণীয় স্থান খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে সেই সময় পর্যন্ত ইপক টাইমস্ট্যাম্প। Joda-Time Instant
AvailabilityTimeWindow - Localized End Time - Timezone ঐচ্ছিক যে টাইমজোনে আকর্ষণীয় স্থানটি খোলা/উপলভ্য থাকবে বলে আশা করা হচ্ছে।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

ব্যাজগুলি ঐচ্ছিক

প্রতিটি ব্যাজ হয় ফ্রি টেক্সট (সর্বাধিক ১৫টি অক্ষর) অথবা ছোট ছবি।

ব্যাজ - টেক্সট ঐচ্ছিক

ব্যাজের শীর্ষক

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

ফ্রি টেক্সট

টেক্সটের সাজেস্ট করা সাইজ: সর্বাধিক ১৫টি অক্ষর

ব্যাজ - ছবি ঐচ্ছিক

ছোট ছবি

বিশেষ UX ট্রিটমেন্ট, যেমন ছবি/ভিডিও থাম্বনেলের উপর ব্যাজ ওভারলে।

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

রেটিং - সর্বোচ্চ ভ্যালু ঐচ্ছিক

রেটিং স্কেলের সর্বাধিক মান।

রেটিংয়ের বর্তমান ভ্যালু দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - বর্তমান ভ্যালু ঐচ্ছিক

রেটিং স্কেলের বর্তমান ভ্যালু।

রেটিংয়ের সর্বাধিক মান দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - সংখ্যা ঐচ্ছিক

উল্লেখযোগ্য স্থানের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনার অ্যাপ যদি ব্যবহারকারীদের কাছে এটি কীভাবে দেখানো হবে তা নিয়ন্ত্রণ করতে চায়, তাহলে এই ফিল্ডটি প্রদান করুন। ব্যবহারকারীকে দেখানো যেতে পারে এমন সংক্ষিপ্ত স্ট্রিং প্রদান করুন। যেমন, সংখ্যাটি যদি ১,০০০,০০০ হয়, তাহলে 1M-এর মতো সংক্ষিপ্ত রূপ ব্যবহার করার কথা বিবেচনা করুন, যাতে এটি ছোট ডিসপ্লে সাইজে কেটে না যায়।

স্ট্রিং
রেটিং - গণনা ভ্যালু ঐচ্ছিক

উল্লেখযোগ্য স্থানের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনি যদি ডিসপ্লে অ্যাব্রিভিয়েশন লজিক নিজে ম্যানেজ করতে না চান, তাহলে এই ফিল্ডে তথ্য দিন। যদি Count এবং Count Value উভয়ই থাকে, তাহলে আমরা ব্যবহারকারীদের দেখানোর জন্য Count ব্যবহার করব

দীর্ঘ
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

উল্লেখযোগ্য স্থানের টিকিট/এন্ট্রি পাসের বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক উল্লেখযোগ্য স্থানের টিকিট/এন্ট্রি পাসের আসল দাম। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (টেক্সট অনেক বড় হলে ইলিপসিস দেখানো হতে পারে)

কন্টেন্ট বিভাগ ঐচ্ছিক এন্টিটিতে কন্টেন্টের বিভাগ বর্ণনা করুন।

উপযুক্ত Enum-এর তালিকা

  • TYPE_TRAVEL_AND_LOCAL
  • TYPE_MOVIES_AND_TV_SHOWS (উদাহরণ - থিয়েটার)
  • TYPE_MEDICAL (যেমন - হাসপাতাল)
  • TYPE_EDUCATION (উদাহরণ - স্কুল)
  • TYPE_SPORTS (যেমন - স্টেডিয়াম)

নির্দেশিকার জন্য কন্টেন্ট বিভাগ দেখুন।

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

RestaurantReservationEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

স্ট্রিং

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

লোকালাইজড রিজার্ভেশন শুরুর সময় - টাইমস্ট্যাম্প প্রয়োজনীয় রিজার্ভেশন শুরু হওয়ার প্রত্যাশিত সময় সংক্রান্ত ইপক টাইমস্ট্যাম্প। Joda-Time Instant
স্থানীয়করণ করা রিজার্ভেশন শুরুর সময় - টাইমজোন প্রয়োজনীয় যে টাইমজোনে রিজার্ভেশন শুরু হওয়ার কথা।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

লোকেশন - দেশ প্রয়োজনীয় যে দেশে রেস্তোরাঁটি অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - শহর প্রয়োজনীয় যে শহরে রেস্তোরাঁটি অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - ঠিকানা দেখান প্রয়োজনীয় রেস্তোরাঁর ঠিকানা যা ব্যবহারকারীকে দেখানো হবে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক রেস্তোরাঁর রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাজ্য ঐচ্ছিক রেস্তোরাঁটি যে রাজ্য বা প্রদেশে (প্রযোজ্য হলে) অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - পিন কোড ঐচ্ছিক রেস্তোরাঁর পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - আশেপাশের এলাকা ঐচ্ছিক রেস্তোরাঁর আশেপাশের এলাকা (যদি প্রযোজ্য হয়)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পোস্টার ছবি ঐচ্ছিক একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯ নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

টেবিলের সাইজ ঐচ্ছিক রিজার্ভেশন গ্রুপে থাকা লোকজনের সংখ্যা পূর্ণসংখ্যা > ০
DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

EventReservationEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

স্ট্রিং

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

লোকালাইজ করা শুরুর সময় - টাইমস্ট্যাম্প প্রয়োজনীয়

ইভেন্টটি কখন শুরু হবে বলে আশা করা হচ্ছে তার ইপোক টাইমস্ট্যাম্প।

Joda-Time Instant
স্থানীয় সময় অনুযায়ী শুরুর সময় - টাইমজোন প্রয়োজনীয়

যে টাইমজোনে ইভেন্ট শুরু হওয়ার কথা।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

ইভেন্ট মোড প্রয়োজনীয়

ইভেন্টটি ভার্চুয়াল, ইন-পার্সন নাকি দুটিই হবে তা উল্লেখ করার জন্য একটি ফিল্ড।

Enum: ভার্চুয়াল, ব্যক্তিগতভাবে বা হাইব্রিড
লোকেশন - দেশ শর্তসাপেক্ষে প্রয়োজন

যে দেশে ইভেন্টটি হচ্ছে।

মনে রাখবেন: এটি IN_PERSON বা HYBRID ইভেন্টের জন্য প্রয়োজন

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - শহর শর্তসাপেক্ষে প্রয়োজন

যে শহরে ইভেন্টটি হচ্ছে।

মনে রাখবেন: এটি IN_PERSON বা HYBRID ইভেন্টের জন্য প্রয়োজন

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - ঠিকানা দেখান শর্তসাপেক্ষে প্রয়োজন

ইভেন্টটি যেখানে হবে সেই ঠিকানা বা জায়গার নাম যা ব্যবহারকারীকে দেখানো উচিত।

মনে রাখবেন: এটি IN_PERSON বা HYBRID ইভেন্টের জন্য প্রয়োজন

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক যে লোকেশনে ইভেন্ট হোস্ট করা হচ্ছে সেখানকার রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাজ্য ঐচ্ছিক যে রাজ্য বা প্রদেশে (প্রযোজ্য হলে) ইভেন্টটি হোস্ট করা হচ্ছে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - পিন কোড ঐচ্ছিক যে লোকেশনে ইভেন্ট হোস্ট করা হচ্ছে সেখানকার পিন কোড (যদি প্রযোজ্য হয়)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - আশেপাশের এলাকা ঐচ্ছিক যে এলাকায় (প্রযোজ্য হলে) ইভেন্টটি হোস্ট করা হচ্ছে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পোস্টার ছবি ঐচ্ছিক

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: ছবি যোগ করতে বিশেষভাবে সাজেস্ট করা হয়। ব্যাজ দেওয়া হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ জায়গা আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
লোকালাইজ করা শেষ হওয়ার সময় - টাইমস্ট্যাম্প ঐচ্ছিক

ইভেন্টটি কখন শেষ হবে বলে আশা করা হচ্ছে সেই ইপোক টাইমস্ট্যাম্প।

Joda-Time Instant
লোকালাইজ করা শেষ হওয়ার সময় - টাইমজোন ঐচ্ছিক

ইভেন্টটি যে টাইমজোনে শেষ হবে বলে আশা করা হচ্ছে।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

পরিষেবা প্রদানকারী - নাম ঐচ্ছিক

পরিষেবা প্রদানকারীর নাম।

মনে রাখবেন:পরিষেবা প্রদানকারীর জন্য টেক্সট বা ছবি প্রয়োজন।

ফ্রি টেক্সট। যেমন, ইভেন্ট আয়োজক/ট্যুরের নাম
পরিষেবা প্রদানকারী - ছবি ঐচ্ছিক

পরিষেবা প্রদানকারীর লোগো/ছবি।

মনে রাখবেন:পরিষেবা প্রদানকারীর জন্য টেক্সট বা ছবি প্রয়োজন।

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

ব্যাজগুলি ঐচ্ছিক

প্রতিটি ব্যাজ হয় ফ্রি টেক্সট (সর্বাধিক ১৫টি অক্ষর) অথবা ছোট ছবি।

ব্যাজ - টেক্সট ঐচ্ছিক

ব্যাজের শীর্ষক

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

ফ্রি টেক্সট

টেক্সটের সাজেস্ট করা সাইজ: সর্বাধিক ১৫টি অক্ষর

ব্যাজ - ছবি ঐচ্ছিক

ছোট ছবি

বিশেষ UX ট্রিটমেন্ট, যেমন ছবি/ভিডিও থাম্বনেলের উপর ব্যাজ ওভারলে।

মনে রাখবেন: ব্যাজের জন্য টেক্সট বা ছবি প্রয়োজন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
রিজার্ভেশন আইডি ঐচ্ছিক ইভেন্ট রিজার্ভেশনের জন্য রিজার্ভেশন আইডি। ফ্রি টেক্সট
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

ইভেন্টের জন্য টিকিট/পাসের বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক ইভেন্টের জন্য টিকিট/পাসের আসল দাম। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (খুব বড় টেক্সট হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

রেটিং - সর্বোচ্চ ভ্যালু ঐচ্ছিক

রেটিং স্কেলের সর্বাধিক মান।

রেটিংয়ের বর্তমান ভ্যালু দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - বর্তমান ভ্যালু ঐচ্ছিক

রেটিং স্কেলের বর্তমান ভ্যালু।

রেটিংয়ের সর্বাধিক মান দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - সংখ্যা ঐচ্ছিক

ইভেন্টের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনার অ্যাপ যদি ব্যবহারকারীদের কাছে এটি কীভাবে দেখানো হবে তা নিয়ন্ত্রণ করতে চায়, তাহলে এই ফিল্ডটি প্রদান করুন। ব্যবহারকারীকে দেখানো যেতে পারে এমন সংক্ষিপ্ত স্ট্রিং প্রদান করুন। যেমন, সংখ্যাটি যদি ১,০০০,০০০ হয়, তাহলে 1M-এর মতো সংক্ষিপ্ত রূপ ব্যবহার করার কথা বিবেচনা করুন, যাতে এটি ছোট ডিসপ্লে সাইজে কেটে না যায়।

স্ট্রিং
রেটিং - গণনা ভ্যালু ঐচ্ছিক

ইভেন্টের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনি যদি ডিসপ্লে অ্যাব্রিভিয়েশন লজিক নিজে ম্যানেজ করতে না চান, তাহলে এই ফিল্ডে তথ্য দিন। যদি Count এবং Count Value উভয়ই থাকে, তাহলে আমরা ব্যবহারকারীদের দেখানোর জন্য Count ব্যবহার করব

দীর্ঘ
কন্টেন্ট বিভাগ ঐচ্ছিক এন্টিটিতে কন্টেন্টের বিভাগ বর্ণনা করুন।

উপযুক্ত Enum-এর তালিকা

  • TYPE_MOVIES_AND_TV_SHOWS (উদাহরণ - সিনেমা)
  • TYPE_DIGITAL_GAMES (যেমন - eSports)
  • TYPE_MUSIC (যেমন - কনসার্ট)
  • TYPE_TRAVEL_AND_LOCAL (যেমন - ট্যুর, উৎসব)
  • TYPE_HEALTH_AND_FITENESS (যেমন - যোগ ক্লাস)
  • TYPE_EDUCATION (উদাহরণ - ক্লাস)
  • TYPE_SPORTS (যেমন - ফুটবল খেলা)
  • TYPE_DATING (উদাহরণ - meetup)

নির্দেশিকার জন্য কন্টেন্ট বিভাগ দেখুন।

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

LodgingReservationEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

ফ্রি টেক্সট। যেমন, "১২ ডিসেম্বর থেকে আপনার থাকার ব্যবস্থা"

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

লোকালাইজ করা চেক-ইন টাইম - টাইমস্ট্যাম্প প্রয়োজনীয় ইপক টাইমস্ট্যাম্প যা রিজার্ভেশনের জন্য চেক-ইন করার সময় দেখায়। Joda-Time Instant
লোকালাইজ করা চেক-ইন করার সময় - টাইমজোন প্রয়োজনীয় রিজার্ভেশনের জন্য চেক-ইন করার সময় যে টাইমজোনে রয়েছে।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

লোকালাইজ করা চেক-আউট টাইম - টাইমস্ট্যাম্প প্রয়োজনীয় ইপক টাইমস্ট্যাম্প যা রিজার্ভেশনের জন্য চেক-আউটের সময় দেখায়। Joda-Time Instant
লোকালাইজ করা চেক-আউট করার সময় - টাইমজোন প্রয়োজনীয় যে টাইমজোনে রিজার্ভেশনের জন্য চেক-আউট করার সময় উপলভ্য।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

লোকেশন - দেশ প্রয়োজনীয় যে দেশে লজিংটি অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - শহর প্রয়োজনীয় যে শহরে লজিংটি অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - ঠিকানা দেখান প্রয়োজনীয় ব্যবহারকারীকে যে ঠিকানা দেখানো হবে। সংক্ষিপ্ত ঠিকানা দিন, যেখানে সম্ভব সংক্ষিপ্ত রূপ ব্যবহার করুন (যেমন, "Street"-এর জন্য "St", "Avenue"-এর জন্য "Ave")। ব্যবহারকারীর ডিভাইস ও সেটিংসের উপর নির্ভর করে এই স্ট্রিং ছোট করা হতে পারে। স্পষ্টভাবে শনাক্ত করার জন্য শহরের নাম অন্তর্ভুক্ত করুন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~৩৫টি অক্ষর

লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক লজিংয়ের রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - রাজ্য ঐচ্ছিক যে রাজ্য বা প্রদেশে (প্রযোজ্য হলে) লজিংটি অবস্থিত।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - পিন কোড ঐচ্ছিক লজিংয়ের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

লোকেশন - আশেপাশের এলাকা ঐচ্ছিক লজিংয়ের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পোস্টার ছবি ঐচ্ছিক

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

মনে রাখবেন: ব্যাজ দেওয়া হলে, ছবির উপরে ও নিচে ২৪ ডিপি নিরাপদ স্পেস আছে কিনা তা নিশ্চিত করুন

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

রিজার্ভেশন আইডি ঐচ্ছিক লজিং রিজার্ভেশনের জন্য রিজার্ভেশন আইডি। ফ্রি টেক্সট
রেটিং - সর্বোচ্চ ভ্যালু ঐচ্ছিক

রেটিং স্কেলের সর্বাধিক মান।

রেটিংয়ের বর্তমান ভ্যালু দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - বর্তমান ভ্যালু ঐচ্ছিক

রেটিং স্কেলের বর্তমান ভ্যালু।

রেটিংয়ের সর্বাধিক মান দেওয়া থাকলে এটিও দিতে হবে।

সংখ্যা >= ০.০ হতে হবে
রেটিং - সংখ্যা ঐচ্ছিক

লজিংয়ের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনার অ্যাপ যদি ব্যবহারকারীদের কাছে এটি কীভাবে দেখানো হবে তা নিয়ন্ত্রণ করতে চায়, তাহলে এই ফিল্ডটি প্রদান করুন। ব্যবহারকারীকে দেখানো যেতে পারে এমন সংক্ষিপ্ত স্ট্রিং প্রদান করুন। যেমন, সংখ্যাটি যদি ১,০০০,০০০ হয়, তাহলে 1M-এর মতো সংক্ষিপ্ত রূপ ব্যবহার করার কথা বিবেচনা করুন, যাতে এটি ছোট ডিসপ্লে সাইজে কেটে না যায়।

স্ট্রিং
রেটিং - গণনা ভ্যালু ঐচ্ছিক

লজিংয়ের জন্য রেটিংয়ের সংখ্যা।

মনে রাখবেন: আপনি যদি ডিসপ্লে অ্যাব্রিভিয়েশন লজিক নিজে ম্যানেজ করতে না চান, তাহলে এই ফিল্ডে তথ্য দিন। যদি Count এবং Count Value উভয়ই থাকে, তাহলে আমরা ব্যবহারকারীদের দেখানোর জন্য Count ব্যবহার করব

দীর্ঘ
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

থাকার জায়গার বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক লজিংয়ের আসল দাম, যা UI-তে কাটা চিহ্নের মাধ্যমে দেখানো হবে। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (খুব বড় টেক্সট হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

TransportationReservationEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

ফ্রি টেক্সট। যেমন, "SFO থেকে SAN"

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

পরিবহনের ধরন প্রয়োজনীয় রিজার্ভেশনের জন্য পরিবহনের মোড/ধরন। Enum: FLIGHT, TRAIN, BUS, or FERRY
লোকালাইজড ডিপার্চারের সময় - টাইমস্ট্যাম্প প্রয়োজনীয় ইপক টাইমস্ট্যাম্প যা ছাড়ার সময় দেখায়। Joda-Time Instant
লোকালাইজড ছাড়ার সময় - টাইমজোন প্রয়োজনীয় ছাড়ার সময়ের টাইমজোন।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

লোকালাইজড আসার সময় - টাইমস্ট্যাম্প প্রয়োজনীয় পৌঁছানোর সময় দেখায় এমন ইপক টাইমস্ট্যাম্প। Joda-Time Instant
স্থানীয় আগমনের সময় - টাইমজোন প্রয়োজনীয় পৌঁছানোর সময়ের টাইমজোন।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

পরিবহন নম্বর প্রয়োজনীয় ফ্লাইট নম্বর, বাস নম্বর, ট্রেন নম্বর বা ফেরি/ক্রুজ নম্বর। ফ্রি টেক্সট
লোকালাইজড বোর্ডিং টাইম - টাইমস্ট্যাম্প প্রয়োজনীয় ইপক টাইমস্ট্যাম্প যা রিজার্ভেশনের জন্য বোর্ডিংয়ের সময় দেখায় (প্রযোজ্য হলে) Joda-Time Instant
স্থানীয় বোর্ডিংয়ের সময় - টাইমজোন প্রয়োজনীয় রিজার্ভেশনের জন্য বোর্ডিংয়ের সময়ের টাইমজোন (প্রযোজ্য হলে)

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

ছাড়ার লোকেশন - দেশ ঐচ্ছিক যে দেশ থেকে যাত্রা শুরু হবে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ছাড়ার লোকেশন - শহর ঐচ্ছিক যে শহর থেকে যাত্রা শুরু হবে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ছাড়ার লোকেশন - ঠিকানা দেখুন ঐচ্ছিক ব্যবহারকারীকে যে লোকেশন থেকে রওনা হওয়ার কথা দেখানো হবে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ছাড়ার লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক যেখান থেকে যাত্রা শুরু হবে সেখানকার রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

যাত্রা শুরুর লোকেশন - রাজ্য ঐচ্ছিক যেখান থেকে রওনা হচ্ছেন সেই লোকেশনের রাজ্য বা প্রদেশ (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ছাড়ার লোকেশন - পিন কোড ঐচ্ছিক ছেড়ে যাওয়ার লোকেশনের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

যাত্রা শুরুর লোকেশন - আশেপাশের এলাকা ঐচ্ছিক ছেড়ে যাওয়ার লোকেশনের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পৌঁছানোর লোকেশন - দেশ ঐচ্ছিক যে দেশে পৌঁছাবেন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

গন্তব্য লোকেশন - শহর ঐচ্ছিক গন্তব্য শহর।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পৌঁছানোর লোকেশন - ঠিকানা দেখান ঐচ্ছিক ব্যবহারকারীকে দেখানো হবে এমন পৌঁছানোর লোকেশন।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পৌঁছানোর লোকেশন - রাস্তার ঠিকানা ঐচ্ছিক গন্তব্যের রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

গন্তব্য লোকেশন - রাজ্য ঐচ্ছিক গন্তব্যের রাজ্য বা প্রদেশ (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পৌঁছানোর লোকেশন - পিন কোড ঐচ্ছিক পৌঁছানোর লোকেশনের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

গন্তব্য লোকেশন - আশেপাশের এলাকা ঐচ্ছিক গন্তব্যের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পরিষেবা প্রদানকারী - নাম ঐচ্ছিক

পরিষেবা প্রদানকারীর নাম।

মনে রাখবেন:পরিষেবা প্রদানকারীর জন্য টেক্সট বা ছবি প্রয়োজন।

ফ্রি টেক্সট। যেমন, এয়ারলাইনের নাম
পরিষেবা প্রদানকারী - ছবি ঐচ্ছিক

পরিষেবা প্রদানকারীর লোগো/ছবি।

মনে রাখবেন:পরিষেবা প্রদানকারীর জন্য টেক্সট বা ছবি প্রয়োজন।

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
পোস্টার ছবি ঐচ্ছিক

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

রিজার্ভেশন আইডি ঐচ্ছিক পরিবহন রিজার্ভেশনের জন্য রিজার্ভেশন আইডি। ফ্রি টেক্সট
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

রিজার্ভেশনের বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক রিজার্ভেশনের আসল দাম, যা UI-তে কাটা চিহ্নের মাধ্যমে দেখানো হবে। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (খুব বড় টেক্সট হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

VehicleRentalReservationEntity

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা ফর্ম্যাট
অ্যাকশন Uri প্রয়োজনীয়

প্রদানকারীর অ্যাপে এন্টিটির ডিপ লিঙ্ক।

মনে রাখবেন: অ্যাট্রিবিউশনের জন্য আপনি ডিপ লিঙ্ক ব্যবহার করতে পারবেন। এই প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন

URI
শীর্ষক প্রয়োজনীয় এন্টিটির শীর্ষক।

ফ্রি টেক্সট। যেমন, "Avis Union Square SF"

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

লোকালাইজড পিক-আপের সময় - টাইমস্ট্যাম্প প্রয়োজনীয় ইপক টাইমস্ট্যাম্প যা রিজার্ভেশনের জন্য পিক-আপের সময় দেখায়। Joda-Time Instant
লোকালাইজড পিক-আপের সময় - টাইমজোন প্রয়োজনীয় রিজার্ভেশনের জন্য পিক-আপের সময়ের টাইমজোন।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

লোকালাইজড রিটার্ন টাইম - টাইমস্ট্যাম্প ঐচ্ছিক ইপক টাইমস্ট্যাম্প যা রিজার্ভেশনের চেক-আউটের সময় দেখায়। Joda-Time Instant
স্থানীয়কৃত রিটার্নের সময় - টাইমজোন ঐচ্ছিক রিজার্ভেশনের জন্য চেক-আউট করার সময়ের টাইমজোন।

Joda-Time DateTimeZone

নির্দেশনার জন্য টাইমজোন সংক্রান্ত স্পেসিফিকেশন দেখুন।

পিক-আপ করার ঠিকানা - দেশ ঐচ্ছিক পিক-আপ লোকেশনের দেশ।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পিক-আপ করার ঠিকানা - শহর ঐচ্ছিক পিক-আপ লোকেশনের শহর।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পিক-আপ করার ঠিকানা - ঠিকানা দেখুন ঐচ্ছিক ব্যবহারকারীকে যে পিক-আপ লোকেশন দেখানো হবে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পিক-আপ করার ঠিকানা - রাস্তার ঠিকানা ঐচ্ছিক পিক-আপ লোকেশনের রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পিক-আপ করার ঠিকানা - রাজ্য ঐচ্ছিক পিক-আপ লোকেশনের রাজ্য বা প্রদেশ (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পিক-আপ করার ঠিকানা - পিন কোড ঐচ্ছিক পিক-আপ লোকেশনের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পিক-আপ করার ঠিকানা - আশেপাশের এলাকা ঐচ্ছিক পিক-আপ লোকেশনের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত পাঠানোর ঠিকানা - দেশ ঐচ্ছিক রিটার্ন লোকেশনের দেশ।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত পাঠানোর ঠিকানা - শহর ঐচ্ছিক রিটার্ন লোকেশনের শহর।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত দেওয়ার ঠিকানা - ডিসপ্লে ঠিকানা ঐচ্ছিক ব্যবহারকারীকে যে রিটার্ন লোকেশন দেখানো হবে।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত পাঠানোর ঠিকানা - রাস্তার ঠিকানা ঐচ্ছিক রিটার্ন লোকেশনের রাস্তার ঠিকানা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত পাঠানোর ঠিকানা - রাজ্য ঐচ্ছিক রিটার্ন লোকেশনের রাজ্য বা প্রদেশ (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত পাঠানোর ঠিকানা - পিন কোড ঐচ্ছিক রিটার্ন লোকেশনের পিন কোড (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

ফেরত পাঠানোর ঠিকানা - আশেপাশের এলাকা ঐচ্ছিক রিটার্ন লোকেশনের আশেপাশের এলাকা (প্রযোজ্য হলে)।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ~২০টি অক্ষর

পরিষেবা প্রদানকারী - নাম ঐচ্ছিক

পরিষেবা প্রদানকারীর নাম।

মনে রাখবেন:পরিষেবা প্রদানকারীর জন্য টেক্সট বা ছবি প্রয়োজন।

ফ্রি টেক্সট। যেমন, "Avis Car Rental"
পরিষেবা প্রদানকারী - ছবি ঐচ্ছিক

পরিষেবা প্রদানকারীর লোগো/ছবি।

মনে রাখবেন:পরিষেবা প্রদানকারীর জন্য টেক্সট বা ছবি প্রয়োজন।

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
পোস্টার ছবি ঐচ্ছিক

একাধিক ছবি দেওয়া হলে আমরা শুধু ১টি ছবি দেখাব। সাজেস্ট করা অ্যাস্পেক্ট রেশিও হল ১৬:৯

নির্দেশনার জন্য ছবির স্পেসিফিকেশন দেখুন।
বর্ণনা ঐচ্ছিক

এন্টিটির বিবরণ দিতে টেক্সটের একটি অনুচ্ছেদ।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ১৮০টি অক্ষর

সাবটাইটেলের তালিকা ঐচ্ছিক

সর্বাধিক ৩টি সাবটাইটেল, প্রতিটি সাবটাইটেলে এক লাইনের টেক্সট থাকবে।

মনে রাখবেন: ব্যবহারকারীকে বিবরণ অথবা সাবটাইটেল তালিকা দেখানো হবে, দুটি একসাথে দেখানো হবে না।

ফ্রি টেক্সট

প্রতিটি সাবটাইটেলের জন্য সাজেস্ট করা টেক্সটের সাইজ: সর্বাধিক ৫০টি অক্ষর

কনফার্মেশন আইডি ঐচ্ছিক গাড়ি ভাড়া রিজার্ভেশনের কনফার্মেশন আইডি। ফ্রি টেক্সট
Price - CurrentPrice শর্তসাপেক্ষে প্রয়োজন

রিজার্ভেশনের বর্তমান দাম।

স্ট্রাইকথ্রু দাম দেওয়া থাকলে এটি দিতেই হবে।

ফ্রি টেক্সট
Price - StrikethroughPrice ঐচ্ছিক রিজার্ভেশনের আসল দাম, যা UI-তে কাটা চিহ্নের মাধ্যমে দেখানো হবে। ফ্রি টেক্সট
দামের কলআউট ঐচ্ছিক প্রোমো, ইভেন্ট, মেম্বার ডিসকাউন্ট উপলভ্য থাকলে, তা ফিচার করার জন্য দামের কলআউট।

ফ্রি টেক্সট

সাজেস্ট করা টেক্সটের সাইজ: ৪৫ অক্ষরের কম (খুব বড় টেক্সট হলে উপবৃত্তাকার চিহ্ন দেখানো হতে পারে)

DisplayTimeWindow (ঐচ্ছিক) - সারফেসে কন্টেন্ট দেখানোর জন্য একটি টাইম উইন্ডো সেট করুন
শুরুর টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে সারফেসে কন্টেন্ট দেখানো হবে।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প
শেষের টাইমস্ট্যাম্প ঐচ্ছিক

যে ইপক টাইমস্ট্যাম্পের পরে কন্টেন্ট আর সারফেসে দেখানো হয় না।

সেট করা না থাকলে, কন্টেন্ট সারফেসে দেখানোর উপযুক্ত হবে।

মিলিসেকেন্ডে Epoch টাইমস্ট্যাম্প

ছবির স্পেসিফিকেশন

ইমেজ অ্যাসেটের জন্য প্রয়োজনীয় স্পেসিফিকেশন এই টেবিলে তালিকাভুক্ত করা হয়েছে:

অ্যাস্পেক্ট রেশিও ন্যূনতম পিক্সেল সাজেস্ট করা পিক্সেল

বর্গাকার (১x১)

পছন্দসই

৩০০x৩০০ ১২০০x১২০০
ল্যান্ডস্কেপ (১.৯১x১) ৬০০x৩১৪ ১২০০x৬২৮
পোর্ট্রেট (৪x৫) ৪৮০x৬০০ ৯৬০x১২০০

Google যাতে অ্যাক্সেস করতে পারে তার জন্য ছবিগুলি সর্বজনীন CDN-এ হোস্ট করতে হবে।

ফাইলের ফর্ম্যাট

PNG, JPG, স্ট্যাটিক GIF, WebP

ফাইলের সর্বাধিক সাইজ

৫১২০ কেবি

অতিরিক্ত সাজেশন

  • ছবির নিরাপদ এলাকা: আপনার গুরুত্বপূর্ণ কন্টেন্ট ছবির মাঝখানের ৮০% অংশে রাখুন।
  • একটি স্বচ্ছ ব্যাকগ্রাউন্ড ব্যবহার করুন যাতে ছবিটি ডার্ক এবং লাইট থিম সেটিংসে সঠিকভাবে প্রদর্শিত হতে পারে।

টাইমজোন সংক্রান্ত স্পেসিফিকেশন

অফসেটের (যেমন, "-০৭:০০") পরিবর্তে আইডি (যেমন, "America/Los_Angeles") ব্যবহার করুন।

স্যাম্পেল ব্যবহার: DateTimeZone.forID("America/Los_Angeles")

কন্টেন্ট বিভাগ

কন্টেন্ট বিভাগ অ্যাপগুলিকে একাধিক বিভাগের অন্তর্গত কন্টেন্ট প্রকাশ করার অনুমতি দেয়। এটি কন্টেন্টকে কিছু পূর্বনির্ধারিত বিভাগের সাথে ম্যাপ করে, যেমন:

  • TYPE_EDUCATION
  • TYPE_SPORTS
  • TYPE_MOVIES_AND_TV_SHOWS
  • TYPE_BOOKS
  • TYPE_AUDIOBOOKS
  • TYPE_MUSIC
  • TYPE_DIGITAL_GAMES
  • TYPE_TRAVEL_AND_LOCAL
  • TYPE_HOME_AND_AUTO
  • TYPE_BUSINESS
  • TYPE_NEWS
  • TYPE_FOOD_AND_DRINK
  • TYPE_SHOPPING
  • TYPE_HEALTH_AND_FITENESS
  • TYPE_MEDICAL
  • TYPE_PARENTING
  • TYPE_DATING

Google যাতে অ্যাক্সেস করতে পারে তার জন্য ছবিগুলি সর্বজনীন CDN-এ হোস্ট করতে হবে।

কন্টেন্ট বিভাগ ব্যবহার করার নির্দেশিকা

  1. ArticleEntity এবং GenericFeaturedEntity-এর মতো কিছু এন্টিটি যেকোনও কন্টেন্ট ক্যাটেগরি ব্যবহার করার জন্য উপযুক্ত। EventEntity, EventReservationEntity, PointOfInterestEntity-এর মতো অন্যান্য এন্টিটির ক্ষেত্রে, এইসব বিভাগের শুধুমাত্র একটি সাবসেট উপযুক্ত। তালিকা পূরণ করার আগে এন্টিটি টাইপের জন্য উপযুক্ত বিভাগের তালিকা চেক করুন।
  2. জেনেরিক এন্টিটি ও ContentCategory-এর কম্বিনেশনের পরিবর্তে কিছু কন্টেন্ট বিভাগের জন্য নির্দিষ্ট এন্টিটির ধরন ব্যবহার করুন:

    • TYPE_MOVIES_AND_TV_SHOWS - জেনেরিক এন্টিটি ব্যবহার করার আগে ইন্টিগ্রেশন গাইড দেখুন থেকে এন্টিটি চেক করুন।
    • TYPE_BOOKS - জেনেরিক এন্টিটি ব্যবহার করার আগে EbookEntity চেক করে নিন।
    • TYPE_AUDIOBOOKS - জেনেরিক এন্টিটি ব্যবহার করার আগে AudiobookEntity চেক করুন।
    • TYPE_SHOPPING - জেনেরিক এন্টিটি ব্যবহার করার আগে ShoppingEntity চেক করুন।
    • TYPE_FOOD_AND_DRINK - জেনেরিক এন্টিটি ব্যবহার করার আগে ফুড ইন্টিগ্রেশন গাইড থেকে এন্টিটি চেক করুন।
  3. ContentCategory ফিল্ডটি ঐচ্ছিক এবং কন্টেন্টটি আগে উল্লেখ করা কোনও বিভাগের অন্তর্গত না হলে এটি ফাঁকা রাখা উচিত।

  4. একাধিক কন্টেন্ট বিভাগ প্রদান করা হলে, কন্টেন্টের সাথে প্রাসঙ্গিকতার ক্রম অনুসারে সেগুলি প্রদান করুন, সবচেয়ে প্রাসঙ্গিক কন্টেন্ট বিভাগটি তালিকার প্রথমে রাখুন।

ধাপ ২: ক্লাস্টার ডেটা প্রদান করুন

কন্টেন্ট প্রকাশ করার কাজ ব্যাকগ্রাউন্ডে চালানো (যেমন, WorkManager ব্যবহার করে) এবং নিয়মিতভাবে বা কোনও ইভেন্টের ভিত্তিতে (যেমন, ব্যবহারকারী যতবার অ্যাপ খুলবেন বা কার্টে কিছু যোগ করবেন) শিডিউল করা হলে ভালো হয়।

AppEngageTravelClient ক্লাস্টার প্রকাশ করার জন্য দায়বদ্ধ।

ক্লায়েন্টে ক্লাস্টার প্রকাশ করার জন্য নিম্নলিখিত API আছে:

  • isServiceAvailable
  • publishRecommendationClusters
  • publishFeaturedCluster
  • publishReservationCluster
  • publishContinueSearchCluster
  • publishUserAccountManagementRequest
  • updatePublishStatus
  • deleteRecommendationsClusters
  • deleteFeaturedCluster
  • deleteReservationCluster
  • deleteContinueSearchCluster
  • deleteUserManagementCluster
  • deleteClusters

isServiceAvailable

ইন্টিগ্রেশনের জন্য পরিষেবা উপলভ্য কিনা এবং ডিভাইসে কন্টেন্ট দেখানো যাবে কিনা তা চেক করতে এই API ব্যবহার করা হয়।

আপনি প্রকাশ করতে চান এমন প্রতিটি ক্লাস্টার প্রকারের জন্য পরিষেবার উপলভ্যতা চেক করতে পারেন। isServiceAvailable API একটি অনুরোধ অবজেক্ট গ্রহণ করে, ServiceAvailabilityRequest, যার মধ্যে ক্লাস্টার প্রকারগুলি রয়েছে যার জন্য পরিষেবা উপলভ্যতা চেক করা প্রয়োজন। ServiceAvailabilityRequest-এর জন্য প্রয়োজনীয় ClusterType এনাম ভ্যালু আপনি নিম্নলিখিত টেবিল থেকে খুঁজে পাবেন।

ক্লাস্টারের ধরন ক্লাস্টারের ধরন কনস্ট্যান্ট পূর্ণসংখ্যার মান
অজানা TYPE_UNKNOWN 0
সাজেশন ক্লাস্টার TYPE_RECOMMENDATION 1
ফিচার করা ক্লাস্টার TYPE_FEATURED 2
কন্টিনিউয়েশন ক্লাস্টার TYPE_CONTINUATION 3
ব্যবহারকারী ম্যানেজমেন্ট ক্লাস্টার TYPE_ENGAGEMENT 8
সাবস্ক্রিপশন ক্লাস্টার TYPE_SUBSCRIPTION 12
সার্চ ক্লাস্টার চালিয়ে যান TYPE_CONTINUE_SEARCH 13
রিজার্ভেশন ক্লাস্টার TYPE_RESERVATION 14

Kotlin

val request = ServiceAvailabilityRequest.Builder()
    .addIntendedClusterType(ClusterType.TYPE_CONTINUATION)
    .addIntendedClusterType(ClusterType.TYPE_RECOMMENDATION)
    .build()

client.isServiceAvailable(request).addOnCompleteListener { task ->
    if (task.isSuccessful) {
        val availabilityMap = task.result
        if (availabilityMap[ClusterType.TYPE_CONTINUATION] == true) {
            // Proceed with publishing continuation content
        }
        if (availabilityMap[ClusterType.TYPE_RECOMMENDATION] == true) {
            // Proceed with publishing recommendation content
        }
    } else {
        // The IPC call itself fails, proceed with error handling logic here,
        // such as retry.
    }
}

জাভা

ServiceAvailabilityRequest request =
    new ServiceAvailabilityRequest.Builder()
        .addIntendedClusterType(ClusterType.TYPE_CONTINUATION)
        .addIntendedClusterType(ClusterType.TYPE_RECOMMENDATION)
        .build();

client.isServiceAvailable(request).addOnCompleteListener(task -> {
    if (task.isSuccessful()) {
        Map<Integer, Boolean> availabilityMap = task.getResult();
        if (Boolean.TRUE.equals(availabilityMap.get(ClusterType.TYPE_CONTINUATION))) {
            // Proceed with publishing continuation content
        }
        if (Boolean.TRUE.equals(availabilityMap.get(ClusterType.TYPE_RECOMMENDATION))) {
            // Proceed with publishing recommendation content
        }
    } else {
        // The IPC call itself fails, proceed with error handling logic here,
        // such as retry.
    }
});
শর্তসাপেক্ষ পরিষেবা উপলভ্যতা ফিচার

কিছু ইন্টিগ্রেটেড অ্যাপ বিশেষ কনফিগারেশনের অনুরোধ করে যা খরচ কমানোর জন্য Engage পরিষেবা মাঝে মাঝে চালু ও বন্ধ করে। তবে, এই মাঝে মাঝে কন্টেন্ট ইনজেশন স্ট্র্যাটেজি ব্যবহারকারীর অভিজ্ঞতায় নেতিবাচক প্রভাব ফেলে: পুরনো কন্টেন্ট দেখানো হবে না এবং কিছু সারফেস পরিবেশন করা হবে না।

v1.6.0 থেকে শুরু করে, Engage SDK নির্দিষ্ট ক্লাস্টার ধরনের জন্য উপলভ্যতা চেক করার অনুমতি দেয়। আপনার অ্যাপ যদি মাঝে মাঝে ইনজেশন ব্যবহার করে:

  • কন্টিনিউয়েশন ক্লাস্টার (যেমন রিজার্ভেশন এবং সার্চ চালিয়ে যাওয়া) সব কাজ করে এমন ডিভাইসে ডিফল্ট হিসেবে চালু থাকে।
  • অন্যান্য ক্লাস্টারের ধরন (যেমন সাজেশন) মাঝে মাঝে চালু ও বন্ধ করা হয়।

এই ডিফল্ট কনফিগারেশন আপনার প্রয়োজন অনুযায়ী উপযুক্ত না হলে, engage-developers@google.com-এ যোগাযোগ করুন।

v1.6.0-এর আগের SDK ভার্সনের জন্য (বন্ধ হয়ে গেছে)

Kotlin

client.isServiceAvailable.addOnCompleteListener { task ->
    if (task.isSuccessful) {
        // Handle IPC call success
        if(task.result) {
          // Service is available on the device, proceed with content publish
          // calls.
        } else {
          // Service is not available, no further action is needed.
        }
    } else {
      // The IPC call itself fails, proceed with error handling logic here,
      // such as retry.
    }
}

জাভা

client.isServiceAvailable().addOnCompleteListener(task - > {
    if (task.isSuccessful()) {
        // Handle success
        if(task.getResult()) {
          // Service is available on the device, proceed with content publish
          // calls.
        } else {
          // Service is not available, no further action is needed.
        }
    } else {
      // The IPC call itself fails, proceed with error handling logic here,
      // such as retry.
    }
});

publishRecommendationClusters

RecommendationCluster অবজেক্টের তালিকা প্রকাশ করতে এই API ব্যবহার করা হয়।

Kotlin

client.publishRecommendationClusters(
      PublishRecommendationClustersRequest.Builder()
        .addRecommendationCluster(
          RecommendationCluster.Builder()
            .addEntity(entity1)
            .addEntity(entity2)
            .setTitle("Top Picks For You")
            .build()
        )
        .build()
    )

জাভা

client.publishRecommendationClusters(
            new PublishRecommendationClustersRequest.Builder()
                .addRecommendationCluster(
                    new RecommendationCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .setTitle("Top Picks For You")
                        .build())
                .build());

পরিষেবাটি অনুরোধ পেলে, একটি ট্রানজ্যাকশনের মধ্যে নিম্নলিখিত অ্যাকশনগুলি নেওয়া হয়:

  • ডেভেলপার পার্টনারের থেকে পাওয়া আগে থেকে থাকা RecommendationCluster ডেটা সরিয়ে দেওয়া হয়েছে।
  • অনুরোধ থেকে পাওয়া ডেটা পার্স করা হয় এবং আপডেট করা সাজেশন ক্লাস্টারে স্টোর করা হয়।

কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং বর্তমান স্ট্যাটাস বজায় রাখা হয়।

publishFeaturedCluster

FeaturedCluster অবজেক্টের তালিকা প্রকাশ করতে এই API ব্যবহার করা হয়।

Kotlin

client.publishFeaturedCluster(
    PublishFeaturedClusterRequest.Builder()
      .setFeaturedCluster(
        FeaturedCluster.Builder()
          .addEntity(entity1)
          .addEntity(entity2)
          .build())
      .build())

জাভা

client.publishFeaturedCluster(
            new PublishFeaturedClusterRequest.Builder()
                .setFeaturedCluster(
                    new FeaturedCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .build())
                .build());

পরিষেবাটি অনুরোধ পেলে, একটি ট্রানজ্যাকশনের মধ্যে নিম্নলিখিত অ্যাকশনগুলি নেওয়া হয়:

  • ডেভেলপার পার্টনারের থেকে পাওয়া আগে থেকে থাকা FeaturedCluster ডেটা সরিয়ে দেওয়া হয়েছে।
  • অনুরোধ থেকে পাওয়া ডেটা পার্স করা হয় এবং আপডেট করা ফিচার ক্লাস্টারে স্টোর করা হয়।

কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং বর্তমান স্ট্যাটাস বজায় রাখা হয়।

publishReservationCluster

এই API-এর মাধ্যমে ReservationCluster অবজেক্ট প্রকাশ করা হয়।

Kotlin

client.publishReservationCluster(
    PublishReservationClusterRequest.Builder()
      .setReservationCluster(
        ReservationCluster.Builder()
          .addLodgingReservationEntity(lodgingReservationEntity)
          .addVehicleRentalReservationEntity(vehicleRentalReservationEntity)
          .addTransportationReservationEntity(transportationReservationEntity)
          .addEventReservationEntity(eventReservationEntity)
          .addRestaurantReservationEntity(restaurantReservationEntity)
          .build())
      .build())

জাভা

client.publishReservationCluster(
            new PublishReservationClusterRequest.Builder()
                .setReservationCluster(
                    new ReservationCluster.Builder()
                        .addLodgingReservationEntity(lodgingReservationEntity)
                        .addVehicleRentalReservationEntity(vehicleRentalReservationEntity)
                        .addTransportationReservationEntity(transportationReservationEntity)
                        .addEventReservationEntity(eventReservationEntity)
                        .addRestaurantReservationEntity(restaurantReservationEntity)
                        .build())
                .build());

পরিষেবাটি অনুরোধ পেলে, একটি ট্রানজ্যাকশনের মধ্যে নিম্নলিখিত অ্যাকশনগুলি নেওয়া হয়:

  • ডেভেলপার পার্টনারের থেকে পাওয়া আগে থেকে থাকা ReservationCluster ডেটা সরিয়ে দেওয়া হয়েছে।
  • অনুরোধ থেকে পাওয়া ডেটা পার্স করা হয় এবং আপডেট করা রিজার্ভেশন ক্লাস্টারে স্টোর করা হয়।

কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং বর্তমান স্ট্যাটাস বজায় রাখা হয়।

publishContinueSearchCluster

ContinueSearchCluster অবজেক্টের তালিকা প্রকাশ করতে এই API ব্যবহার করা হয়।

, কারণ প্রকাশ API-এর কাজই হল এটি করা।

Kotlin

client.publishContinueSearchCluster(
    PublishContinueSearchClusterRequest.Builder()
      .setContinueSearchCluster(
        ContinueSearchCluster.Builder()
          .addPointOfInterestEntity(entity1)
          .addPointOfInterestEntity(entity2)
          .build())
      .build())

জাভা

client.publishContinueSearchCluster(
            new PublishContinueSearchClusterRequest.Builder()
                .setContinueSearchCluster(
                    new ContinueSearchCluster.Builder()
                        .addPointOfInterestEntity(entity1)
                        .addPointOfInterestEntity(entity2)
                        .build())
                .build());

পরিষেবাটি অনুরোধ পেলে, একটি ট্রানজ্যাকশনের মধ্যে নিম্নলিখিত অ্যাকশনগুলি নেওয়া হয়:

  • ডেভেলপার পার্টনারের থেকে পাওয়া আগে থেকে থাকা ContinueSearchCluster ডেটা সরিয়ে দেওয়া হয়েছে।
  • অনুরোধ থেকে পাওয়া ডেটা পার্স করা হয় এবং আপডেট করা 'সার্চ ক্লাস্টার চালিয়ে যান' ফিচারে স্টোর করা হয়।

কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং বর্তমান স্ট্যাটাস বজায় রাখা হয়।

publishUserAccountManagementRequest

এই API ব্যবহার করে সাইন-ইন কার্ড প্রকাশ করা হয়। সাইন-ইন অ্যাকশন ব্যবহারকারীকে অ্যাপের সাইন-ইন পৃষ্ঠায় নিয়ে যায় যাতে অ্যাপটি কন্টেন্ট প্রকাশ করতে পারে (অথবা আরও পছন্দমতো কন্টেন্ট প্রদান করতে পারে)

নিম্নলিখিত মেটাডেটা সাইন-ইন কার্ডের অংশ -

অ্যাট্রিবিউট প্রয়োজনীয়তা বর্ণনা
অ্যাকশন Uri প্রয়োজনীয় অ্যাকশনের ডিপলিঙ্ক (যেমন, অ্যাপের সাইন-ইন পৃষ্ঠায় নেভিগেট করে)
ছবি ঐচ্ছিক - এটি না দিলে, শীর্ষক দিতেই হবে

কার্ডে দেখানো ছবি

১২৬৪x৭১২ রেজোলিউশন সহ ১৬x৯ অ্যাস্পেক্ট রেশিওর ছবি

শীর্ষক ঐচ্ছিক - এটি না দিলে, ছবি দিতেই হবে কার্ডে লেখা নাম
অ্যাকশন টেক্সট ঐচ্ছিক CTA-তে দেখানো টেক্সট (যেমন, সাইন-ইন করুন)
সাবটাইটেল ঐচ্ছিক কার্ডে ঐচ্ছিক সাবটাইটেল

Kotlin

var SIGN_IN_CARD_ENTITY =
      SignInCardEntity.Builder()
          .addPosterImage(
              Image.Builder()
                  .setImageUri(Uri.parse("http://www.x.com/image.png"))
                  .setImageHeightInPixel(500)
                  .setImageWidthInPixel(500)
                  .build())
          .setActionText("Sign In")
          .setActionUri(Uri.parse("http://xx.com/signin"))
          .build()

client.publishUserAccountManagementRequest(
            PublishUserAccountManagementRequest.Builder()
                .setSignInCardEntity(SIGN_IN_CARD_ENTITY)
                .build());

জাভা

SignInCardEntity SIGN_IN_CARD_ENTITY =
      new SignInCardEntity.Builder()
          .addPosterImage(
              new Image.Builder()
                  .setImageUri(Uri.parse("http://www.x.com/image.png"))
                  .setImageHeightInPixel(500)
                  .setImageWidthInPixel(500)
                  .build())
          .setActionText("Sign In")
          .setActionUri(Uri.parse("http://xx.com/signin"))
          .build();

client.publishUserAccountManagementRequest(
            new PublishUserAccountManagementRequest.Builder()
                .setSignInCardEntity(SIGN_IN_CARD_ENTITY)
                .build());

পরিষেবাটি অনুরোধ পেলে, একটি ট্রানজ্যাকশনের মধ্যে নিম্নলিখিত অ্যাকশনগুলি নেওয়া হয়:

  • ডেভেলপার পার্টনারের থেকে পাওয়া আগে থেকে থাকা UserAccountManagementCluster ডেটা সরিয়ে দেওয়া হয়েছে।
  • অনুরোধ থেকে পাওয়া ডেটা পার্স করা হয় এবং আপডেট করা UserAccountManagementCluster ক্লাস্টারে স্টোর করা হয়।

কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং বর্তমান স্ট্যাটাস বজায় রাখা হয়।

updatePublishStatus

কোনও অভ্যন্তরীণ ব্যবসায়িক কারণে, কোনও ক্লাস্টার প্রকাশ করা না হলে, আমরা আপনাকে সাজেস্ট করছি যে আপনি যেন updatePublishStatus API ব্যবহার করে প্রকাশের স্ট্যাটাস আপডেট করেন। এটি গুরুত্বপূর্ণ কারণ :

  • কন্টেন্ট প্রকাশিত হলেও (STATUS == PUBLISHED), সব পরিস্থিতিতে স্ট্যাটাস প্রদান করা গুরুত্বপূর্ণ, যাতে ড্যাশবোর্ডগুলি আপনার ইন্টিগ্রেশনের স্বাস্থ্য এবং অন্যান্য মেট্রিক্স জানাতে এই স্পষ্ট স্ট্যাটাস ব্যবহার করতে পারে।
  • কোনও কন্টেন্ট প্রকাশ করা না হলেও ইন্টিগ্রেশন স্ট্যাটাস যদি ঠিক থাকে (STATUS == NOT_PUBLISHED), Google অ্যাপের হেলথ ড্যাশবোর্ডে অ্যালার্ট ট্রিগার করা এড়াতে পারে। এটি নিশ্চিত করে যে প্রদানকারীর দৃষ্টিকোণ থেকে একটি প্রত্যাশিত পরিস্থিতির কারণে কন্টেন্ট প্রকাশ করা হয়নি।
  • এটি ডেভেলপারদের ডেটা কখন প্রকাশিত হয় বনাম কখন হয় না সে সম্পর্কে ইনসাইট প্রদান করতে সাহায্য করে।
  • Google স্ট্যাটাস কোড ব্যবহার করে ব্যবহারকারীকে অ্যাপে নির্দিষ্ট কিছু অ্যাকশন করার জন্য উৎসাহিত করতে পারে যাতে তারা অ্যাপের কন্টেন্ট দেখতে বা সমস্যাটি সমাধান করতে পারেন।

প্রকাশের স্ট্যাটাস কোডের তালিকা হল :

// Content is published
AppEngagePublishStatusCode.PUBLISHED,

// Content is not published as user is not signed in
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN,

// Content is not published as user is not subscribed
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SUBSCRIPTION,

// Content is not published as user location is ineligible
AppEngagePublishStatusCode.NOT_PUBLISHED_INELIGIBLE_LOCATION,

// Content is not published as there is no eligible content
AppEngagePublishStatusCode.NOT_PUBLISHED_NO_ELIGIBLE_CONTENT,

// Content is not published as the feature is disabled by the client
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_FEATURE_DISABLED_BY_CLIENT,

// Content is not published as the feature due to a client error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_CLIENT_ERROR,

// Content is not published as the feature due to a service error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_SERVICE_ERROR,

// Content is not published due to some other reason
// Reach out to engage-developers@ before using this enum.
AppEngagePublishStatusCode.NOT_PUBLISHED_OTHER

ব্যবহারকারী লগ-ইন না করার কারণে কন্টেন্ট প্রকাশ করা না হলে, Google সাইন-ইন কার্ড প্রকাশ করার সাজেশন দেবে। কোনও কারণে পরিষেবা প্রদানকারী সাইন-ইন কার্ড প্রকাশ করতে না পারলে, আমরা স্ট্যাটাস কোড NOT_PUBLISHED_REQUIRES_SIGN_IN সহ updatePublishStatus API কল করার সাজেশন দিই।

Kotlin

client.updatePublishStatus(
   PublishStatusRequest.Builder()
     .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
     .build())

জাভা

client.updatePublishStatus(
    new PublishStatusRequest.Builder()
        .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
        .build());

deleteRecommendationsClusters

এই API-এর মাধ্যমে সাজেশন ক্লাস্টারের কন্টেন্ট মুছে ফেলা হয়।

Kotlin

client.deleteRecommendationsClusters()

জাভা

client.deleteRecommendationsClusters();

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

deleteFeaturedCluster

ফিচার করা ক্লাস্টারের কন্টেন্ট মুছে দিতে এই API ব্যবহার করা হয়।

Kotlin

client.deleteFeaturedCluster()

জাভা

client.deleteFeaturedCluster();

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

deleteReservationCluster

রিজার্ভেশন ক্লাস্টারের কন্টেন্ট মুছে দিতে এই API ব্যবহার করা হয়।

Kotlin

client.deleteReservationCluster()

জাভা

client.deleteReservationCluster();

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

deleteUserManagementCluster

UserAccountManagement ক্লাস্টারের কন্টেন্ট মুছে ফেলার জন্য এই API ব্যবহার করা হয়।

Kotlin

client.deleteUserManagementCluster()

জাভা

client.deleteUserManagementCluster();

পরিষেবাটি অনুরোধ পেলে, এটি UserAccountManagement ক্লাস্টার থেকে আগে থেকে থাকা ডেটা সরিয়ে দেয়। কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং আগের অবস্থা বজায় রাখা হয়।

deleteContinueSearchCluster

এই API-এর মাধ্যমে 'সার্চ ক্লাস্টার চালিয়ে যান' ফিচারের কন্টেন্ট মুছে ফেলা হয়।

Kotlin

client.deleteContinueSearchCluster()

জাভা

client.deleteContinueSearchCluster();

পরিষেবাটি অনুরোধ পেলে, এটি Continue Search Cluster থেকে আগে থেকে থাকা ডেটা সরিয়ে দেয়। কোনও সমস্যা হলে, সম্পূর্ণ অনুরোধ বাতিল করা হয় এবং আগের অবস্থা বজায় রাখা হয়।

deleteClusters

প্রদত্ত ক্লাস্টার টাইপের কন্টেন্ট মুছে ফেলার জন্য এই API ব্যবহার করা হয়।

Kotlin

client.deleteClusters(
    DeleteClustersRequest.Builder()
      .addClusterType(ClusterType.TYPE_RESERVATION)
      .addClusterType(ClusterType.TYPE_FEATURED)
      .addClusterType(ClusterType.TYPE_RECOMMENDATION)
      .addClusterType(ClusterType.TYPE_CONTINUE_SEARCH)
      .build())

জাভা

client.deleteClusters(
            new DeleteClustersRequest.Builder()
                .addClusterType(ClusterType.TYPE_RESERVATION)
                .addClusterType(ClusterType.TYPE_FEATURED)
                .addClusterType(ClusterType.TYPE_RECOMMENDATION)
                .addClusterType(ClusterType.TYPE_CONTINUE_SEARCH)
                .build());

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

সমস্যা ম্যানেজ করা

প্রকাশিত API থেকে টাস্কের ফলাফল শোনার জন্য অত্যন্ত সাজেস্ট করা হয় যাতে একটি সফল টাস্ক রিকভার ও আবার জমা দেওয়ার জন্য ফলো-আপ অ্যাকশন নেওয়া যেতে পারে।

Kotlin

client.publishRecommendationClusters(
        PublishRecommendationClustersRequest.Builder()
          .addRecommendationCluster(..)
          .build())
      .addOnCompleteListener { task ->
        if (task.isSuccessful) {
          // do something
        } else {
          val exception = task.exception
          if (exception is AppEngageException) {
            @AppEngageErrorCode val errorCode = exception.errorCode
            if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) {
              // do something
            }
          }
        }
      }

জাভা

client.publishRecommendationClusters(
              new PublishRecommendationClustersRequest.Builder()
                  .addRecommendationCluster(...)
                  .build())
          .addOnCompleteListener(
              task -> {
                if (task.isSuccessful()) {
                  // do something
                } else {
                  Exception exception = task.getException();
                  if (exception instanceof AppEngageException) {
                    @AppEngageErrorCode
                    int errorCode = ((AppEngageException) exception).getErrorCode();
                    if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) {
                      // do something
                    }
                  }
                }
              });

সমস্যাটি AppEngageException হিসেবে দেখানো হয় এবং এর কারণ হিসেবে সমস্যার কোড উল্লেখ করা থাকে।

সমস্যার কোড সমস্যার নাম মনে রাখবেন
1 SERVICE_NOT_FOUND প্রদত্ত ডিভাইসে পরিষেবাটি উপলভ্য নয়।
2 SERVICE_NOT_AVAILABLE পরিষেবাটি প্রদত্ত ডিভাইসে উপলভ্য, তবে কল করার সময় এটি উপলভ্য নয় (যেমন, এটি স্পষ্টভাবে বন্ধ করা আছে)।
3 SERVICE_CALL_EXECUTION_FAILURE থ্রেডিং সংক্রান্ত সমস্যার কারণে টাস্ক এক্সিকিউট করা যায়নি। এই ক্ষেত্রে, এটি আবার চেষ্টা করা যেতে পারে।
4 SERVICE_CALL_PERMISSION_DENIED কলারকে পরিষেবা কল করার অনুমতি দেওয়া হয়নি।
5 SERVICE_CALL_INVALID_ARGUMENT অনুরোধে ভুল ডেটা আছে (যেমন, অনুমোদিত ক্লাস্টারের সংখ্যার চেয়ে বেশি)।
6 SERVICE_CALL_INTERNAL পরিষেবার দিকে কোনও সমস্যা হয়েছে।
7 SERVICE_CALL_RESOURCE_EXHAUSTED পরিষেবা কল খুব ঘন ঘন করা হয়।

ধাপ ৩: ব্রডকাস্ট ইনটেন্ট ম্যানেজ করা

জবের মাধ্যমে কন্টেন্ট প্রকাশ করার API কল করার পাশাপাশি, কন্টেন্ট প্রকাশের অনুরোধ পাওয়ার জন্য BroadcastReceiver সেট-আপ করতে হবে।

ব্রডকাস্ট ইনটেন্টের লক্ষ্য হল মূলত অ্যাপ আবার অ্যাক্টিভেট করা এবং ডেটা সিঙ্ক করতে বাধ্য করা। ব্রডকাস্ট ইনটেন্ট খুব ঘন ঘন পাঠানোর জন্য ডিজাইন করা হয়নি। এটি শুধুমাত্র তখনই ট্রিগার করা হয় যখন Engage পরিষেবা নির্ধারণ করে যে কন্টেন্টটি বাসি হতে পারে (যেমন, এক সপ্তাহ পুরনো)। এর ফলে, ব্যবহারকারী অনেকদিন ধরে অ্যাপ্লিকেশন ব্যবহার না করলেও, তিনি যে নতুন কন্টেন্ট দেখতে পাবেন, সেই ব্যাপারে আরও বেশি নিশ্চিত হওয়া যায়।

BroadcastReceiver অবশ্যই নিম্নলিখিত দুটি উপায়ে সেট-আপ করতে হবে:

  • Context.registerReceiver() ব্যবহার করে BroadcastReceiver ক্লাসের ইনস্ট্যান্স ডায়নামিক্যালি রেজিস্টার করুন। এটি মেমরিতে এখনও লাইভ আছে এমন অ্যাপ্লিকেশন থেকে কমিউনিকেশন চালু করে।

Kotlin

class AppEngageBroadcastReceiver : BroadcastReceiver(){
  // Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
  // is received
  // Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received
  // Trigger continue search cluster publish when PUBLISH_CONTINUE_SEARCH
  // broadcast is received
  // Trigger reservation cluster publish when PUBLISH_RESERVATION broadcast is
  // received
}

fun registerBroadcastReceivers(context: Context){
  var  context = context
  context = context.applicationContext

// Register Recommendation Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)

// Register Featured Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_FEATURED),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)

// Register Continue Search Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_CONTINUE_SEARCH),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)

// Register Reservation Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_RESERVATION),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)
}

জাভা

class AppEngageBroadcastReceiver extends BroadcastReceiver {
// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
// is received

// Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received

// Trigger continue search cluster publish when PUBLISH_CONTINUE_SEARCH
// broadcast is received

// Trigger reservation cluster publish when PUBLISH_RESERVATION broadcast is
// received
}

public static void registerBroadcastReceivers(Context context) {

context = context.getApplicationContext();

// Register Recommendation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

// Register Featured Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_FEATURED),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

// Register Continue Search Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_CONTINUE_SEARCH),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

// Register Reservation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_RESERVATION),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

}
  • আপনার AndroidManifest.xml ফাইলে <receiver> ট্যাগ সহ স্ট্যাটিক্যালি একটি ইমপ্লিমেন্টেশন ঘোষণা করুন। এটি অ্যাপ্লিকেশনটিকে ব্রডকাস্ট ইনটেন্ট গ্রহণ করার অনুমতি দেয় যখন এটি চলছে না এবং অ্যাপ্লিকেশনটিকে কন্টেন্ট প্রকাশ করারও অনুমতি দেয়।

<application>
   <receiver
      android:name=".AppEngageBroadcastReceiver"
      android:permission="com.google.android.engage.REQUEST_ENGAGE_DATA"
      android:exported="true"
      android:enabled="true">
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_RECOMMENDATION" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_FEATURED" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.travel.PUBLISH_CONTINUE_SEARCH" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.travel.PUBLISH_RESERVATION" />
      </intent-filter>
   </receiver>
</application>

পরিষেবাটি নিম্নলিখিত ইনটেন্ট পাঠায়:

  • com.google.android.engage.action.PUBLISH_RECOMMENDATION এই ইনটেন্ট পাওয়ার সময় publishRecommendationClusters কল শুরু করার সাজেশন দেওয়া হয়।
  • com.google.android.engage.action.PUBLISH_FEATURED এই ইনটেন্ট পাওয়ার সময় publishFeaturedCluster কল শুরু করার সাজেশন দেওয়া হয়।
  • com.google.android.engage.action.travel.PUBLISH_CONTINUE_SEARCH এই ইনটেন্ট পেলে publishContinueSearchCluster কল শুরু করার সাজেশন দেওয়া হয়।
  • com.google.android.engage.action.travel.PUBLISH_RESERVATION এই ইনটেন্ট পাওয়ার সময় publishReservationCluster কল শুরু করার সাজেশন দেওয়া হয়।

ইন্টিগ্রেশন ওয়ার্কফ্লো

ইন্টিগ্রেশন সম্পূর্ণ হওয়ার পরে সেটি যাচাই করার জন্য ধাপে-ধাপে গাইড পেতে, Engage ডেভেলপার ইন্টিগ্রেশন ওয়ার্কফ্লো দেখুন।

প্রায়শই জিজ্ঞাসিত প্রশ্ন

প্রায়শই জিজ্ঞাসিত প্রশ্নের জন্য Engage SDK-এর প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন।

যোগাযোগ করুন

ইন্টিগ্রেশন প্রসেস চলাকালীন কোনও প্রশ্ন থাকলে engage-developers@google.com-এর সাথে যোগাযোগ করুন।

পরবর্তী ধাপ

এই ইন্টিগ্রেশন সম্পূর্ণ করার পরে, আপনার পরবর্তী ধাপগুলি নিম্নরূপ:

  • engage-developers@google.com-এ ইমেল পাঠান এবং Google-এর মাধ্যমে পরীক্ষা করার জন্য প্রস্তুত আপনার ইন্টিগ্রেটেড APK অ্যাটাচ করুন।
  • ইন্টিগ্রেশন যাতে প্রত্যাশা অনুযায়ী কাজ করে তা নিশ্চিত করতে Google ইন্টার্নালি যাচাই ও পর্যালোচনা করে। কোনও পরিবর্তন করতে হলে, Google প্রয়োজনীয় বিবরণ সহ আপনার সাথে যোগাযোগ করবে।
  • পরীক্ষা করা সম্পূর্ণ হলে এবং কোনও পরিবর্তন করার প্রয়োজন না থাকলে, Google আপনার সাথে যোগাযোগ করে জানাবে যে আপনি Play Store-এ আপডেট করা ও ইন্টিগ্রেট করা APK প্রকাশ করা শুরু করতে পারবেন।
  • Google-এর থেকে আপনার আপডেট করা APK Play Store-এ প্রকাশিত হওয়ার কনফার্মেশন পাওয়ার পরে, আপনার সাজেশন, ফিচার করা, রিজার্ভেশন এবং সার্চ করা চালিয়ে যান ক্লাস্টার প্রকাশিত হতে পারে এবং ব্যবহারকারীরা তা দেখতে পাবেন।