রেট সংক্রান্ত নিয়মাবলির XML রেফারেন্স

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

প্রতিটি রেট রুলের জন্য একটি id প্রয়োজন, যা ট্রানজ্যাকশন মেসেজের <Rate>-এ রেফারেন্স হিসেবে ব্যবহার করা যেতে পারে। রেট সংক্রান্ত নিয়মাবলির আইডি উল্লেখ করে এমন <Rate> শুধুমাত্র ব্যবহারকারীদের এবং রেট সংক্রান্ত নিয়মাবলিতে উল্লেখ করা শর্ত অনুযায়ী দেখানো হয়। ল্যান্ডিং পৃষ্ঠা URL-এ ভেরিয়েবল ব্যবহার করে রেট সংক্রান্ত নিয়মাবলির আইডি উল্লেখ করা যেতে পারে।

<RateRuleSettings>

রেট সংক্রান্ত নিয়মের XML ফাইলের রুট এলিমেন্ট। <RateRuleSettings> (আগে <PrivateRates> ছিল) এলিমেন্টে এগুলি আছে:

  • <UserRateCondition>টি এলিমেন্ট যা শর্তসাপেক্ষে প্রযোজ্য এবং ব্যক্তিগত রেটের জন্য ম্যাচ করার শর্তাবলী নির্ধারণ করে। যেমন, আপনি এমন একটি শর্তসাপেক্ষে প্রযোজ্য রেট তৈরি করতে পারেন যা নির্দিষ্ট দেশের সব ব্যবহারকারীর শর্তের সাথে মিলে যায়।

  • <RateRule>টি এলিমেন্ট, যার প্রতিটি ট্রানজ্যাকশন মেসেজে <Rate>-এ রেফারেন্সের জন্য রেট সংক্রান্ত নিয়ম নির্ধারণ করে। প্রতিটি <RateRule> শর্ত এবং UI ট্রিটমেন্ট নির্দিষ্ট করে যা একটি শর্তসাপেক্ষ বা ব্যক্তিগত রেট তৈরি করে।

রেট রুল XML হায়ারার্কিতে নিম্নলিখিত জায়গায় <RateRuleSettings> এলিমেন্ট দেখা যায়:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

সিন্ট্যাক্স

<RateRuleSettings> এলিমেন্ট নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="some_id" op="[all|any|none]">
    ...
  </UserRateCondition>
  <!-- Required -->
  <RateRule id="rate_rule_id">
    <!-- Required -->
    <UserRateCondition op="[all|any|none]">
      ...
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

অ্যাট্রিবিউট

<RateRuleSettings> এলিমেন্টে কোনও অ্যাট্রিবিউট নেই।

চাইল্ড এলিমেন্ট

<RateRuleSettings> এলিমেন্টে নিম্নলিখিত চাইল্ড এলিমেন্ট আছে:

চাইল্ড এলিমেন্ট প্রয়োজনীয়? ধরন বিবরণ
<RateRule> Required <RateRule>

শর্তসাপেক্ষ বা ব্যক্তিগত রেট দেখানোর জন্য ম্যাচিং শর্তাবলী, পরিবর্তন এবং যোগ্যতা নির্ধারণ করে। এটির জন্য একটি id অ্যাট্রিবিউট প্রয়োজন, যা ট্রানজ্যাকশন মেসেজের <Rate>-এ অথবা ল্যান্ডিং পেজ URL-এ রেফারেন্স হিসেবে ব্যবহার করা যেতে পারে।

<UserRateCondition> Optional <UserRateCondition>

এক বা একাধিক শর্ত নির্ধারণ করে যা ম্যাচ করলে শর্তাধীন বা ব্যক্তিগত রেট দেখানো হয়।

শর্তগুলি ইনলাইন হিসেবে <UserRateCondition> চাইল্ড এলিমেন্ট ব্যবহার করে, reference_id অ্যাট্রিবিউট ব্যবহার করে অন্য <UserRateCondition> এলিমেন্টের রেফারেন্স দিয়ে অথবা ইনলাইন ও রেফারেন্স, দুটির মাধ্যমেই উল্লেখ করা যেতে পারে। তবে, reference_id সহ যেকোনও <UserRateCondition>-এর অবশ্যই ০ সন্তান থাকতে হবে।

<RateRuleSettings>-এর অধীনে থাকা টপ-লেভেল <UserRateCondition>-এ অবশ্যই id অ্যাট্রিবিউট থাকতে হবে।

