İstekler
Söz dizimi
Transaction (Property Data)
mesajında şu söz dizimi kullanılır:
<?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>
<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>
Öğeler ve Özellikler
Transaction (Tesis Verileri) mesajında şu öğeler ve özellikler bulunur:
Öğe / @Özellik | Yineleme sayısı | Tür | Açıklama |
---|---|---|---|
Transaction | 1 | Complex element | ARI uygulamasında, tek bir tesise ait oda türlerini ve paketleri tanımlayan mesajın kök öğesidir. |
Transaction / @timestamp | 1 | DateTime | Bu mesajın oluşturulma tarihi ve saatidir. |
Transaction / @id | 1 | string | Bu istek mesajının benzersiz tanımlayıcısıdır. Bu değer, yanıt mesajında döndürülür. İzin verilen karakterler a-z, A-Z, 0-9, _ (alt çizgi) ve - (kısa çizgi) şeklindedir. |
Transaction / @partner | 1 | string | Bu mesajın iş ortağı hesabıdır. Bu dize değeri, Hotel Center'ın
Hesap ayarları sayfasında listelenen "İş ortağı anahtarı" değeridir.
Not: Birden fazla hesap için feed sağlayan bir arka ucunuz varsa bu değerin aynı hesap genelinde |
Transaction / PropertyDataSet | 1.. | PropertyDataSet | Tek bir tesise ait oda türlerini ve paketleri tanımlayan kapsayıcıdır. |
Transaction / PropertyDataSet / @action | 0..1 | enum | Oda fiyatı tanımlarına uygulanacak güncelleme türüdür. Geçerli değerler şunlardır:
Bu özellik isteğe bağlıdır ve belirtilmezse varsayılan olarak |
Transaction / PropertyDataSet / Property | 1 | string | Tesisin benzersiz tanımlayıcısı. Bu değer, Otel Listesi Feed'indeki
<listing> öğesinde <id> kullanılarak belirtilen Otel Kimliği ile eşleşmelidir. Otel kimliği, Hotel Center'da da listelenir. |
Transaction / PropertyDataSet / RoomData | 0..n | RoomData | Bir odayı tanımlar. Not: En az bir |
Transaction / PropertyDataSet / RoomData / RoomID | 1 | RoomID | Bir oda türünün benzersiz tanımlayıcısıdır. Bu değer, <OTA_HotelAvailNotifRQ> ,
<OTA_HotelRateAmountNotifRQ> ve
<OTA_HotelInvCountNotifRQ> mesajlarının <StatusApplicationControl> öğesinde InvTypeCode özelliği kullanılarak belirtilir. |
Transaction / PropertyDataSet / RoomData / Name | 1 | Name | Bir veya daha fazla dilde oda kategorisi adının kapsayıcısıdır. |
Transaction / PropertyDataSet / RoomData / Name / Text | 1..n | Text | Bir dilde oda kategorisi adını belirtir. |
Transaction / PropertyDataSet / RoomData / Name / Text / @text | 1..n | string | Oda kategorisinin language özelliği tarafından belirtilen dildeki adıdır. |
Transaction / PropertyDataSet / RoomData / Description | 1 | Name | Bir veya daha fazla dilde oda kategorisi açıklamasının kapsayıcısıdır. |
Transaction / PropertyDataSet / RoomData / Description / Text | 1..n | Text | Bir dilde oda kategorisi açıklamasını belirtir. |
Transaction / PropertyDataSet / RoomData / Description / Text / @text | 1..n | string | Oda kategorisinin language özelliği tarafından belirtilen dildeki açıklamasıdır. |
Transaction / PropertyDataSet / RoomData / Description / Text / @language | 1..n | string | İki harfli dil kodudur. |
Transaction / PropertyDataSet / RoomData / AllowablePackageIDs | 0..1 | AllowablePackageIDs | <AllowablePackageID> öğelerinin kapsayıcısıdır.
|
Transaction / PropertyDataSet / RoomData / AllowablePackageIDs / AllowablePackageID | 1..n | AllowablePackageID | Bu oda türüyle birleştirilebilecek bir ücret planının PackageID'sini belirtir. Ücret planı; paket, ücret ve stok durumu birleşimiyle tanımlanır. PackageID , OTA_HotelRateAmountNotifRQ ve OTA_HotelAvailNotifRQ mesajlarındaki RatePlanCode öğesine karşılık gelir.
|
Transaction / PropertyDataSet / RoomData / Capacity | 0..1 | integer | Bir odada fiziksel olarak konaklayabilecek maksimum yetişkin ve çocuk sayısıdır. Ücretlerle birlikte gönderdiğiniz tüm NumberOfGuests değerlerinden büyük veya bu değerlere eşit olmalıdır.
Not: |
Transaction / PropertyDataSet / RoomData / AdultCapacity | 0..1 | integer | Bir odada fiziksel olarak konaklayabilecek maksimum yetişkin sayısıdır. Ücretlerle birlikte gönderdiğiniz tüm NumberOfGuests değerlerinden büyük veya bu değerlere eşit olmalıdır.
|
Transaction / PropertyDataSet / RoomData / ChildCapacity | 0..1 | integer | Bir odada fiziksel olarak konaklayabilecek maksimum çocuk sayısıdır.
|
Transaction / PropertyDataSet / RoomData / OccupancySettings | 0..1 | OccupancySettings | Bir odanın doluluk koşullarını kısıtlayabilen veya değiştirebilen ayarlar.
<OccupancySettings> <MinOccupancy>2</MinOccupancy> <MinAge>16</MinAge> </OccupancySettings> Tüm alt öğelerin dahil edilmesi gerekmez. |
Transaction / PropertyDataSet / RoomData / PhotoURL | 0..n | PhotoURL | Belirtilen odanın ya da Oda Paketi'nin fotoğrafına ait URL ve isteğe bağlı başlıktır. Bir oda veya Oda Paketi için birden fazla <PhotoURL> belirtebilirsiniz.
Bu öğede şu alt öğeler kullanılır:
<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> |
Oda özellikleri hakkında bilgi içerir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / JapaneseHotelRoomStyle | 0..1 | enum | Japon otel odasının tarzını belirtir. Geçerli değerler şunlardır:
|
Transaction / PropertyDataSet / RoomData / RoomFeatures / Beds | 0..1 | Object | Odadaki <Bed> sayısı kadar <Bed> içerir. Japon futonlarının bu sayıya dahil edilmemesi gerektiğini lütfen unutmayın.
Her
<Bed> öğesinin aşağıdaki alt öğeleri vardır:
<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 | Bu oda bir süit olduğunda bu öğeyi sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Capsule | 0..1 | enum | Bu oda kapsül oda ise bu öğeyi sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Roomsharing | 0..1 | enum | Bu odanın, sahipler veya diğer konuklar gibi diğer kiracılarla paylaşılıp paylaşılmadığı. Geçerli değerler shared ve private 'dir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Outdoor | 0..1 | enum | Sabit duvarları, su tesisatı ve iklimlendirmesi olmayan açık hava konaklama birimleri için bu öğeyi sağlayın. Örneğin, otel odaları açık havada konaklama tesisi değildir. Konukların çadırlarda veya kendi karavanlarını getirerek karavan parklarında kaldıkları kamp alanları ise açık havada konaklama tesisi kabul edilir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / MobileAccessible | 0..1 | enum | Bu oda engelli erişimine uygun olduğunda bu öğeyi sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Smoking | 0..1 | enum | Bu odanın sigara içilmeyen oda mı yoksa sigara içilebilecek oda mı olduğu. Geçerli değerler non_smoking ve smoking 'dir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / BathAndToilet | 0..1 | Object | Odadaki banyo ve tuvalet hakkında bilgi içerir.
Özellik:
Öğe isteğe bağlı olarak aşağıdaki alt öğeleri alır:
Örnek: <BathAndToilet relation="separate"> <Bath bathtub="1" shower="1"/> <Toilet electronic_bidet="1" mobility_accessible="1"/> </BathAndToilet> |
Transaction / PropertyDataSet / RoomData / RoomFeatures / OpenAirBath | 0..1 | enum | Bu odada özel açık hava banyosu varsa bu öğeyi ekleyin. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / AirConditioning | 0..1 | enum | Bu oda klimalıysa bu öğeyi ekleyin. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Balcony | 0..1 | enum | Bu odada balkon veya veranda varsa bu öğeyi ekleyin. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Views | 0..1 | Object | Geçerli seçenekler şunlardır:
|
Transaction / PropertyDataSet / PackageData | 0..n | PackageData | Fiziksel oda açıklamasında yer almayan ücret özellikleri ve şartlarını açıklayan öğelerin kapsayıcısıdır. Not: En az bir |
Transaction / PropertyDataSet / PackageData / PackageID | 1 | string | Bu mesajlardaki PackageID , OTA_HotelRateAmountNotifRQ ve OTA_HotelAvailNotifRQ mesajlarındaki RatePlanCode öğesine karşılık gelir. |
Transaction / PropertyDataSet / PackageData / Name | 1 | Name | Bir veya daha fazla dilde paket adının kapsayıcısıdır. |
Transaction / PropertyDataSet / PackageData / Name / Text | 1..n | Text | Bir dilde paketin adını belirtir. |
Transaction / PropertyDataSet / PackageData / Name / Text / @text | 1..n | string | Paketin language özelliği tarafından belirtilen dildeki adıdır. |
Transaction / PropertyDataSet / PackageData / Description | 1 | Description | Bir veya daha fazla dilde paket açıklamasının kapsayıcısıdır. |
Transaction / PropertyDataSet / PackageData / Description / Text | 1..n | Text | Bir dilde paket açıklamasını belirtir. |
Transaction / PropertyDataSet / PackageData / Description / Text / @text | 1..n | string | Paketin language özelliği tarafından belirtilen dildeki açıklamasıdır. |
Transaction / PropertyDataSet / PackageData / Description / Text / @language | 1..n | string | İki harfli dil kodudur. |
Transaction / PropertyDataSet / PackageData / AllowableRoomIDs | 0..1 | AllowableRoomIDs | <AllowableRoomID> öğelerinin kapsayıcısıdır.
|
Transaction / PropertyDataSet / PackageData / AllowableRoomIDs / AllowableRoomID | 1..n | AllowableRoomID | Bu ücret planıyla birleştirilebilecek bir oda türünün RoomID'sini belirtir. Oda türü, <RoomData> öğesinde belirtilir.
|
Transaction / PropertyDataSet / PackageData / Refundable | 0..1 | Refundable | Bir ücretin eksiksiz şekilde geri ödenebilir veya iptal edilebilir olarak listelenmesine olanak tanır. Sağlanmazsa geri ödemeyle ilgili hiçbir bilgi görüntülenmez.
Not: Tüm özellikleri ayarlamanızı öneririz. Bir veya daha fazla özellik ayarlanmadığında feed durumu uyarı mesajı oluşturulur. Hiçbir özelliği ayarlamazsanız ücret geri ödenebilir olarak gösterilmez. Özellikleri ayarlarken şunlara dikkat edin:
|
Transaction / PropertyDataSet / PackageData / Refundable / @available | 1 | boolean | (Zorunlu) Ücretin eksiksiz şekilde geri ödenebildiğini belirtmek için 1 veya true olarak ayarlayın. Aksi takdirde 0 veya false olarak ayarlayın. |
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_days | 0..1 | integer | (available değeri, true ise zorunludur) Eksiksiz geri ödeme isteğinin, check-in tarihinden kaç gün önce yapılabileceğini belirtir. refundable_until_days değeri, 0 ile 330 arasında (0 ve 330 dahil) bir tam sayı olmalıdır. |
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_time | 0.. | Time | (available değeri, true ise önemle tavsiye edilir) Eksiksiz geri ödeme saatinin dikkate alınacağı, günün son saatini (otelin yerel saatine göre) belirtir. Örneğin, "geri ödemelerin check-in'den iki gün önce saat 16.00'ya kadar kabul edileceğini" belirtmek için refundable_until_days ile birleştirilebilir. refundable_until_time ayarlanmazsa değer varsayılan olarak gece yarısı olur. |
Transaction / PropertyDataSet / PackageData / BreakfastIncluded | 0..1 | boolean | Bu oda türünde kahvaltının dahil olup olmadığını belirtir.
Geçerli değerler 0 (veya false ) ve 1 (veya true ) şeklindedir.
|
Transaction / PropertyDataSet / PackageData / CheckinTime | 0..1 | Time | Otelin yerel saatinde en erken giriş saati. Saat 24:00'ten az olmalıdır. |
Transaction / PropertyDataSet / PackageData / CheckoutTime | 0..1 | Time | Otelin yerel saatinde mümkün olan en son çıkış saati. |
Transaction / PropertyDataSet / PackageData / InternetIncluded | 0..1 | boolean | Diğer odalarda ücretsiz internet erişimi yokken bu odada bu imkanın olup olmadığını belirtir. Tüm odalarda ücretsiz internet sunan otellerde bu öğeyi ayarlamayın. Bu öğe, oda içi kablolu internet ya da konuk odalarında kullanılamayan kablosuz internet için geçerli değildir. Geçerli değerler 0 (veya
false ) ve 1 (veya true ) şeklindedir.
|
Transaction / PropertyDataSet / PackageData / Meals | 0..1 | Object | Bu paketteki yemeklerle ilgili bilgileri içerir.
İsteğe bağlı özellikler yalnızca Yemek filtrelerinin ( |
Transaction / PropertyDataSet / PackageData / ParkingIncluded | 0..1 | boolean | Otopark hizmetinin ücretli olduğu otellerde oda ücretine ücretsiz otopark hizmetinin dahil olup olmadığını belirtir. Ücretsiz otopark hizmeti sunan otellerde bu öğe için değer belirtmeyin.
Geçerli değerler 0 (veya false ) ve 1 (veya true ) değerleridir. Varsayılan değer: false .
|
Transaction / PropertyDataSet / PackageData / PhotoURL | 0..1 | Object | (<RoomData> içindeki <PhotoURL> ile aynıdır ancak paket içindir (ör. yemek fotoğrafları).)
|
Örnekler
Oda ve paket verileri
Aşağıdaki temel örnekte, tesisin oda ve paket verilerinin Transaction (Tesis Verileri) mesajında nasıl tanımlanacağı gösterilmektedir. overlay
özelliği, daha önceden beklenmedik şekilde mevcut olan tüm verilerin silinmesini ve bu mesajdaki verilerle değiştirilmesini sağlamak için kullanılır:
<?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>
<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>
Oda türü ekleme
Aşağıdaki örnekte, mevcut <Transaction>
verilerine oda türü ve paketin nasıl ekleneceği gösterilmektedir:
<?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>
Oda türlerini kaldırma
Aşağıdaki örnekte mevcut oda türleri ve paketlerin nasıl kaldırılacağı gösterilmektedir. Bu senaryoda, "Oda ve paket verileri" ve "Oda türü ekleme" bölümündeki mesajlar daha önce Google'a gönderilmişse Google aşağıdaki mesajı aldıktan sonra King
ve Double
oda türleri artık mevcut olmaz. Paket verilerinin kaldırılmasının, Transaction (Tesis Verileri), OTA_HotelRateAmountNotifRQ ve OTA_HotelAvailNotifRQ
mesajlarında (aynı PackageID
değerine referans vererek) tanımlanan genel ücret planını etkilediğini ve bu nedenle PackageID_2
ve PackageID_3
'ın artık burada tanımlanmadığını yansıtmak için diğer mesaj türlerini kullanan ilgili güncellemelerin gerekebileceğini unutmayın.
<?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>
Ücret planlarını kısıtlama
Aşağıdaki örnekte, bir oda türünde izin verilen ücret planlarını kısıtlamak için <AllowablePackageIDs>
öğesinin nasıl kullanılacağı gösterilmektedir. Bu örnekte, Queen
oda türü (RoomID_2
) yalnızca PackageID_1 olarak tanımlanan paket ve ücret planıyla birleştirilebilir.
<?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>
Oda kapasitesini kısıtlama
Aşağıda, oda kapasiteleriyle ilgili kısıtlamalar belirlemek için <Capacity>
, <AdultCapacity>
ve <ChildCapacity>
öğelerinin nasıl kullanılacağı gösterilmektedir.
<?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>
Çift kişilik oda türü (RoomID_1) toplam 4 konuk kapasitelidir. Ayrıca, 4 yetişkin ve en fazla 3 çocuk konaklayabilir. Bu odanın rezervasyon yapılabilmesi için üç kapasite koşulunun da karşılanması gerekir. Bu yapılandırma, her biri iki kişi kapasiteli iki yatağın bulunduğu tipik bir odayı temsil eder. Odanın en az bir yetişkin tarafından kullanılması gerektiğinden, çocuk kapasitesi toplam kapasiteden bir eksiktir.
<RoomFeatures>
ve yemekler içeren genişletilmiş örnekler
JapaneseHotelRoomStyle
için varsayılan değer yoktur.
Bir değeri atlamak XML hatasına neden olmaz ancak kullanıcı oda stiline veya yatak sayısına göre filtreleme yaptığında girişiniz arama sonuçlarında gösterilmez.
İki tek kişilik yatak
Aşağıdaki örnekte <RoomFeatures>
işlevinin nasıl kullanılacağı gösterilmektedir:
<?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>
İki adet çift kişilik yatak
Aşağıda, iki double
yataklı western
tarzı bir oda örneği verilmiştir.
<?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>
Yataksız Japon tarzı
Aşağıda, yataksız Japon tarzı bir oda örneği verilmiştir. japanese
tarzı odalar için yatak bilgileri gerekli değildir.
<?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>
Yataklı Japon-Batı tarzı
Aşağıda, king
boyutlu yatak bulunan japanese_western
tarzı bir oda örneği verilmiştir.
<?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>
İş ortağının japanese_western
odalarında yatak sayısı bilgisi yoksa aşağıdaki örneğe bakın:
<?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>
Yemekler
Aşağıdaki örnekte yemekler, fotoğraflar, giriş ve çıkış saatleri için oda ve paket meta verileri tanımlanmaktadır:
<?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>
Yalnızca kahvaltı
<?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>
Yanıtlar
Söz dizimi
TransactionResponse (Property Data)
mesajında şu söz dizimi kullanılır:
<?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>
Öğeler ve özellikler
TransactionResponse (Property Data)
mesajında aşağıdaki öğeler ve özellikler bulunur:
Öğe / @Özellik | Yineleme sayısı | Tür | Açıklama |
---|---|---|---|
TransactionResponse | 1 | Complex element | Alınan Transaction istek mesajının başarısını veya sorunlarını gösteren kök öğedir. |
TransactionResponse / @timestamp | 1 | DateTime | Bu mesajın oluşturulma tarihi ve saatidir. |
TransactionResponse / @id | 1 | string | İlişkilendirilmiş Transaction mesajındaki benzersiz tanımlayıcıdır. |
TransactionResponse / @partner | 1 | string | Bu mesajın iş ortağı hesabıdır. |
TransactionResponse / Success | 0..1 | Success | Transaction mesajının uyarı, hata veya sorun olmadan başarıyla işlendiğini belirtir.
Her mesajda |
TransactionResponse / Issues | 0..1 | Issues | Transaction mesajı işlenirken karşılaşılan bir veya daha fazla sorun için kullanılan bir kapsayıcıdır.
Her mesajda |
TransactionResponse / Issues / Issue | 1..n | Issue | Transaction mesajı işlenirken karşılaşılan uyarı, hata veya sorunun açıklamasıdır. Bu sorunlarla ilgili ayrıntılar Feed Durumu Hata Mesajları konusunda bulunabilir. |
TransactionResponse / Issues / Issue / @code | 1 | integer | Sorunun tanımlayıcısıdır. |
TransactionResponse / Issues / Issue / @status | 1 | enum | Karşılaşılan sorunun türüdür. Geçerli değerler |
Örnekler
Başarılı
Aşağıda, başarıyla işlenmiş bir Transaction mesajına yanıt yer almaktadır.
<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Success/>
</TransactionResponse>
Sorunlar
Aşağıda, hatalar nedeniyle işlenmemiş bir Transaction mesajına yanıt yer almaktadır.
<?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>