क्वेरी & हिंट एक्सएमएल रेफ़रंस

इस सेक्शन में, Google के एक्सएमएल पर आधारित हिंट रिक्वेस्ट मैसेज, हिंट रिस्पॉन्स मैसेज, और क्वेरी मैसेज का रेफ़रंस दिया जाता है.

<Hint> (हिंट रिस्पॉन्स मैसेज)

हिंट रिस्पॉन्स मैसेज का रूट एलिमेंट. संकेत के जवाब वाले मैसेज से यह तय होता है कि किन होटल/यात्रा की योजना के कॉम्बिनेशन का शुल्क लिया जाना चाहिए. यह Google से मिले संकेत के अनुरोध वाले मैसेज के लिए, आपका जवाब है.

हिंट रिस्पॉन्स में सिर्फ़ उन होटलों की जानकारी होनी चाहिए जिनके किराये में पिछली बार 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. जब यह दिया जाता है, तब इस <Hint> के आधार पर भेजे गए <Query> मैसेज में, इसे hintId एट्रिब्यूट के तौर पर शामिल किया जाता है.

चाइल्ड एलीमेंट

<Hint> एलिमेंट में ये चाइल्ड एलिमेंट शामिल होते हैं:

चाइल्ड एलिमेंट ज़रूरी है? टाइप संकेत का जवाब किस तरह का है ब्यौरा
<CheckInDate> Required Date सटीक यात्रा योजनाएं यात्रा की योजना में चेक इन करने की तारीख.
<FirstDate> Required Date चेक-इन रेंज और तय की गई यात्रा की योजनाएं चेक-इन की सीमा या तय समय की सीमा के लिए, तारीख की पहली तारीख के लिए हिंट रिस्पॉन्स मैसेज दिखाएं. तारीखें शामिल हैं.
<Item> Required Object सभी होटल/यात्रा की योजना को अपडेट करने के लिए कंटेनर.
<LastDate> Required* Date चेक-इन रेंज और तय की गई यात्रा की योजनाएं

चेक-इन की सीमा या तय की गई सीमा के लिए, तारीख की आखिरी तारीख के लिए हिंट रिस्पॉन्स मैसेज दिखाएं. तारीखें शामिल हैं.

* एक तय सीमा तक ठहरने के लिए, यह एलिमेंट ज़रूरी नहीं है.

<LengthOfStay> Required integer सटीक कैंपेन यात्रा की योजना के लिए रातों की संख्या, जिसे पूर्णांक के तौर पर दिखाया जाता है.
<Property> Required string सभी

होटल का आईडी, जिसमें उसी आईडी का इस्तेमाल किया गया हो जो होटल की सूची में है. एक <Item> ब्लॉक में दिखने वाले <Property> एलिमेंट की संख्या, इस बात से तय होती है कि हिंट रिस्पॉन्स मैसेज किस तरह का है:

  • सटीक यात्रा योजनाएं: ज़्यादा से ज़्यादा 100 होटल.
  • चेक-इन रेंज: अगर आपने अपने <QueryControl> मैसेज में <MultipleItineraries> को "checkin_range" पर सेट किया है, तो एक से ज़्यादा.
  • ठहरने की अवधि: अगर आपने <QueryControl> मैसेज में <MultipleItineraries> को "affected_dates" पर सेट किया है, तो एक से ज़्यादा.
<Stay> Required Object सटीक यात्रा योजनाएं यात्रा की सटीक योजना के हिंट रिस्पॉन्स मैसेज में, <CheckinDate> और <LengthOfStay> एलिमेंट के लिए कंटेनर. हर <Item> में सिर्फ़ एक <Stay> हो सकता है.
<StaysIncludingRange> Required Object अलग-अलग शुरू की गई यात्रा की योजनाएं एक कंटेनर, जिसमें <FirstDate> और <LastDate> एलिमेंट के लिए, रेंज में 'हिंट रिस्पॉन्स' मैसेज मौजूद है.

उदाहरण

सटीक यात्रा योजनाएं

नीचे दिए गए उदाहरण में, एक प्रॉपर्टी के लिए कई यात्रा की योजनाओं के बारे में बताया गया है जो हिंट रिस्पॉन्स मैसेज है:

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

चेक-इन रेंज

इस उदाहरण में दो ऐसे होटलों के बारे में बताया गया है जिनके किराये बदल गए हैं और उन्हें फिर से फ़ेच किया जाना चाहिए. Google को 3 जुलाई से 6 जुलाई के बीच की सभी यात्रा की योजनाओं की जानकारी 12345 से 67890 प्रॉपर्टी के लिए मिलती है:

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