শর্তসাপেক্ষে প্রযোজ্য রেটের উদাহরণ

শর্তসাপেক্ষে প্রযোজ্য রেট নির্ধারণ করার প্রাথমিক উপায়গুলি নিম্নলিখিত উদাহরণে দেখানো হয়েছে।

মোবাইল ব্যবহারকারী উদাহরণে যেমন দেখানো হয়েছে, আগে থেকে নির্ধারিত শর্তের রেফারেন্স দেওয়া সাজেস্ট করা হয়।

মোবাইল ব্যবহারকারী

নিচে শর্তসাপেক্ষে প্রযোজ্য রেটের উদাহরণ দেওয়া হল যা রেটের নিয়মকে সংজ্ঞায়িত করে। এটি আগে থেকে নির্ধারিত <UserRateCondition>-এর রেফারেন্স দিয়ে সব মোবাইল ব্যবহারকারীর সাথে ম্যাচ করে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="mobile">
    <UserDeviceType>mobile</UserDeviceType>
  </UserRateCondition>
  <RateRule id="mobile">
    <!-- Referencing pre-defined conditions is recommended -->
    <UserRateCondition reference_id="mobile"/>
  </RateRule>
</RateRuleSettings>

মার্কিন যুক্তরাষ্ট্রের ব্যবহারকারী

শর্তসাপেক্ষে প্রযোজ্য রেটের নিম্নলিখিত উদাহরণটি একটি রেট রুলকে সংজ্ঞায়িত করে যা মার্কিন যুক্তরাষ্ট্রে সার্চ করা সমস্ত ব্যবহারকারীর সাথে মেলে, এটি আগে থেকে সংজ্ঞায়িত <UserRateCondition>-কে রেফারেন্স হিসেবে ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="us">
    <UserCountry>US</UserCountry>
  </UserRateCondition>
  <RateRule id="us">
    <UserRateCondition reference_id="us"/>
  </RateRule>
</RateRuleSettings>

<RateRule>

নির্দিষ্ট করার জন্য একটি কন্টেনার:

  • রেট দেখানোর শর্তাবলী
  • দাম এবং রেটের জন্য UI ট্রিটমেন্টে কোনও পরিবর্তন করা হলে তা উল্লেখ করুন
  • ব্যক্তিগত রেটের জন্য লুকানো UI ট্রিটমেন্টের ব্যবহার

রেট রুল XML হায়ারার্কিতে নিম্নলিখিত জায়গায় <RateRule> এলিমেন্ট দেখা যায়:

+ 
<RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

সিন্ট্যাক্স

<RateRule> এলিমেন্ট নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <UserRateCondition ...>
  ...
  </UserRateCondition>
  <!-- At least one RateRule is required. The id attribute is required -->
  <RateRule id="rate_rule_id">
    <!-- One or more UserRateCondition elements (inline or referenced) are required. -->
    <UserRateCondition op="[all|any|none]"> // Inline example
      <Description>user_rate_condition_description</Description>
      <!-- Uses the member rate visible UI treatment -->
      <AlwaysEligibleMembershipProgram>program_name</AlwaysEligibleMembershipProgram>
      <LanguageCode>language_code</LanguageCode>
      <MaxUsersPercent>20</MaxUsersPercent> // 20% of users
      <!-- Requires <RateIneligibility> -->
      <MembershipProgram>program_name</MembershipProgram>
      <UserRateCondition reference_id="user_rate_condition_id"/>
      <UserCountry>country_code</UserCountry>
      <UserDeviceType>[mobile|desktop|tablet]</UserDeviceType>
      <UserListId>id</UserListId>
      <UserSignedIn>[true|false]</UserSignedIn>
      <IsDomestic>[true|false]</IsDomestic>
      <PackageType>[direct_offer]</PackageType>
    </UserRateCondition>
    <RateIneligibility>
      <IneligibilityType>[exact|price_band|existence]</IneligibilityType>
      <IneligibilityReason>[program_member]</IneligibilityReason>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>[free_wifi]</HotelAmenity>
    </RateModification>
  </RateRule>
</RateRuleSettings>

অ্যাট্রিবিউট

<RateRule> এলিমেন্টে নিম্নলিখিত অ্যাট্রিবিউট আছে:

অ্যাট্রিবিউট প্রয়োজনীয়? ধরন বিবরণ
id আবশ্যক স্ট্রিং

