Работа модуля с API

В процессе взаимодействия пользователя с интерфейсом модуля будет происходить динамическое обновление информации в зависимости от выбираемых вариантов (подробнее в разделе Обновление интерфейса). По окончании выбора параметров, происходит собственно поиск туров (т.е. подходящих предложений от туроператоров). Об этом подробно написано в документации от sletat.ru.

Кратко опишу здесь.

1) отправляем запрос на поиск (GetTours), в ответ приходит идентификатор запроса (requestId)

2) циклично с интервалом 2 сек запрашиваем статус поиска (GetLoadState), передавая requestId, в ответ приходит информация по количеству найденных туров. Как только хотя бы по одному туроператору есть ненулевое количество - вызываем метод получения информации по найденным турам (GetTours с параметром updateResult=1), сохраняем полученный массив туров и отображаем их в виде списка.

Пример результатов от sletat (в прототипе делаем упрощенный вариант)

3) после этого повторяем цикличные запросы GetLoadState, сравниваем то, что пришло с сохраненным ранее списком, и в случае появления новых элементов обновляем блок статуса:

4) когда в ответ на GetLoadState для всех туроператоров получаем флаг isProcessed=true, завершаем цикл и показываем пользователю уведомление об окончании поиска. Если пользователь нажимает "Показать" - выполняем запрос GetTours (updateResult=1), и результаты показываем в виде списка (см выше).

5) конечная задача модуля - показать пользователю список туров по его запросу; при выборе конкретного тура пользователь уходит на отдельную страницу, к которой модуль отношения не имеет.

Куда слать запросы?

Все запросы делаем не напрямую к sletat, а проксируем.
Для этого вместо http://module.sletat.ru/Main.svc используем https://sletat.alnidok.ru/api, не передавая при этом логин и пароль.

Подробное описание необходимых методов API можно найти в документации от sletat.

results matching ""

    No results matching ""