ध्यान दें कि चेक-इन रेंज वाले मैसेज की मदद से, एक <Item> में एक से ज़्यादा प्रॉपर्टी के बारे में बताने के लिए, <QueryControl> में <MultipleItineraries> की वैल्यू"checkin_range" पर सेट होनी चाहिए.

तय समय के लिए ठहरने की सुविधा

इस उदाहरण में, रेंज में ठहरने के दो अलग-अलग इस्तेमाल दिखाए गए हैं. एक रात में अलग-अलग रातों के लिए और दूसरा एक रात के लिए:

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

ध्यान दें कि रेंज स्टे मैसेज में, किसी एक <Item> में एक से ज़्यादा प्रॉपर्टी के बारे में बताने के लिए, <QueryControl> में <MultipleItineraries> की वैल्यू"affected_dates" पर सेट होनी चाहिए.

इनमें से हर उदाहरण के लिए, Google <Query> के साथ जवाब देता है. इसके बाद, आपको <Transaction> के साथ जवाब देना चाहिए, जिसमें खास होटल/यात्रा की योजना के किराये में हुए अपडेट शामिल हों.

<HintRequest>

हिंट के अनुरोध वाले मैसेज का रूट एलिमेंट. Google आपके सर्वर पर संकेत के अनुरोध वाला मैसेज भेजता है. उसे रिस्पॉन्स में उन होटलों और यात्रा की योजना के बारे में जानकारी मिलती है जिनके किराये में पिछली बार आपके सर्वर से सफल हिंट रिस्पॉन्स मिलने के बाद से बदलाव हुए हैं.

अगर किराये में कोई बदलाव होता है, तो Google एक <Query> भेजता है. इस ईमेल में, बताए गए होटल और यात्रा की योजना के लिए, किराये का अपडेट किया गया डेटा फ़ेच किया जाता है.

ज़्यादा जानकारी के लिए, संकेत के अनुरोध के मैसेज देखें.

सिंटैक्स

<HintRequest> एलिमेंट इस सिंटैक्स का इस्तेमाल करता है:

सिंटैक्स

<?xml version="1.0" encoding="UTF-8"?>
<HintRequest>
  <LastFetchTime>last_fetch_time</LastFetchTime>
</HintRequest>

विशेषताएं

<HintRequest> एलिमेंट में कोई एट्रिब्यूट नहीं है.

चाइल्ड एलीमेंट

<HintRequest> एलिमेंट में ये चाइल्ड एलिमेंट शामिल होते हैं:

चाइल्ड एलिमेंट टाइप ब्यौरा
<LastFetchTime> DateTime पिछली बार, जब Google को हिंट के अनुरोध वाले मैसेज में, हिंट का रिस्पॉन्स मैसेज मिला था.

अगर यह समय आपके सर्वर पर पिछली बार किराये अपडेट किए जाने से पहले का है, तो आपको हिंट रिस्पॉन्स मैसेज देकर बताना चाहिए कि किन होटलों में बदलाव हुआ है.

अगर फ़ीड को हाल ही में फ़ेच नहीं किया गया है, तो इसे तय किए गए इंटरवल की वैल्यू पर सेट किया जाएगा. इससे बड़े बैकलॉग वाली गंभीर समस्याओं से बचा जा सकेगा. मौजूदा तय इंटरवल वैल्यू 1,000 सेकंड है. हालांकि, इसमें बदलाव हो सकता है.

ज़्यादा जानकारी के लिए, हिंट रिस्पॉन्स मैसेज देखें.

उदाहरण

नीचे दिए गए उदाहरण में, संकेत के अनुरोध वाला मैसेज दिखाया गया है:

हिंट के अनुरोध वाला मैसेज

नीचे दिए गए उदाहरण में, हिंट के अनुरोध का मैसेज दिखाया गया है:

<?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 मैसेज, कीमत या मेटाडेटा से जुड़े अपडेट के लिए Google से मिले अनुरोध होते हैं. इनका इस्तेमाल पुल किया गया और बदली गई कीमत डिलीवरी मोड, दोनों के साथ किया जाता है.

