Master-Interlook:HotelService — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
Строка 269: Строка 269:
  
 
Возвращаемый результат:
 
Возвращаемый результат:
* '''ConnectResult''' – идентификатор аутентификации (если аутентификация прошла успешно. то получаем идентификатор, в противном случае результат ''-1'')
+
* '''ManageBookingResult''' – массив данных
 +
* '''HotelServiceId''' – ключ сервиса отеля
 +
* '''HotelServiceName''' – имя сервиса отеля
 +
** '''Hotel''' – массив данных по отелям
 +
*** '''HotelId''' – ключ отеля
 +
*** '''HotelName''' – имя отеля
 +
** '''Pansion''' – тип питания
 +
*** '''PansionId''' – ключ питания
 +
*** '''PansionName''' – имя питания
 +
** '''RoomType''' – тип номера
 +
*** '''RoomTypeId''' – ключ типа номера
 +
*** '''RoomTypeName''' – имя типа номера
 +
** '''RoomAccomodation''' – тип размещения
 +
*** '''AccommodationId''' – ключ типа размещения
 +
*** '''AccommodationName''' – имя типа размещения
 +
** '''RoomCategory''' – категория номер
 +
*** '''RoomCategoryId''' – ключ категории номера
 +
*** '''RoomCategoryName''' – имя категории номера
 +
** '''Status''' – статус по услуге проживания
 +
*** '''StatusId''' – ключ статуса по услуге проживания
 +
*** '''StatusName''' – имя статуса по услуге проживания
 +
** '''HotelConfirmationNumber''' – номер заказа у поставщика<br />
 +
 
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:900px">Пример
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="99%"><TR><TD>
Вызов метода Connect
+
Вызов метода ManageBooking
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <tem:Connect>
+
       <tem:ManageBooking>
 +
        <!--Optional:-->
 +
        <tem:guid>f0ba2139-558e-4c42-baf5-66c532bf15ee</tem:guid>
 +
        <tem:hotelServiceId>163806</tem:hotelServiceId>
 +
 
 
         <!--Optional:-->
 
         <!--Optional:-->
         <tem:login>mk1</tem:login>
+
         <tem:hotelConfirmationNumber>88888888i</tem:hotelConfirmationNumber>
 
         <!--Optional:-->
 
         <!--Optional:-->
         <tem:password>123</tem:password>
+
         <tem:message>яварааааааааарвя</tem:message>
       </tem:Connect>
+
       </tem:ManageBooking>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Возвращаемый результат метода Connect
+
Возвращаемый результат метода ManageBooking
 
<syntaxhighlight lang="java" enclose="div">
 
<syntaxhighlight lang="java" enclose="div">
 
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
   <soap:Body>
 
   <soap:Body>
       <ConnectResponse xmlns="http://tempuri.org/">
+
       <ManageBookingResponse xmlns="http://tempuri.org/">
         <ConnectResult>123c02db-3d47-4db5-861b-758be524a5fe</ConnectResult>
+
         <ManageBookingResult Message="Ok">
       </ConnectResponse>
+
            <Data>
 +
              <ManageBookingResult>
 +
                  <HotelServiceId>163806</HotelServiceId>
 +
                  <HotelServiceName>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
 +
                  <Hotel>
 +
                    <HotelId>2935</HotelId>
 +
                    <HotelName>Hilton</HotelName>
 +
                  </Hotel>
 +
                  <Pansion>
 +
                    <PansionId>3</PansionId>
 +
                    <PansionName>Bed and Breakfast</PansionName>
 +
                  </Pansion>
 +
                  <RoomType>
 +
                    <RoomTypeId>3</RoomTypeId>
 +
                    <RoomTypeName>Double Room</RoomTypeName>
 +
                  </RoomType>
 +
                  <RoomAccomodation>
 +
                    <AccommodationId>5558</AccommodationId>
 +
                    <AccommodationName>2AD</AccommodationName>
 +
                  </RoomAccomodation>
 +
                  <RoomCategory>
 +
                    <RoomCategoryId>20</RoomCategoryId>
 +
                    <RoomCategoryName>Jakuzzi</RoomCategoryName>
 +
                  </RoomCategory>
 +
                  <Status>
 +
                    <StatusId>1</StatusId>
 +
                    <StatusName>Wait</StatusName>
 +
                  </Status>
 +
                  <HotelConfirmationNumber>88888888i</HotelConfirmationNumber>
 +
              </ManageBookingResult>
 +
            </Data>
 +
        </ManageBookingResult>
 +
       </ManageBookingResponse>
 
   </soap:Body>
 
   </soap:Body>
 
