查询消息

查询消息是指来自 Google 的价格或元数据更新请求。他们 与拉取和价格更改搭配使用 传送模式

查询消息的根元素是 <Query>

查询消息的结构取决于消息类型:

  • 价格:Google 发送查询消息,请求更新 指定的酒店。

  • 元数据:Google 会发送一条查询消息,请求获取该会议室的相关数据 和套餐信息。

您可以定义 Google 用于查询消息和实时更新的端点 初始配置期间的定价查询。如需更多信息 请与您的技术支持客户经理 (TAM) 联系。

Google 以 HTTP POST 请求的形式发送查询消息,其中包含 Content-Type 标头设为“application/xml”并将 User-Agent 标头设为 Google-HotelAdsPrices。在手动测试 通过 Google-TravelAds-Live 集成价格端点。这些样本 查询不一定包含 User-Agent 标头。

有关查询消息的详细格式,请参阅 查询 XML 参考文档

价格查询消息

“价格查询”消息会指定哪些房源或行程组合 由您提供价格

当您的服务器收到 pricing 查询消息时,应以 <Transaction> 消息,其中包含所请求的价格信息。

如需了解详情,请参阅价格概览

有三种特殊类型的查询消息:

  1. 实时价格:如果启用,查询会在用户处于活跃状态时发送 特定房源或行程组合的价格 必须在指定的时间范围内响应。

  2. 有上下文:如果启用,则建议中会包含用户上下文推荐。 Google 发送给您的每一条查询都包括 搜索指定房源或行程的常见用户类型 组合。遵循这些建议可提高 您的回复。

  3. 元数据:这是关于 指定属性。

实时价格查询

实时价格查询是指 Google 在 响应用户搜索。Google 收到用户针对某商品生成的搜索请求, 酒店或行程组合,而由于价格数据不可用或不可用 时,Google 会在搜索时请求您提供价格更新。包含 实时价格查询,Google 会尝试获取价格并将其显示在 搜索结果。

所有实时价格查询请求都有响应时间限制,通常 最长 4000 毫秒此限额在实时价格查询中指定 请求。如果无法在时限内提供回复,则会导致 用户错过了特定机会的参与机会。不过,我们建议 但仍然提供价格,以便系统将其缓存起来并用于将来的销售机会。 响应的连接保持十分钟或以下时间: 。

实时价格查询也是内容相关查询,并且可以检索 以下参数:用户所在国家/地区、设备类型、入住人数(入住人数)、 以及这些房客是成人还是儿童借助实时价格查询 可以显示更符合客户搜索内容的最新价格。

实时价格查询是定价的次要机制 更新。重新定价的主要机制仍然是通过拉取或已更改 定价。实时价格查询有助于填补 Google 所没有的 酒店或行程组合的价格。

实时价格查询使用规则

  • 不存在指定行程的缓存数据,因为所请求的行程 很不正常,例如日期离现在很远,或者酒店非常 。

  • 请求的日期为非默认日期。

:注意:默认日期不适用于实时价格查询。已发布 仅针对非默认日期请求定价查询。

Google 通常会缓存实时价格的结果,以便同一酒店或 不再查询行程。它可以请求单个酒店或行程 组合以及多酒店或单个行程组合。

借助带上下文的实时价格功能,Google 能够发送特定 根据用户设备类型(即从哪个国家/地区)发出的实时价格请求 以及入住人数(包括儿童)等信息。 查询消息和交易消息已展开,以包含 <Context> 元素,用于定义查询参数。价格的接收方: 包含上下文的实时价格查询可以缓存为 Room Bundle。 如果是适用于特定入住人数的价格和条件式费率, 。

使用上下文查询

通过上下文查询,您可以定期请求更新 特定属性或行程组合。它们包含一系列 这些组合所流行的情境。如果 使用条件式费率,然后 发送费率的成本可能很高,因此您可以 使用以下用户上下文列表限制您的回答。仅退回商品的价格 指定的用户情境可涵盖绝大多数相关用户查询。

元数据查询消息

元数据查询消息包含有关客房和套餐信息的详细信息 特定属性

当您收到元数据查询消息时,应该使用 <Transaction> 消息,用于指定所请求房源的价格 <Result> 元素中。

如需了解详情,请参阅定义客房和套餐元数据

对照查询

本部分介绍了如何控制哪些房源和行程 可以是来自 Google 的 Query 消息的主题。

行程边界

您可以使用 <ItineraryCapabilities>。您可以定义规则来确定日期范围 以及支持的最长住宿晚数

