Bu bölümde, XML tabanlı dosya için referans İpucu İsteği mesajları, İpucu Yanıtı mesajları, ve Sorgu mesajları.
<Hint>
(İpucu Yanıtı mesajı)
Bir İpucu Yanıtı mesajının kök öğesidir. İpucu Yanıtı mesajları hangi otel/seyahat planı kombinasyonlarının yeniden fiyatlandırılması gerektiğini belirtmek için. Bunlar sizin bir İpucu İsteği mesajına yanıt Google'dan.
İpucu Yanıtı mesajında, yalnızca fiyatlarına göre Google'ın ekleyebilirsiniz.
İpucu Yanıtı mesajları hangi yöntemlerin kullanılacağını belirtmek için aşağıdaki yöntemlerden birini Google'ın yeniden fiyatlandıracağı oteller ve seyahat planları:
Tam seyahat planları: Check-in tarihi ve konaklama süresi.
Check-in tarih aralıkları: Check-in aralığını belirtir ilk check-in tarihiyle başlayıp son giriş tarihiyle biten tarihler giriş tarihi yazın.
Aralıklı konaklamalar (veya aralıklı seyahat planları)
Bu yöntemlerin her biri, İpucu Yanıtı için farklı bir söz dizimi gerektirir mesajını alırsınız.
Daha fazla bilgi için İpucu Yanıtı mesajları bölümüne bakın.
Söz dizimi
<Hint>
öğesi, İpucu türüne bağlı olarak farklı söz dizimi kullanıyor
Yanıt mesajı:
Tam seyahat planları
Aşağıda, bir İpucu Yanıtında tam seyahat planları için söz dizimi gösterilmektedir mesaj:
<!-- Exact Itinerary Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<Property>hotel_ID</Property>
...
<Stay>
<CheckInDate>checkin_date</CheckInDate>
<LengthOfStay>number_of_nights</LengthOfStay>
</Stay>
</Item>
...
</Hint>
Check-in aralıkları
Aşağıda, bir İpucu Yanıtında check-in aralıkları için söz dizimi gösterilmektedir mesaj:
<!-- Check-in Ranges Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<!-- At least one is required -->
<!-- Can be > 1 if MultipleItineraries is "checkin_range" in your
QueryControl message -->
<Property>hotel_ID</Property>
[...]
<!-- Required -->
<FirstDate>first_checkin_date</FirstDate>
<!-- Required -->
<LastDate>last_checkin_date</LastDate>
</Item>
...
</Hint>
Aralıklı konaklamalar
Aşağıda, bir İpucu Yanıtında aralıklı konaklamalar için söz dizimi gösterilmektedir mesaj:
<!-- Ranged Stay Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<!-- At least one is required -->
<!-- Can be > 1 if MultipleItineraries is "affected_dates" in your
QueryControl message -->
<Property>hotel_ID</Property>
[...]
<StaysIncludingRange>
<!-- Required -->
<FirstDate>first_date</FirstDate>
<!-- Optional -->
<LastDate>last_date</LastDate>
</StaysIncludingRange>
</Item>
...
</Hint>
Özellikler
<Hint>
öğesi, isteğe bağlı bir özellik içeriyor: id
. Zaman
sağlandığı takdirde, <Query>
için hintId
özelliği olarak eklenir
ileti, bu <Hint>
temel alınarak gönderildi.
Alt öğeler
<Hint>
öğesi aşağıdaki alt öğelere sahiptir:
Alt Öğe | Zorunlu mu? | Tür | İpucu Yanıtı Türü | Açıklama |
---|---|---|---|---|
<CheckInDate> | Required | Date | Tam seyahat planları | Seyahat planının check-in tarihidir. |
<FirstDate> | Required | Date | Check-in aralıkları ve aralıklı seyahat planları | Bir check-in aralığı veya aralığı için tarih aralığının ilk tarihi İpucu Yanıtı mesajını bırakın. Tarihler dahildir. |
<Item> | Required | Object | Tümü | Otel/seyahat planının güncellenmesi için bir kapsayıcıdır. |
<LastDate> | Required* | Date | Check-in aralıkları ve aralıklı seyahat planları | Bir check-in aralığı veya aralığı için tarih aralığının son tarihi İpucu Yanıtı mesajını bırakın. Tarihler dahildir. * Bu öğe, aralıklı konaklamalar için isteğe bağlıdır. |
<LengthOfStay> | Required | integer | Tam seyahat planları | Seyahat planı için pozitif olarak ifade edilen gece sayısı Tam sayı. |
<Property> | Required | string | Tümü | Otel kimliğidir. Otel Listesi ile aynı kimliği kullanır. Sayı
Tek bir öğede belirtebileceğiniz
|
<Stay> | Required | Object | Tam seyahat planları | <CheckinDate> ve
Tam seyahat planında <LengthOfStay> öğe içeren ipucu
Yanıt mesajı. Her <Item> yalnızca bir
<Stay> . |
<StaysIncludingRange> | Required | Object | Aralıklı seyahat planları | <FirstDate> ve
Aralıklı konaklama İpucu Yanıtında <LastDate> öğe
mesajını alırsınız. |
Örnekler
Tam seyahat planları
Aşağıdaki örnekte tek bir tesis için birden fazla seyahat planı tanımlanmaktadır. bir İpucu Yanıtı mesajı:
<!-- Exact Itinerary Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<Property>12345</Property>
<Stay>
<CheckInDate>2018-07-03</CheckInDate>
<LengthOfStay>3</LengthOfStay>
</Stay>
</Item>
<Item>
<Property>12345</Property>
<Stay>
<CheckInDate>2018-07-03</CheckInDate>
<LengthOfStay>4</LengthOfStay>
</Stay>
</Item>
</Hint>
Check-in aralıkları
Aşağıdaki örnekte, fiyatları değişen iki otel ve getirileceğini unutmayın. Google, 3 Temmuz ile 3 Temmuz arasındaki tüm seyahat planlarını alır 12345 ve 67890 mülkleri için 6:
<!-- Check-in Ranges Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<Property>12345</Property>
<Property>67890</Property>
<FirstDate>2018-07-03</FirstDate>
<LastDate>2018-07-06</LastDate>
</Item>
</Hint>
Bir check-in aralığı mesajında, birden fazla
özellikleri tek bir <Item>
içinde gösterilecekse
<QueryControl>
içindeki <MultipleItineraries>
şu şekilde ayarlanmalıdır:
"checkin_range"
.
Aralıklı konaklamalar
Aşağıdaki örnekte aralıklı konaklamaların iki farklı kullanımı gösterilmektedir; biri aralıklı konaklama için gece aralığı ve diğeri tek bir gecelik:
<!-- Ranged Stay Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<!-- Google fetches prices for all itineraries (first and last date are set) -->
<Item>
<Property>12345</Property>
<StaysIncludingRange>
<FirstDate>2018-07-03</FirstDate>
<LastDate>2018-07-06</LastDate>
</StaysIncludingRange>
</Item>
<!-- Google fetches prices for a single night (first date only) -->
<Item>
<Property>67890</Property>
<StaysIncludingRange>
<FirstDate>2018-07-03</FirstDate>
</StaysIncludingRange>
</Item>
</Hint>
Aralıklı konaklama mesajında birden fazla değer belirtilebilir.
özellikleri tek bir <Item>
içinde gösterilecekse
<QueryControl>
içindeki <MultipleItineraries>
şu şekilde ayarlanmalıdır:
"affected_dates"
.
Google, bu örneklerin her biri için <Query>
ile yanıt verir. Bu durumda,
Ardından, şuna yönelik fiyat güncellemelerini içeren bir <Transaction>
ile yanıt verin:
belirtilen oteller/seyahat planları.
<HintRequest>
Bir İpucu İsteği mesajının kök öğesidir. Google, bir İpucu İsteği mesajınıza karşılık gelen bir mesaj gönderebilir ve otellerin ve otellerin Google'ın bir teklif bulduğundan bu yana fiyatları değişen seyahat planları sunucunuzdan başarılı İpucu Yanıtı.
Fiyat değişikliği olursa Google, değişiklik hakkında bilgi edinmek için <Query>
Belirtilen oteller ve seyahat planlarının güncellenmiş fiyatlandırma verilerini getirir.
Daha fazla bilgi için İpucu İsteği Mesajları bölümüne bakın.
Söz dizimi
<HintRequest>
öğesi şu söz dizimini kullanır:
Söz dizimi
<?xml version="1.0" encoding="UTF-8"?>
<HintRequest>
<LastFetchTime>last_fetch_time</LastFetchTime>
</HintRequest>
Özellikler
<HintRequest>
öğesinin özelliği yok.
Alt öğeler
<HintRequest>
öğesi aşağıdaki alt öğelere sahiptir:
Alt Öğe | Tür | Açıklama |
---|---|---|
<LastFetchTime> | DateTime | Google'ın en son İpucu Yanıtı mesajı almada başarılı olduğu zaman
bir İpucu İsteği mesajına ekleyin.
Bu zaman, yaptığınız son görüşmeden daha eskiyse güncellendiği için bir İpucu ile yanıt vermeniz gerekir Hangi otellerin değiştiğini belirten yanıt mesajı. Yakın zamanda başarılı bir getirme gerçekleşmediyse bu, sabit aralık değeri (büyük boyutlu sinyaller ile daha ciddi sorunlardan iş listeleri) görebilirsiniz. Mevcut sabit aralık değeri 1.000 saniyedir, ancak değişebilir. Daha fazla bilgi için İpucu Yanıtı Mesajları bölümüne bakın. |
Örnekler
Aşağıdaki örnekte bir İpucu İsteği mesajı gösterilmektedir:
İpucu İsteği mesajı
Aşağıdaki örnekte bir İpucu İsteği mesajı gösterilmektedir:
<?xml version="1.0" encoding="UTF-8"?>
<HintRequest id="ABCDEF" timestamp="2018-06-07T16:20:00Z">
<LastFetchTime>2018-03-25T00:04:09Z</LastFetchTime>
</HintRequest>
<Query>
Bir Query
mesajının kök öğesidir. Query
ileti istek.
. Hem Çekme hem de
ve değiştirilen fiyatlandırma iletim modları.
Üç tür Query
mesajı vardır:
Gerçek zamanlı fiyatlandırma: Google, belirli bir kullanıcı isteğine yanıt verir ve gerçek zamanlı fiyat güncellemesi. İş ortakları bir
Live pricing query
aldığında mesajını görüyorsanız, iş ortakları şu<Transaction>
mesajıyla yanıt vermelidir:<Result>
öğelerinde istenen fiyat bilgilerini içerir.Bağlam fiyatlandırması ile: Google, fiyat önbelleğini bağlamlara göre günceller. ve eskiden popüler olan ürünler.
With context query
aldığınızda mesajını içeren bir<Transaction>
mesajıyla yanıt vermeniz gerekir:<Result>
öğelerinde fiyat bilgisi istedi.Meta veri: Google, odalar ve Oda Paketleri için meta veri güncellemelerini ister. belirtilen oteller için geçerlidir. Bir
Metadata Query
mesajı aldığınızda, hakkındaki verileri belirten bir<Transaction>
mesajıyla yanıt vermesi<PropertyDataSet>
öğelerinde odalar ve Oda Paketleri.
Daha fazla bilgi için Fiyatlandırmaya genel bakış başlıklı makaleyi inceleyin. fiyatlandırma sorguları ve Oda Paketi meta verileri için kullanabilirsiniz.
Üç farklı türün söz dizimi aşağıda açıklanmıştır.
Söz dizimi
<Query>
öğesi şu söz dizimini kullanır:
Gerçek zamanlı fiyatlandırma
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true_or_false">
<Checkin>YYYY-MM-DD</Checkin>
<Nights>number_of_nights</Nights>
<!-- Only for Check-in Date Range pricing queries (Changed Pricing) -->
<FirstDate>YYYY-MM-DD</FirstDate>
<LastDate>YYYY-MM-DD</LastDate>
<!-- Only for Ranged Stay pricing queries (Changed Pricing) -->
<AffectedNights>number_of_nights</AffectedNights>
<PropertyList>
<Property>hotel_id</Property>
...
</PropertyList>
<!-- See documentation below for <Context> -->
<Context>
...
</Context>
</Query>
Bağlam içinde
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<Checkin>YYYY-MM-DD</Checkin>
<Nights>number_of_nights</Nights>
<!-- Only for Check-in Date Range pricing queries (Changed Pricing) -->
<FirstDate>YYYY-MM-DD</FirstDate>
<LastDate>YYYY-MM-DD</LastDate>
<!-- Only for Ranged Stay pricing queries (Changed Pricing) -->
<AffectedNights>number_of_nights</AffectedNights>
<PropertyContextList>
<PropertyContext>
<Property>hotel_id</Property>
...
<!-- See documentation below for <Context> -->
<Context>
...
</Context>
</PropertyContext>
</PropertyContextList>
</Query>
Meta veri
<HotelInfoProperties>
<Property>property_ID</Property>
...
</HotelInfoProperties>
Özellikler
<Query>
öğesi bir özellik içerebilir: latencySensitive
.
latencySensitive
özelliği isteğe bağlıdır. Sağlandığında ve
true
ise sorgunun Live Pricing Query
olduğunu gösterir. Google'ın size
latencySensitive
özelliğine sahip sorgular için lütfen Teknik Hesabınıza sorun.
yöneticisi (THY) var.
Alt öğeler
<Query>
öğesi aşağıdaki alt öğelere sahiptir:
Alt Öğe | Sorgu Türü | Tür | Açıklama |
---|---|---|---|
<AffectedNights> | Pricing | integer | Aralıklı konaklama için gece sayısıdır. Bu öğe kullanılır yalnızca Değiştirilen Fiyatlandırma ile kullanılan Aralıklı Konaklama fiyatlandırma sorguları için |
<Checkin> | Pricing | Date | Belirli bir fiyat değişikliğinin tarihleridir. |
<Context> | Pricing (Live Pricing Queries only) | <Context> | Gerçek Zamanlı Fiyatlandırma Sorguları için
sorgu yapılır. Alt öğeler şunları içerir:
|
<FirstDate> | Pricing | Date | Fiyatlandırmanın uygulanabileceği seyahat planları aralığının başlangıç tarihidir. geçerli olur. Bu öğe yalnızca Check-in Tarih Aralığı fiyatlandırması için kullanılır Değiştirilen Fiyatlandırma ile kullanılan sorgular |
<HotelInfoProperties> | Metadata | string | Google'ın güncellenmesini istediği bir veya daha fazla mülk
meta veri Query mesajındaki oda ve Oda Paketi meta verileri. Bu öğe
aşağıdaki gibi bir veya daha fazla <Property> öğesi içerebilir:
Otel mülk kimliklerini belirtin. |
<LastDate> | Pricing | Date | Fiyatlandırmanın gerçekleşeceği bir seyahat planları aralığının bitiş tarihidir. geçerli olur. Bu öğe yalnızca Check-in Tarih Aralığı fiyatlandırması için kullanılır çekme + İpuçları ile kullanılan sorguların sayısı. |
<Nights> | Pricing | integer | Belirli bir seyahat planı için en fazla 30 gece sayısıdır. |
<PropertyList> | Pricing | Object | Fiyatlandırma güncellemesi gerektiren otel için bir veya daha fazla kimlik. Her oteli bir <PropertyList> <Property>pid1</Property> <Property>pid2</Property> </PropertyList> |
Örnekler
Fiyatlandırma sorgusu
Aşağıdaki örnekte fiyat isteyen bir fiyatlandırma Sorgu mesajı gösterilmektedir bir otel grubu için 3 gecelik konaklamalar için geçerli, 10 Haziran'dan itibaren 2018:
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<Checkin>2023-05-23</Checkin>
<Nights>3</Nights>
<PropertyList>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</PropertyList>
</Query>
Gerçek zamanlı fiyatlandırma sorgusu
Aşağıdaki örnekte yanıt süresi olan bir Gerçek Zamanlı Fiyatlandırma Sorgusu gösterilmektedir limit 500 milisaniye:
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
<Checkin>2017-06-07</Checkin>
<Nights>5</Nights>
<DeadlineMs>500</DeadlineMs>
<PropertyList>
<Property>8675309</Property>
</PropertyList>
<Context>
<Occupancy>4</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="8"/>
<Child age="5"/>
</Children>
</OccupancyDetails>
<UserCountry>US</UserCountry>
<UserDevice>mobile</UserDevice>
</Context>
</Query>
Bağlam sorgusuyla
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<Checkin>2023-05-23</Checkin>
<Nights>2</Nights>
<PropertyContextList>
<PropertyContext>
<Property>8675309</Property>
<!-- In the future, occupancy and device might be specified -->
<Context><UserCountry>US</UserCountry></Context>
<Context><UserCountry>GB</UserCountry></Context>
</PropertyContext>
<PropertyContext>
<Property>8675310</Property>
<Property>8675311</Property>
<Context><UserCountry>CA</UserCountry></Context>
</PropertyContext>
</PropertyContextList>
</Query>
Meta veri sorgusu
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<HotelInfoProperties>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</HotelInfoProperties>
</Query>
Aralıklı konaklama ve giriş tarihi aralığı dahil olmak üzere daha fazla örnek için
daha fazla bilgi için Query
mesaj örneklerine göz atın.
<Context>
<Context>
öğesi, Live pricing query
ile ilgili bilgileri açıklar.
Misafirlerin sayısı ve türü, kullanıcının bulunduğu ülke ve
kullanıcı cihazı gibi ayrıntıları dikkate alın.
Birden fazla <Context>
asla farklı kullanıcı ülkeleri veya
kullanıcı cihazlarıdır. Birden fazla sorgu için birden çok <Context>
bilgi verin. Lütfen her bir doluluk fiyatını ek Oda Paketi olarak sağlayın
giriş yapın. Her tesis/seyahat planında şunlar yer almalıdır:
birden fazla fiyat için tek bir <Result>
bloğu
doluluk oranı dahil.
<Context>
sorgusuyla ilgili yanıt ayrıntıları için <OccupancyDetails>
sayfasına bakın.
Söz dizimi
<Context>
öğesi şu söz dizimini kullanır:
Söz dizimi
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true_or_false">
<Checkin>date</Checkin>
<Nights>number_of_nights</Nights>
<DeadlineMs>number_of_milliseconds</DeadlineMs>
<PropertyList>
<Property>property_ID</Property>
</PropertyList>
<Context>
<Occupancy>total_number_of_guests</Occupancy>
<OccupancyDetails>
<NumAdults>number_of_adults</NumAdults>
<Children>
<Child age=age_of_one_child_guest/>
<Child age=age_of_one_child_guest/>
</Children>
</OccupancyDetails>
<UserCountry>end_user_country</UserCountry>
<UserDevice>user_device_type</UserDevice>
</Context>
</Query>
Alt öğeler
<Context>
öğesi aşağıdaki alt öğelere sahiptir:
Alt Öğe | Sorgu türü | Tür | Açıklama |
---|---|---|---|
<Occupancy> | Pricing | integer | Toplam konuk sayısını belirtir. Zorunlu olmamakla birlikte, Not: |
<OccupancyDetails> | Pricing | Object | Öncesinde <Occupancy> bulunur. Konukları türe göre belirtir
şunları içerir:
Zorunlu olmamakla birlikte, Not: |
<UserCountry> | Pricing | string | Ücretleri, kullanıcının bulunduğu ülkeye göre filtreler. Değer
Amerika Birleşik Devletleri için
|
<UserDevice> | Pricing | string | Ücretleri, kullanıcının arama yaptığı cihazın türüne göre filtreler. Olası değerler:
|
Örnekler
Doluluk
Aşağıdaki örnekte <Occupancy>
için bir Gerçek zamanlı fiyatlandırma sorgusu gösterilmektedir
<Context>
içinde Gerçek zamanlı fiyatlandırma sorgusu 3 yetişkin içindir
konuklar.
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
<Checkin>2017-06-07</Checkin>
<Nights>4</Nights>
<DeadlineMs>500</DeadlineMs>
<PropertyList>
<Property>45617</Property>
</PropertyList>
<Context>
<Occupancy>3</Occupancy>
<UserCountry>US</UserCountry>
<UserDevice>mobile</UserDevice>
</Context>
</Query>
Doluluk ayrıntıları
Aşağıdaki örnekte,
<Context>
içindeki <OccupancyDetails>
.
Gerçek zamanlı fiyatlandırma sorgusu, 2'si 4 konuk içindir.
Çocuklar ve ABD'deki konuklardan rezervasyon yapacakları bir ücret istiyorsa
mobil cihaz:
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
<Checkin>2017-06-07</Checkin>
<Nights>5</Nights>
<DeadlineMs>500</DeadlineMs>
<PropertyList>
<Property>8675309</Property>
</PropertyList>
<Context>
<Occupancy>4</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="4"/>
<Child age="12"/>
</Children>
</OccupancyDetails>
<UserCountry>US</UserCountry>
<UserDevice>mobile</UserDevice>
</Context>
</Query>
Birden fazla bağlam
Aşağıdaki örnekte ek <Context>
öğesinin kullanımı gösterilmektedir
karşılaştırma yapabilirsiniz.
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
<Checkin>2017-06-07</Checkin>
<Nights>4</Nights>
<DeadlineMs>500</DeadlineMs>
<PropertyList>
<Property>45617</Property>
</PropertyList>
<Context>
<Occupancy>3</Occupancy>
<UserCountry>US</UserCountry>
<UserDevice>mobile</UserDevice>
</Context>
<Context>
<Occupancy>6</Occupancy>
<OccupancyDetails>
<NumAdults>4</NumAdults>
<Children>
<Child age="6"/>
<Child age="10"/>
</Children>
</OccupancyDetails>
<UserCountry>US</UserCountry>
<UserDevice>mobile</UserDevice>
</Context>
</Query>