會議室組合

您可以使用房型套裝組合,為單一房源定義多種房型,也能將房價特色的行程結合 (價格及銷售條件以外的額外服務),以標準價格向使用者呈現。

重要概念和工作流程

透過 Room Bundle,您可以依據不同服務套件提供更多實體房型組合。

下圖為 Room 套裝組合的範例:

在此範例中,第一個套裝組合是基本房型,其中一人為成人的折扣。第二種是不同的房間類型 最多可可供三位成人入住第三種是相同屬性中的另一種房型。第四種是基本房型的「高級」套件,其中可能包括免費早餐或稍後結帳等設施。

下方圖片顯示費率功能的範例:

在搜尋結果中顯示房型套裝組合和費率功能,受到與標準房價相同的選取程序規範。

房型套裝組合

您可以在交易訊息中定義 Room Bundle 和費率功能。交易訊息的根元素為 <Transaction>

交易訊息的結構取決於您正在進行的操作:定義 Room Bundle 或費率功能的中繼資料,或是更新 Room Bundle 的定價或供應情形。

中繼資料
<PropertyDataSet> 元素中使用 <PackageData> 定義 Room 套件和費率功能中繼資料。詳情請參閱「定義會議室和套件中繼資料」。Room Bundle 會在實體房間說明中使用現有的 <RoomData> 元素。
價格與空房資訊
針對每個套件/行程組合,使用 <Result> 中的 <RoomBundle> 元素,定義 Room 套裝組合的價格和供應情形。詳情請參閱「定義定價和供應情形」。

如果基本房型的費率、稅金和其他費用未與 Room Bundle 搭配使用,則必須符合「<Result>」的規定,如果與 Room Bundle 搭配使用,則應移除這類費用。如果您使用即時帳戶實作 Room Bundle,請按照下列步驟操作:

  1. 將基本房型的房價、稅金和其他費用加入 <Result> 下,並新增一個符合基本房型套裝組合的 Room 套裝組合。

  2. 如有需要,請在該屬性或不同服務套件的相同 <Result> 區塊中,定義額外的 Room Bundle。

  3. Room Bundle 推出後,移除基本房型的費率、稅金和其他費用。

房型套裝組合中繼資料

定義 Room Bundle 和費率功能時,您通常會預先定義說明、包含在費率中的額外服務,以及 Room Bundle 的其他資訊。這項資訊稱為 Room Bundle 中繼資料。接著,您會在價格更新時參照這些中繼資料,但不包括在價格更新訊息中加入中繼資料。

定義 Room Bundle 時,請在實體客房說明中使用現有的 <RoomData> 元素,並將費率功能和 <PackageData> 元素用於提供在實體客房說明中無關的功能與字詞。

使用 <RoomData><PackageData> 元素可大幅縮減飯店清單和飯店價格動態饋給的大小,因為可減少交易訊息中傳送的重複資料數量。

例如,每個行程通常會重複顯示房間名稱和說明等資料。您可以使用 <RoomData><PackageData> 元素定義這類資料一次。然後,系統會將行程專屬的 Room Bundle 資料與儲存的房間和套件定義合併,以便向使用者顯示。

Google 會將中繼資料與行程專屬資料進行比對,以顯示您的廣告內容。結合 <RoomData><PackageData> 元素的名稱和說明有特殊的處理程序,可讓實體房間在 <RoomData> 中描述,而費率功能和套件詳細資料則位於 <PackageData> 中。

如果您同時定義單一房間或 Room 套裝組合的會議室資料和套件資料,Google 就會將這兩個資料納入廣告輸出內容,並以連字號分隔。

相片指南