Query मैसेज तीन तरह के होते हैं:

  • लाइव कीमत: Google, उपयोगकर्ता के खास अनुरोध का जवाब देता है और रीयल-टाइम में कीमत से जुड़े अपडेट का अनुरोध करता है. जब पार्टनर को Live pricing query मैसेज मिलता है, तो पार्टनर को <Transaction> मैसेज के साथ जवाब देना चाहिए. इसमें <Result> एलिमेंट में अनुरोध की गई कीमत की जानकारी शामिल होती है.

  • संदर्भ कीमत के साथ: Google, कीमत की कैश मेमोरी को उन कॉन्टेक्स्ट के हिसाब से अपडेट करता है जो अब तक सबसे ज़्यादा लोकप्रिय हैं. जब आपको With context query मैसेज मिलता है, तो आपको <Transaction> मैसेज के साथ जवाब देना चाहिए. इस मैसेज में, अनुरोध की गई कीमत की जानकारी <Result> एलिमेंट में मौजूद होनी चाहिए.

  • मेटाडेटा: Google, चुनिंदा होटल के कमरों और रूम बंडल के मेटाडेटा अपडेट का अनुरोध करता है. Metadata Query मैसेज मिलने पर, आपको <Transaction> मैसेज भेजकर जवाब देना चाहिए. इसमें <PropertyDataSet> एलिमेंट में रूम और रूम बंडल का डेटा शामिल होता है.

ज़्यादा जानकारी के लिए, कीमत से जुड़ी क्वेरी के लिए कीमत की खास जानकारी और मेटाडेटा से जुड़ी क्वेरी के लिए, रूम बंडल का मेटाडेटा देखें.

तीनों टाइप के सिंटैक्स के बारे में नीचे बताया गया है.

सिंटैक्स

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

latencySensitive एट्रिब्यूट ज़रूरी नहीं है. अगर यह नीति दी गई है और इसे true पर सेट किया गया है, तो इससे पता चलता है कि क्वेरी, Live Pricing Query है. अगर आप चाहते हैं कि Google, latencySensitive एट्रिब्यूट वाली क्वेरी भेज पाए, तो कृपया अपने तकनीकी खाता मैनेजर (TAM) से संपर्क करें.

चाइल्ड एलीमेंट

<Query> एलिमेंट में ये चाइल्ड एलिमेंट शामिल होते हैं:

चाइल्ड एलिमेंट क्वेरी टाइप टाइप ब्यौरा
<AffectedNights> Pricing integer एक रेंज में ठहरने के लिए रातों की संख्या. इस एलिमेंट का इस्तेमाल, सिर्फ़ किराये में हुए बदलाव के साथ इस्तेमाल होने वाली रेंज्ड स्टे किराये से जुड़ी क्वेरी के लिए किया जाता है.
<Checkin> Pricing Date किसी खास कीमत में बदलाव होने की तारीखें.
<Context> Pricing (Live Pricing Queries only) <Context> लाइव प्राइसिंग क्वेरी के लिए, ऐसे कुछ पैरामीटर के बारे में बताता है जिनके तहत क्वेरी की जाती है. चाइल्ड एलिमेंट में ये शामिल हैं:
  • <Occupancy>: मेहमानों की कुल संख्या
  • <OccupancyDetails>: मेहमानों का टाइप, जैसे कि वयस्क या बच्चे
  • <UserCountry>: वह देश जहां उपयोगकर्ता मौजूद है
  • <UserDevice>: डिवाइस का वह टाइप जिसका इस्तेमाल मेहमान ने होटल खोजने के लिए किया था, जैसे कि "mobile," "tablet ," या "desktop."

एक ही अनुरोध में, <Context> एलिमेंट को दोहराया जा सकता है. इससे अलग-अलग बुकिंग के लिए क्वेरी करने की अनुमति मिलती है. चाइल्ड एलिमेंट, सिंटैक्स, और उदाहरणों की सूची के लिए, <Context> देखें.

<FirstDate> Pricing Date उन यात्रा की योजनाओं के शुरू होने की तारीख जिन पर कीमत लागू होती है. इस एलिमेंट का इस्तेमाल, कीमत में बदलाव के साथ इस्तेमाल होने वाली चेक-इन की तारीख की सीमा से जुड़ी क्वेरी के लिए ही किया जाता है.
<HotelInfoProperties> Metadata string एक या एक से ज़्यादा प्रॉपर्टी, जिनके लिए Google अपडेट किए गए रूम और रूम बंडल का मेटाडेटा Query मेटाडेटा मैसेज में चाहता है. इस एलिमेंट में एक या एक से ज़्यादा <Property> एलिमेंट हो सकते हैं, जो होटल प्रॉपर्टी आईडी के बारे में बताते हैं.
<LastDate> Pricing Date उन यात्रा की योजनाओं के खत्म होने की तारीख जिन पर कीमतें लागू होती हैं. इस एलिमेंट का इस्तेमाल सिर्फ़ पुल + हिंट के साथ इस्तेमाल की जाने वाली चेक-इन तारीख की सीमा से जुड़ी क्वेरी के लिए किया जाता है.
<Nights> Pricing integer किसी यात्रा की योजना के लिए, ज़्यादा से ज़्यादा 30 रातों की संख्या.
<PropertyList> Pricing Object

