XML экспорт/Интеграция — различия между версиями
Материал из TourClient - Руководство пользователя
								
												
				Jeka  (обсуждение | вклад)  | 
				Jeka  (обсуждение | вклад)   | 
				||
| (не показаны 2 промежуточных версий 1 участника) | |||
| Строка 1: | Строка 1: | ||
| + | == Поисковые фильтры ==   | ||
| + | [[Файл:API tour filters.png]]  | ||
| + | |||
| + | === Алгоритм работы ===  | ||
| + | # Пользователь запрашивает страницу с формой поиска на сайте клиента  | ||
| + | # Сайт клиента формирует запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient   | ||
| + | #* запрашивается фильтр по городу  | ||
| + | # Сайт клиента формирует запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient   | ||
| + | #* запрашивается фильтр по стране  | ||
| + | # Сайт клиента формирует запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient   | ||
| + | #* запрашивается блок фильтров по курортам, отелям, питаниям и т.п.  | ||
| + | # Сайт клиента возвращает страницу с сформированной формой поиска  | ||
| + | # При необходимости сайт клиента может прокешировать полученные данные в своей БД (для ускорения работы)  | ||
| + | # Пользователь изменяет настройки фильтров (например указывает курорт)  | ||
| + | # Сайт клиента может выполнить поиск по прокешированным в своей БД данным с соответствующими настройками  | ||
| + | # Или сайт клиента может сформировать запрос к сервису [[XML_-_связи_фильтров/Экспорт_связей_фильтров_формы_поиска|Поисковые фильтры]] API TourClient   | ||
| + | #* запрашивается блок фильтров по курортам, отелям, питаниям и т.п.  | ||
| + | |||
| + | |||
== Поиск туров ==  | == Поиск туров ==  | ||
| Строка 37: | Строка 56: | ||
=== Алгоритм работы ===  | === Алгоритм работы ===  | ||
| + | |||
| + | # Пользователь запрашивает страницу с информацией по туру на сайте клиента  | ||
| + | # Сайт клиента формирует запрос к сервису [[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 с данными заказа
 