傳送房間相片時,您必須遵守下列規範,確保使用者能看到你的相片:

  • 傳送每種房型的相片,包括無障礙房間的相片,例如設有各種浴室裝飾的無障礙指定房間,例如捲入淋浴間。

  • 請加入至少四張房間相片和至少一張浴室相片。

  • 相片應為房間本身,而非房源。最重要的相片包括床鋪、房間、浴室、起居空間、房間的視角 (同張相片的其餘部分),以及陽台、露台或露台 (如適用)。

    此外,拍攝桌子、廚房、咖啡/茶具和獨特房間特色的相片也很有幫助。

  • 請避免使用觀光/旅遊活動和美食,例如室外或財產設施。

  • 避免拍攝物體的特寫鏡頭,例如立體軟體的特寫。

  • 請避免使用品牌宣傳元素和品牌,但可在拍攝整個浴室區域的相片中,加入有標籤或品牌的盥洗用品。相片不應有大量的文字、標誌或浮水印。

  • 提供標準的橫向 (水平) 相片,而且視野充足,避免使用魚眼或扭曲的相片。如要提升排名,請以最高解析度拍照。您不需要以不同解析度提交同一張相片。

資料優先順序

Room Bundle 資料會從所有來源收集,並結合優先順序規則,產生特定飯店、行程和 Room Bundle 的最終資料。順序如下 (從最低到最高優先順序排列):

  1. (最低) 合作夥伴資料
  2. 資源資料
  3. <RoomData>,其中 <RoomID><RoomBundle> 區塊中的 <RoomID> 相符
  4. <PackageData>,其中 <PackageID><RoomBundle> 區塊中的 <PackageID> 相符
  5. (最高) <RoomBundle>

定義價格和供應情形

如要定義 Room 套裝組合的價格和供應情形,請在每個套件或行程組合的交易訊息中使用 <RoomBundle> 元素。<RoomBundle> 元素應位於 <Result> 元素中。以下顯示兩個 <RoomBundle> 元素的程式碼範例。請注意,在這個範例中,兩個 <RoomBundle> 元素使用 <RoomID><PackageID> 參照室和套件中繼資料。

針對每個 <Result>,包含的 Room Bundle 組合會覆寫該屬性或行程組合的現有集合組合。如果您未在 <Result> 元素中定義任何 Room 套裝組合或房價特徵,系統就會移除所有 Room 套裝組合,且搜尋結果中只會顯示該飯店或行程的基本客房。

請務必使用 <Name> 等元素,讓 Room Bundle 更能吸引潛在顧客,並確保其與飯店的到達網頁一致。在這個範例中,您可以在中繼資料中定義名稱和其他描述性資訊。

<RatePlanID> 為選用項目,代表客房和套件組合的專屬 ID。我們強烈建議您使用 RatePlanID 做為變數,建立動態到達網頁 (舊稱 銷售點) 網址。詳情請參閱「使用變數和條件」。

Room 套裝組合中的選用元素如下:

<Baserate>
<Tax>
<OtherFees>
<RoomID>
<PackageID>
<Occupancy>
<OccupancyDetails>

如果在使用中帳戶中實作 Room Bundle,請在啟用 Room Bundle 後移除 <Baserate>

<Result>
  <!-- Note: When using Room Bundles, the top level result price is no
       longer necessary. -->
  <Property>180054</Property>
  <Checkin>2017-10-07</Checkin>
  <Nights>2</Nights>
  <!-- Base Room Bundle -->
  <RoomBundle>
    <RoomID>060773</RoomID>
    <PackageID>P54321</PackageID>
    <Baserate currency="USD">199.99</Baserate>
    <Tax currency="USD">25.12</Tax>
    <OtherFees currency="USD">2.00</OtherFees>
    <!-- RatePlanID is optional and represents the unique identifier for a
    room and package data combination. We strongly recommend using RatePlanID
    as a variable to build your dynamic landing page (formerly Point of Sale)
    URL. For details, see Using Variables and Conditions. -->
    <RatePlanID>060773-P54321</RatePlanID>
  </RoomBundle>
  <!-- Premium Room Bundle -->
  <RoomBundle>
    <RoomID>436233</RoomID>
    <PackageID>P12345</PackageID>
    <!-- Price for 4 ("occupancy") -->
    <Baserate currency="USD">298.88</Baserate>
    <Tax currency="USD">42.12</Tax>
    <OtherFees currency="USD">10.00</OtherFees>
    <RatePlanID>436233-P12345</RatePlanID>
  </RoomBundle>
</Result>

定義會議室和套件中繼資料

如要定義 Room Bundle 中繼資料,請在交易訊息的 <PropertyDataSet> 元素中使用 <PackageData><RoomData> 元素。

