Creación de un mensaje de sugerencia
Si se registra para la incorporación de cambios con solicitudes de sugerencias, Microsoft envía un mensaje con el siguiente formulario al punto de conexión que especifique para pedirle que identifique los cambios de itinerario desde la última solicitud de incorporación de cambios. Decide la frecuencia de las solicitudes en el momento de incorporarse.
<?xml version="1.0" encoding="UTF-8"?>
<HintRequest id="123-abc" timestamp="2017-10-21T08:45:09Z">
<LastFetchTime>2017-10-21T08:30:16Z</LastFetchTime>
</HintRequest>
El LastFetchTime
elemento identifica la fecha y hora UTC de la última respuesta correcta que envió a Microsoft que identificó los cambios de itinerario. Si no ha habido cambios desde ese momento, la respuesta debe contener un cuerpo vacío. Si se han producido cambios, el cuerpo contiene un mensaje de sugerencia , que identifica los itinerarios que han cambiado. Puede identificar los itinerarios mediante uno de los métodos siguientes:
Itinerarios exactos
El mensaje de sugerencia puede identificar los itinerarios individuales mediante la fecha de registro y la duración de la estancia. En el ejemplo siguiente se muestra un mensaje de sugerencia que especifica un único itinerario para un único hotel.
<Hint>
<Item>
<Property>789</Property>
<Stay>
<CheckInDate>2017-10-20</CheckInDate>
<LengthOfStay>2</LengthOfStay>
</Stay>
</Item>
</Hint>
Cada <elemento> representa un itinerario individual. Puede especificar un <objeto Item> para cada itinerario que quiera actualizar y cada itinerario puede especificar una o varias propiedades.
Cuando Microsoft recibe la sugerencia anterior, le envía el siguiente mensaje de consulta :
<Query>
<Checkin>2017-10-20</Checkin>
<Nights>2</Nights>
<PropertyList>
<Property>789</Property>
</PropertyList>
</Query>
Cuando reciba el mensaje Consulta, la respuesta debe contener una fuente price con el siguiente <resultado>.
<Result>
<Property>789</Property>
<Checkin>2017-10-20</Checkin>
<Nights>2</Nights>
<!-- Pricing and other elements that changed -->
</Result>
Si la sugerencia anterior especifica dos propiedades, la fuente Price contendrá dos <elementos Result> (uno para cada propiedad).
Intervalos de fechas de registro
El mensaje de sugerencia puede identificar una serie de itinerarios. Para especificar el intervalo, establezca el FirstDate
elemento en la fecha de inicio de la protección y en LastDate
la última fecha de protección. En el ejemplo siguiente se muestra un mensaje de sugerencia que usa un intervalo de fechas para especificar seis fechas de protección para una sola propiedad.
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<Property>123</Property>
<FirstDate>2017-10-20</FirstDate>
<LastDate>2017-10-25</LastDate>
</Item>
</Hint>
Cada <elemento> representa un único intervalo de fechas de registro. Puede especificar un <objeto Item> para cada intervalo de fechas de registro que identifique los itinerarios que desea actualizar y cada uno de ellos puede especificar una o varias propiedades.
Cuando Microsoft recibe la sugerencia anterior, le envía el siguiente mensaje de consulta .
<Query>
<FirstDate>2017-10-20</FirstDate>
<LastDate>2017-10-25</LastDate>
<Nights>3</Nights>
<PropertyList>
<Property>123</Property>
</PropertyList>
</Query>
Al obtener el mensaje Consulta, la respuesta debe contener una fuente Price con los siguientes <objetos Result> .
<Result>
<Property>789</Property>
<Checkin>2017-10-20</Checkin>
<Nights>1</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-20</Checkin>
<Nights>2</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-20</Checkin>
<Nights>3</Nights>
<!-- Pricing and other elements that changed -->
</Result>
. . .
<Result>
<Property>789</Property>
<Checkin>2017-10-25</Checkin>
<Nights>1</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-25</Checkin>
<Nights>2</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-25</Checkin>
<Nights>3</Nights>
<!-- Pricing and other elements that changed -->
</Result>
En este ejemplo, el número máximo de resultados que debe contener la fuente Precio es de 18 (6 fechas de registro * 3 noches). Su fuente de precios puede contener menos si algunos itinerarios con el intervalo de fechas no cambiaron.
Intervalos de fechas de registro expandidos
La sugerencia de intervalo de fechas de check-in expandido es similar a la sugerencia de intervalo de fechas de check-in, excepto que le pide que incluya todos los itinerarios que intersecan los itinerarios en el intervalo de fechas. Por lo tanto, su fuente de precios debe incluir cualquier itinerario cuya fecha de salida se encuentre dentro del intervalo de fechas.
<StaysIncludingRange> identifica la sugerencia como una sugerencia de intervalo de fechas de protección expandida. Para especificar el intervalo, establezca el FirstDate
elemento en la fecha de inicio de la protección y en LastDate
la última fecha de protección. En el ejemplo siguiente se muestra un mensaje de sugerencia que usa un intervalo de fechas para especificar seis fechas de protección para una sola propiedad.
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
<Item>
<Property>123</Property>
<StaysIncludingRange>
<FirstDate>2017-10-20</FirstDate>
<LastDate>2017-10-25</LastDate>
</StaysIncludingRange>
</Item>
</Hint>
Cada <elemento> representa una única gama de itinerarios. Puede especificar un <objeto Item> para cada intervalo de fechas de registro que identifique los itinerarios que desea actualizar y cada uno de ellos puede especificar una o varias propiedades.
Cuando Microsoft recibe la sugerencia anterior, le envía el siguiente mensaje de consulta . La MaxLengthOfStay
configuración del mensaje QueryControl determina el valor de <AffectedNights> (en este ejemplo se supone que está establecido en 3).
<Query>
<FirstDate>2017-10-20</FirstDate>
<LastDate>2017-10-25</LastDate>
<AffectedNights>3</AffectedNights>
<PropertyList>
<Property>123</Property>
</PropertyList>
</Query>
Al obtener el mensaje Consulta, la respuesta debe contener una fuente Price con los siguientes <objetos Result> . Observe que la fecha de registro de los primeros varios objetos es anterior a la fecha de la FirstDate
sugerencia. Esto se debe a que la fecha de salida de los itinerarios se encuentra dentro del intervalo de fechas de la sugerencia.
<Result>
<Property>789</Property>
<Checkin>2017-10-17</Checkin>
<Nights>3</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-18</Checkin>
<Nights>2</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-18</Checkin>
<Nights>3</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-19</Checkin>
<Nights>1</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-19</Checkin>
<Nights>2</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-19</Checkin>
<Nights>3</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-20</Checkin>
<Nights>1</Nights>
<!-- Pricing and other elements that changed -->
</Result>
. . .
<Result>
<Property>789</Property>
<Checkin>2017-10-25</Checkin>
<Nights>1</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-25</Checkin>
<Nights>2</Nights>
<!-- Pricing and other elements that changed -->
</Result>
<Result>
<Property>789</Property>
<Checkin>2017-10-25</Checkin>
<Nights>3</Nights>
<!-- Pricing and other elements that changed -->
</Result>
Consultas por lotes
En función del número de propiedades e itinerarios que necesite actualizar, Microsoft le envía varias consultas más pequeñas en lugar de una consulta grande. Por ejemplo, si necesita actualizar itinerarios para 1000 propiedades, Microsoft puede enviarle 100 mensajes de consulta con 10 propiedades cada una.