রেট সংক্রান্ত নিয়মের জন্য অনন্য শনাক্তকারী। এই আইডি, শর্তসাপেক্ষ বা ব্যক্তিগত রেট দেখানোর জন্য ট্রানজ্যাকশন মেসেজে <Rate>-এর rate_rule_id অ্যাট্রিবিউট ব্যবহার করে রেফার করা হয়। রেট সংক্রান্ত নিয়ম id-কে ল্যান্ডিং পৃষ্ঠা URL-এ ভেরিয়েবল ও শর্ত ব্যবহার করেও রেফার করা যেতে পারে।

সর্বাধিক ৪০টি অক্ষর লেখা যাবে। এই আইডি খালি স্ট্রিং হতে পারবে না।

চাইল্ড এলিমেন্ট

<RateRule> এলিমেন্টে নিম্নলিখিত চাইল্ড এলিমেন্ট আছে:

চাইল্ড এলিমেন্ট প্রয়োজনীয়? ধরন বিবরণ
<RateIneligibility> Optional <RateIneligibility> <MembershipProgram> রেটের জন্য নির্দিষ্ট UI ট্রিটমেন্ট নির্ধারণ করে এমন ভ্যালু নির্দিষ্ট করে।

<UserRateCondition>-এ <MembershipProgram> উল্লেখ করা থাকলে তবেই এটি প্রযোজ্য।

<UserRateCondition> Required <UserRateCondition>

এক বা একাধিক শর্ত নির্ধারণ করে যা ম্যাচ করলে শর্তাধীন বা ব্যক্তিগত রেট দেখানো হয়।

<UserRateCondition> চাইল্ড এলিমেন্ট ব্যবহার করে ইনলাইন হিসেবে অথবা reference_id অ্যাট্রিবিউট ব্যবহার করে অন্য <UserRateCondition>-এর রেফারেন্স হিসেবে অথবা ইনলাইন ও রেফারেন্স, উভয় হিসেবেই শর্ত নির্ধারণ করা যেতে পারে।

তবে মনে রাখবেন, <UserRateCondition> যদি <RateRule>-এর চাইল্ড হয়, তাহলে <UserRateCondition> এলিমেন্টে id অ্যাট্রিবিউট থাকতে পারবে না এবং অন্য কোনও <UserRateCondition>-এর দ্বারা রেফারেন্স করা যাবে না।

<RateModification> Optional <RateModification> ব্যক্তিগত রেটের জন্য UI ট্রিটমেন্ট পরিবর্তন করে।
<PromoCode> Optional string এই রেট সংক্রান্ত নিয়ম প্রয়োগ করা হলে, রেটের সাথে যুক্ত করার জন্য একটি কোড নির্দিষ্ট করে। PROMO-CODE ল্যান্ডিং পৃষ্ঠা ভেরিয়েবলে প্রতিফলিত হয়।

<UserRateCondition>

এক বা একাধিক শর্ত নির্ধারণ করে যা মিলে গেলে শর্তাধীন বা ব্যক্তিগত রেট প্রযোজ্য হয়।

<UserRateCondition> এলিমেন্টটি রেট রুল XML হায়ারার্কির নিম্নলিখিত জায়গায় দেখা যায়:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

সিন্ট্যাক্স

<UserRateCondition> এলিমেন্ট নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <!-- "op" is required for more than one child element -->
  <UserRateCondition id="some_id" op="[all|any|none]">
    <UserDeviceType>device_type</UserDeviceType>
    <PackageType>package_type</PackageType>
  </UserRateCondition>
  <UserRateCondition id="some_other_id" op="[all|any|none]">
    <UserDeviceType>device_type</UserDeviceType>
  </UserRateCondition>
  <!-- At least one RateRule is required -->
  <RateRule id="rate_rule_id">
    <UserRateCondition reference_id="some_id"/>
  </RateRule>
  <RateRule id="rate_rule_id">
    <UserRateCondition reference_id="some_other_id"/>
  </RateRule>
  <RateRule id="rate_rule_id">
    <UserRateCondition>
      <UserDeviceType>device_type</UserDeviceType>
    </UserRateCondition>
  </RateRule>
<span class="nocode"></RateRuleSettings></span>

অ্যাট্রিবিউট

<UserRateCondition> এলিমেন্টে নিম্নলিখিত অ্যাট্রিবিউট আছে:

অ্যাট্রিবিউট প্রয়োজনীয়? ধরন বিবরণ
id Required (if top-level under <RateRuleSettings>) string

