Żądania
Składnia
Wiadomość OTA_HotelAvailNotifRQ ma tę składnię:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="message_ID"
TimeStamp="timestamp"
Version="3.0">
<POS>
<Source>
<RequestorID ID="partner_key"/>
</Source>
</POS>
<AvailStatusMessages HotelCode="HotelID">
<AvailStatusMessage BookingLimit="integer">
<StatusApplicationControl Start="YYYY-MM-DD"
End="YYYY-MM-DD"
Mon="boolean"
Tue="boolean"
Weds="boolean"
Thur="boolean"
Fri="boolean"
Sat="boolean"
Sun="boolean"
InvTypeCode="RoomID"/>
</AvailStatusMessage>
<AvailStatusMessage>
<StatusApplicationControl Start="YYYY-MM-DD"
End="YYYY-MM-DD"
Mon="boolean"
Tue="boolean"
Weds="boolean"
Thur="boolean"
Fri="boolean"
Sat="boolean"
Sun="boolean"
InvTypeCode="RoomID"
RatePlanCode="PackageID"/>
<LengthsOfStay FixedPatternLength="integer">
<LengthOfStay Time="integer"
TimeUnit="[Day]"
MinMaxMessageType="[SetMaxLOS|SetMinLOS|SetForwardMaxStay|
SetForwardMinStay|FullPatternLOS]">
<LOS_Pattern FullPatternLOS="pattern"/>
</LengthOfStay>
</LengthsOfStay>
<RestrictionStatus Status="[Close|Open]"
Restriction="[Arrival|Departure|Master]"
MaxAdvancedBookingOffset="integer_or_duration"
MinAdvancedBookingOffset="integer_or_duration"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Każda wiadomość <OTA_HotelAvailNotifRQ> jest traktowana jako aktualizacja różnicowa.
W przypadku każdej usługi, daty, pokoju i pakietu określonych w <StatusApplicationControl> aktualizacja wcześniej zdefiniowanego ograniczenia zastępuje tylko wartość tego samego ograniczenia, a dodanie nowego ograniczenia nie wpływa na inne wcześniej zdefiniowane ograniczenia. Jeśli na przykład wcześniej zdefiniowano minimalną długość pobytu wynoszącą 2 dni, a następnie zaktualizowano nowy komunikat zawierający tylko maksymalną długość pobytu wynoszącą 7 dni, ta czynność nie spowoduje usunięcia poprzedniej wartości minimalnej długości pobytu.
Elementy i atrybuty
Wiadomość OTA_HotelAvailNotifRQ ma te elementy i atrybuty:
Uwaga: każdy rodzaj ograniczenia długości pobytu jest ustawiany niezależnie. Na przykład wiadomość, która ustawia wartość SetMaxLOS, nie nadpisuje wcześniej zdefiniowanej wartości SetForwardMaxStay.
| Element / @Atrybut | Wystąpienia | Typ | Opis |
|---|---|---|---|
| OTA_HotelAvailNotifRQ | 1 | Complex element | Element główny wiadomości określającej dostępność stawek za pokój. |
| OTA_HotelAvailNotifRQ / @xmlns | 0..1 | string (URI) | Przestrzeń nazw XML. |
| OTA_HotelAvailNotifRQ / @EchoToken | 1 | string | Unikalny identyfikator tej wiadomości z żądaniem. Ta wartość jest zwracana w wiadomości z odpowiedzią. Dozwolone znaki to a-z, A-Z, 0-9, _ (podkreślenie) i - (łącznik). |
| OTA_HotelAvailNotifRQ / @TimeStamp | 1 | DateTime | Data i godzina utworzenia tej wiadomości. |
| OTA_HotelAvailNotifRQ / @Version | 1 | decimal | wersję wiadomości OpenTravel; |
| OTA_HotelAvailNotifRQ / POS | 0..1 | POS | Kontener do określania konta partnera dla tej wiadomości. Jest on zwykle używany, jeśli backend udostępnia pliki danych o cenach dla wielu kont partnerów. |
| OTA_HotelAvailNotifRQ / POS/ Source | 1 | Source | Wymagany, jeśli występuje <POS>. Kontener na potrzeby elementu <RequestorID>. |
| OTA_HotelAvailNotifRQ / POS / RequestorID | 1 | RequestorID | Wymagany, jeśli występuje <POS>. Określa konto partnera. |
| OTA_HotelAvailNotifRQ / POS / RequestorID / @ID | 1 | string | Konto partnera, do którego należy ta wiadomość. Ta wartość ciągu znaków to wartość Partner key podana na
stronie Ustawienia konta w Hotel Center.
Uwaga: jeśli masz backend, który udostępnia pliki danych dla wielu kont, ta wartość musi być zgodna z wartością atrybutu |
| OTA_HotelAvailNotifRQ / AvailStatusMessages | 1 | AvailStatusMessages | Kontener co najmniej 1 elementu <AvailStatusMessage>. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / @HotelCode | 1 | string | Unikalny identyfikator usługi. Ta wartość musi być zgodna z identyfikatorem hotelu określonym za pomocą elementu <id> w elemencie <listing> w pliku danych z listą hoteli. Identyfikator hotelu jest też podany w Hotel Center. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage | 1..n | AvailStatusMessage | Określa dostępność i ograniczenia stawek za pokój w różnych przedziałach czasowych w przypadku jednego obiektu. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / @BookingLimit | 1 | integer |
Uwaga: preferowana jest wiadomość
OTA_HotelInvCountNotifRQ zamiast ustawiania tego atrybutu. Liczba pozostałych pokoi, które można zarezerwować w zakresie dat w Musi być równa lub większa od 0. Jeśli wartość jest ujemna lub nie została podana, domyślnie przyjmuje wartość 0. Uwaga: aby określić dostępność pokoju dla danego ustawienia |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl | 1 | StatusApplicationControl | Określa zakres dat oraz identyfikatory typu pokojuInvTypeCode i planu cenowegoRatePlanCode. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Start | 1 | Date | Data rozpoczęcia w strefie czasowej usługi, która jest uwzględniona w zakresie dat. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @End | 1 | Date | Data zakończenia (w strefie czasowej usługi), w tym zakres dat. Musi być równa lub większa niż wartość start.
Jeśli wartości start i end są równe, aktualizacja zostanie zastosowana do tej daty. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Mon | 0..1 | boolean | Ustaw wartość true lub 1, aby wyraźnie uwzględnić poniedziałki.
Jeśli jest ustawiona na |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Tue | 0..1 | boolean | Ustaw wartość true lub 1, aby wyraźnie uwzględnić wtorki.
Jeśli ustawisz wartość |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Weds | 0..1 | boolean | Ustaw wartość true lub 1, aby wyraźnie uwzględnić środy.
Jeśli ustawisz wartość |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Thur | 0..1 | boolean | Ustaw wartość true lub 1, aby wyraźnie uwzględnić czwartki.
Jeśli ustawisz wartość |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Fri | 0..1 | boolean | Ustaw wartość true lub 1, aby wyraźnie uwzględnić piątki.
Jeśli ustawisz wartość |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Sat | 0..1 | boolean | Ustaw na true lub 1, aby wyraźnie uwzględnić soboty.
Jeśli ta opcja jest ustawiona na |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @Sun | 0..1 | boolean | Ustaw wartość true lub 1, aby wyraźnie uwzględnić niedziele.
Jeśli ustawisz wartość |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @InvTypeCode | 1 | string | Unikalny identyfikator asortymentu (rodzaju pokoju). Ta wartość jest mapowana na <RoomID> w wiadomości Transakcje (dane usługi). |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / StatusApplicationControl / @RatePlanCode | 0..1 | string | Unikalny identyfikator planu cenowego. Ten identyfikator jest mapowany na wartość elementu <PackageID> w wiadomości Transaction (Property Data) (Transakcja (dane o obiekcie)). Plan taryfowy jest dalej definiowany i określany w <StatusApplicationControl> w wiadomościach <OTA_HotelRateAmountNotifRQ> i <OTA_HotelAvailNotifRQ>.
Atrybut |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay | 0..1 | LengthsOfStay | Kontener do definiowania ograniczeń długości pobytu. Nie może występować, jeśli atrybut BookingLimit jest uwzględniony w atrybucie <AvailStatusMessage>. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / @FixedPatternLength | 0..1 | integer | Długość wzorca zdefiniowanego w FullPatternLOS.
Uwaga: ten atrybut musi być ustawiony, gdy używasz atrybutu |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / LengthOfStay | 1..n | LengthOfStay | Określa ograniczenia dotyczące długości pobytu. Jeśli używasz więcej niż 1 elementu <LengthOfStay>, każdy z nich musi określać inną wartość MinMaxMessageType. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / LengthOfStay / @Time | 0..1 | integer | Wartość jednostkowa pomiaru długości pobytu. Pamiętaj, że wartość 0 jest traktowana jako brak ograniczeń. Na przykład <LengthOfStay
Time="0" MinMaxMessageType="SetMaxLOS"> oznacza, że nie ma maksymalnej długości pobytu.
Uwaga: ten atrybut musi być ustawiony, chyba że używasz atrybutu |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / LengthOfStay / @TimeUnit | 0..1 | enum | Jednostka czasu. Domyślnie "Day", jeśli nie podano żadnej wartości. Prawidłowa wartość to:
"Day" jest równa 1 noclegowi.
|
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / LengthOfStay / @MinMaxMessageType | 1 | enum | Różne typy ograniczeń długości pobytu. SetMaxLOS, SetMinLOS i FullPatternLOS są oparte na przybyciu. Wartości SetForwardMinStay i
SetForwardMaxStay są obliczane na podstawie czasu trwania sesji. Wartości maksymalne muszą być większe od wartości minimalnych lub im równe. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / LengthOfStay / LOS_Pattern | 0..1 | LOS_Pattern | Definiuje wzorzec ograniczenia długości pobytu.
Uwaga: ten element musi być obecny, gdy używasz |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / LengthsOfStay / LengthOfStay / LOS_Pattern / @FullPatternLOS | 1 | string | Ciąg znaków Y i N wskazujący, czy każdy okres pobytu jest dozwolony, od jednej nocy do wartości w FixedPatternLength. W przypadku pobytów dłuższych niż
FixedPatternLength wartość jest dziedziczona z ostatniej pozycji. Na przykład w przypadku wartości FixedPatternLength="4" i
FullPatternLOS="YNYN" dozwolone są tylko pobyty trwające 1 dzień i 3 dni.
|
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / RestrictionStatus | 0..1 | RestrictionStatus | Określa ograniczenia dotyczące planu podróży. Nie może występować, jeśli atrybut BookingLimit jest uwzględniony w atrybucie <AvailStatusMessage>. |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / RestrictionStatus / @Status | 0..1 | enum | Wskazuje, czy typ ograniczenia określony przez atrybut Restriction jest otwarty czy zamknięty. Prawidłowe wartości to:
Wartości Open i Close z Arrival:
Ta kombinacja określa, które daty w planie podróży są dostępne
na zameldowanie.Open i Close z Departure:
Ta kombinacja określa, które daty w planie podróży są dostępne
na wymeldowanie.Data Na przykład pobyt od 1 do 4 kwietnia, w przypadku którego przyjazdy są niemożliwe w dniach 2–4 kwietnia, nadal można zarezerwować. Uwaga:
|
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / RestrictionStatus / @Restriction | 0..1 | enum | Ten atrybut jest wymagany, jeśli podano wartość Prawidłowe wartości to:
Zarówno Na przykład w przypadku 3-dniowego pobytu z datą przyjazdu 1 kwietnia pełny plan podróży to 1–4 kwietnia. Wartość Uwaga: jeśli nie podasz wartości |
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / RestrictionStatus / @MinAdvancedBookingOffset | 0..1 | integer or duration | Minimalny czas przed datą przyjazdu (w lokalnej strefie czasowej obiektu), w którym można zarezerwować tę cenę pokoju.
Prawidłowe typy wartości to:
|
| OTA_HotelAvailNotifRQ / AvailStatusMessages / AvailStatusMessage / RestrictionStatus / @MaxAdvancedBookingOffset | 0..1 | integer or duration | Maksymalny czas przed datą przyjazdu (w lokalnym czasie obiektu), w którym można zarezerwować tę cenę pokoju.
Prawidłowe typy wartości to:
|
Przykłady
Data przyjazdu LoS
Ustaw minimalną i maksymalną długość pobytu (na podstawie daty przyjazdu).
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<LengthsOfStay>
<LengthOfStay Time="5" MinMaxMessageType="SetMaxLOS"/>
<LengthOfStay Time="2" MinMaxMessageType="SetMinLOS"/>
</LengthsOfStay>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Czas trwania pobytu
Ustaw minimalną i maksymalną długość pobytu (na podstawie pobytu obejmującego kilka nocy).
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<LengthsOfStay>
<LengthOfStay Time="5" MinMaxMessageType="SetForwardMaxStay"/>
<LengthOfStay Time="2" MinMaxMessageType="SetForwardMinStay"/>
</LengthsOfStay>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Usuwanie ograniczeń dotyczących poziomu usług
Ustawienie Time="0" w atrybucie <LengthOfStay> oznacza, że nie ma ograniczeń dotyczących określonej długości pobytu. Na przykład <LengthOfStay Time="0" MinMaxMessageType="SetMaxLOS"/> oznacza, że nie ma ograniczenia maksymalnej długości pobytu.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2024-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2024-07-26"
End="2024-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<LengthsOfStay>
<LengthOfStay Time="0" MinMaxMessageType="SetMaxLOS"/>
</LengthsOfStay>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Ograniczenie wyjazdu
Ustaw ograniczenie „zamknięte przed odjazdem”. (Zapobiega to tworzeniu planów podróży z datami wymeldowania w określonych dniach).
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Close" Restriction="Departure"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Ograniczenie przyjazdu
Ustaw ograniczenie dotyczące zamknięcia możliwości przyjazdu. (Zapobiega to tworzeniu planów podróży z datami zameldowania w określonych dniach).
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Close" Restriction="Arrival"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Otwórz daty dostępności
Otwórz dostępność dla typu pokoju i planu cenowego w określonych datach.
Uwaga: aby ceny były w pełni dostępne, musisz podać stawki za nocleg oraz liczbę pokoi danego typu większą niż 0.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Open" Restriction="Master"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Zamykanie dat dostępności
Zamknij dostępność typu pokoju i planu cenowego w określonych datach. (Jest to tzw. „wstrzymanie sprzedaży”).
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Close" Restriction="Master"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Ograniczenia dotyczące rezerwacji z wyprzedzeniem
Ustaw ograniczenia minimalnego i maksymalnego okresu rezerwacji z wyprzedzeniem, które są stosowane tylko w weekendy.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-01-01"
End="2023-06-30"
Mon=”false”
Tue=”false”
Weds=”false”
Thur=”false”
Fri=”false”
Sat=”true”
Sun=”true”
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus MaxAdvancedBookingOffset="30"
MinAdvancedBookingOffset="2"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Ostateczny termin rezerwacji
Zastosuj limit rezerwacji w dniu przyjazdu o godzinie 18:00 czasu lokalnego hotelu.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-01-01"
End="2023-06-30"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus MinAdvancedBookingOffset="P0DT6H0M"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Wiele ograniczeń
Ustawianie wielu ograniczeń w tych samych datach dla typu pokoju i planu cenowego.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Open" Restriction="Master"/>
</AvailStatusMessage>
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Close" Restriction="Arrival"/>
</AvailStatusMessage>
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<RestrictionStatus Status="Close" Restriction="Departure"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Limit rezerwacji
Ustawianie liczby pokoi danego typu w określonych datach.
Uwaga: preferowane jest ustawienie tego atrybutu w wiadomości OTA_HotelInvCountNotifRQ.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage BookingLimit="5">
<!-- Note: RatePlanCode must not be specified here when setting inventory counts. -->
<StatusApplicationControl Start="2023-07-26"
End="2023-07-31"
InvTypeCode="RoomID_1"/>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
FullPatternLoS
Ustaw ograniczenie długości pobytu dla całego wzorca.
W przypadku zameldowania 26 lipca 2023 r. dozwolone są tylko pobyty trwające 2, 4 i 6 dni. Długości pobytu 1, 3, 5 i 7+ są niedostępne.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="12345678"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<AvailStatusMessages HotelCode="Property_1">
<AvailStatusMessage>
<StatusApplicationControl Start="2023-07-26"
End="2023-07-26"
InvTypeCode="RoomID_1"
RatePlanCode="PackageID_1"/>
<LengthsOfStay FixedPatternLength="7">
<LengthOfStay MinMaxMessageType="FullPatternLOS">
<LOS_Pattern FullPatternLOS="NYNYNYN"/>
</LengthOfStay>
</LengthsOfStay>
</AvailStatusMessage>
</AvailStatusMessages>
</OTA_HotelAvailNotifRQ>
Odpowiedzi
Składnia
Wiadomość OTA_HotelAvailNotifRS ma tę składnię:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
TimeStamp="timestamp"
EchoToken="echo_token"
Version="3.0">
<!-- Either Success or Errors will be populated. -->
<Success/>
<Errors>
<Error Type="12" Status="NotProcessed" ShortText="issue_code">issue_description</Error>
</Errors>
</OTA_HotelAvailNotifRS>
Elementy i atrybuty
Wiadomość OTA_HotelAvailNotifRS ma te elementy i atrybuty:
| Element / @Atrybut | Wystąpienia | Typ | Opis |
|---|---|---|---|
| OTA_HotelAvailNotifRS | 1 | Complex element | Element główny odpowiedzi na wiadomość o dostępności. |
| OTA_HotelAvailNotifRS / @TimeStamp | 1 | DateTime | Data i godzina utworzenia tej wiadomości. |
| OTA_HotelAvailNotifRS / @EchoToken | 1 | string | Unikalny identyfikator z powiązanejOTA_HotelAvailNotifRQ wiadomości. |
| OTA_HotelAvailNotifRS / Success | 0..1 | Success | Wskazuje, że wiadomość OTA_HotelAvailNotifRQ została przetworzona.
W każdej wiadomości występuje element |
| OTA_HotelAvailNotifRS / Errors | 0..1 | Errors | Kontener na co najmniej 1 problem napotkany podczas przetwarzania wiadomości OTA_HotelAvailNotifRQ.
W każdej wiadomości występuje element |
| OTA_HotelAvailNotifRS / Errors / Error | 1..n | Error | Opis błędu, który wystąpił podczas przetwarzania wiadomościOTA_HotelAvailNotifRQ. Szczegółowe informacje o tych błędach znajdziesz w artykule
Komunikaty o błędach stanu pliku danych. |
| OTA_HotelAvailNotifRS / Errors / Error / @Type | 1 | integer | Typ błędu lub ostrzeżenia OpenTravel Alliance EWT (Error Warning Type) powiązany z błędem. Używana jest tylko wartość 12 (Processing exception). |
| OTA_HotelAvailNotifRS / Errors / Error / @Code | 1 | integer | Kod błędu OpenTravel Alliance ERR powiązany z błędem.
Używana jest tylko wartość 450 (Unable to process). |
| OTA_HotelAvailNotifRS / Errors / Error / @Code | 1 | enum | Stan pierwotnej prośby. Używana jest tylko wartość NotProcessed. |
| OTA_HotelAvailNotifRS / Errors / Error / @ShortText | 1 | string | Identyfikator problemu w Google. Szczegółowe informacje o tych błędach znajdziesz w artykule Komunikaty o błędach stanu pliku danych. |
Przykłady
Sukces
Poniżej znajduje się odpowiedź na pomyślnie przetworzoną wiadomość OTA_HotelAvailNotifRQ.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<Success/>
</OTA_HotelAvailNotifRS>
Błędy
Poniżej znajduje się odpowiedź na komunikat OTA_HotelAvailNotifRQ, który nie został przetworzony z powodu błędów.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelAvailNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
TimeStamp="2023-07-21T20:50:37-05:00"
Version="3.0">
<Errors>
<Error Type="12" Code="450" Status="NotProcessed" ShortText="8001">Example</Error>
</Errors>
</OTA_HotelAvailNotifRS>