Открыть главное меню

Изменения

Веб-служба поиска авиабилетов

178 байт добавлено, 14:47, 15 марта 2014
Нет описания правки
Это сервис внутри Nemo, который позволяет получить результаты поиска.
Для подключения к веб-службе поиска авиабилетов необходимо открыть доступ нужному пользователю. Это можно сделать в разделе '''«Администрирование»''' ? '''«Веб-служба. Авторизация»'''.
После добавления пользователя, ему будут присвоены Номер (№) и API ключ клиента, которые нужно использовать для подключения.
<Request>
<SearchFlights LinkOnly="?">
<!--LinkOnly - Позволяет управлять выдачей результатов. true - вернуть только ссылку на результаты поиска, без перелётов (занимает меньше времени), false - полная выдача, ссылки и перелёты.-->
<ODPairs Type="?" Direct="?" AroundDates="?">
<!--Type - тип перелёта, возможные значения: OW - туда, RT - туда-обратно, CR - сложный маршрут. Для перелета
туда-обратно или сложного маршрута необходимо добавить еще один или несколько тэгов ODPair, примеры далее-->
<!--Direct - искать только прямые перелёты, возможные значения: true/false--> <!--AroundDates - поиск по окружным датам, количество дней +/- от даты заезда/возвращения, значения: 0, 1, 3.
Применим только для типов перелёта в одну сторону(OW) и туда-обратно(RT)-->
<!--Zero or more repetitions:-->
<ODPair>
<DepDate>?</DepDate>
<!--DepDate - дата вылета, в формате ГГГГ-MM-ДД-->
<DepAirp CodeType="IATA">?</DepAirp>
<!--DepAirp - аэропорт вылета, IATA код-->
<ArrAirp CodeType="IATA">?</ArrAirp>
<!--ArrAirp - аэропорт прилёта, IATA код-->
</ODPair>
</ODPairs>
<!--Zero or more repetitions:-->
<Traveller Type="?" Count="?"/>
<!--Type - тип пассажира, возможные значения: ADT - взрослые, CNN - дети, INF - младенцы, INS - младенцы с местом--> <!--Count - количество пассажиров-->
</Travellers>
<Restrictions>
<ClassPref>?</ClassPref> <!--необязательный-->
<!--ClassPref - предпочитаемый класс поиска, возможные значения: economy, business, first.
Если не заполнять, то будет произведен поиск эконом класса-->
<OnlyAvail>?</OnlyAvail> <!--необязательный-->
<!--OnlyAvail - искать только доступные, возможные значения: true/false-->
<AirVPrefs>
<!--Zero or more repetitions:-->
<AirVPref Code="?" Include="?" Type="IATA"/> <!--необязательный-->
<!--Code - код авиакомпании, SU, FV и т.п.--> <!--Include - включить или исключить авиакомпанию из результатов: true - включить, false - исключить-->
</AirVPrefs>
<IncludePrivateFare>?</IncludePrivateFare> <!--необязательный-->
<!--IncludePrivateFare - искать цены для агентства, если true - то включаем приватные, false - публичные-->
<CurrencyCode>?</CurrencyCode> <!--необязательный-->
<!--CurrencyCode - код валюты, например: RUB, EUR-->
</Restrictions>
</SearchFlights>
<Source>
<ClientId>?</ClientId>
<!--ClientId - ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба. Авторизация".-->
<APIKey>?</APIKey>
<!--APIKey - секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" ? "Веб-служба. Авторизация".-->
<Language>?</Language>
<!--Language - язык, например: RU-->
<Currency>?</Currency>
<!-- Currency - валюта, например: RUB, EUR-->
</Source>
</RequestBin>
<SearchFlights>
<Flights SearchId="?" ResultURL="?">
<!--SearchId - номер процесса поиска в Nemo--> <!--ResultURL - ссылка на страницу просмотра результатов на сайте агентства-->
<Flight FlightId="?">
<!--FlightId - Id перелёта в системе Nemo-->
<WebService>?</WebService>
<!--WebService - поставщик перелёта-->
<ValCompany>?</ValCompany>
<!--ValCompany - код авиакомпании, являющейся валидирующим перевозчиком, IATA-->
<URL>?</URL>
<!--URL - ссылка на бронирование конкретного перелета-->
<Segments>
<Segment SegNum="?" SegGroupNum="?">
<!--SegNum - номер сегмента в перелёте-->
<!--SegGroupNum – номер плеча перелёта-->
<DepAirp CodeType="IATA">?</DepAirp>
<!--DepAirp - аэропорт отправления, например: MOW - любой аэропорт в г.Москва или SVO - Шереметьево-->
<DepTerminal>?</DepTerminal>
<!--DepTerminal - терминал пункта отправления, если пустое значение,
то в аэропорту всего 1 терминал-->
<ArrAirp CodeType="IATA">?</ArrAirp>
<!--ArrAirp - аэропорт прибытия-->
<ArrTerminal>?</ArrTerminal>
<!--ArrTerminal - терминал пункта прибытия, если пустое значение,
то в аэропорту всего 1 терминал-->
<OpAirline>?</OpAirline>
<!--OpAirline - авиакомпания перевозчик, например: SU - Аэрофлот-->
<MarkAirline>?</MarkAirline>
<!--MarkAirline - авиакомпания, продающая перелёт-->
<FlightNumber>?</FlightNumber>
<!--FlightNumber - номер рейса-->
<AircraftType>?</AircraftType>
<!--AircraftType - тип воздушного судна, код-->
<DepDateTime>?</DepDateTime>
<!--DepDateTime - дата и время отправления, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<ArrDateTime>?</ArrDateTime>
<!--ArrDateTime - дата и время прибытия, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<StopNum>?</StopNum>
<!--StopNum - количество остановок-->
<BookingCodes>
<BookingCode ClassType="?">
<!--ClassType - класс перелета, например: economy-->
<BookingCode>?</BookingCode>
<!--BookingCode - код класса бронирования, у разных авиакомпаний один и тот же класс
может записываться разными литерами, например: L-->
</BookingCode>
</BookingCodes>
<FlightTime>?</FlightTime>
<!--FlightTime - время перелёта в минутах-->
<TimeZone Departure="?" Arrival="?"/>
<!--Departure временная зона аэропорта отправления-->
<!--Arrival - временная зона аэропорта прибытия-->
<ETicket>?</ETicket>
<!--ETicket - признак электронного билета, значения: true / false-->
</Segment>
</Segments>
<PricingInfo Refundable="?">
<!--Refundable - возвратный/невозвратный, true/false. Если пустое, то не известно-->
<PassengerFare Type="?" Quantity="?">
<!--Type - тип пассажира, возможные значения: ADT - взрослые, CNN - дети, INF - младенцы, INS - младенцы с местом--> <!--Quantity - количество пассажиров данного типа-->
<BaseFare Currency="?" Amount="?"/>
<!--BaseFare - базовая стоимость, в базовой валюте. Currency - код валюты, Amount - значение цены-->
<EquiveFare Currency="?" Amount="?"/>
<!--EquiveFare - базовая стоимость, в эквивалентной валюте(валюте продажи). Currency - код валюты, Amount - значение цены-->
<TotalFare Currency="?" Amount="?"/>
<!--TotalFare - суммарная стоимость, в эквивалентной валюте. Currency - код валюты, Amount - значение цены-->
<Taxes>
<Tax CurCode="?" TaxCode="?" Amount="?"/>
<!--CurCode - код валюты, TaxCode - код таксы, Amount - сумма таксы-->
</Taxes>
<Tariffs>
<Tariff Code="?" SegNum="?"/>
<!--Code - код тарифа, SegNum - номер сегмента, к которому применён тариф-->
</Tariffs>
<FareCalc>?</FareCalc>
<!--FareCalc - строка расчёта цены-->
<LastTicketDateTime>?</LastTicketDateTime>
<!--LastTicketDateTime - дата и время таймлимита по выписке в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
</PassengerFare>
</PricingInfo>
<Commission/>
<Charges Currency="?">?</Charges>
<!--Charges - сборы, Currency - код валюты-->
<TotalPrice Currency="?">?</TotalPrice>
<!--TotalPrice - итоговая цена, Currency - код валюты-->
</Flight>
<Flight>...</Flight>
<Errors>
<Error Code="?">
<!--Code - код ошибки в системе Nemo-->
<ServiceErrorMessage>?</ServiceErrorMessage>
<!--ServiceErrorMessage - сообщение об ошибке полученное от веб-сервиса поставщика-->
<Message>?</Message>
<!--Message - сообщение об ошибке от системы Nemo-->
</Error>
</Errors>
В ссылках на просмотр страницы результата поиска и на бронирование конкретного перелета, домен агентства/субагентства определяется следующим образом:
* Если текущий домен агентства/субагентства есть в настройках (''Администрирование'' ? ''Настройки агентства'' ? ''Доменное имя сайта для загрузки настроек''), то этот домен используется в ссылках.
* Если текущего домена нет в настройках, то используется первый домен из настроек.
* Если в настройках не прописано ни одного домена, то используется текущий домен.
== Односторонний перелет ==
Пример одностороннего перелета: Москва - Мадрид, 1 взрослый, 1 ребенок, эконом класс, предпочитаемая авиакомпания - Аэрофлот.
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
== Перелет туда-обратно ==
Пример перелета туда-обратно: Москва - Париж, 2 взрослых, бизнес класс.
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
== Сложный маршрут ==
Пример сложного маршрута: Прага - Москва - Милан - Мадрид, 1 взрослый, 1 младенец, эконом класс.
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
'