</soap:Envelope>
 
</soap:Envelope>

Версия 13:58, 16 ноября 2021

Версия статьи от 16-11-2021.

Поддерживаемые версии «»:
Начиная с


Введение

Сервис InterlookHotelService работает с методами REST API. Для вызова методов REST API можно использовать SoapUi.

Предупреждение


Для доступа к сервису у онлайн пользователя должен быть установлен признак Hotel/Service в настройке Person connection и в настройках Role активирован параметр Show hotel reservations by date.


Методы HotelService

Методы аутентификации

Connect (Получение аутентификационного токена)

Принимаемые параметры запроса ( * – обязательный):

  • Login * – логин online пользователя
  • Password * – пароль online пользователя

Возвращаемый результат:

  • ConnectResult – идентификатор аутентификации (если аутентификация прошла успешно. то получаем идентификатор, в противном случае результат -1)
Пример

Вызов метода Connect

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:Connect>
         <!--Optional:-->
         <tem:login>mk1</tem:login>
         <!--Optional:-->
         <tem:password>123</tem:password>
      </tem:Connect>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода Connect

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <ConnectResponse xmlns="http://tempuri.org/">
         <ConnectResult>123c02db-3d47-4db5-861b-758be524a5fe</ConnectResult>
      </ConnectResponse>
   </soap:Body>
</soap:Envelope>


CheckConnect (Проверка активности подключения под конкретным идентификатором)

Метод проверяет наличие активного подключения под конкретным идентификатором аутентификации.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • CheckConnectResult – идентификатор аутентификации (true – если подключение активно, false – если подключения нет)
Пример

Вызов метода CheckConnect

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tem="http://tempuri.org/">
   <soap:Header/>
   <soap:Body>
      <tem:CheckConnect>
         <!--Optional:-->
         <tem:guid>123c02db-3d47-4db5-861b-758be524a5fe</tem:guid>
      </tem:CheckConnect>
   </soap:Body>
</soap:Envelope>

Возвращаемый результат метода CheckConnect

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <CheckConnectResponse xmlns="http://tempuri.org/">
         <CheckConnectResult>true</CheckConnectResult>
      </CheckConnectResponse>
   </soap:Body>
</soap:Envelope>


Методы поиска

SearchBookings (Получение списка забронированных заявок)

Метод предназначен для поиска забронированных заявок. Отбираются те заявки, у которых партнер предоставления услуги совпадает с партнером для логина, под которым осуществляется поиск. Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • hotelID – массив данных с ключами отелей. Можно передавать как один так и несколько ключей отелей. Если не передаём данный параметр, то в ответ получаем все заказы, подходящие под выбранные даты.
  • dateInfo * – по какой дате осуществлять поиск (1 - дата создания, 2 - дата заезда, 3 - дата выезда)
  • dateFrom * – дата начала
  • dateTo * – дата окончания
  • checkInFrom – дата заезда от
  • checkInTo – дата заезда по
  • New – возвращает новые бронирования с датой, попадающей в указанное выше условие
  • change – возвращает измененные бронирования с изменениями, внесенными в выбранный период
  • cancel – возвращает информацию об отмененных бронировки за выбранный период