এই <UserRateCondition>-এর জন্য অনন্য শনাক্তকারী। <RateRule> id অ্যাট্রিবিউট বা <UserRateCondition> reference_id অ্যাট্রিবিউট দ্বারা রেফারেন্স করা যেতে পারে।

op Optional enum

<UserRateCondition>-এ একাধিক চাইল্ড এলিমেন্ট থাকলে op অ্যাট্রিবিউট প্রয়োজন। অ্যাট্রিবিউট ভ্যালু নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

  • all: এই রেট সংক্রান্ত নিয়মের মাধ্যমে সংজ্ঞায়িত সব শর্তের সাথে ম্যাচ করে এমন ব্যবহারকারীদের অন্তর্ভুক্ত করুন। এই মান ব্যবহার করা যাবে না যখন একটি শর্ত <UserListId> হয়, যদি না অন্য একটি শর্ত—হয় <AlwaysEligibleMembershipProgram> অথবা <MembershipProgram>—সংজ্ঞায়িত করা হয়।
  • any: এই রেট সংক্রান্ত নিয়মের মাধ্যমে নির্ধারিত শর্তের মধ্যে যেকোনও একটির সাথে ম্যাচ করে এমন ব্যবহারকারীকে অন্তর্ভুক্ত করুন।
  • none: এই রেট নিয়মের মাধ্যমে সংজ্ঞায়িত যেকোনও শর্তের সাথে ম্যাচ করে এমন ব্যবহারকারীদের বাদ দিন। শর্তগুলির মধ্যে একটি <UserListId> হলে, এই ভ্যালু ব্যবহার করা যাবে না।
reference_id Optional string

এই এলিমেন্টকে অন্য একটি আগে থেকে নির্ধারিত <UserRateCondition>-এর রেফারেন্স হিসেবে সংজ্ঞায়িত করে যার সাথে id মিলে যায়।

reference_id উপস্থিত থাকলে:

  • চাইল্ড এলিমেন্ট পার্স করা হয়নি
  • id এবং op-কে উপস্থিত থাকতে হবে না

চাইল্ড এলিমেন্ট

<UserRateCondition> এলিমেন্টে নিম্নলিখিত চাইল্ড এলিমেন্ট আছে:

চাইল্ড এলিমেন্ট প্রয়োজনীয়? ধরন বিবরণ
<AlwaysEligibleMembershipProgram> Optional string

নির্দিষ্ট করে যে রেটটি মেম্বার রেট দৃশ্যমান UI ট্রিটমেন্ট ব্যবহার করবে।

এই এলিমেন্টের মান যেকোনও মেম্বারশিপ প্রোগ্রামের নাম হতে পারে।

<Description> Optional string <UserRateCondition>-এর বিবরণ দেয়। এটি ডকুমেন্টেশনের উদ্দেশ্যে এবং এর ক্ষমতার উপর কোন প্রভাব নেই।
<LanguageCode> Optional string এটি নির্দিষ্ট করে যে, যেসব ব্যবহারকারীর ভাষা এই দুই অক্ষরের ভাষা কোডের সাথে মেলে, তাদের এই রেট অফার করা হবে।

মনে রাখবেন>: যেখানে সম্ভব সেখানে <LanguageCode>-এর পরিবর্তে <UserCountry> ব্যবহার করার সাজেশন দেওয়া হয়।

<MaxUsersPercent> Optional float

এটি উল্লেখ করে যে এই শতাংশ ব্যবহারকারীকে র‍্যান্ডম রেট অফার করা হবে।

ভ্যালু অবশ্যই ০ থেকে ১০০ (অন্তর্ভুক্ত) এর মধ্যে একটি পূর্ণসংখ্যা হতে হবে। যেমন, ২০ লিখলে ২০% ব্যবহারকারীকে টার্গেট করা হবে।

<MembershipProgram> Optional string

নির্দিষ্ট করে যে রেটটি মেম্বারশিপ প্রোগ্রাম UI ট্রিটমেন্ট ব্যবহার করবে যেমনটি <IneligibilityReason>-এর <RateIneligibility> দ্বারা নির্ধারিত হয়।

<MembershipProgram> সঠিক হতে, <RateIneligibility> অবশ্যই নির্দিষ্ট করতে হবে।

<MembershipProgram>-এর ভ্যালু যেকোনও মেম্বারশিপ প্রোগ্রামের নাম হতে পারে।

<UserRateCondition> Optional <UserRateCondition>