您可以为 <MaxAdvancePurchase><MaxLengthOfStay> 设置默认值 适用于所有酒店或行程组合。你还可以定义 酒店组的设置。

查询消息示例

本部分显示了价格查询消息和元数据的几个示例 查询消息。如需查看更多示例,请参阅 查询 XML 参考文档

示例行程

以下示例展示了请求价格更新的价格 <Query> 入住 4 家酒店,入住 3 晚,2023 年 5 月 23 日起:

<?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>

以下示例请求更新每家酒店的价格:

5/23/18 - 6/26/18

实时价格查询示例

以下示例展示了具有响应时间限制的实时价格查询 500 毫秒:

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
<!-- Note that the latencySensitive attribute is not present by default but can
     be configured to be displayed, on request, by Google. This attribute is only
     displayed for a Live Pricing Query request -->
  <Checkin>2023-05-23</Checkin>
  <Nights>2</Nights>
  <DeadlineMs>500</DeadlineMs>
<!-- The deadline represents the timeframe by which a response will need to be
     received by. This element is only displayed for a Live Pricing Query request -->
  <PropertyList>
    <Property>6781291</Property>
  </PropertyList>
<!-- Note that Context tags are potentially repeatable -->
  <Context>
<!-- The total number of guests occupying the room (adults+children) -->
    <Occupancy>3</Occupancy>
    <OccupancyDetails>
      <NumAdults>2</NumAdults>
<!-- In this example one of the 3 guests is a 5yr old child -->
      <Children>
        <Child age="5"/>
      </Children>
    </OccupancyDetails>
<!-- The user was located in the US when this search was made -->
    <UserCountry>US</UserCountry>
<!-- The user was searching from a mobile device at the time of search -->
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

下例请求获取单个酒店的价格:

6/23/23 - 6/25/23

您可在以下位置找到针对此查询的示例交易消息响应: 定价和Room Inventory(交易)XML 参考文档

包含上下文查询示例

以下示例展示了一个带上下文的查询示例:

<?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>

使用上下文查询时,系统只会指定用户所在国家/地区的上下文。将来,如 查询还可能指定用户设备和入住人数。

入住日期范围

如果您使用“价格更改”,则查询消息的结构取决于 根据您用于入住日期范围的提示类型, 行程或范围很广的行程。如需详细了解上述各项 提示类型,请参阅提示响应消息

以下示例显示了入住日期的价格 <Query> 消息 范围:

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <FirstDate>2023-05-23</FirstDate>
  <LastDate>2023-05-26</LastDate>
  <Nights>3</Nights>
  <PropertyList>
    <Property>pid5</Property>
    <Property>pid8</Property>
    <Property>pid13</Property>
    <Property>pid21</Property>
  </PropertyList>
</Query>

此示例请求以下住宿的价格更新(针对每个 酒店):

5/23/23 - 5/24/23
5/23/23 - 5/25/23
5/23/23 - 5/26/23
5/24/23 - 5/25/23
5/24/23 - 5/26/23
5/24/23 - 5/27/23
5/24/23 - 5/26/23
5/25/23 - 5/27/23
5/25/23 - 5/28/23

偏远住宿

以下示例显示了范围的价格 <Query> 消息 住宿:

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <FirstDate>2023-05-23</FirstDate>
  <LastDate>2023-05-26</LastDate>
  <AffectedNights>3</AffectedNights>
  <PropertyList>
    <Property>pid5</Property>
    <Property>pid8</Property>
    <Property>pid13</Property>
    <Property>pid21</Property>
  </PropertyList>
</Query>

以下示例请求更新每家酒店的价格:

5/23/23 - 5/24/23
5/23/23 - 5/25/23
5/23/23 - 5/26/23
5/24/23 - 5/25/23
5/24/23 - 5/26/23
5/24/23 - 5/27/23
5/25/23 - 5/26/23
5/25/23 - 5/27/23
5/25/23 - 5/28/23

除了指定晚之前开始的住宿,含以下房间:

5/20/23 - 5/23/23
5/21/23 - 5/23/23
5/21/23 - 5/24/23
5/22/23 - 5/23/23
5/22/23 - 5/24/23
5/22/23 - 5/25/23

元数据查询消息

以下示例展示了请求元数据的 <Query> 消息 更新多个房源的客房和套餐信息:

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <HotelInfoProperties>
    <Property>pid5</Property>
    <Property>pid8</Property>
    <Property>pid13</Property>
    <Property>pid21</Property>
  </HotelInfoProperties>
</Query>

您在响应此类查询消息时 定义客房和套餐元数据。如需了解详情,请参阅 定义客房和套餐元数据