İstekler
Söz dizimi
Transaction (Property Data)
mesajında aşağıdaki 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 aşağıdaki öğeler ve özellikler bulunur:
Öğe / @Özellik | Yineleme sayısı | Tür | Açıklama |
---|---|---|---|
Transaction | 1 | Complex element | ARI uygulamasında bu, tek bir tesis için oda türlerini ve paketleri tanımlayan bir mesajın kök öğesidir. |
Transaction / @timestamp | 1 | DateTime | Bu mesajın oluşturulma tarihi ve saati. |
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 için |
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. Valid values are:
Bu özellik isteğe bağlıdır ve belirtilmezse varsayılan olarak |
Transaction / PropertyDataSet / Property | 1 | string | Tesisin benzersiz tanımlayıcısıdır. 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: |
Transaction / PropertyDataSet / RoomData / RoomID | 1 | RoomID | Bir oda türü için benzersiz tanımlayıcıdır. Bu değer, <OTA_HotelAvailNotifRQ> ve <OTA_HotelRateAmountNotifRQ> mesajlarındaki <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ı. |
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ı. |
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 durumunun 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ı. Ü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 | Odaların doluluk gereksinimlerini kısıtlayabilen veya değiştirebilen ayarlardır.
<OccupancySettings> <MinOccupancy>2</MinOccupancy> <MinAge>16</MinAge> </OccupancySettings> Tüm alt öğelerin eklenmesi 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 öğe aşağıdaki alt öğeleri alı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 özellikleriyle ilgili bilgileri içerir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / JapaneseHotelRoomStyle | 0..1 | enum | Bir Japon otel odasının tarzını belirtir. Valid values are:
|
Transaction / PropertyDataSet / RoomData / RoomFeatures / Beds | 0..1 | Object | Odadaki kadar <Bed> bulunur. Japon futonlarının burada sayılmaması gerektiğini lütfen unutmayın.
Her
<Bed> aşağıdaki alt öğelere sahiptir:
<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üitse bu öğeyi sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Capsule | 0..1 | enum | Bu oda, kapsül oda olduğunda bu öğeyi sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Roomsharing | 0..1 | enum | Bu odanın, tesis sahibi veya diğer konuklar gibi diğer konuklarla paylaşılıp paylaşılmayacağı. Geçerli değerler shared ve private değerleridir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Outdoor | 0..1 | enum | Bu oda sabit duvarları, su tesisatı ve kliması olmayan açık hava konaklama tesisiyse bu öğeyi sağlayın. Örneğin, otel odaları açık havada konaklama yerine, konukların çadırlarda kaldığı kamp alanları ve konukların kendi karavanlarıyla getirdiği karavan parkları açık konaklama yerleridir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / MobileAccessible | 0..1 | enum | Bu oda, hareket kabiliyetine 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çilen oda mı olduğu bilgisi. Geçerli değerler non_smoking ve smoking şeklindedir. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / BathAndToilet | 0..1 | Object | Odadaki banyo ve tuvalet hakkında bilgiler 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 sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / AirConditioning | 0..1 | enum | Bu odada klima varsa bu öğeyi sağlayın. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Balcony | 0..1 | enum | Bu odada balkon veya veranda varsa bu öğeyi sağlayın. |
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 özelliklerini ve şartlarını açıklayan öğelerin kapsayıcısıdır. Not: |
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 | Paketin adını bir dilde belirtir. |
Transaction / PropertyDataSet / PackageData / Name / Text / @text | 1..n | string | Paketin language özelliği tarafından belirtilen dildeki adı. |
Transaction / PropertyDataSet / PackageData / Description | 1 | Description | Bir veya daha fazla dilde paketin açıklamasının kapsayıcısıdır. |
Transaction / PropertyDataSet / PackageData / Description / Text | 1..n | Text | Paketin açıklamasını bir dilde 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 oda türünün RoomID'sini belirtir. Oda türü, <RoomData> öğesinde tanımlanır.
|
Transaction / PropertyDataSet / PackageData / Refundable | 0..1 | Refundable | Bir ücretin tamamen geri ödenebilir veya iptal edilebilir olarak listelenmesini sağlar. Sağlanmazsa geri ödemeyle ilgili hiçbir bilgi gösterilmez.
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 aşağıdakilere 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 isteğinin 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'a kadar geçerli olacağını" belirtmek için refundable_until_days ile birleştirilebilir. refundable_until_time ayarlanmazsa değer varsayılan olarak gece yarısına ayarlanır. |
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 saatine göre mümkün olan en erken giriş saati. Saat 24:00'ten az olmalıdır. |
Transaction / PropertyDataSet / PackageData / CheckoutTime | 0..1 | Time | Otelin yerel saatine göre mümkün olan en geç çıkış saati. |
Transaction / PropertyDataSet / PackageData / InternetIncluded | 0..1 | boolean | Odada ücretsiz internet erişimi olup olmadığını, diğer odalarda ise 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 veya 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 bilgiler içerir.
İsteğe bağlı özellikler yalnızca Yemek filtrelerinin ( |
Transaction / PropertyDataSet / PackageData / ParkingIncluded | 0..1 | boolean | Otopark hizmetinin ücretli olduğu otelde, odanın ücretsiz otopark hizmeti olup olmadığı bilgisidir. Ücretsiz otopark 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çin geçerlidir (ör. yemek fotoğrafları).)
|
Örnekler
Oda ve paket verileri
Aşağıda, bir tesisin oda ve paket verilerinin Transaction (Tesis Verileri) mesajında nasıl tanımlanacağına dair temel bir örnek verilmiştir. overlay
özelliği, beklenmedik bir şekilde daha önce 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ü ekleyin
Aşağıda, mevcut <Transaction>
verilerine oda türü ve paketin nasıl ekleneceğine dair bir örnek verilmiştir:
<?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ır
Aşağıda, mevcut oda türlerinin ve paketlerin nasıl kaldırılacağına dair bir örnek verilmiştir. Bu senaryoda, "Oda ve paket verileri" ve "Oda türü ekle" bölümlerindeki mesajlar daha önce Google'a gönderilmişse Google, gösterilen mesajı aldıktan sonra King
ve Double
oda türleri artık mevcut olmaz. Paket verilerinin kaldırılması, Transaction (Tesis Verileri), OTA_HotelRateAmountNotifRQ ve OTA_HotelAvailNotifRQ
mesajlarında tanımlandığı şekilde genel ücret planını etkiler (aynı PackageID
değerine başvurarak) ve bu nedenle, diğer mesaj türlerini kullanan ilgili güncellemelerin PackageID_2
ve PackageID_3
öğelerini yansıtması gerekebilir.
<?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ğıda, bir oda türünde izin verilen ücret planlarını kısıtlamak için <AllowablePackageIDs>
öğesinin nasıl kullanılacağına dair bir örnek verilmiştir. 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ıtla
Aşağıda, oda kapasitelerine ilişkin kısıtlamalar ayarlamak için <Capacity>
, <AdultCapacity>
,
<ChildCapacity>
öğelerinin nasıl kullanılacağına dair bir örnek verilmiştir.
<?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ünde (RoomID_1) toplamda en fazla 4 konuk olabilir. Ayrıca tesiste en fazla 4 yetişkin ve 3 çocuk bulunabilir. Bu odanın rezervasyon yapılabilir olması için üç kapasite gereksiniminin de karşılanması gerekir. Bu yapılandırma, her biri iki kişi kapasiteli iki yataklı tipik bir odayı temsil etmektedir. Odada en az bir yetişkin olması gerektiği için çocukların kapasitesi toplam kapasiteden bir azdır.
<RoomFeatures>
ve yemekler için genişletilmiş örnekler
JapaneseHotelRoomStyle
öğesinin varsayılan değeri yok.
Bir değerin atlanması XML hatasına neden olmaz ancak kullanıcı oda stiline veya yataklara göre filtreleme yaptığında girişiniz arama sonuçlarında gösterilmez.
İki adet tek kişilik yatak
Aşağıdaki örnekte <RoomFeatures>
hizmetinin 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ı 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ı oda için yatak bilgileri gerekmez.
<?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ı kovboy Japon tarzı
Aşağıda king
yatak bulunan japanese_western
tarzı bir oda örneği gösterilmektedir.
<?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ğı japanese_western
odadaki yatak sayısı hakkında bilgiye sahip değilse 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 aşağıdaki 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ı aşağıdaki öğeleri ve özellikleri içerir:
Öğ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 saati. |
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ı bölümünde 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ü. 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>