এক বা একাধিক শর্ত নির্ধারণ করে যা ম্যাচ করলে শর্তাধীন বা ব্যক্তিগত রেট দেখানো হয়।

reference_id সহ <UserRateCondition>-এ অবশ্যই ০টি চাইল্ড থাকতে হবে।

<UserCountry> Optional string

CLDR দেশের কোড, যেমন DE বা FR। মনে রাখবেন, কিছু দেশের ক্ষেত্রে, CLDR কোড ২-অক্ষরের ISO কোডের মতো নয়। CLDR অঞ্চল কোড কাজ করে না।

ব্যবহারকারীকে অবশ্যই নির্দিষ্ট দেশে থাকতে হবে বলে উল্লেখ করে। Google ব্যবহারকারীর IP অ্যাড্রেস থেকে তার দেশ নির্ধারণ করে।

<UserDeviceType> Optional enum ডিভাইসের ধরন সংক্রান্ত শর্ত নির্ধারণ করে। অনুমোদিত মান হল:
  • mobile
  • desktop
  • tablet
<UserListId> Optional string অডিয়েন্স তালিকার Google Ads ব্যবহারকারী তালিকা আইডি।

এই শর্ত শুধুমাত্র <AlwaysEligibleMembershipProgram> বা <MembershipProgram>-এর সাথে অথবা op, any হলে ব্যবহার করা যাবে।

<UserSignedIn> Optional boolean একটি বুলিয়ান যা ব্যবহারকারীকে তার Google অ্যাকাউন্টে সাইন-ইন করতে হবে কিনা তা নির্দিষ্ট করে। true ভ্যালু থাকলে বুঝতে হবে যে ব্যবহারকারীকে অবশ্যই সাইন-ইন করতে হবে। false ভ্যালু থেকে বোঝা যায় যে ব্যবহারকারীকে সাইন-ইন করলে চলবে না। ব্যবহারকারী সাইন-ইন করেছেন নাকি সাইন-আউট করেছেন, তা নিয়ে আপনি চিন্তিত না হলে, <UserSignedIn> শর্ত যোগ করবেন না।
<IsDomestic> Optional boolean একটি বুলিয়ান যা নির্দিষ্ট করে যে ব্যবহারকারীকে হোটেলটি যে দেশে অবস্থিত সেই দেশেরই হতে হবে কিনা। true ভ্যালু থেকে বোঝা যায় যে ব্যবহারকারীকে অবশ্যই হোটেলের একই দেশের হতে হবে। false মান থেকে বোঝা যায় যে ব্যবহারকারী হোটেলটি যে দেশে অবস্থিত সেই দেশ ছাড়া অন্য কোনও দেশের হতে পারেন। আপনি আরও সূক্ষ্মভাবে নিয়ন্ত্রণ করতে চাইলে, <UserCountry> শর্ত ব্যবহার করুন।
<PackageType> Optional enum প্যাকেজের ধরন সংক্রান্ত শর্ত নির্ধারণ করে। অনুমোদিত মান হল:
  • direct_offer

মনে রাখবেন: direct_offer হল বিজ্ঞাপনদাতার প্রদান করা বিশেষ ধরনের রেট যা সর্বজনীনভাবে উপলভ্য নয় এবং সেরা সর্বজনীন রেটের চেয়েও কম।

শর্তসাপেক্ষে প্রযোজ্য রেটের উদাহরণ

ব্যবহারকারীর শতকরা হার

শর্তসাপেক্ষে প্রযোজ্য রেটের নিম্নলিখিত উদাহরণে উল্লেখ করা হয়েছে যে রেটটি র‍্যান্ডমভাবে কুড়ি শতাংশ ব্যবহারকারীকে অফার করা হবে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="20_percent_users">
    <UserRateCondition>
      <MaxUsersPercent>20</MaxUsersPercent>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

যুক্তরাজ্য ও মোবাইল ব্যবহারকারী

নিম্নলিখিত শর্তসাপেক্ষে প্রযোজ্য রেটের উদাহরণে এমন একটি রেট রুল সংজ্ঞায়িত করা হয়েছে যা ইনলাইন <UserRateCondition> ব্যবহার করে যুক্তরাজ্যে মোবাইল ডিভাইসের মাধ্যমে সার্চ করা সব ব্যবহারকারীর সাথে মিলে যায়:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="gb_mobile">
    <UserRateCondition op="all">
      <UserCountry>GB</UserCountry>
      <UserDeviceType>mobile</UserDeviceType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

