লেনদেন (সম্পত্তি ডেটা)

অনুরোধ

সিনট্যাক্স

Transaction (Property Data) মেসেজটি নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="timestamp"
             id="message_ID"
             partner="partner_key">
  <PropertyDataSet action="[overlay|delta]">
    <!-- (Required) ID that matches the Hotel List Feed -->
    <Property>HotelID</Property>
    <RoomData>
      <!-- (Required) One room ID per RoomData element -->
      <RoomID>RoomID</RoomID>
      <Name>
        <Text text="room_name" language="language_code"/>
      </Name>
      <Description>
        <Text text="room_description" language="language_code"/>
      </Description>
      <!-- (Optional) Restricts the rate plans allowed for this room type to
        those listed here. If specified, don't specify AllowableRoomIDs. -->
      <AllowablePackageIDs>
        <AllowablePackageID>PackageID</AllowablePackageID>
      </AllowablePackageIDs>
      <Capacity>max_number_of_occupants</Capacity>
      <AdultCapacity>max_number_of_adult_occupants</AdultCapacity>
      <ChildCapacity>max_number_of_child_occupants</ChildCapacity>
      <OccupancySettings>
        <MinOccupancy>min_number_of_occupants</MinOccupancy>
        <MinAge>min_age_of_occupants</MinAge>
      </OccupancySettings>
      <PhotoURL>
        <Caption>
          <Text text="photo_description" language="language_code"/>
        </Caption>
        <URL>photo_location</URL>
      </PhotoURL>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>[western|japanese|japanese_western]</JapaneseHotelRoomStyle>
        <Beds>
           <Bed size="[single|semi_double|double|queen|king]">
             <Width unit="cm" number="bed_width"/>
             <Length unit="cm" number="bed_length"/>
           </Bed>
           <!-- Include with any additional beds. -->
        </Beds>
        <Suite/>
        <Capsule/>
        <Roomsharing>[shared|private]</Roomsharing>
        <Outdoor/>
        <MobilityAccessible/>
        <Smoking>[smoking|non_smoking]</Smoking>
        <BathAndToilet relation="[together|separate]">
          <Bath bathtub="[false|true]" shower="[false|true]"/>
          <Toilet electronic_bidet="[false|true]" mobility_accessible="[false|true]"/>
        </BathAndToilet>
        <OpenAirBath/>
        <AirConditioning/>
        <Balcony/>
        <Views>
          <!-- (Optional) Defines the type of views from the room. -->
          <!-- Example: <OceanView/> -->
        </Views>
      </RoomFeatures>
    </RoomData>
    <PackageData>
      <!-- (Required) One package ID per PackageData element -->
      <PackageID>PackageID</PackageID>
      <Name>
        <Text text="package_name" language="language_code"/>
      </Name>
      <Description>
        <Text text="package_description" language="language_code"/>
      </Description>
      <!-- (Optional) Restricts the room types allowed for this rate plan to
        those listed here. If specified, don't specify AllowablePackageIDs. -->
      <AllowableRoomIDs>
        <AllowableRoomID>RoomID</AllowableRoomID>
      </AllowableRoomIDs>
      <!-- Add Loyalty point information -->
      <MilesIncluded>
        <LoyaltyCampaignID>campaign-ID</LoyaltyCampaignID>
        <!-- (Optional) Use <NumberOfMiles> if the rate plan earns fixed loyalty rewards-->
        <NumberOfMiles>integer</NumberOfMiles>
      </MilesIncluded>
      <Refundable available="[false|true]" refundable_until_days="number_of_days"
        refundable_until_time="time"/>
      <!-- For these next 3 elements, boolean_value can be 0/1 or true/false -->
      <BreakfastIncluded>boolean_value</BreakfastIncluded>
      <InternetIncluded>boolean_value</InternetIncluded>
      <ParkingIncluded>boolean_value</ParkingIncluded>
      <PhotoURL>
        <Caption>
          <Text text="photo_description" language="language_code"/>
          ...
        </Caption>
        <URL>photo_location</URL>
      </PhotoURL>
      ...
      <Meals>
        <Breakfast
          included="[true|false]" buffet="[true|false]"
          in_room="[true|false]" in_private_space="[true|false]"/>
        <Dinner
          included="[true|false]" buffet="[true|false]"
          in_room="[true|false]" in_private_space="[true|false]"/>
      </Meals>
      <CheckinTime>checkin_time</CheckinTime>
      <CheckoutTime>checkout_time</CheckoutTime>
    </PackageData>
  </PropertyDataSet>
</Transaction>

উপাদান এবং বৈশিষ্ট্য

লেনদেন (সম্পত্তির ডেটা) বার্তাটিতে নিম্নলিখিত উপাদান এবং অ্যাট্রিবিউটগুলো রয়েছে:

এলিমেন্ট / @অ্যাট্রিবিউট ঘটনা প্রকার বর্ণনা
Transaction 1 Complex element ARI বাস্তবায়নে, এটি একটি মেসেজের রুট এলিমেন্ট যা একটিমাত্র প্রপার্টির জন্য রুমের ধরন এবং প্যাকেজ নির্ধারণ করে।
Transaction / @timestamp 1 DateTime এই বার্তাটি তৈরির তারিখ ও সময়।
Transaction / @id 1 string এই অনুরোধ বার্তার জন্য একটি অনন্য শনাক্তকারী। এই মানটি প্রতিক্রিয়া বার্তায় ফেরত দেওয়া হয়। অনুমোদিত অক্ষরগুলো হলো az, AZ, 0-9, _ (আন্ডারস্কোর), এবং - (ড্যাশ)।
Transaction / @partner 1 string এই বার্তার জন্য অংশীদার অ্যাকাউন্ট। এই স্ট্রিং ভ্যালুটি হলো হোটেল সেন্টারের অ্যাকাউন্ট সেটিংস পৃষ্ঠায় তালিকাভুক্ত "পার্টনার কী" ভ্যালু।

দ্রষ্টব্য: যদি আপনার এমন কোনো ব্যাকএন্ড থাকে যা একাধিক অ্যাকাউন্টের জন্য ফিড সরবরাহ করে, তাহলে এই মানটিকে অবশ্যই একই অ্যাকাউন্টের জন্য আপনার <OTA_HotelRateAmountNotifRQ> এবং <OTA_HotelAvailNotifRQ> মেসেজের <RequestorID> এলিমেন্টে নির্দিষ্ট করা ID অ্যাট্রিবিউটের মানের সাথে মিলতে হবে।