Возвращаемый результат:

  • SearchBookingsResult – массив данных ответа
    • BookingInfo – массив данных брони
      • Booking – номер брони в системе Interlook
      • BookingID – ключ заявки из базы данных
      • Action – новая, отмененная или измененная заявка
      • CreationDate – дата создания услуги в заявке
      • ChangeDate – не используется
      • CancelDate – не используется
      • CustomerMarket – данные туроператора, оформившего заявку
        • CustomerMarketId – ключ туроператора, оформившего заявку
        • CustomerMarketName – имя туроператора, оформившего заявку
      • HotelServices – массив данных по сервисам отелей
        • HotelServiceInfo – информация по сервису отеля
          • HotelServiceId – ключ сервиса отеля
          • HotelServiceName – имя сервиса отеля
          • Hotel – массив данных по отелям
            • HotelId – ключ отеля
            • HotelName – имя отеля
          • Pansion – тип питания
            • PansionId – ключ питания
            • PansionName – имя питания
          • RoomType – тип номера
            • RoomTypeId – ключ типа номера
            • RoomTypeName – имя типа номера
          • RoomAccomodation – тип размещения
            • AccommodationId – ключ типа размещения
            • AccommodationName – имя типа размещения
          • RoomCategory – категория номер
            • RoomCategoryId – ключ категории номера
            • RoomCategoryName – имя категории номера
          • Status – статус по услуге проживания
            • StatusId – ключ статуса по услуге проживания
            • StatusName – имя статуса по услуге проживания
          • HotelConfirmationNumber – номер заказа у поставщика
          • CheckIn – дата заезда в отель
          • CheckOut – дата выезда из отеля
          • Tourists – массив данных туристов
            • TouristInfo – массив данных по туристу
              • Name – имя туриста
              • BirthDate – дата рождения туриста
              • Sex – пол туриста
              • HotelServiceId – ключ услуги проживания с которой связан турист
      • MessageInfo – массив данных сообщений
        • Id – идентификатор сообщения
        • IsOutgoing – исходящее (true - исходящее, false - входящее)
        • DateCreate – дата создания сообщения
        • IsRead – прочитано (true - прочитано, false - не прочитано )
        • Text – текст сообщения
Пример

Вызов метода SearchBookings

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:SearchBookings>
         <!--Optional:-->
         <tem:guid>ba9f3a81-8890-4615-b293-1e1bada343fd</tem:guid>
         <!--Optional:-->
         <tem:hotelID>
            <!--Zero or more repetitions:-->
            <tem:int>2935</tem:int>
         </tem:hotelID>
         <tem:dateInfo>1</tem:dateInfo>
         <tem:dateFrom>2021-01-01</tem:dateFrom>
         <tem:dateTo>2021-12-01</tem:dateTo>
         <tem:New>true</tem:New>
         <tem:change>true</tem:change>
         <tem:cancel>true</tem:cancel>
      </tem:SearchBookings>
   </soapenv:Body>
</soapenv:Envelope></soapenv:Envelope>

Возвращаемый результат метода SearchBookings

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <SearchBookingsResponse xmlns="http://tempuri.org/">
         <SearchBookingsResult>
            <BookingInfo>
               <Booking>MT110711A01</Booking>
               <BookingID>35897</BookingID>
               <Action>New</Action>
               <CreationDate>2021-07-06T17:29:50.28</CreationDate>
               <ChangeDate xsi:nil="true"/>
               <CancelDate xsi:nil="true"/>
               <CustomerMarket>
                  <CustomerMarketId>2</CustomerMarketId>
                  <CustomerMarketName>Russian Market</CustomerMarketName>
               </CustomerMarket>
               <HotelServices>
                  <HotelServiceInfo>
                     <HotelServiceId>163806</HotelServiceId>
                     <HotelServiceName>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
                     <Hotel>
                        <HotelId>2935</HotelId>
                        <HotelName>Hilton</HotelName>
                     </Hotel>
                     <Pansion>
                        <PansionId>3</PansionId>
                        <PansionName>Bed and Breakfast</PansionName>
                     </Pansion>
                     <RoomType>
                        <RoomTypeId>3</RoomTypeId>
                        <RoomTypeName>Double Room</RoomTypeName>
                     </RoomType>
                     <RoomAccomodation>
                        <AccommodationId>5558</AccommodationId>
                        <AccommodationName>2AD</AccommodationName>
                     </RoomAccomodation>
                     <RoomCategory>
                        <RoomCategoryId>20</RoomCategoryId>
                        <RoomCategoryName>Jakuzzi</RoomCategoryName>
                     </RoomCategory>
                     <Status>
                        <StatusId>1</StatusId>
                        <StatusName>Wait</StatusName>
                     </Status>
                     <HotelConfirmationNumber>88888888i</HotelConfirmationNumber>
                     <CheckIn>2021-07-11T00:00:00</CheckIn>
                     <CheckOut>2021-07-20T00:00:00</CheckOut>
                     <Tourists>
                        <TouristInfo>
                           <Name>PatnadzProc Gen</Name>
                           <BirthDate>1966-02-27T00:00:00</BirthDate>
                           <Sex>MR</Sex>
                           <HotelServiceId>163806</HotelServiceId>
                        </TouristInfo>
         </Tourists>
                  </HotelServiceInfo>
               </HotelServices>
               <Mesaages>
                  <MessageInfo>
                     <Id>779217</Id>
                     <IsOutgoing>false</IsOutgoing>
                     <DateCreate>2021-11-15T22:21:34.393</DateCreate>
                     <IsRead>false</IsRead>
                     <Text>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB:яварааааааааарвя</Text>
                  </MessageInfo>
               </Mesaages>
            </BookingInfo>
    </SearchBookingsResult>
      </SearchBookingsResponse>
   </soap:Body>
