XML экспорт/Интеграция — различия между версиями
Материал из TourClient - Руководство пользователя
Jeka (обсуждение | вклад) (→Алгоритм работы) |
Jeka (обсуждение | вклад) |
||
(не показаны 5 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
+ | == Поисковые фильтры == | ||
+ | [[Файл:API tour filters.png]] | ||
+ | |||
+ | === Алгоритм работы === | ||
+ | # Пользователь запрашивает страницу с формой поиска на сайте клиента | ||
+ | # Сайт клиента формирует запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient | ||
+ | #* запрашивается фильтр по городу | ||
+ | # Сайт клиента формирует запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient | ||
+ | #* запрашивается фильтр по стране | ||
+ | # Сайт клиента формирует запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient | ||
+ | #* запрашивается блок фильтров по курортам, отелям, питаниям и т.п. | ||
+ | # Сайт клиента возвращает страницу с сформированной формой поиска | ||
+ | # При необходимости сайт клиента может прокешировать полученные данные в своей БД (для ускорения работы) | ||
+ | # Пользователь изменяет настройки фильтров (например указывает курорт) | ||
+ | # Сайт клиента может выполнить поиск по прокешированным в своей БД данным с соответствующими настройками | ||
+ | # Или сайт клиента может сформировать запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient | ||
+ | #* запрашивается блок фильтров по курортам, отелям, питаниям и т.п. | ||
+ | |||
+ | |||
== Поиск туров == | == Поиск туров == | ||
Строка 21: | Строка 40: | ||
# Cайт клиента формирует запрос к сервису [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Результаты_поиска|Результаты поиска]] API TourClient: | # Cайт клиента формирует запрос к сервису [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Результаты_поиска|Результаты поиска]] API TourClient: | ||
#* Параметры поискового запроса идентичные запросу в п.2 | #* Параметры поискового запроса идентичные запросу в п.2 | ||
− | #* Ответ возвращается сразу же из кеша | + | #* Ответ возвращается сразу же из кеша результатов поиска |
+ | |||
+ | |||
+ | Для показа следующих страниц: | ||
+ | # Пользователь инициирует переход на нужную страницу | ||
+ | # Сайт клиента формирует запрос к сервису [[XML_-_результаты_поиска/Поиск_туров/Интерфейс_-_Результаты_поиска|Результаты поиска]] API TourClient: | ||
+ | #* Параметры поискового запроса идентичные запросу производимому на при поиске | ||
+ | #* offset и limit выставляются в соответствии с запрошенной страницей | ||
+ | #* Ответ возвращается сразу же из кеша результатов поиска | ||
+ | #* Время жизни ответа в кеше 15 минут | ||
+ | |||
+ | |||
+ | == Заказ тура == | ||
+ | [[Файл:API tour book.png]] | ||
+ | |||
+ | === Алгоритм работы === | ||
+ | |||
+ | # Пользователь запрашивает страницу с информацией по туру на сайте клиента | ||
+ | # Сайт клиента формирует запрос к сервису [[XML_-_результаты_поиска/Информация_о_туре/Интерфейс|Информация о туре]] API TourClient: | ||
+ | #* в запросе указывается Id тура | ||
+ | # API TourClient возвращает информацию о туре | ||
+ | # Сайт клиента инициирует запрос к сервису [[XML_-_результаты_поиска/Информация_о_туре_из_онлайна/Интерфейс|Информация о туре (онлайн)]] API TourClient: | ||
+ | #* опрашивать сервис нужно без блокировки действий пользователя | ||
+ | #* время ответа зависит от системы туроператора и может доходить до 30 сек | ||
+ | #* в случае невозможности получить данные от туроператора сервис вернет ошибку, эта ситуация должна корректно обрабатываться для пользователя | ||
+ | # Сайт клиента обновляет информацию для тура о цене, наличии мест, вылетах и т.п. | ||
+ | # Пользователь бронирует тур | ||
+ | # Cайт клиента формирует запрос к сервису [[XML_-_бронирование/Отправка_заявки|Отправка заявки]] API TourClient: | ||
+ | #* в ответе возвращается id заказа в системе TourClient | ||
+ | # Номер заказа показывается пользователю | ||
+ | # Система TourClient отправляет уведомление на указанный пользователем email с данными заказа |
Текущая версия на 20:47, 1 июня 2016
Содержание
Поисковые фильтры
Алгоритм работы
- Пользователь запрашивает страницу с формой поиска на сайте клиента
- Сайт клиента формирует запрос к сервису Поисковые фильтры API TourClient
- запрашивается фильтр по городу
- Сайт клиента формирует запрос к сервису Поисковые фильтры API TourClient
- запрашивается фильтр по стране
- Сайт клиента формирует запрос к сервису Поисковые фильтры API TourClient
- запрашивается блок фильтров по курортам, отелям, питаниям и т.п.
- Сайт клиента возвращает страницу с сформированной формой поиска
- При необходимости сайт клиента может прокешировать полученные данные в своей БД (для ускорения работы)
- Пользователь изменяет настройки фильтров (например указывает курорт)
- Сайт клиента может выполнить поиск по прокешированным в своей БД данным с соответствующими настройками
- Или сайт клиента может сформировать запрос к сервису Поисковые фильтры API TourClient
- запрашивается блок фильтров по курортам, отелям, питаниям и т.п.
Поиск туров
Алгоритм работы
- Пользователь инициирует новый поиск на сайте клиента
- Сайт клиента формирует запрос к сервису Результаты поиска API TourClient:
- Поиск 1-ой страницы (offset = 0, limit = размер страницы, обычно 25-50 туров)
- API TourClient производит поиск и возвращает указанное количество туров:
- среднее время поиска 5-7 сек
- в ответе содержится также ключ запроса (SearchStatus.key)
- Сайт клиента инициирует периодический опрос сервис Статус поиска API TourClient:
- опрашивать сервис целесообразно с частотой 2-3 сек
- ответ возвращается сразу же
- в ответе содержится информация об окончании поиска SearchStatus.inProgress
- Сайт клиента обновляет количество найденных туров и количество страниц до тех пор пока не получит ответе статус окончания поиска:
- SearchStatus.inProgress = false
- Сайт клиента (при необходимости) показывает пользователю сообщение о завершении поиска с предложением обновить результаты
- Пользователь нажимает "обновить результаты"
- Cайт клиента формирует запрос к сервису Результаты поиска API TourClient:
- Параметры поискового запроса идентичные запросу в п.2
- Ответ возвращается сразу же из кеша результатов поиска
Для показа следующих страниц:
- Пользователь инициирует переход на нужную страницу
- Сайт клиента формирует запрос к сервису Результаты поиска API TourClient:
- Параметры поискового запроса идентичные запросу производимому на при поиске
- offset и limit выставляются в соответствии с запрошенной страницей
- Ответ возвращается сразу же из кеша результатов поиска
- Время жизни ответа в кеше 15 минут
Заказ тура
Алгоритм работы
- Пользователь запрашивает страницу с информацией по туру на сайте клиента
- Сайт клиента формирует запрос к сервису Информация о туре API TourClient:
- в запросе указывается Id тура
- API TourClient возвращает информацию о туре
- Сайт клиента инициирует запрос к сервису Информация о туре (онлайн) API TourClient:
- опрашивать сервис нужно без блокировки действий пользователя
- время ответа зависит от системы туроператора и может доходить до 30 сек
- в случае невозможности получить данные от туроператора сервис вернет ошибку, эта ситуация должна корректно обрабатываться для пользователя
- Сайт клиента обновляет информацию для тура о цене, наличии мест, вылетах и т.п.
- Пользователь бронирует тур
- Cайт клиента формирует запрос к сервису Отправка заявки API TourClient:
- в ответе возвращается id заказа в системе TourClient
- Номер заказа показывается пользователю
- Система TourClient отправляет уведомление на указанный пользователем email с данными заказа