Transaction / PropertyDataSet 1.. PropertyDataSet একটিমাত্র প্রপার্টির জন্য রুমের ধরন ও প্যাকেজ নির্ধারণ করার একটি কন্টেইনার।

পরামর্শ দেওয়া হচ্ছে যে আপনি <PropertyDataSet> শুধুমাত্র একবারই পাঠাবেন এবং কেবলমাত্র পরিবর্তনের প্রয়োজন হলেই এটি আপডেট করবেন।

Transaction / PropertyDataSet / @action 0..1 enum

রুমের ভাড়ার সংজ্ঞায় যে ধরনের আপডেট প্রয়োগ করতে হবে।

বৈধ মানগুলি হলো:

  • overlay : প্রপার্টিটির জন্য পূর্বে সংজ্ঞায়িত সমস্ত <RoomData> এবং <PackageData> প্রতিস্থাপন করে। শুধুমাত্র বর্তমান মেসেজের <RoomData> এবং <PackageData> বৈধ থাকবে।
  • delta : পূর্বে অনির্ধারিত <RoomData> এবং <PackageData> যোগ করে অথবা বিদ্যমানগুলোকে পরিবর্তন করে।

এই অ্যাট্রিবিউটটি ঐচ্ছিক এবং নির্দিষ্ট না করা হলে এর ডিফল্ট মান delta হয়।

Transaction / PropertyDataSet / Property 1 string প্রপার্টির অনন্য শনাক্তকারী। এই মানটি অবশ্যই হোটেল লিস্ট ফিডের <listing> এলিমেন্টে <id> ব্যবহার করে নির্দিষ্ট করা হোটেল আইডির সাথে মিলতে হবে। হোটেল আইডিটি হোটেল সেন্টারেও তালিকাভুক্ত থাকে।
Transaction / PropertyDataSet / RoomData 0..n RoomData

একটি ঘরের বর্ণনা দেয়।

দ্রষ্টব্য: <RoomData> অথবা <PackageData> এর মধ্যে অন্তত একটি আবশ্যক।

Transaction / PropertyDataSet / RoomData / RoomID 1 RoomID রুমের প্রকারের জন্য একটি অনন্য শনাক্তকারী। এই মানটি <OTA_HotelAvailNotifRQ> , <OTA_HotelRateAmountNotifRQ> এবং <OTA_HotelInvCountNotifRQ> মেসেজগুলিতে <StatusApplicationControl> এলিমেন্টের InvTypeCode অ্যাট্রিবিউট ব্যবহার করে উল্লেখ করা হয়।
Transaction / PropertyDataSet / RoomData / Name 1 Name এক বা একাধিক ভাষায় রুমের ক্যাটাগরির নাম রাখার ধারক।
Transaction / PropertyDataSet / RoomData / Name / Text 1..n Text যেকোনো একটি ভাষায় রুমের ক্যাটাগরির নাম উল্লেখ করে।
Transaction / PropertyDataSet / RoomData / Name / Text / @text 1..n string language অ্যাট্রিবিউট দ্বারা নির্দিষ্ট ভাষায় রুমের ক্যাটাগরির নাম।
Transaction / PropertyDataSet / RoomData / Description 1 Name এক বা একাধিক ভাষায় রুমের ক্যাটাগরির বিবরণ রাখার ধারক।
Transaction / PropertyDataSet / RoomData / Description / Text 1..n Text একটি ভাষায় রুমের ক্যাটাগরির বিবরণ নির্দিষ্ট করে।
Transaction / PropertyDataSet / RoomData / Description / Text / @text 1..n string language অ্যাট্রিবিউট দ্বারা নির্দিষ্ট ভাষায় রুমের ক্যাটাগরির বিবরণ।
Transaction / PropertyDataSet / RoomData / Description / Text / @language 1..n string দুই অক্ষরের একটি ভাষা কোড
Transaction / PropertyDataSet / RoomData / AllowablePackageIDs 0..1 AllowablePackageIDs <AllowablePackageID> উপাদানগুলির জন্য একটি ধারক।

যদি <AllowablePackageIDs> নির্দিষ্ট করা থাকে, তাহলে প্যারেন্ট <RoomData> এলিমেন্টের <RoomID> দ্বারা চিহ্নিত রুমের ধরনটি শুধুমাত্র <AllowablePackageID> এলিমেন্ট দ্বারা সংজ্ঞায়িত রেট প্ল্যানগুলির সাথেই একত্রিত করা যাবে।

যদি <AllowablePackageIDs> নির্দিষ্ট করা না থাকে, তাহলে প্যারেন্ট <RoomData> এলিমেন্টে থাকা <RoomID> দ্বারা চিহ্নিত রুমের ধরনটি যেকোনো রেট প্ল্যানের সাথে যুক্ত করা যেতে পারে।

যেকোনো একটি <AllowablePackageIDs> অথবা <AllowableRoomIDs> ব্যবহার করুন, কিন্তু উভয়ই নয়।

Transaction / PropertyDataSet / RoomData / AllowablePackageIDs / AllowablePackageID 1..n AllowablePackageID এই রুম টাইপের সাথে যুক্ত করা যায় এমন একটি রেট প্ল্যানের প্যাকেজআইডি নির্দিষ্ট করে। একটি রেট প্ল্যান প্যাকেজ, রেট এবং প্রাপ্যতার সমন্বয়ে সংজ্ঞায়িত করা হয়। PackageID OTA_HotelRateAmountNotifRQ এবং OTA_HotelAvailNotifRQ মেসেজগুলিতে থাকা RatePlanCode সাথে সঙ্গতিপূর্ণ।
Transaction / PropertyDataSet / RoomData / Capacity 0..1 integer একটি কক্ষে সর্বোচ্চ যতজন প্রাপ্তবয়স্ক এবং শিশু থাকতে পারে। এই সংখ্যাটি আপনার ভাড়ার সাথে পাঠানো NumberOfGuests মানের চেয়ে বেশি বা সমান হতে হবে।

<Capacity> এর মান অবশ্যই 1 থেকে 99 এর মধ্যে একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে। একটি উদাহরণের জন্য এখানে দেখুন।