您可以在交易訊息中定義客房和套件中繼資料,而不是在定價與空房資料。藉由事先定義這類資料,價格更新就不必包含重複資訊,例如說明、相片網址、設施,以及每個行程的每個房間或套件的其他資料。

Google 會為您儲存中繼資料,並在廣告顯示時插入該中繼資料。您可以透過新的交易訊息,隨時更新會議室和套件中繼資料。

在交易訊息中,您需要在價格更新的 <Result> 區塊中參照的各個區塊,設定套件 ID 和客房 ID。

如果房間和套件資料有所變更 (例如在屬性中新增房間類型),請傳送含有所更新房間和套件資料的新交易訊息,Google 會將房間或套件的現有中繼資料替換成新資料。

Google 建議您在初始設定期間定義中繼資料。定義中繼資料後,您只需在定價更新中參照 <RoomID><PackageID> 值即可,不必再次納入所有這些資訊。Google 會使用這些 ID 來比對房間和 Room Bundle 與儲存的中繼資料。這可大幅縮減交易訊息的整體大小。

由於客房或行程組合的價格變動比客房或套裝方案說明更頻繁,因此在定義中繼資料一次後參照,會更有效率地使用交易訊息。此外,透過中繼資料 (而非內嵌定義資料) 也可排除會議室說明不符的錯誤。

如要分別定義中繼資料和定價,建議且最有效率的方法如下:

<!-- Efficient method of defining Room Bundles -->
<!----- Occupancy of 2 and 4 example ------>

<Transaction timestamp="2019-04-18T16:20:00-04:00" id="12345678">
  <!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
  <!-- Note: Once defined it does not have to be repeated for future Transaction Messages. -->
  <!--       PropertyDataSets can also be defined and sent in their own Transaction Message -->
  <!--       separately from pricing. Google can be configured to pull just PropertyDataSets -->
  <!--       once per day (or on a predefined frequency). -->
  <PropertyDataSet>
    <Property>180054</Property>
    <!-- Can be reused by multiple Room Bundles -->
    <RoomData>
      <RoomID>060773</RoomID>
      <Name>
        <Text text="Single Queen Room - Non-Smoking" language="en"/>
        <Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
      </Name>
      <!-- Room can accommodate 4, but bundle is for 2 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageQueen.jpg</URL>
        <Caption>
          <Text text="A bright and breezy way to enjoy your mornin'
            cuppa tea." language="en"/>
          <Text text="Une façon lumineuse et aérée pour profiter
            de votre journée tasse de thé." language="fr"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <RoomData>
      <RoomID>436233</RoomID>
      <Name>
        <Text text="Premium King Room - Non-Smoking" language="en"/>
        <Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
      </Name>
      <!-- Room can accommodate 4 and bundle is for 4 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageKing.jpg</URL>
        <Caption>
          <Text text="A bright and breezy way to enjoy your mornin'
            cuppa tea." language="en"/>
          <Text text="Une façon lumineuse et aérée pour profiter
            de votre journée tasse de thé." language="fr"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <!-- Can be reused by multiple Room Bundles -->
    <PackageData>
      <PackageID>P54321</PackageID>
      <Occupancy>2</Occupancy>
      <ChargeCurrency>web</ChargeCurrency>
      <Refundable available="1" refundable_until_days="7"
           refundable_until_time="18:00:00"/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
    <PackageData>
      <PackageID>P12345</PackageID>
      <Occupancy>4</Occupancy>
      <ChargeCurrency>web</ChargeCurrency>
      <Refundable available="1" refundable_until_days="1"
           refundable_until_time="18:00:00"/>
      <BreakfastIncluded/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
  </PropertyDataSet>

    <!-- Efficient method of defining Room Bundles -->
    <!-- Part 2: Reference RoomData and PackageData through ID -->
  <Result>
    <Property>180054</Property>
    <Checkin>2017-10-07</Checkin>
    <Nights>2</Nights>

    <!-- Base Room Bundle -->
    <RoomBundle>
      <RoomID>060773</RoomID>
      <PackageID>P54321</PackageID>
      <Baserate currency="USD">199.99</Baserate>
      <Tax currency="USD">25.12</Tax>
      <OtherFees currency="USD">2.00</OtherFees>
      <!-- RatePlanID is optional and represents the unique identifier for a
      room and package data combination. We strongly recommend using RatePlanID
      as a variable to build your dynamic landing page (formerly Point of Sale)
      URL. For details, see Using Variables and Conditions. -->
      <RatePlanID>060773-P54321</RatePlanID>
    </RoomBundle>
    <!-- Premium Room Bundle -->
    <RoomBundle>
      <RoomID>436233</RoomID>
      <PackageID>P12345</PackageID>
      <!-- Price for 4 ("occupancy") -->
      <Baserate currency="USD">298.88</Baserate>
      <Tax currency="USD">42.12</Tax>
      <OtherFees currency="USD">10.00</OtherFees>
      <RatePlanID>060773-P12345</RatePlanID>
    </RoomBundle>
    <!-- Continue providing all available RoomBundle rates under matched
         property for any other occupancies -->
  </Result>