জাপান এবং জাপান নয়

শর্তসাপেক্ষে প্রযোজ্য রেটের নিম্নলিখিত উদাহরণে একটি রেট রুল দেখানো হয়েছে যা জাপানের ব্যবহারকারীদের জন্য প্রযোজ্য এবং আরেকটি রেট রুল দেখানো হয়েছে যা বিশ্বের অন্যান্য দেশের (RoW) ব্যবহারকারীদের জন্য প্রযোজ্য:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="jp">
    <UserRateCondition>
      <UserCountry>jp</UserCountry>
    </UserRateCondition>
  </RateRule>
  <RateRule id="row_not_jp">
    <UserRateCondition op="none">
      <UserCountry>jp</UserCountry>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

যেকোনও, সব এবং কোনওটিই নয়

নিচে শর্তসাপেক্ষে প্রযোজ্য রেটের উদাহরণ দেওয়া হল, যেখানে দেখানো হয়েছে যে কীভাবে op অ্যাট্রিবিউট ব্যবহার করে any, all ও none ভ্যালুর মাধ্যমে বিভিন্ন উপায়ে একাধিক শর্তের সাথে ম্যাচ করা যায়। যেমন, au_nz শর্তে যেমন দেখানো হয়েছে, আপনি একাধিক দেশের যেকোনও একটিতে ব্যবহারকারীদের সাথে ম্যাচ করার জন্য যেকোনও একটি ব্যবহার করতে পারেন। au_nz_mobile_tablet রেট নিয়মে যেমন দেখানো হয়েছে, ব্যবহারকারীদের একাধিক শর্ত পূরণ করতে হবে, এটি বাধ্যতামূলক করতে আপনি all ব্যবহার করতে পারেন। row_mobile_tablet রেট রুলটি অস্ট্রেলিয়া এবং নিউজিল্যান্ড বাদে বিশ্বের বাকি অংশে (row) থাকা ব্যবহারকারীদের সাথে ম্যাচ করবে এবং mobile_tablet শর্তের সাথেও ম্যাচ করবে।

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="au_nz" op="any">
    <UserCountry>AU</UserCountry>
    <UserCountry>NZ</UserCountry>
  </UserRateCondition>
  <UserRateCondition id="mobile_tablet" op="any">
    <UserDeviceType>mobile</UserDeviceType>
    <UserDeviceType>tablet</UserDeviceType>
  </UserRateCondition>
  <RateRule id="au_nz_mobile_tablet">
    <UserRateCondition op="all">
      <UserRateCondition reference_id="au_nz"/>
      <UserRateCondition reference_id="mobile_tablet"/>
    </UserRateCondition>
  </RateRule>
  <RateRule id="row_mobile_tablet">
    <UserRateCondition op="all">
      <UserRateCondition op="none">
        <UserRateCondition reference_id="au_nz"/>
      </UserRateCondition>
      <UserRateCondition reference_id="mobile_tablet"/>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

ব্যক্তিগত রেটের উদাহরণ

মেম্বারদের জন্য দাম দেখা যাচ্ছে ১

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="member_visible">
    <UserRateCondition>
      <AlwaysEligibleMembershipProgram>[enter your program here]</AlwaysEligibleMembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

মেম্বারদের জন্য দাম দৃশ্যমান ২

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="member_visible_es_only">
    <UserRateCondition op="all">
      <AlwaysEligibleMembershipProgram>[enter your program here]</AlwaysEligibleMembershipProgram>
      <UserCountry>es</UserCountry>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

অডিয়েন্স তালিকা রেট ১

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="audience_list">
    <UserRateCondition>
      <UserListId>[enter an audience list id]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

অডিয়েন্স তালিকা রেট ২

এই ব্যক্তিগত রেটের উদাহরণ থেকে বোঝা যায় যে কীভাবে একাধিক অডিয়েন্স তালিকার জন্য মেম্বার রেট দৃশ্যমান UI ট্রিটমেন্ট নির্দিষ্ট করতে হয়:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <UserRateCondition op="all">
      <AlwaysEligibleMembershipProgram>[enter the program name here]</AlwaysEligibleMembershipProgram>
      <UserRateCondition op="any">
        <UserListId>[enter one audience list id here]</UserListId>
        <UserListId>[enter another audience list id here]</UserListId>
      </UserRateCondition>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateIneligibility>