</soap:Envelope>


Методы передачи изменений по услугам

ManageBooking (Передача изменений по услуге проживания в Interlook)

Принимаемые параметры запроса ( * – обязательный):

  • ManageBooking>
    • guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
    • hotelServiceId * – ключ услуги проживания (возвращается при запросе к методу SearchBookings)
    • status – фильтр для отбора услуг с определенным статусом (1 - Wait, 2 - Confirmed, 3 - notConfirmed)
    • hotelConfirmationNumber – номер брони от провайдера
    • message – сообщение для пользователя Interlook

Возвращаемый результат:

  • ManageBookingResult – массив данных
  • HotelServiceId – ключ сервиса отеля
  • HotelServiceName – имя сервиса отеля
    • Hotel – массив данных по отелям
      • HotelId – ключ отеля
      • HotelName – имя отеля
    • Pansion – тип питания
      • PansionId – ключ питания
      • PansionName – имя питания
    • RoomType – тип номера
      • RoomTypeId – ключ типа номера
      • RoomTypeName – имя типа номера
    • RoomAccomodation – тип размещения
      • AccommodationId – ключ типа размещения
      • AccommodationName – имя типа размещения
    • RoomCategory – категория номер
      • RoomCategoryId – ключ категории номера
      • RoomCategoryName – имя категории номера
    • Status – статус по услуге проживания
      • StatusId – ключ статуса по услуге проживания
      • StatusName – имя статуса по услуге проживания
    • HotelConfirmationNumber – номер заказа у поставщика
Пример

Вызов метода ManageBooking

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:ManageBooking>
         <!--Optional:-->
         <tem:guid>f0ba2139-558e-4c42-baf5-66c532bf15ee</tem:guid>
         <tem:hotelServiceId>163806</tem:hotelServiceId>

         <!--Optional:-->
         <tem:hotelConfirmationNumber>88888888i</tem:hotelConfirmationNumber>
         <!--Optional:-->
         <tem:message>яварааааааааарвя</tem:message>
      </tem:ManageBooking>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемый результат метода ManageBooking

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <ManageBookingResponse xmlns="http://tempuri.org/">
         <ManageBookingResult Message="Ok">
            <Data>
               <ManageBookingResult>
                  <HotelServiceId>163806</HotelServiceId>
                  <HotelServiceName>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
                  <Hotel>
                     <HotelId>2935</HotelId>
                     <HotelName>Hilton</HotelName>
                  </Hotel>
                  <Pansion>
                     <PansionId>3</PansionId>
                     <PansionName>Bed and Breakfast</PansionName>
                  </Pansion>
                  <RoomType>
                     <RoomTypeId>3</RoomTypeId>
                     <RoomTypeName>Double Room</RoomTypeName>
                  </RoomType>
                  <RoomAccomodation>
                     <AccommodationId>5558</AccommodationId>
                     <AccommodationName>2AD</AccommodationName>
                  </RoomAccomodation>
                  <RoomCategory>
                     <RoomCategoryId>20</RoomCategoryId>
                     <RoomCategoryName>Jakuzzi</RoomCategoryName>
                  </RoomCategory>
                  <Status>
                     <StatusId>1</StatusId>
                     <StatusName>Wait</StatusName>
                  </Status>
                  <HotelConfirmationNumber>88888888i</HotelConfirmationNumber>
               </ManageBookingResult>
            </Data>
         </ManageBookingResult>
      </ManageBookingResponse>
   </soap:Body>
</soap:Envelope>