</Transaction>

可住人數和容量

定義 Room Bundle 時,您必須瞭解「可住人數」和「可容納人數」之間的差異:

人員偵測狀態
要套用房型套裝組合的房客人數。舉例來說,「蜜月套裝方案」的「可住人數」為二。您可以使用 <PackageData><RoomBundle> 元素的 <Occupancy> 子項元素,設定套件的可住人數值。
發電量
房間可容納的人數上限。房間容量一律等於或高於可住人數。舉例來說,飯店中的「蜜月套裝行程」上限為六人,但您為兩名房客設定了套裝組合。您可以使用 <RoomData> 元素的 <Capacity> 子項元素,設定套件的容量值。

為 Room 套裝組合定價時,您必須提供套裝組合的目標房客人數 (即套件的 <Occupancy> 元素中指定的值)。如果將 <Occupancy> 設為二,則該套件中的價格必須為兩位使用者。您無法將 <Occupancy> 設為四位訪客,以及為兩名房客設定套裝組合價格。

共用聊天室

您也能使用「房型套裝組合」中的可住人數和容量,設定共用客房住宿 (例如青年旅館) 的價格。舉例來說,如要為有 8 張床的宿舍房設定每人價格,請將可住人數設為 18,並在 <RoomData> 名稱中以此類推。查看範例

更新房型套裝組合

本節說明如何移除已無法使用的 Room Bundle,以及如何更新現有 Room 套裝組合的價格。

房型套裝組合移除

房型套裝組合與飯店價格不同,刪除方式而異。

如要從目錄中移除會議室或行程組合,請將 <Result> 元素的 <Baserate> 設為 -1。如要移除特定會議室或行程的 Room Bundle,請從交易訊息的 <Result> 區塊中移除 <RoomBundle> 元素。

系統會將資料動態饋給中的 Room Bundle 視為一組集合,以 0 到 0 之間的數字表示。將 Room Bundle 傳送給 Google 需要傳送目前的完整組件。您無法變更個別 Room Bundle 的值,將先前可用的值標示為「無法使用」。最新交易訊息中的哪一組套件會取代目前的組合。

例如 A、B、C 和 D 套件。您會先傳送定義會議室組合 A、B、C 和 D 的訊息。如果之後組合 B 售罄,則只使用套裝組合 A、C 和 D 重新傳送整個組合。如果所有 Room 套裝組合均已售罄,請傳送一組空的 Room Bundle。

價格調整

如要變更房型套裝組合的價格,請在 <Result> 元素中設定新的 <Baserate>

每次在交易訊息中更新會議室/行程的 <Result> 區塊時,都必須為每個 <Result> 加入完整的可用 Room 套件組合。Google 會將現有的 Room Bundle 組合替換為新的組合。如果您沒有在 <Result> 中加入任何 Room Bundle,Google 就會移除該會議室或行程的所有 Room Bundle。

中繼資料更新

您將在 Google 回應 <Query> 時,更新 Room Bundle 中繼資料。

您以 Transaction 訊息回應 Query 訊息,該訊息定義了指定飯店的會議室和套件中繼資料。詳情請參閱「查詢訊息」。