Взаимодействие с метапоисковиками
Метапоисковая система (метапоисковая машина, метапоисковик) — это поисковая система, которая в отличие от классических поисковых машин не имеет собственной базы данных и собственного поискового индекса, а формирует поисковую выдачу за счет смешивания и переранжирования результатов поиска других поисковых систем.
Содержание
Настройка
Для агентства должен быть включен модуль «Взаимодействие с метапоисковиками», тогда:
- становится доступным раздел «Статистика заказов из метапоисков» в разделе «Администрирование» → «Логи и статистика»;
- появляется настройка «Источник метрики» (показывается только для пользователей внутри агентства/субагентства) в разделе «Авиабилеты» → «Стандартный поиск» → «Настройки»;
- появляются настройки «Время жизни cookie (дней)», «Продлевать время жизни cookie при следующем заходе пользователя», «Прибыль метапоисковика (процент)» в разделе «Метрика » → «Источники трафика».
В список «Источник метрики» подгружаются источники, настроенные в модуле метрики в «Источниках переходов». Если ни одного источника не настроено, то поле «Источник метрики» будет скрыто.
Если задана настройка «Источник метрики», то запускается механизм управления HTTP cookie пользователей, приходящих с сайта метапоиска.
Источник метрики
Подробная информация об источниках переходов модуля метрики находится в соответствующей статье «Модуль метрики. Создание источника переходов».
Параметры источников переходов, связанные со статистикой метапоисков описаны ниже.
Дополнительные параметры источника переходов
- Время жизни cookie (дней) - срок действия HTTP cookie, в течение которого Nemo запоминает пользователя, пришедшего с метапоиска.
- Продлевать время жизни cookie при следующем заходе пользователя - если опция включена, то HTTP cookie продлеваются с каждым последующим переходом на бронирование.
- Прибыль метапоисковика (процент) - считается как процент от стоимости оплаченного заказа, включая комиссию платежного шлюза и апсейловые продажи. Используется только в отчетах статистики метапоиска и не изменяет итоговую стоимость заказа.
Статистика заказов из метапоисков
В данном разделе можно получить данные по статистике метапоиска (для конкретного источника переходов) за указанный период в виде файла данных в формате XML.
Поддержка метапоисковиков
Aviasales.ru
Первый и крупнейший в Рунете метапоиск дешевых авиабилетов. Производит поиск авиабилетов в 728 авиакомпаниях, 40 авиакассах и 5 системах бронирования (GDS), используя наиболее современные технологии.
Принципы работы с метапоисковиком
API Авиа
В Nemo реализовано два интерфейса (согласно требованиям AviaSales.ru):
- Запрос вариантов перелета с ценами - использует агентский API Nemo для поиска авиабилетов.
- Статистика продаж - реализована на базе Модуля метрики Nemo.
Запрос вариантов перелета с ценами
Пример запроса
http://host/api/search?from=MOW&to=LED&date1=2012-09-25&date2=2012-10-01&adults=2&children=1&infants=1&cabin=Y&partner=avsl&password=pass
Параметры запроса
Параметр запроса | Описание |
---|---|
from | IATA код пункта отправления. |
to | IATA пункта назначения. |
date1 | YYYY-MM-DD дата вылета. |
date2 | YYYY-MM-DD дата возвращения. Для перелётов в одну сторону не передаётся. |
adults | Количество взрослых пассажиров. |
children | Количество пассажиров детей от 2 до 12 лет. |
infants | Количество пассажиров детей до 2х лет. |
cabin | Класс перелёта. "Y" - эконом , "C" - бизнес, "F" - первый. |
partner | Идентификатор клиента делающего запрос. |
password | Пароль клиента делающего запрос. |
Пример ответа
1 <?xml version='1.0' encoding='utf-8' ?>
2 <variants>
3 <variant>
4 <price>2664</price>
5 <currency>rub</currency>
6 <url>BOOKING_PAGE_DEEPLINK</url>
7 <validatingCarrier>UN</validatingCarrier>
8 <segment>
9 <flight>
10 <operatingCarrier>UN</operatingCarrier>
11 <number>3</number>
12 <departure>DME</departure>
13 <departureDate>2012-09-25</departureDate>
14 <departureTime>09:55</departureTime>
15 <arrival>LED</arrival>
16 <arrivalDate>2012-09-25</arrivalDate>
17 <arrivalTime>11:10</arrivalTime>
18 <equipment>735</equipment>
19 <cabin>Y</cabin>
20 </flight>
21 </segment>
22 </variant>
23 <variant>
24 ...more variants...
25 </variant>
26 </variants>
Пример ответа
/variants - корневой элемент, содержащий варианты перелётов.
//variant - полный вариант перелёта.
price - полная цена за всех пассажиров для данного перелёта.
currency - валюта используемая в цене билетов.
url - URL приземляющий пользователя на страницу бронирования билетов.
validatingCarrier - IATA код авиакомпании - ответственного перевозчика.
segment - сегменты перелёта. Первый сегмент перелёт туда, второй обратно.
segment/flight - 1..n, все перелёты в одну сторону.
//flight - информация об одном перелёте.
operatingCarrier - код авиакомпании осуществляющей рейс.
marketingCarrier - код авиакомпании продающей рейс, указывается если отличается от авиакомпании осуществляющей рейс (code share).
number - номер рейса.
departure - IATA код аэропорта отправления.
departureDate - дата отправления, 'YYYY-MM-DD', местное время.
departureTime - время отправления, 'HH:MM', местное время.
arrival - IATA код аэропорта назначения.
arrivalDate - дата прибытия, 'YYYY-MM-DD', местное время.
arrivalTime - время прибытия, 'HH:MM', местное время.
equipment - IATA транспортного средства осуществляющего перевозку.
cabin - класс перелёта. "Y" - эконом , "C" - бизнес, "F" - первый.
Для покупки билетов пользователь будет отправлен на URL из тега variant/url. Для отслеживания продаж и привязывания к посетителям передаётся дополнительный GET параметр marker.
Полный URL бронирования строится следующим образом: variant/url + '&marker' + marker_value, где marker_value - строка содержащая не более 256 символов. Маркер переданный при переходе на бронирование является частью информации о бронировании в статистике и напрямую связан с параметром marker из модуля метрики.
Статистика продаж
Пример запроса
http://host/index.php?go=settings/download_metasearch_stat&date1=2012-05-01&date2=2012-06-01&partner=aviasales&password=secret
Параметры запроса
Параметр запроса | Описание |
---|---|
date1 | YYYY-MM-DD дата. |
date2 | YYYY-MM-DD дата. |
partner | Идентификатор партнёра - алиас источника переходов модуля метрики. |
password | Пароль партнёра - пароль источника переходов модуля метрики. |
Пример ответа
1 <bookings>
2 <booking>
3 <id>JHKHVR</id>
4 <created_at>2012-05-02 00:02:01</created_at>
5 <marker>1232:1222.t</marker>
6 <price>1199</price>
7 <profit>200</profit>
8 <currency>RUB</currency>
9 <state>PAID</state>
10 <validatingCarrier>UN</validatingCarrier>
11 <segment>
12 <flight>
13 <operatingCarrier>UN</operatingCarrier>
14 <number>3</number>
15 <departure>DME</departure>
16 <departureDate>2012-09-25</departureDate>
17 <departureTime>09:55</departureTime>
18 <arrival>LED</arrival>
19 <arrivalDate>2012-09-25</arrivalDate>
20 <arrivalTime>11:10</arrivalTime>
21 <equipment>735</equipment>
22 <cabin>Y</cabin>
23 </flight>
24 </segment>
25 <adults>1</adults>
26 <children>0</children>
27 <infants>0</infants>
28 </booking>
29 ...more bookings...
30 </bookings>
Содержание ответа
/bookings - корневой элемент содержащий информацию о бронированиях.
//booking - информации об одном бронировании.
id - уникальный идентификатор бронирования.
created_at - YYYY-MM-DD HH:MM время и дата бронирования в таймзоне UTC.
marker - маркер переданные в GET параметре marker при переходе на бронирование.
from - IATA код аэропорта отправления.
to - IATA код аэропорта назначения.
price - цена билетов.
profit - прибыль партнёра от данного бронирования.
currency - валюта в которой указаны прибыль и цена билета.
state - состояние брони. Допустимые значения PROCESSING/PAID/CANCELLED.
segment - информация о перелётах (аналогично поисковому запросу).
validatingCarrier - информация о бронировании (аналогично поисковому запросу).
//flight - информация об одном перелёте.
operatingCarrier - код авиакомпании осуществляющей рейс.
number - номер рейса.
departure - IATA код аэропорта отправления.
departureDate - дата отправления, 'YYYY-MM-DD', местное время.
departureTime - время отправления, 'HH:MM', местное время.
arrival - IATA код аэропорта назначения.
arrivalDate - дата прибытия, 'YYYY-MM-DD', местное время.
arrivalTime - время прибытия, 'HH:MM', местное время.
equipment - IATA транспортного средства осуществляющего перевозку.
cabin - класс перелёта. "Y" - эконом , "C" - бизнес, "F" - первый.
adults - кол-во взрослых пассажиров.
children - кол-во детей.
infants - кол-во детей до 2 лет.
Время и дата бронирования created_at передается в таймзоне UTC+4.
Состояние брони state может принимать значения:
- PROCESSING - забронирован;
- PAID - выписан;
- CANCELLED - аннулирован (по любым причинам).
Прибыль партнёра profit от данного бронирования. Размер прибыли партнера устанавливается для конкретного источника трафика в Модуле метрики и считается как процент от стоимости оплаченного заказа, включая комиссию платежного шлюза и апсейловые продажи. В последующем расчет прибыли может измениться. При возврате авиабилетов сумма ранее засчитанная как прибыль партнера (метапоисковой системы) должна подставляться с минусом в данном периоде.
Количество детей до 2 лет infants относится только к младенцам без места. Количество младенцев с местом объединяются с количеством детей до 12 лет children.