দ্রষ্টব্য: যদি <Capacity> সেট করা না থাকে, তাহলে অনুমোদিত অতিথির সংখ্যা অসীম বলে গণ্য করা হবে। যদি এই ফিল্ডটি সেট করা না থাকে এবং ExtraGuestCharges বা AdditionalGuestAmounts সংজ্ঞায়িত করা থাকে, তাহলে যেকোনো সংখ্যক অতিথির জন্য মূল্য তৈরি করা যেতে পারে। আমরা সুপারিশ করি যে, যদি ExtraGuestCharges বা AdditionalGuestAmounts সংজ্ঞায়িত করা থাকে, তাহলে আপনি <Capacity> সেট করুন, যাতে অবৈধ অকুপেন্সি অপশনগুলোর জন্য মূল্য প্রদর্শিত না হয়।

Transaction / PropertyDataSet / RoomData / AdultCapacity 0..1 integer একটি রুমে সর্বোচ্চ যতজন প্রাপ্তবয়স্ক থাকতে পারবেন। এই সংখ্যাটি আপনার পাঠানো ভাড়ার সাথে থাকা NumberOfGuests সংখ্যার চেয়ে বেশি বা সমান হতে হবে।

<AdultCapacity> এর মান অবশ্যই 1 থেকে 99 এর মধ্যে একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে। একটি উদাহরণের জন্য এখানে দেখুন।

Transaction / PropertyDataSet / RoomData / ChildCapacity 0..1 integer একটি কক্ষে সর্বাধিক যতজন শিশু থাকতে পারে।

<ChildCapacity> এর মান অবশ্যই ১ থেকে ৯৯-এর মধ্যে একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে। একটি উদাহরণের জন্য এখানে দেখুন।

Transaction / PropertyDataSet / RoomData / OccupancySettings 0..1 OccupancySettings এমন সেটিংস যা একটি কক্ষের ধারণক্ষমতার প্রয়োজনীয়তা সীমিত বা পরিবর্তন করতে পারে।

<OccupancySettings> এলিমেন্টটি নিম্নলিখিত চাইল্ড এলিমেন্টগুলো গ্রহণ করে:

  • <MinOccupancy> : একটি রুমে সর্বনিম্ন যতজন অতিথি থাকতে পারবেন। উদাহরণস্বরূপ, যদি এটি 2 এ সেট করা থাকে, তাহলে এই রুমটি একজন অতিথির জন্য বুক করা যাবে না।

    <MinOccupancy> এর মান অবশ্যই ১ থেকে ৯৯-এর মধ্যে একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে।

  • <MinAge> : একটি রুমে অবস্থানকারী সকল অতিথির জন্য সর্বনিম্ন বয়স। উদাহরণস্বরূপ, যদি এটি 18 সেট করা হয়, তাহলে এই রুমটি শুধুমাত্র সেইসব গ্রুপের জন্য বুক করা যাবে যেখানে সকল অতিথির বয়স ১৮ বা তার বেশি।

    <MinAge> এর মান অবশ্যই ০ থেকে ৯৯-এর মধ্যে একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে।

<OccupancySettings>
  <MinOccupancy>2</MinOccupancy>
  <MinAge>16</MinAge>
</OccupancySettings>

সব চাইল্ড এলিমেন্ট অন্তর্ভুক্ত করার প্রয়োজন নেই।

Transaction / PropertyDataSet / RoomData / PhotoURL 0..n PhotoURL প্রদত্ত রুম বা রুম বান্ডেলের একটি ছবির জন্য একটি ইউআরএল এবং ঐচ্ছিক ক্যাপশন। আপনি একটি রুম বা রুম বান্ডেলের জন্য একাধিক <PhotoURL> নির্দিষ্ট করতে পারেন।