মেম্বার রেট লুকানো UI ট্রিটমেন্ট কীভাবে দেখাতে হবে তা নির্দেশ করে। অন্তর্ভুক্ত না থাকলে, মেম্বার রেট লুকানো UI ট্রিটমেন্ট দেখানো হয় না।

<RateRule>-এ <RateIneligibility> ব্যবহার করতে, <RateRule>-এর জন্য <UserRateCondition> এলিমেন্টে <MembershipProgram>-ও নির্দিষ্ট করতে হবে।

রেট রুল XML হায়ারার্কিতে নিম্নলিখিত জায়গায় <RateIneligibility> এলিমেন্ট দেখা যায়:

+ 
<RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

সিন্ট্যাক্স

<RateIneligibility> এলিমেন্ট নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <UserRateCondition ...>
  ...
  </UserRateCondition>
  <RateRule ...>
    <UserRateCondition ...>
      ...
      <!-- Required when using RateIneligibility -->
      <MembershipProgram>program_name</MembershipProgram>
      ...
    </UserRateCondition>
    <RateIneligibility>
      <IneligibilityType>[exact|price_band|existence]</IneligibilityType>
      <IneligibilityReason>[program_member]</IneligibilityReason>
    </RateIneligibility>
  </RateRule>
</RateRuleSettings>

অ্যাট্রিবিউট

<RateIneligibility> এলিমেন্টে কোনও অ্যাট্রিবিউট নেই।

চাইল্ড এলিমেন্ট

<RateIneligibility> এলিমেন্টে নিম্নলিখিত চাইল্ড এলিমেন্ট আছে:

চাইল্ড এলিমেন্ট প্রয়োজনীয়? ধরন বিবরণ
<IneligibilityType> Required enum

টেক্সট (কেটে দেওয়া রেটের পাশে দেখানো) কীভাবে লুকানো রেট বর্ণনা করবে তা নির্ধারণ করে।

সঠিক ভ্যালু হল:

  • exact: ছাড়ের শতকরা হার। টেক্সটে লেখা থাকবে, "ফ্রিতে এনরোল করলে X% ছাড় পান।"
  • price_band: ছাড়ের রেঞ্জ। টেক্সটে লেখা থাকবে, "ফ্রিতে এনরোল করলে X-Y% ছাড় পান।" ১-৫% ছাড়ের ক্ষেত্রে, টেক্সটে "৫% পর্যন্ত ছাড় পান" লেখা থাকবে। আরও বেশি ছাড়ের ক্ষেত্রে ৫-পয়েন্ট ইনক্রিমেন্ট দেখানো হবে, যেমন "৫-১০% ছাড় পান" অথবা "১০-১৫% ছাড় পান।"
  • existence: একটি অ-নির্দিষ্ট ইঙ্গিত। এই ক্ষেত্রে, টেক্সটটি হবে: "ফ্রিতে এনরোল করলে আরও কম দাম পান।"

ব্যক্তিগত রেটের বিবরণ ও উদাহরণ থেকে UI ট্রিটমেন্ট সম্পর্কে আরও জানুন।

<IneligibilityReason> Required enum

সঠিক ভ্যালু হল:

  • program_member: মেম্বার রেট লুকানো UI ট্রিটমেন্ট ব্যবহার করে রেট দেখায়।

ব্যক্তিগত রেটের উদাহরণ

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

উদাহরণ দেখতে, ব্যক্তিগত রেটের উদাহরণ দেখুন।

মেম্বার রেট লুকানো উদাহরণ (প্রাথমিক)

সঠিক ছাড়

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>exact</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

ব্যান্ড ডিসকাউন্ট

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>price_band</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

ইঙ্গিত ডিসকাউন্ট

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

মেম্বার রেট লুকানো আছে এমন উদাহরণ (একাধিক শর্ত)

op="any"

মেম্বারদের জন্য অডিয়েন্স তালিকা রেট + মেম্বার রেট লুকানো (এক্সিস্টেন্স ডিসকাউন্ট) নন-মেম্বারদের জন্য

এই ব্যক্তিগত রেটের উদাহরণে existence ধরনের মেম্বার রেট লুকানো UI ট্রিটমেন্ট নির্দিষ্ট করা হয়েছে, যা ব্যবহারকারীদের দেখানো হবে, অডিয়েন্স তালিকায় নয়। অডিয়েন্স তালিকায় থাকা ব্যবহারকারীরা অডিয়েন্স রেট দেখতে পাবেন।

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition op="any">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserListId>[enter you audience list id here]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

