Рубрики

применяемость (1) Api (1) Mysql (1) News (2) Oem2car (1) Suppliers (1) Tecdoc 4_2017 (2) Новости (1) Реклама и маркетинг (1)

Обновления


Как подключать поставщиков в модуле TDMOD 3.2.x

Веб-сервисы представляют собой програмный интерфейс позволяющий получать цены (наличие, сроки поставки...) на запчасти непосредственно с сайта поставщика в режиме реального времени (online). Данные от веб-сервисов могут передаваться разными протоколами (SOAP/WDDX/XML..). Что бы получить доступ к веб-сервисам необходимо обратиться в соответствующую службу поставщика (зарегистрироваться) для предоставления логина и пароля авторизации.

Например: mikado-parts.ru, autopiter.ru, emex.ru, part-kom.ru, ezoko.ru, avtoto.ru, twinauto.net, berg и другие.

Обратите внимание, что не все веб-сервисы поставщиков изначально разработаны или адаптированы именно под онлайн-интернет магазины, где требуется быстро запросить цены по всему списку запчастей (учитывая фильтрацию по производителям, исключая ненужные совпадения по номеру запчасти). Они могут медленно (с дополнительными запросами внутренних данных/ID) выдавать цены для каждой запчасти из всего списка запчастей на странице. Кэширование цен модулем может в значимой степени увеличить скорость выдачи цен такими веб-сервисами. Однако для быстрого получения онлайн цен - следует выбирать веб-сервисы изначально адаптированные для выдачи цен сразу по всему списку запчастей с использованием единого API метода.

Настройки веб-сервисов в модуле TDMOD:

Код - любое слово которое послужит меткой в записи цены. Эта метка поможет идентифицировать от какого поставщика были взяты и сохранены цены, а так же отфильтровать и удалить цены этого поставщика.

Обработчик - PHP скрипт расположенный в папке /autoparts/tdmcore/webservices/ который вы можете редактировать (добавлять новые). Скрипт принимает массив $arWsParts с номерами запчастей и названиями их производителей. По этим номерам производителей и будет производиться поиск цен через веб-сервис. Второй массив $arWS содержит данные настроек вебсервиса (логин и пароль). После обработки скрипт должен сформировать структурированный массив результата $arPrices который должен содержать набор цен полученых через веб-сервис. Смотрите примеры php кода готовых обработчиков в модуле что бы составить собственные обработчики веб-сервисов, которые зачастую принципиально похожи.

Client ID - Ваш номер клиента на сайте поставщика. Этот параметр можно не заполнять если он не является необходимым для подключения к API вебсервиса поставщика.

Кэшировать цены - полученные цены будут сохранены в общую базу цен модуля под меткой поставщика на указанное количество часов (дней). Если срок кэширования ещё не истек то новые запросы (список запчастей раздела или поиска) на веб-сервис не будут отправляться. Вместо этого ранее сохраненные цены будут взяты с локальной базы цен модуля. Это позволит значительно ускорить работу модуля, но может увеличить размер базы цен модуля на, возможно, миллионы позиций (зависит от посещаемости вашего сайта и количества цен которые выдаёт веб-сервис поставщика). По истечению срока кэширования старые цены (просматриваемого списка запчастей) поставщика веб-сервиса будут удалены и выполнится новый запрос цен. Таким образом кэширование помогает уменьшить нагрузку и количество запросов на вебсервис.

Лимит запроса - устанавливает при каком количестве запчастей запрашивать цены и ожидать ответа перед выводом списка запчастей на странице. Например, если в разделе запчастей сотни товаров, но установлен лимит запроса в 30 запчастей то моментального запроса цен на веб-сервис не будет и страница товаров отобразится сразу с теми ценами которые уже загружены в базу. Запрос цен будет выполнен отдельно в фоновом режиме (методом sockets php) и результат списка цен будет сохранен в базу цен модуля (если включено кэширование цен). Правильно установленный лимит запросов позволит избежать долгого ожидания ответа от веб-сервисов по всему списку просматриваемых запчастей. Если веб-сервис выдаёт ответ быстро то лимит запросов можно поднять, и наоборот если веб-сервис поставщика медленный то лимит запросов следует установить более низкий (обычно 30-40).

Принимать кроссы - если веб-сервис по искомому номеру запчасти может так же возвращать цены на его аналоги то можно автоматически сохранить записи линковки этих аналогов (кроссов) в базе модуля. Если данная опция в настройках модуля отключена - цены аналогов от вебсервиса будут игнорироваться модулем при запросе. Обратите внимание что не всегда веб-сервисы выдают адекватные кроссы по запчастям. Такие ошибки будут автоматически импортированы в модуль, поэтому следует проверять актуальность кроссов которые выдаёт веб-сервис поставщика.

Направление кроссировки - если включена опция "принимать кроссы" то по умолчанию при получении кросс записи от веб-сервиса ей будет присвоено указанное направление кроссировки. Связь номеров запчастей может быть двусторонней или только в одну сторону. Например искомый номер AAA (левый) может быть подвязан к номеру BBB (правому), но при этом номер BBB может не иметь (по логике) у себя в аналогах этот номер AAA - такая связь является односторонней (вправо).

Полное описание TDMOD