এই এলিমেন্টটি নিম্নলিখিত চাইল্ড এলিমেন্টগুলো গ্রহণ করে:

  • <URL> : ছবির অবস্থান নির্দিষ্ট করে। অবস্থানটি সর্বজনীন (ফায়ারওয়ালের আড়ালে নয়) হওয়া উচিত এবং এতে প্রোটোকল ( http:// ) অন্তর্ভুক্ত থাকতে হবে।
  • <Caption> : ছবির ক্যাপশন নির্ধারণ করে। এই এলিমেন্টটি একটিমাত্র চাইল্ড এলিমেন্ট, <Text> গ্রহণ করে, যার দুটি আবশ্যিক অ্যাট্রিবিউট রয়েছে: Text এবং languageText অ্যাট্রিবিউটটি হলো ক্যাপশন, এবং language অ্যাট্রিবিউটটি en মতো দুই-অক্ষরের একটি ভাষা কোড নির্দিষ্ট করে।
<PhotoURL>
 <URL>http://www.example.com/image1.jpg</URL>
 <Caption>
  <Text text="A bright way to enjoy your
   mornin' cuppa tea." language="en"/>
  <Text text="Une façon lumineuse pour profiter
   de votre tasse de thé." language="fr"/>
 </Caption>
</PhotoURL>
Transaction / PropertyDataSet / RoomData / RoomFeatures 0..1 <RoomFeatures> রুমের বৈশিষ্ট্য সম্পর্কে তথ্য রয়েছে।
Transaction / PropertyDataSet / RoomData / RoomFeatures / JapaneseHotelRoomStyle 0..1 enum

জাপানি হোটেলের ঘরের শৈলী নির্দেশ করে।

বৈধ মানগুলি হলো:

  • western : বিছানাসহ একটি পশ্চিমা ধাঁচের ঘর।
  • japanese : ফুটন বিছানাসহ একটি জাপানি শৈলীর ঘর।
  • japanese_western : একটি জাপানি ওয়েস্টার্ন স্টাইলের ঘর যেখানে ওয়েস্টার্ন স্টাইলের বিছানা এবং জাপানি স্টাইলের ফুটন উভয়ই রয়েছে।
Transaction / PropertyDataSet / RoomData / RoomFeatures / Beds 0..1 Object রুমে যতগুলো <Bed> আছে, ততগুলোই থাকবে। অনুগ্রহ করে মনে রাখবেন যে জাপানি ফুতন এখানে গণনা করা হবে না।

প্রতিটি <Bed> নিম্নলিখিত বৈশিষ্ট্যগুলো রয়েছে:

  • size (ঐচ্ছিক): বৈধ মানগুলি হলো single , semi_double , double , queen , এবং king
প্রতিটি <Bed> নিম্নলিখিত চাইল্ড এলিমেন্টগুলো রয়েছে:
  • <Width> (ঐচ্ছিক): বিছানার প্রস্থ নির্দিষ্ট করে। এতে অবশ্যই ' unit ' অ্যাট্রিবিউটের মান cm এবং ' number অ্যাট্রিবিউটের মান পূর্ণসংখ্যা সেন্টিমিটারে বিছানার প্রস্থ হতে হবে।
  • <Length> (ঐচ্ছিক): বেডের দৈর্ঘ্য নির্দিষ্ট করে। এতে অবশ্যই ' unit ' অ্যাট্রিবিউটের মান cm এবং ' number অ্যাট্রিবিউটের মান পূর্ণসংখ্যা সেন্টিমিটারে বেডের দৈর্ঘ্য হতে হবে।
উদাহরণ:
<Beds>
  <Bed size="double">
    <Width unit="cm" number="140"/>
    <Length unit="cm" number="195"/>
  </Bed>
  <Bed/> <!-- Size unknown -->
</Beds>
Transaction / PropertyDataSet / RoomData / RoomFeatures / Suite 0.. enum এই রুমটি স্যুট হলে এই উপাদানটি প্রদান করুন।
Transaction / PropertyDataSet / RoomData / RoomFeatures / Capsule 0..1 enum এই রুমটি ক্যাপসুল রুম হলে এই উপাদানটি প্রদান করুন।
Transaction / PropertyDataSet / RoomData / RoomFeatures / Roomsharing 0..1 enum এই রুমটি মালিক বা অন্য অতিথিদের মতো অন্যান্য বাসিন্দাদের সাথে ভাগ করা হবে কিনা। বৈধ মানগুলো হলো shared এবং private
Transaction / PropertyDataSet / RoomData / RoomFeatures / Outdoor 0..1 enum যখন এই ঘরটি এমন কোনো বহিরাঙ্গন বাসস্থান হয় যেখানে স্থায়ী দেয়াল, জলের ব্যবস্থা এবং তাপমাত্রা নিয়ন্ত্রণ ব্যবস্থা নেই, তখন এই উপাদানটি প্রদান করুন। উদাহরণস্বরূপ, হোটেলের ঘরগুলো বহিরাঙ্গন বাসস্থান নয়, কিন্তু ক্যাম্পসাইট যেখানে অতিথিরা তাঁবুতে থাকেন এবং আরভি পার্ক যেখানে অতিথিরা নিজেদের আরভি নিয়ে আসেন, সেগুলো বহিরাঙ্গন বাসস্থান।
Transaction / PropertyDataSet / RoomData / RoomFeatures / MobileAccessible 0..1 enum এই কক্ষটি চলাচল-সহায়ক হলে এই উপাদানটি প্রদান করুন।
Transaction / PropertyDataSet / RoomData / RoomFeatures / Smoking 0..1 enum এই রুমটি ধূমপানমুক্ত নাকি ধূমপানের উপযোগী। বৈধ মানগুলো হলো non_smoking এবং smoking
Transaction / PropertyDataSet / RoomData / RoomFeatures / BathAndToilet 0..1 Object রুমে থাকা স্নানঘর ও শৌচাগার সম্পর্কে তথ্য রয়েছে।

বৈশিষ্ট্যটি হলো:

  • relation (ঐচ্ছিক): বাথটাব এবং টয়লেট একে অপরের সাপেক্ষে কীভাবে স্থাপন করা হয়েছে তা নির্দেশ করে। বৈধ মানগুলো হলো: together , উদাহরণস্বরূপ, একটি বাথরুম যেখানে বাথটাব এবং টয়লেট উভয়ই একই ঘরে একসাথে অবস্থিত; এবং separate , যেখানে বাথটাব এবং টয়লেটের প্রত্যেকের জন্য নির্দিষ্ট স্থান রয়েছে। যখন ঘরে বাথটাব এবং টয়লেট উভয়ই থাকে না, তখন এই অ্যাট্রিবিউটটি সেট করা যাবে না।

এলিমেন্টটি ঐচ্ছিকভাবে নিম্নলিখিত চাইল্ড এলিমেন্টগুলো গ্রহণ করে:

  • <Bath> (ঐচ্ছিক): এই উপাদানটির উপস্থিতি নির্দেশ করে যে ঘরটিতে একটি স্নানাগার আছে।

    বৈশিষ্ট্যগুলো হলো:

    • bathtub (ঐচ্ছিক): নির্দেশ করে যে বাথরুমটিতে একটি বাথটাব আছে। বৈধ মান হলো 0 (বা false ) এবং 1 (বা true )।
    • shower (ঐচ্ছিক): নির্দেশ করে যে বাথটাবটিতে শাওয়ার আছে। বৈধ মান হলো 0 (বা false ) এবং 1 (বা true )।
  • <Toilet> (ঐচ্ছিক): এই উপাদানের উপস্থিতি নির্দেশ করে যে এই ঘরে একটি শৌচাগার আছে।

    বৈশিষ্ট্যগুলো হলো:

    • electronic_bidet (ঐচ্ছিক): এটি নির্দেশ করে যে টয়লেটটিতে একটি ইলেকট্রনিক বিডেট আছে। বৈধ মানগুলি হলো 0 (বা false ) এবং 1 (বা true )।
    • mobility_accessible (ঐচ্ছিক): এটি নির্দেশ করে যে টয়লেটটি চলাচল-সহায়ক। বৈধ মানগুলি হলো 0 (বা false ) এবং 1 (বা true )।

উদাহরণ:

<BathAndToilet relation="separate">
  <Bath bathtub="1" shower="1"/>
  <Toilet
    electronic_bidet="1"
    mobility_accessible="1"/>
</BathAndToilet>
Transaction / PropertyDataSet / RoomData / RoomFeatures / OpenAirBath 0..1 enum এই কক্ষে ব্যক্তিগত উন্মুক্ত স্নানাগার থাকলে এই উপাদানটি সরবরাহ করুন।
Transaction / PropertyDataSet / RoomData / RoomFeatures / AirConditioning 0..1 enum এই কক্ষে শীতাতপ নিয়ন্ত্রণ ব্যবস্থা থাকলে এই উপাদানটি সরবরাহ করুন।
Transaction / PropertyDataSet / RoomData / RoomFeatures / Balcony 0..1 enum এই ঘরে ব্যালকনি বা লানাই থাকলে এই উপাদানটি প্রদান করুন।
Transaction / PropertyDataSet / RoomData / RoomFeatures / Views 0..1 Object বৈধ বিকল্পগুলির মধ্যে রয়েছে:

<AirportView/>
<BayView/>
<BeachView>/>
<CastleView/>
<CityView/>
<CountrysideView/>
<CourtyardView/>
<DuneView/>
<ForestView/>
<GardenView/>
<GolfCourseView/>
<HarborView/>
<LagoonView/>
<LakeView/>
<MarinaView/>
<MountainView/>
<NatureView/>
<OceanView/>
<ParkView/>
<PartialOceanView/>
<PisteView/>
<PoolView/>
<PyramidView/>
<RiverView/>
<StreetView/>

Transaction / PropertyDataSet / PackageData 0..n PackageData

এমন সব উপাদানের জন্য ধারক যা ভাড়ার বৈশিষ্ট্য এবং শর্তাবলী বর্ণনা করে, কিন্তু কক্ষের ভৌত বিবরণের অংশ নয়।

দ্রষ্টব্য: <RoomData> অথবা <PackageData> এর মধ্যে অন্তত একটি আবশ্যক।

Transaction / PropertyDataSet / PackageData / PackageID 1 string এই মেসেজগুলিতে PackageID OTA_HotelRateAmountNotifRQ এবং OTA_HotelAvailNotifRQ মেসেজগুলিতে থাকা RatePlanCode সাথে সঙ্গতিপূর্ণ।
Transaction / PropertyDataSet / PackageData / Name 1 Name এক বা একাধিক ভাষায় প্যাকেজের নাম রাখার ধারক।
Transaction / PropertyDataSet / PackageData / Name / Text 1..n Text প্যাকেজের নাম একটি ভাষায় নির্দিষ্ট করে।
Transaction / PropertyDataSet / PackageData / Name / Text / @text 1..n string language অ্যাট্রিবিউট দ্বারা নির্দিষ্ট ভাষায় প্যাকেজটির নাম।
Transaction / PropertyDataSet / PackageData / Description 1 Description এক বা একাধিক ভাষায় প্যাকেজের বিবরণ রাখার ধারক।
Transaction / PropertyDataSet / PackageData / Description / Text 1..n Text প্যাকেজের বিবরণ একটি ভাষায় নির্দিষ্ট করে।
Transaction / PropertyDataSet / PackageData / Description / Text / @text 1..n string language অ্যাট্রিবিউট দ্বারা নির্দিষ্ট ভাষায় প্যাকেজটির বিবরণ।
Transaction / PropertyDataSet / PackageData / Description / Text / @language 1..n string দুই অক্ষরের একটি ভাষা কোড
Transaction / PropertyDataSet / PackageData / AllowableRoomIDs 0..1 AllowableRoomIDs <AllowableRoomID> এলিমেন্টগুলোর জন্য একটি কন্টেইনার।

যদি <AllowableRoomIDs> নির্দিষ্ট করা থাকে, তাহলে প্যারেন্ট <PackageData> এলিমেন্টে থাকা <PackageID> দ্বারা চিহ্নিত রেট প্ল্যানটি শুধুমাত্র <AllowableRoomID> এলিমেন্ট দ্বারা সংজ্ঞায়িত রুম টাইপগুলোর সাথেই একত্রিত করা যাবে।

যদি <AllowableRoomIDs> নির্দিষ্ট করা না থাকে, তাহলে প্যারেন্ট <PackageData> এলিমেন্টে থাকা <PackageID> দ্বারা চিহ্নিত রেট প্ল্যানটি যেকোনো রুম টাইপের সাথে যুক্ত করা যেতে পারে।

যেকোনো একটি <AllowablePackageIDs> অথবা <AllowableRoomIDs> ব্যবহার করুন, কিন্তু উভয়ই নয়।

Transaction / PropertyDataSet / PackageData / AllowableRoomIDs / AllowableRoomID 1..n AllowableRoomID এই রেট প্ল্যানের সাথে যুক্ত করা যায় এমন একটি রুম টাইপের RoomID নির্দিষ্ট করে। একটি রুম টাইপ <RoomData> এলিমেন্টে সংজ্ঞায়িত করা হয়।
Transaction / PropertyDataSet / PackageData / MilesIncluded 0..1 MilesIncluded রেট প্ল্যান বা প্যাকেজগুলো যেভাবে সংজ্ঞায়িত করা হয়েছে, তার উপর ভিত্তি করে প্যাকেজগুলোতে লয়ালটি পয়েন্টের তথ্য যোগ করুন। যে <PackageData> এলিমেন্টটি রেট প্ল্যান নির্ধারণ করে, তার মধ্যে <MilesIncluded> এলিমেন্টটি নির্দিষ্ট করুন। <MilesIncluded> নিম্নলিখিত চাইল্ড এলিমেন্ট রয়েছে:
  • LoyaltyCampaignID : একটি অনন্য আইডি যা গুগল দ্বারা কনফিগার ও আপডেট করা নির্দিষ্ট লয়্যালটি ক্যাম্পেইনটিকে শনাক্ত করে। এটি হোটেলের মূল্যের সাথে লয়্যালটি পয়েন্ট যোগ করে।

    <MilesIncluded> এলিমেন্টটি অন্তর্ভুক্ত করতে হলে লয়্যালটি ক্যাম্পেইন কনফিগারেশনে ক্যাম্পেইন আইডি কনফিগার করতে হবে। ফলাফলে গুগল কীভাবে লয়্যালটি পয়েন্ট ব্যবহার করে, তার সুনির্দিষ্ট বিবরণ লয়্যালটি ক্যাম্পেইন কনফিগারেশন দ্বারা নির্ধারিত হয়।

    <MilesIncluded>
      <LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
    </MilesIncluded>

    দ্রষ্টব্য: বিরল ক্ষেত্রে, ভ্রমণপথ নির্বিশেষে প্ল্যানটি যাতে সর্বদা একটি নির্দিষ্ট সংখ্যক পয়েন্ট অর্জন করে, তা নির্দিষ্ট করতে আপনি <MilesIncluded> এলিমেন্টের অধীনে <NumberOfMiles> অন্তর্ভুক্ত করতে পারেন। <PackageData> তে <MilesIncluded> সম্পর্কে আরও জানুন।

Transaction / PropertyDataSet / PackageData / Refundable 0..1 Refundable কোনো রেটকে সম্পূর্ণ ফেরতযোগ্য বা বাতিলযোগ্য হিসেবে তালিকাভুক্ত করার সুবিধা দেয়। এটি প্রদান করা না হলে, রিফান্ড সংক্রান্ত কোনো তথ্য প্রদর্শিত হয় না।

দ্রষ্টব্য: আমরা সমস্ত অ্যাট্রিবিউট সেট করার পরামর্শ দিই। এক বা একাধিক অ্যাট্রিবিউট সেট করা না থাকলে একটি ফিড স্ট্যাটাস সতর্কীকরণ বার্তা তৈরি হয়।

আপনি কোনো অ্যাট্রিবিউট সেট না করলে, রেটটি ফেরতযোগ্য হিসেবে প্রদর্শিত হয় না।

অ্যাট্রিবিউটগুলো সেট করার সময় নিম্নলিখিত বিষয়গুলো লক্ষ্য করুন:

  • যদি available বা refundable_until_days সেট করা না থাকে, তাহলে রেটটি ফেরতযোগ্য হিসাবে প্রদর্শিত হয় না।
  • যদি available 0 বা false হয়, তাহলে অন্যান্য অ্যাট্রিবিউটগুলো উপেক্ষা করা হয়। অন্য অ্যাট্রিবিউটগুলোর একটি বা উভয়টি সেট করা থাকলেও রেটটি রিফান্ডেবল হিসেবে প্রদর্শিত হয় না।
Transaction / PropertyDataSet / PackageData / Refundable / @available 1 boolean (আবশ্যক) হারটি সম্পূর্ণ অর্থ ফেরতের যোগ্য কিনা তা নির্দেশ করতে 1 বা true সেট করুন; অন্যথায় 0 বা false সেট করুন।
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_days 0..1 integer ( available true হলে আবশ্যক) চেক-ইন করার কত দিন আগে পর্যন্ত সম্পূর্ণ অর্থ ফেরতের জন্য অনুরোধ করা যাবে তা নির্দিষ্ট করে। refundable_until_days এর মান অবশ্যই ০ থেকে ৩৩০-এর মধ্যে একটি পূর্ণসংখ্যা হতে হবে।
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_time 0.. Time (যদি available ' true হয় তবে এটি ব্যবহারের জন্য বিশেষভাবে সুপারিশ করা হয়) হোটেলের স্থানীয় সময় অনুযায়ী, দিনের সর্বশেষ কোন সময় পর্যন্ত সম্পূর্ণ অর্থ ফেরতের অনুরোধ গ্রহণ করা হবে তা নির্দিষ্ট করে। এটি refundable_until_days এর সাথে একত্রিত করে নির্দিষ্ট করা যায়, যেমন, "চেক-ইন করার দুই দিন আগে বিকাল ৪:০০টা পর্যন্ত অর্থ ফেরত পাওয়া যাবে"। যদি refundable_until_time ' সেট করা না থাকে, তবে এর ডিফল্ট মান মধ্যরাত হবে।
Transaction / PropertyDataSet / PackageData / BreakfastIncluded 0..1 boolean এই রুমের ধরনের সাথে সকালের নাস্তা অন্তর্ভুক্ত আছে কিনা তা নির্দিষ্ট করে। বৈধ মান হলো 0 (বা false ) এবং 1 (বা true )।

<BreakfastIncluded> এর পরিবর্তে <Meals> ব্যবহার করা শ্রেয়।

Transaction / PropertyDataSet / PackageData / CheckinTime 0..1 Time হোটেলের স্থানীয় সময় অনুযায়ী সম্ভাব্য দ্রুততম সময়ে চেক-ইন করতে হবে। সময় অবশ্যই রাত ১২টার (২৪:০০) কম হতে হবে।
Transaction / PropertyDataSet / PackageData / CheckoutTime 0..1 Time হোটেলের স্থানীয় সময় অনুযায়ী চেক-আউট করার সর্বশেষ সম্ভাব্য সময়।
Transaction / PropertyDataSet / PackageData / InternetIncluded 0..1 boolean অন্যান্য রুমে এই সুবিধাটি না থাকলেও, এই রুমে বিনামূল্যে ইন্টারনেট ব্যবহারের সুযোগ আছে কিনা তা নির্দিষ্ট করে। যে হোটেল সব রুমে বিনামূল্যে ইন্টারনেট সরবরাহ করে, সেখানে এই এলিমেন্টটি সেট করবেন না। এই এলিমেন্টটি ইন-রুম ওয়্যারড ইন্টারনেট বা গেস্ট রুমে উপলব্ধ নয় এমন ওয়্যারলেস ইন্টারনেটের ক্ষেত্রে প্রযোজ্য নয়। বৈধ মান হলো 0 (বা false ) এবং 1 (বা true )।
Transaction / PropertyDataSet / PackageData / Meals 0..1 Object এই প্যাকেজে অন্তর্ভুক্ত খাবারগুলো সম্পর্কে তথ্য রয়েছে।

<Meals> এলিমেন্টটি <Breakfast> এবং <Dinner> নামে দুটি ঐচ্ছিক চাইল্ড এলিমেন্ট গ্রহণ করে, যেগুলোর নিম্নলিখিত অ্যাট্রিবিউটগুলো রয়েছে:

  • included (আবশ্যক): যদি ভাড়ার মধ্যে সকালের নাস্তা/রাতের খাবার অন্তর্ভুক্ত থাকে তবে 1 (বা true ) সেট করুন; অন্যথায় 0 (বা false ) সেট করুন।
  • in_room (ঐচ্ছিক): অতিথিদের নিজেদের কক্ষে সকালের নাস্তা/রাতের খাবার খাওয়ার সুযোগ থাকলে এটিকে 1 (বা true ) সেট করুন; অন্যথায় 0 (বা false ) সেট করুন।
  • in_private_space (ঐচ্ছিক): যদি অতিথিদের তাদের থাকার ঘর ছাড়া অন্য কোনো জায়গায় সকালের নাস্তা/রাতের খাবার খাওয়ার সুযোগ থাকে, যেখানে তারা অন্য অতিথিদের সংস্পর্শ এড়াতে পারবেন, তাহলে এর মান 1 (বা true ) সেট করুন; অন্যথায় 0 (বা false ) সেট করুন।
  • buffet (ঐচ্ছিক): সকালের নাস্তা/রাতের খাবার বুফে হিসেবে পরিবেশন করা হলে 1 (বা true ) সেট করুন; অন্যথায় 0 (বা false ) সেট করুন।

ঐচ্ছিক অ্যাট্রিবিউটগুলো শুধুমাত্র তখনই ব্যবহৃত হয় যখন included মান true হয়।

মিল ফিল্টার ( no meals , breakfast only নাস্তা, dinner only এবং breakfast and dinner উভয়ই) কাজ করার জন্য, <Breakfast> এবং <Dinner> উভয়ের সাথেই included অ্যাট্রিবিউটটি প্রদান করতে হবে।

Transaction / PropertyDataSet / PackageData / ParkingIncluded 0..1 boolean কোনো রুমের সাথে বিনামূল্যে পার্কিং অন্তর্ভুক্ত আছে কিনা, যেখানে এই হোটেলে পার্কিং অন্যথায় একটি সशुल्क পরিষেবা হবে। যে হোটেল বিনামূল্যে পার্কিং অফার করে, তার জন্য এই উপাদানের কোনো মান নির্দিষ্ট করবেন না। বৈধ মানগুলি হল 0 (বা false ) এবং 1 (বা true )। ডিফল্ট মান হল false
Transaction / PropertyDataSet / PackageData / PhotoURL 0..1 Object <RoomData> এর <PhotoURL> এর মতোই, কিন্তু প্যাকেজের জন্য (যেমন খাবারের ছবি)।

উদাহরণ

রুম এবং প্যাকেজের তথ্য

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

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-05-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <Description>
        <Text text="Room with a king bed" language="en"/>
      </Description>
      <Capacity>2</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/image.jpg</URL>
        <Caption>
          <Text text="Room with a king bed" language="en"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <RoomData>
      <RoomID>RoomID_2</RoomID>
      <Name>
        <Text text="Double" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <Description>
        <Text text="Standard rate" language="en"/>
      </Description>
      <MilesIncluded>
        <LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
      </MilesIncluded>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
    <PackageData>
      <PackageID>PackageID_2</PackageID>
      <Name>
        <Text text="Free Breakfast" language="en"/>
      </Name>
      <Description>
        <Text text="Free breakfast rate" language="en"/>
      </Description>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>1</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>
</Transaction>

রুমের ধরণ যোগ করুন

বিদ্যমান <Transaction> ডেটাতে কীভাবে একটি রুম টাইপ এবং প্যাকেজ যোগ করতে হয় তার একটি উদাহরণ নিচে দেওয়া হলো:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-07-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="delta">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_3</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <PackageData>
      <PackageID>PackageID_3</PackageID>
      <Name>
        <Text text="Non-Refundable" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="false"/>
    </PackageData>
  </PropertyDataSet>
</Transaction>

রুমের ধরণগুলি সরান

বিদ্যমান রুম টাইপ এবং প্যাকেজগুলি কীভাবে সরাতে হয় তার একটি উদাহরণ নিচে দেওয়া হলো। এই ক্ষেত্রে, যদি "রুম এবং প্যাকেজ ডেটা" এবং "একটি রুম টাইপ যোগ করুন" বার্তাগুলি আগে Google-কে পাঠানো হয়ে থাকে, তাহলে Google প্রদর্শিত বার্তাটি পাওয়ার পর King এবং Double রুম টাইপগুলির আর অস্তিত্ব থাকবে না। উল্লেখ্য যে, প্যাকেজ ডেটা সরানোর ফলে Transaction (Property Data), OTA_HotelRateAmountNotifRQ, এবং OTA_HotelAvailNotifRQ বার্তাগুলিতে সংজ্ঞায়িত সামগ্রিক রেট প্ল্যান প্রভাবিত হয় (একই PackageID মান উল্লেখ করার মাধ্যমে), এবং তাই PackageID_2 এবং PackageID_3 এখানে আর সংজ্ঞায়িত নেই তা প্রতিফলিত করার জন্য অন্যান্য বার্তা প্রকার ব্যবহার করে সংশ্লিষ্ট আপডেট করার প্রয়োজন হতে পারে।

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-08-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
      <Capacity>2</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/image.jpg</URL>
        <Caption>
          <Text text="Room with a queen bed" language="en"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Refundable" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>
</Transaction>


রেট প্ল্যান সীমাবদ্ধ করুন

একটি রুম টাইপের জন্য অনুমোদিত রেট প্ল্যানগুলো সীমাবদ্ধ করতে <AllowablePackageIDs> এলিমেন্টটি কীভাবে ব্যবহার করতে হয়, তার একটি উদাহরণ নিচে দেওয়া হলো। এই উদাহরণে, Queen রুম টাইপ ( RoomID_2 ) শুধুমাত্র PackageID_1 হিসেবে চিহ্নিত প্যাকেজ এবং রেট প্ল্যানের সাথেই যুক্ত করা যাবে।

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-12-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <RoomData>
      <RoomID>RoomID_2</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <AllowablePackageIDs>
        <AllowablePackageID>PackageID_1</AllowablePackageID>
      </AllowablePackageIDs>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
    <PackageData>
      <PackageID>PackageID_2</PackageID>
      <Name>
        <Text text="Free Breakfast" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>1</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>
</Transaction>

কক্ষের ধারণক্ষমতা সীমিত করুন

রুমের ধারণক্ষমতার উপর বিধিনিষেধ আরোপ করতে <Capacity> , <AdultCapacity> , <ChildCapacity> এলিমেন্টগুলো কীভাবে ব্যবহার করতে হয়, তার একটি উদাহরণ নিচে দেওয়া হলো।

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-12-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="Double" language="en"/>
      </Name>
      <Capacity>4</Capacity>
      <AdultCapacity>4</AdultCapacity>
      <ChildCapacity>3</ChildCapacity>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
  </PropertyDataSet>
</Transaction>

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

<RoomFeatures> এবং খাবার সহ বিস্তারিত উদাহরণ

JapaneseHotelRoomStyle কোনো ডিফল্ট মান নেই। মান উল্লেখ না করলে কোনো XML ত্রুটি হয় না, কিন্তু ব্যবহারকারী যখন রুম স্টাইল বা বেড সংখ্যা দিয়ে ফিল্টার করেন, তখন আপনার লিস্টিংটি সার্চ রেজাল্টে দেখানো হয় না।

দুটি একক বিছানা

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে <RoomFeatures> ব্যবহার করতে হয়:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
        <Beds> <!-- Two single beds -->
          <Bed size="single">
            <Width unit="cm" number="97"/>
            <Length unit="cm" number="195"/>
          </Bed>
          <Bed size="single">
            <Width unit="cm" number="97"/>
            <Length unit="cm" number="195"/>
          </Bed>
        </Beds>
        <Suite/>
        <Capsule/>
        <Roomsharing>private</Roomsharing>
        <Outdoor/>
        <MobilityAccessible/>
        <Smoking>non_smoking</Smoking>
        <BathAndToilet relation="separate">
          <Bath bathtub="1" shower="1"/>
          <Toilet electronic_bidet="1" mobility_accessible="1"/>
        </BathAndToilet>
        <OpenAirBath/>
        <AirConditioning/>
        <Balcony/>
        <Views>
          <LakeView/>
          <MarinaView/>
          <BeachView/>
          <ForestView/>
          <MountainView/>
          <NatureView/>
        </Views>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

দুটি ডাবল বেড

নিচে দুটি double বেডসহ একটি western শৈলীর ঘরের উদাহরণ দেওয়া হলো।

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
        <Beds> <!-- Two double beds-->
          <Bed size="double"></Bed>
          <Bed size="double"></Bed>
        </Beds>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

বিছানা ছাড়া জাপানি শৈলী

নিচে বিছানাবিহীন একটি জাপানি শৈলীর ঘরের উদাহরণ দেওয়া হলো। japanese শৈলীর ঘরের জন্য বিছানা সংক্রান্ত তথ্যের প্রয়োজন নেই।

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>japanese</JapaneseHotelRoomStyle>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

জাপানি ওয়েস্টার্ন বিছানাসহ

নিচে king সাইজ বেডসহ একটি japanese_western স্টাইলের রুমের উদাহরণ দেওয়া হলো।

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
        <Beds>
          <Bed size="king"></Bed>
        </Beds>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

যদি পার্টনারের কাছে japanese_western রুমের শয্যা সংখ্যা সংক্রান্ত তথ্য না থাকে, তাহলে নিচের উদাহরণটি দেখুন:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>


খাবার

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

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Meals Included" language="en"/>
      </Name>
      <PhotoURL>
        <Caption>
          <Text text="Breakfast" language="en"/>
          <Text text="朝食" language="ja"/>
        </Caption>
        <URL>http://example.com/static/bar/image1234.jpg</URL>
      </PhotoURL>
      <Meals>
        <!-- Guests can choose to have breakfast in their room or in another
        space to avoid contact with other guests. -->
        <Breakfast included="1" in_room="1" in_private_space="1"/>
        <Dinner included="1" buffet="1"/>
      </Meals>
      <CheckinTime>15:00</CheckinTime>
      <CheckoutTime>11:00</CheckoutTime>
    </PackageData>
  </PropertyDataSet>
</Transaction>

শুধুমাত্র সকালের নাস্তা

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Breakfast Included" language="en"/>
      </Name>
      <PhotoURL>
        <Caption>
          <Text text="Breakfast" language="en"/>
          <Text text="朝食" language="ja"/>
        </Caption>
        <URL>http://example.com/static/bar/image1234.jpg</URL>
      </PhotoURL>
      <Meals>
        <Breakfast included="true"/>
        <!-- Dinner not included needs to be explicitly specified -->
        <Dinner included="false"/>
      </Meals>
      <CheckinTime>15:00</CheckinTime>
      <CheckoutTime>11:00</CheckoutTime>
    </PackageData>
  </PropertyDataSet>
</Transaction>

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

সিনট্যাক্স

TransactionResponse (Property Data) মেসেজটি নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="timestamp"
                     id="message_ID"
                     partner="partner_key">
  <!-- Either Success or Issues will be populated. -->
  <Success/>
  <Issues>
    <Issue code="issue_code" status="issue_type">issue_description</Issue>
  </Issues>
</TransactionResponse>

উপাদান এবং বৈশিষ্ট্য

TransactionResponse (Property Data) মেসেজটিতে নিম্নলিখিত উপাদান এবং অ্যাট্রিবিউটগুলো রয়েছে:

এলিমেন্ট / @অ্যাট্রিবিউট ঘটনা প্রকার বর্ণনা
TransactionResponse 1 Complex element প্রাপ্ত লেনদেন অনুরোধ বার্তার সাফল্য বা সমস্যা নির্দেশকারী মূল উপাদান।
TransactionResponse / @timestamp 1 DateTime এই বার্তাটি তৈরির তারিখ ও সময়।
TransactionResponse / @id 1 string সংশ্লিষ্ট লেনদেন বার্তা থেকে প্রাপ্ত অনন্য শনাক্তকারী।
TransactionResponse / @partner 1 string এই বার্তার জন্য অংশীদার অ্যাকাউন্ট।
TransactionResponse / Success 0..1 Success এটি নির্দেশ করে যে লেনদেন বার্তাটি কোনো সতর্কতা, ত্রুটি বা ব্যর্থতা ছাড়াই সফলভাবে প্রক্রিয়া করা হয়েছে।

প্রতিটি বার্তায় হয় <Success> অথবা <Issues> উপস্থিত থাকে।

TransactionResponse / Issues 0..1 Issues ট্রানজ্যাকশন বার্তাটি প্রসেস করার সময় উদ্ভূত এক বা একাধিক সমস্যার জন্য একটি কন্টেইনার।

প্রতিটি বার্তায় হয় <Success> অথবা <Issues> উপস্থিত থাকে।

TransactionResponse / Issues / Issue 1..n Issue ট্রানজ্যাকশন মেসেজ প্রসেস করার সময় সম্মুখীন হওয়া কোনো সতর্কতা, ত্রুটি বা ব্যর্থতার বিবরণ। এই সমস্যাগুলোর বিস্তারিত তথ্য ‘ফিড স্ট্যাটাস এরর মেসেজেস’ -এ পাওয়া যাবে।
TransactionResponse / Issues / Issue / @code 1 integer সমস্যাটির শনাক্তকারী।
TransactionResponse / Issues / Issue / @status 1 enum

সম্মুখীন হওয়া সমস্যার ধরণ।

বৈধ মানগুলো হলো warning , error , এবং failure

উদাহরণ

সাফল্য

নিম্নলিখিতটি একটি সফলভাবে প্রক্রিয়াকৃত লেনদেন বার্তার প্রতিক্রিয়া।

<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
                     id="12345678"
                     partner="partner_key">
  <Success/>
</TransactionResponse>

সমস্যা

ত্রুটির কারণে প্রক্রিয়া করা হয়নি এমন একটি লেনদেন বার্তার প্রতিক্রিয়া নিচে দেওয়া হলো।

<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
                     id="12345678"
                     partner="partner_key">
  <Issues>
    <Issue code="1001" status="error">Example</Issue>
  </Issues>
</TransactionResponse>