op="all"

মেম্বার রেট শুধুমাত্র অডিয়েন্স তালিকার ব্যবহারকারীদের জন্য লুকানো আছে

এই ব্যক্তিগত রেটের উদাহরণে exact ধরনের মেম্বার রেট লুকানো UI ট্রিটমেন্ট নির্দিষ্ট করা হয়েছে, যা "সাথে ফ্রি ওয়াই-ফাই" অতিরিক্ত টেক্সটের সাথে পরিবর্তন করা হয়েছে। এই UI ট্রিটমেন্ট সেইসব ব্যবহারকারীকে দেখানো হবে যারা অডিয়েন্স তালিকার সাথে ম্যাচ করেন।

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program_for_audience_list">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>exact</IneligibilityType>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>free_wifi</HotelAmenity>
    </RateModification>
    <UserRateCondition op="all">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserListId>[enter you audience list id here]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

স্বচ্ছ/দৃশ্যমান UI

এই উদাহরণে দেখানো হয়েছে যে কীভাবে অডিয়েন্স তালিকায় থাকা ব্যবহারকারীদের জন্য দুটি UI ট্রিটমেন্ট (স্বচ্ছ ও দৃশ্যমান UI) সহ মেম্বার রেট এবং অন্যান্য সব ব্যবহারকারীর জন্য লুকানো রেট নির্দিষ্ট করতে হয়।

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition op="any">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserRateCondition op="all">
        <UserListId>[enter you audience list id here]</UserListId>
        <AlwaysEligibleMembershipProgram>program_name</AlwaysEligibleMembershipProgram>
      </UserRateCondition>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateModification>

ব্যক্তিগত রেটের জন্য UI ট্রিটমেন্ট পরিবর্তন করে।

<RateModification> এলিমেন্টটি রেট রুল XML হায়ারার্কির নিম্নলিখিত জায়গায় দেখা যায়:

+ 
<RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

অ্যাট্রিবিউট

<RateModification> এলিমেন্টে কোনও অ্যাট্রিবিউট নেই।

চাইল্ড এলিমেন্ট

<RateModification> এলিমেন্টে নিম্নলিখিত চাইল্ড এলিমেন্ট আছে:

চাইল্ড এলিমেন্ট প্রয়োজনীয়? ধরন বিবরণ
<HotelAmenity> Optional enum

মেম্বার রেট লুকানো UI ট্রিটমেন্ট পরিবর্তন করতে <MembershipProgram> এবং <RateIneligibility>-এর সাথে একত্রিত করুন।

সঠিক ভ্যালু হল:

  • free_wifi: টেক্সটে plus free wifi যোগ করে।
<PriceMultiplier> Optional float

বেস রেট, ট্যাক্স ও ফি-এর সাথে এই ভ্যালু গুণ করে দাম পরিবর্তন করে। যেমন, PriceMultiplier = ০.৯, বেস রেট = $১০০, ট্যাক্স = $২০, ফি = $১০ হলে; মাল্টিপ্লায়ার প্রয়োগ করার পরে: বেস রেট = $৯০, ট্যাক্স = $১৮, ফি = $৯।

এটি আপনাকে নির্দিষ্ট রেট রুল সহ সব রেটে ছাড় প্রয়োগ করতে দেয়।

ব্যক্তিগত রেটের উদাহরণ

হোটেলের সুযোগ-সুবিধা

সব ব্যবহারকারীর জন্য মেম্বার রেট লুকানো আছে (ব্যান্ড ডিসকাউন্ট) + ফ্রি ওয়াই-ফাই

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>price_band</IneligibilityType>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>free_wifi</HotelAmenity>
    </RateModification>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

দামের মাল্টিপ্লায়ার

প্রাইস ফিডে মোবাইল রেটে ৫% ছাড় প্রয়োগ করুন

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="mobile">
    <RateModification>
      <PriceMultiplier>0.95</PriceMultiplier>
    </RateModification>
    <UserRateCondition>
      <UserDeviceType>mobile</UserDeviceType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

ডাইরেক্ট অফার

প্রাইস ফিডে মোবাইল ডাইরেক্ট অফার রেটে ১৫% ছাড় প্রয়োগ করুন

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="do-mobile">
    <RateModification>
      <PriceMultiplier>0.85</PriceMultiplier>
    </RateModification>
    <UserRateCondition>
      <UserDeviceType>mobile</UserDeviceType>
      <PackageType>direct_offer</PackageType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>