このセクションでは、Google の XML ベースの Hint Request メッセージ ヒント応答メッセージ 「クエリ メッセージ」をご覧ください。
<Hint>
(ヒント レスポンス メッセージ)
ヒント レスポンス メッセージのルート要素。ヒント応答メッセージ 料金を変更するホテルと宿泊プランの組み合わせを指定する。これらは Hint Request メッセージに対する応答 提供します。
ヒント レスポンス メッセージでは、 Google が前回正常にヒント応答を受信してから変更されている 管理します
ヒント応答メッセージでは、次のいずれかの方法を使用して、 Google による料金改定が必要なホテルと旅行プラン:
正確な旅行プラン: チェックイン日と 滞在日数。
チェックイン期間: チェックインの期間を指定します。 最初のチェックイン日から始まり、最後のチェックイン日で終わる チェックイン日。
期間指定滞在(または期間指定旅行プラン)
これらのメソッドでは、ヒント応答に異なる構文が必要になります。 表示されます。
詳しくは、ヒント応答メッセージをご覧ください。
構文
<Hint>
要素の構文は、ヒントの種類によって異なります。
レスポンス メッセージ:
完全一致の旅行プラン
ヒント レスポンスの正確な旅行プランの構文を以下に示します。 メッセージ:
<!-- 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 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>
期間指定滞在
ヒント レスポンスの期間付き滞在の構文を以下に示します。 メッセージ:
<!-- 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>
属性
<Hint>
要素にはオプションの属性 id
が含まれます。日時
指定されている場合、<Query>
に hintId
属性として含まれます。
この<Hint>
に基づいて送信されたメッセージの数。
子要素
<Hint>
要素には次の子要素があります。
子要素 | 必須 | タイプ | ヒント レスポンス タイプ | 説明 |
---|---|---|---|---|
<CheckInDate> | Required | Date | 完全一致の旅行プラン | 旅行プランのチェックイン日。 |
<FirstDate> | Required | Date | チェックイン期間と期間指定旅行プラン | チェックイン期間またはチェックイン期間の最初の日付 Hint Response メッセージを残す。その日付も期間に含まれます。 |
<Item> | Required | Object | すべて | 更新するホテル/宿泊プランのコンテナ。 |
<LastDate> | Required* | Date | チェックイン期間と期間指定旅行プラン | チェックイン期間の最終日 Hint Response メッセージを残す。その日付も期間に含まれます。 * 期間指定滞在の場合、この要素は省略可能です。 |
<LengthOfStay> | Required | integer | 正確な旅行プラン | 正の値で表される、旅行プランの宿泊日数 整数。 |
<Property> | Required | string | すべて | ホテルの ID。ホテルリストと同じ ID を使用します。数値
1 つの行で指定できる
|
<Stay> | Required | Object | 完全一致の旅行プラン | <CheckinDate> と
完全一致の旅行プランの <LengthOfStay> 要素
レスポンス メッセージ。各 <Item> に含めることができるのは 1 つのみです。
<Stay> 。 |
<StaysIncludingRange> | Required | Object | 期間指定旅行プラン | <FirstDate> と
期間指定滞在のヒント レスポンスに含まれる <LastDate> 要素
表示されます。 |
例
完全一致の旅行プラン
次の例では、1 つの宿泊施設に対して複数の旅行プランを定義しています ヒント レスポンス メッセージ:
<!-- 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>
チェックイン範囲
次の例では、料金が変更された 2 つのホテルを指定し、 再度取得する必要があります7 月 3 日から 7 月までのすべての旅行プランは Google に登録されます プロパティ 12345 と 67890 の場合は 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>
1 つのチェックイン範囲のメッセージで複数のルールを
プロパティを 1 つの <Item>
にまとめている場合、
<QueryControl>
の <MultipleItineraries>
は次のように設定する必要があります
"checkin_range"
。
期間指定滞在
次の例は、期間指定滞在の 2 つの異なる使用方法を示しています。 1 晩だけの場合:
<!-- 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>
期間指定滞在のメッセージでは、複数の
プロパティを 1 つの <Item>
にまとめている場合、
<QueryControl>
の <MultipleItineraries>
は次のように設定する必要があります
"affected_dates"
。
それぞれの例に対して、Google は <Query>
を返します。そのため、
その後、次の料金の更新情報を含む <Transaction>
で応答します:
指定したホテル/旅行プラン。
<HintRequest>
ヒント リクエスト メッセージのルート要素。Google がヒント リクエストを メッセージがサーバーに送信され、ホテルと 前回 Google からリクエストを受信してから料金が変更された旅行プラン 正常に完了したヒント応答がサーバーから返されます。
価格に変更があった場合は、その後に Google から <Query>
が送信されます。
指定されたホテルと旅行プランの更新された料金データを取得します。
詳しくは、Hint Request Message をご覧ください。
構文
<HintRequest>
要素の構文は次のとおりです。
構文
<?xml version="1.0" encoding="UTF-8"?>
<HintRequest>
<LastFetchTime>last_fetch_time</LastFetchTime>
</HintRequest>
属性
<HintRequest>
要素には属性はありません。
子要素
<HintRequest>
要素には次の子要素があります。
子要素 | タイプ | 説明 |
---|---|---|
<LastFetchTime> | DateTime | Google が最後にヒント応答メッセージを受け取った時刻
Hint Request メッセージに関連付けています。
この時間が前回の設定よりも古い場合は、 更新した料金がある場合は、そのメールにヒントと 変更されたホテルを指定するレスポンス メッセージ。 最近成功したフェッチがない場合は、 固定の間隔値(大量のエラーによるより深刻な問題を回避 バックログ)があります。現在の固定間隔の値は 1, 000 秒ですが、 変更される可能性があります。 詳しくは ヒント応答メッセージをご覧ください。 |
例
次の例は、Hint Request メッセージを示しています。
Hint Request メッセージ
次の例は、Hint Request メッセージを示しています。
<?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>
Query
メッセージのルート要素。Query
件のメッセージはリクエストです
料金やメタデータの更新が必要です。これらは pull モデルと
変更済み料金の配信モード。
Query
メッセージには次の 3 種類があります。
ライブ料金: Google は特定のユーザー リクエストに応答して、 リアルタイムで価格を更新したりパートナーが
Live pricing query
を受け取った場合 パートナーは、次の<Transaction>
メッセージで応答する必要があります。 リクエストされた料金情報が<Result>
要素に含まれています。コンテキストに応じた料金設定を使用: Google はコンテキストに基づいて料金キャッシュを更新します。 人気があります
With context query
を受け取ったとき 次の内容を含む<Transaction>
メッセージで応答する必要があります。<Result>
要素でリクエストされた料金情報。メタデータ: Google は客室と条件の組み合わせのメタデータの更新をリクエストします。 検索します
Metadata Query
メッセージを受信すると、 は、関連するデータを指定する<Transaction>
メッセージで応答する必要があります。<PropertyDataSet>
要素で客室と条件の組み合わせを 5 つ指定する必要があります。
詳しくは、料金の概要をご覧ください。 (料金クエリと条件の組み合わせのメタデータ用) メタデータクエリに使用できます
3 種類の構文について以下で説明します。
構文
<Query>
要素の構文は次のとおりです。
ライブ料金
<?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>
コンテキストあり
<?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>
メタデータ
<HotelInfoProperties>
<Property>property_ID</Property>
...
</HotelInfoProperties>
属性
<Query>
要素には latencySensitive
という 1 つの属性を含められます。
latencySensitive
属性は省略可能です。指定して次の値に設定:
true
は、クエリが Live Pricing Query
であることを示します。Google から
latencySensitive
属性を使用したクエリについては、テクニカル アカウントにお問い合わせください。
マネージャー(TAM)。
子要素
<Query>
要素には次の子要素があります。
子要素 | クエリタイプ | タイプ | 説明 |
---|---|---|---|
<AffectedNights> | Pricing | integer | 期間指定滞在の日数。この要素は、 変更済み料金で使用される期間指定滞在料金クエリのみ。 |
<Checkin> | Pricing | Date | 特定の価格変更の日付。 |
<Context> | Pricing (Live Pricing Queries only) | <Context> | ライブ料金クエリの場合、特定のパラメータを指定します。
行われます。子要素には次のものがあります。
<ph type="x-smartling-placeholder">
|
<FirstDate> | Pricing | Date | 料金が適用される旅行プランの範囲の開始日 適用されます。この要素はチェックイン期間の料金設定にのみ使用されます クエリの例を示しています |
<HotelInfoProperties> | Metadata | string | Google が更新を求める 1 つ以上のプロパティ
客室と条件の組み合わせのメタデータをメタデータ Query メッセージに含めます。この要素
次の <Property> 要素を 1 つ以上含めることができます。
ホテル物件 ID を指定します |
<LastDate> | Pricing | Date | 料金が適用される旅行プランの範囲の終了日 適用されます。この要素はチェックイン期間の料金設定にのみ使用されます 使用するクエリの数を表します。 |
<Nights> | Pricing | integer | 特定の旅行プランの泊数(最大 30 泊)。 |
<PropertyList> | Pricing | Object | 料金の更新が必要なホテルの 1 つ以上の ID。 各ホテルを <PropertyList> <Property>pid1</Property> <Property>pid2</Property> </PropertyList> |
例
料金クエリ
次の例は、料金をリクエストする料金クエリ メッセージを示しています。 3 泊で 6 月 10 日から、一連のホテルの 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>
ライブ料金のクエリ
次の例は、レスポンス時間を指定したライブ料金クエリを示しています。 500 ミリ秒に制限する:
<?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>
コンテキスト クエリあり
<?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>
メタデータ クエリ
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<HotelInfoProperties>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</HotelInfoProperties>
</Query>
その他の例(期間指定滞在やチェックイン期間など)
料金のクエリについては、Query
メッセージの例をご覧ください。
<Context>
<Context>
要素は Live pricing query
の情報を記述します。
ゲストの人数と種類、ユーザーの国、ユーザーのデバイスなど)が含まれます。
複数の <Context>
がユーザーの国ごとに異なることはありません。
アクセスできるようになります。複数の <Context>
を使用して複数のクエリを実行する場合
追加条件の組み合わせとして各宿泊料金を指定してください
。各宿泊施設や旅行プランには
複数の料金を含む単一の <Result>
ブロック
定員も含まれます。
<Context>
クエリのレスポンスの詳細については、<OccupancyDetails>
をご覧ください。
構文
<Context>
要素の構文は次のとおりです。
構文
<?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>
子要素
<Context>
要素には次の子要素があります。
子要素 | クエリタイプ | タイプ | 説明 |
---|---|---|---|
<Occupancy> | Pricing | integer | ゲストの合計数を指定します。 必須ではありませんが、 注: |
<OccupancyDetails> | Pricing | Object | 先頭に <Occupancy> が付きます。ゲストをタイプ、
含まれます。
必須ではありませんが、 注: |
<UserCountry> | Pricing | string | ユーザーの居住国で料金をフィルタします。値は
2 文字の国コード(例: 米国の場合は
|
<UserDevice> | Pricing | string | ユーザーが検索に使用しているデバイスの種類で料金をフィルタします。 考えられる値は次のとおりです。
|
例
利用率
次の例は、<Occupancy>
のライブ料金クエリを示しています。
<Context>
以内。ライブ料金のクエリが大人 3 人
できます。
<?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>
在宅確認の詳細
次のライブ料金クエリの例は、
<Context>
内の <OccupancyDetails>
ライブ料金のクエリが 4 名で、そのうちの 2 名が
は子供であり、米国からのゲスト予約に適用される料金を求めている
モバイル デバイスの場合:
<?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>
複数のコンテキスト
次の例は、追加の <Context>
要素の使用方法を示しています。
ライブ料金クエリで使用できます
<?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>