होटल के लिए एक या ज़्यादा आईडी, जिनके लिए किराया अपडेट करना ज़रूरी है.

हर होटल के लिए <Property> एलिमेंट की जानकारी दें. वैल्यू एक ऐसी स्ट्रिंग है जो आपकी होटल की सूची में मौजूद होटल आईडी से मेल खाती है. उदाहरण के लिए:

<PropertyList>
  <Property>pid1</Property>
  <Property>pid2</Property>
</PropertyList>

उदाहरण

कीमत से जुड़ी क्वेरी

नीचे दिए गए उदाहरण में, किराये का क्वेरी मैसेज दिखाया गया है. इसमें कुछ होटलों के लिए, किराये की जानकारी अपडेट करने का अनुरोध किया गया है, जो तीन रातों के लिए उपलब्ध है और 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 मेहमानों की कुल संख्या बताता है.

हालांकि, यह ज़रूरी नहीं है, लेकिन <Occupancy> वाली क्वेरी के जवाब में लेन-देन का मैसेज मिलना चाहिए. साथ ही, इसमें हर <Occupancy> क्वेरी के लिए सही रूम बंडल होने चाहिए.

ध्यान दें: ऐसा हो सकता है कि <Occupancy> हमेशा किसी क्वेरी में न दिखे. ऐसे मामलों में, आपको सभी बुकिंग के लिए किराया वापस करना चाहिए.

<OccupancyDetails> Pricing Object <Occupancy> के पहले वाला है. मेहमानों के टाइप के बारे में बताता है. इसमें ये चीज़ें शामिल हैं:

  • <NumAdults>: वयस्क मेहमानों की संख्या
  • <Children> और <Child="age">: इससे पता चलता है कि कौनसे मेहमान बच्चे हैं (आम तौर पर, 0 से 17 साल की उम्र के लोग). इसमें हर बच्चे की उम्र की जानकारी शामिल की जाती है. हालांकि, इसमें बच्चों की उम्र शामिल होती है.
  • यह ज़रूरी नहीं है, लेकिन <OccupancyDetails> वाली क्वेरी के जवाब में लेन-देन का मैसेज मिलना चाहिए. साथ ही, इसमें हर <Occupancy> क्वेरी के लिए सही रूम बंडल होने चाहिए.

    ध्यान दें: ऐसा हो सकता है कि <OccupancyDetails> हमेशा किसी क्वेरी में न दिखे. ऐसे मामलों में, आपको यह मानकर चलना चाहिए कि सभी मेहमान वयस्क हैं.

<UserCountry> Pricing string

उपयोगकर्ता की जगह के देश के हिसाब से दरों को फ़िल्टर करता है. यह वैल्यू, दो अक्षरों वाला देश का कोड होती है. जैसे, अमेरिका के लिए “US” या क्षेत्रीय कोड, जैसे कि “यूरोप” के लिए "EU".

जिन क्वेरी में <UserCountry> की जानकारी दी गई है उनके लिए लेन-देन का मैसेज मिलना चाहिए. इसमें क्वेरी किए गए देश के लिए तय किए गए <Rates> ब्लॉक का इस्तेमाल किया जाना चाहिए.

<UserDevice> Pricing string

उपयोगकर्ता जिस डिवाइस से खोज कर रहा है उसके हिसाब से दरों को फ़िल्टर करता है. जितनी तरह के साइटमैप हो सकते हैं उनकी जानकारी यहां दी गई है:

  • mobile
  • desktop
  • tablet

जिन क्वेरी में <UserDevice> तय किया गया है उनके नतीजों में लेन-देन का मैसेज मिलना चाहिए. साथ ही, जिनमें क्वेरी किए गए डिवाइस के टाइप के हिसाब से सही <Rates> ब्लॉक दिया गया है.

उदाहरण

होम में लोगों की मौजूदगी की जानकारी

इस उदाहरण में, <Context> में <Occupancy> के लिए मौजूदा कीमत से जुड़ी क्वेरी दिखाई गई है. 'लाइव किराया' क्वेरी तीन वयस्क मेहमानों के लिए है.

<?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> के साथ मौजूदा कीमत से जुड़ी क्वेरी दिखाई गई है. 'लाइव किराया' क्वेरी चार मेहमानों के लिए है, जिनमें से दो बच्चे हैं. यह मोबाइल डिवाइस से अमेरिका में होटल की बुकिंग करने पर लागू होने वाली किराये की जानकारी मांगती है:

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