Если подсказки не могут найти адрес у себя и есть интеграция с Фактором, то Подсказки направят запрос в Фактор, чтобы получить разобранный адрес.
Случаи, когда Подсказки не могут у себя найти адрес:
- если в адресе есть квартира,
- улица с опечаткой,
- улицы не из ФИАС,
- в конце адреса стоит восклицательный знак.
Ответ от Фактора подсказки преобразуют в свой формат и возвращают ответ в том же виде, как будто бы адрес был найден в поисковом индексе.
Когда Подсказки "ходят" в Фактор
Подсказки нашли в своем индексе один вариант (предполагается, что в этом случае выбрана конкретная подсказка);
Подсказки не нашли в своем индексе варианты (например дом не существует в ФИАС, но есть в жизни, или вводят квартиру).
Основной вариант это когда Подсказки берут из Фактора дом или квартиру, улицу запрашивают только в случае опечатки.
Если в Подсказках и Факторе разные версии ФИАС, то в случае отсутствия дома в Подсказках, они обратятся к Фактору и будет возвращен дом из Фактора, если получен хороший код качества. Однако в подсказке будет присутствовать только один дом — вводимый пользователем.
Особенности интеграции с Фактором
- Подсказки дописывают в адрес родителя, если есть ограничение по родителю.
Пример: фильтрация по Самаре. Запрос "Авиационная". В Фактор уходит: "Самара, авиационная".
Работает только с одним родителем. Если указано несколько, то запрос все равно будет один — с первым родителем. - Если нет ограничения по родителю, но есть геобуст, то в Фактор уйдут 2 адреса в одном запросе, а не один.
Как получаются эти два адреса:
- Первый запрос — то, что вбили в поле подсказок — "Авиационная".
- Второй запрос дополнен родителем по геобусту — "Самара, авиационная" (геобуст по Самаре).
В результате подсказки могут вернуть 2 варианта, порядок будет зависеть от кодов качества — сначала выводится адрес с хорошим кодом качества.
Если коды качества одинаковые, то порядок ровно такой, как в запросах: сначала без дописывания родителя, потом с дописыванием.
Если Фактор на оба адреса вернул одинаковый результат, то подсказка будет одна — одинаковые варианты схлопнутся.