SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
Автоматизация дистрибуции информации
о наличии и цене товара
для различных каналов генерации лидов
в сегменте B2C


       Андрей Богомолов, основатель проекта ERPVault.com
       Андрей Коротких, PI-consult.by, ведущий разработчик

       sales@erpvault.com

       Минск, 2011
БИЗНЕС-ЗАДАЧИ


  обеспечить масштабируемость
  доставки информации
  о наличии, цене и характеристиках товара;
  обеспечить своевременность, точность,
  полноту, различное представление
  информации;
  SLA 99.9%, 4 ч., 24/7/365
КАНАЛЫ ГЕНЕРАЦИИ ЛИДОВ
|| требования к масштабируемости

  веб сайт компании;
  веб сайты дочерних компаний (до 8);
  поисковые системы на порталах рекламных
  партнеров (до 64);
  веб-сайты компаний-партнеров с
  самостоятельным формированием цены, сроков
  поставки и ассортимента по условным группам
  (до 64);
  мобильное приложение Android;
  мобильное приложение iOS;
  online API для настольных систем дилеров.
ДОП. ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ


  Время обновления информации <60 минут
  Период обновления: 2 раза / 24 ч
  Ассортимент: ~200 тыс. наименований
  товара
  Количество запросов: 2*10^6 / 24ч, Uniform
  Distribution
  Исполнение запроса: 0.1-4 с
ДАНО


классическая распределенная система

=> наследует общепринятые требования по:
   performance,
   scalability,
   simplicity,
   modifiability,
   visibility,
   portability,
   reliability
ТЕХНИЧЕСКИЕ ЦЕЛИ


  Scalability of component interactions
  Generality of interfaces
  Independent deployment of components
  Intermediary components to reduce latency,
  enforce security and encapsulate legacy
  systems
АРХИТЕКТУРА РЕАЛИЗАЦИИ


SOA

vs

Client/Server

vs

Пакетный обмен
ВЫБОР ПРОТОКОЛОВ ВЗАИМОДЕЙСТВИЯ


  SOAP?
  CORBA?
  COM/DCOM?
  ReST (Representational State Transfer)?
  ???
СВОЙСТВА ReST


  Client–server
  Stateless
  Cacheable
  Layered system
  Uniform interface
  HTTP-based
ПРИНЦИПЫ ПОСТРОЕНИЯ ИНТЕРФЕЙСА


  Идентификация ресурсов
  Управление ресурсами через
  представление
  Self-descriptive сообщения
  Hypermedia как "движок" стостояний
RESTful Web Service HTTP методы




  POST
  GET
  PUT
  DELETE

???
ОБМЕН ДАННЫМИ


  XML
  JSON
  Google Protocol Buffers
  TXT/CSV
  XHTML

???
ТЕХНИЧЕСКАЯ РЕАЛИЗАЦИЯ


     LAMP

vs

     J2EE

???
ПРИМЕР ВНЕДРЕНИЯ: Моторлэнд
  веб сайт компании, веб сайты дочерних компаний –
  автоматическая и ручная репликация из ERP системы
  с различными параметрами по ассортименту,
  формированию цен, расположению товара;
  поисковые системы на порталах рекламных
  партнеров, веб-сайты компаний партнеров с
  самостоятельным формированием цены, сроков
  поставки и ассортимента по условным группам –
  виджеты с авторизацией и настройками для каждого из
  партнеров (ассортимент, цены, доставка и т.д.);
  мобильное приложение Android, мобильное
  приложение iOS – отображение информации через
  точку входа для мобильных устройств;
  online API для настольных систем дилеров – запрос к
  специальной точке доступа при помощи POST и GET,
  получение результата в удобном виде (XML, CSV,
  текст и т.д.).
Примеры запросов
Все необходимые методы для отображения
формы поиска, отправки запросов, получения
результатов,
находятся в подключаемом JavaScript-классе
API.

Используется механизм AJAX, который
отправляет данные поисковой формы методом
GET и получает данные в виде JSON. Эти
данные обрабатываются и отображаются
клиенту в виде HTML.
Примеры запросов
Функция JavaScript для отправки данных поисковой формы и обработки результатов:

this.submit = function() {
// Получение данных формы

var myargs = this.getFormData( 'erpvault_ucp_searchform' );

// Инициализация класса JsHttpRequest для отправки AJAX запроса
var req = new JsHttpRequest();

// Функция для обработки результатов

req.onreadystatechange = function() {
if ( req.readyState == 4 ) {
// Обработка ошибок и вывод результатов
// …

}
}

// Отправка запроса

req.open( 'GET', this.url, true );
req.send( myargs );

}
Примеры передачи данных
Данные отправляется методом GET, массив имеет вид:

Array
(
    [auto_brand] => 6
    [auto_model] => 160
    [part_type] => 5
...
)

Заданы параметры для поиска запчастей по марке, модели и названию запчасти (индексы берутся из элементов
SELECT поисковой формы).
Примеры ответов
Данные ответов генерируются на серверных компонентах системы дистрибуции контента (PHP).
В соответствии с полученными параметрами делается выборка из базы данных MySQL, полученные данные
обрабатываются, преобразуются в JSON и передаются во Frontend.
Пример кода PHP (утрировано для облегчения восприятия):
// Инициализация класса JsHttpRequest
$JsHttpRequest = new JsHttpRequest( );
// Обработка параметров GET, идентификация партнера, получение параметров
…
// Запрос к БД
$sql = "SELECT parts.* FROM parts WHERE true";
$sql .= " AND auto_brand =".$db->escape( $_GET['auto_brand'] ).";
$sql .= " AND auto_model =".$db->escape( $_GET[auto_model'] ).";
$sql .= " AND part_type =".$db->escape( $_GET['part_type'] ).";
if ( $tbl = $db -> Exec ( $sql ) )
while ( $res = $tbl -> FetchAssoc() ) {

// Обработка данных
// ..

}
}

// Преобразование результатов в JSON и отправка во Frontend
//..

На выходе мы имеем данные в формате JSON, которые класс JavaScript получает, обрабатывает и выводит
клиенту.
ПРИМЕР ИМПЛЕМЕНТАЦИИ: виджет

 Для вызова виджета используется
 JavaScript-код на странице клиента. Также
 можно задать индивидуальные CSS-стили
 для отображения формы поиска и
 результатов и элемент HTML, в котором
 будет отображаться содержимое виджета.

 При вызове виджета можно указать
 уникальный ключ идентификации партнера,
 кодировку для генерации контента и т.д.
ПРИМЕР ИМПЛЕМЕНТАЦИИ: виджет

 Для вызова виджета используется
 JavaScript-код на странице клиента. Также
 можно задать индивидуальные CSS-стили
 для отображения формы поиска и
 результатов и элемент HTML, в котором
 будет отображаться содержимое виджета.

 При вызове виджета можно указать
 уникальный ключ идентификации партнера,
 кодировку для генерации контента и т.д.
ПРИМЕР ИМПЛЕМЕНТАЦИИ: виджет
<style>
.erpvault_ucp_hidden{ display: none; }
.erpvault_ucp_parts_title{ margin: 0px 0px 15px 0px; }
.erpvault_ucp_searchform_table{ background-color: #deebfb; }
.erpvault_ucp_searchform_td1{ padding: 5px; }
.erpvault_ucp_searchform_td2{ padding: 5px; }
.erpvault_ucp_searchform_footer{ padding: 5px; }
.erpvault_ucp_searchform_submit{ font-size: 12px; }
.erpvault_ucp_searchform_cancel{ font-size: 12px; }
.erpvault_ucp_search_results_div{ margin: 15px 0px 20px 0px; }
.erpvault_ucp_err{ color: red;}
.erpvault_ucp_parts_table{ width: 100%; border-collapse: collapse; }
.erpvault_ucp_parts_th{ border: 1px solid #dddddd; padding: 2px; background-color: #f2f2f2; }
.erpvault_ucp_parts_td{ border: 1px solid #dddddd; padding: 2px; }
.erpvault_ucp_loading_img { margin: 0px 3px 0px 3px; vertical-align: middle; }
.erpvault_ucp_footer { margin: 15px 0px 15px 0px; color: #666666; }

</style>

<div id="erpvaultUcpSearchDiv"></div>

<script language="JavaScript" src="http://www.motorland.by/search_api/" type="text/javascript"
></script>
Примеры GUI
Примеры GUI
Примеры каталога уникальных URL
Примеры каталога уникальных URL
ПРИМЕР МОБИЛЬНОГО ПРИЛОЖЕНИЯ
Платформа: Android
Motorland – мобильное приложение
для поиска автозапчастей и двигателей б/у
    Актуальная информация о наличии и цене

    Более 180 000 ассортиментных позиций в наличии
    на складах в г. Минске и в товаропроводящей сети в Республике Беларусь

    Ассортимент обновляется 2 раза в день из системы планирования
    ресурсов предприятия ERPVault™

Функциональные возможности:
    Поиск запчастей

    Публичный стол заказов

    Запрос в стол заказов

    Где купить? – Интерактивная карта
Технические особенности

Интерфейсы приложения оптимизированы для работы на современных
мобильных устройствах на базе ОС Android версии 1.6 с HVGA (320x480),
что позволяет охватить наибольшее количество пользователей
Возможна работа приложения с другими версиями ОС Android (1.5+) и
распространенными разрешениями экрана с оптической плотностью ldpi
(120), mdpi (160), hdpi (240)
Размещение элементов управления, скорость обработки и представление
информации позволяет за минимальное время получать необходимую
информацию о наличии и цене автозапчастей б/у, интерактивно устранять
информационную асимметрию, исторически обусловленную свойствами
товара и обычаями делового оборота в данном сегменте рынка
Применяется эффективная технология обмена данных
Серверная часть приложения позволяет держать высокую нагрузку,
построена на собственной архитектуре "облачных" вычислений
Приложение использует такие технологические особенности мобильных
устройств, как: сенсорный дисплей, GPS-приемник
Тщательно тестировано и рекомендовано для работы в 3G|3G+ сетях Velcom
ПРИЛОЖЕНИЕ В РАБОТЕ
Результаты поиска

                    Показываются только запчасти в
                    наличии
                    Подробные сведения о запчасти
                    Цена (при наличии >5 единиц)
                    Прямой телефон продавца
                    Возможность сделать звонок
                    прямо из приложения при
                    нажатии на номер телефона
                    Удобный скроллинг списка,
                    ориентированный на
                    возможности сенсорного экрана
                    Удобная навигация для частого и
                    быстрого использования
ПРИМЕР
МОБИЛЬНОГО ПРИЛОЖЕНИЯ iOS
ЭКОНОМИЧЕСКИЙ ЭФФЕКТ


   увеличение количества лидов с
   2 тыс. до 30-100 тыс. /24 часа
   AVG Цена 1 лида < 0.005$ при
   стоимости высокочастотной
   контекстной рекламы в yandex >
   0.1$
   отсутствие роста постоянных
   затрат, связанных с поддержкой
   инфраструктуры и персоналом
TODO


   Уровень универсальной
   абстракции дескрипторов
   товара
   Возможность
   масштабируемой записи, не
   только получение контента
   Встроенные средства для
   SEO и интернет-маркетинга
ВОПРОСЫ?
СПАСИБО ЗА ВНИМАНИЕ

Mais conteúdo relacionado

Semelhante a Андрей Богомолов Автоматизация дистрибуции информации о наличии и цене товара для различных каналов генерации лидов в сегменте B2C

Hl2008 Spy Log Architechture 169
Hl2008 Spy Log Architechture 169Hl2008 Spy Log Architechture 169
Hl2008 Spy Log Architechture 169
Media Gorod
 
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Ontico
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10
Technopark
 
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Разработка Web-приложений на Angular JS. Архитектурные семинары SoftengiРазработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Softengi
 
Услуги разработки программного обеспечения под заказ. Step integrator
Услуги разработки программного обеспечения под заказ. Step integratorУслуги разработки программного обеспечения под заказ. Step integrator
Услуги разработки программного обеспечения под заказ. Step integrator
Svyatoslav Tkachev
 

Semelhante a Андрей Богомолов Автоматизация дистрибуции информации о наличии и цене товара для различных каналов генерации лидов в сегменте B2C (20)

Hl2008 Spy Log Architechture 169
Hl2008 Spy Log Architechture 169Hl2008 Spy Log Architechture 169
Hl2008 Spy Log Architechture 169
 
Jsfwdays 2013-2
Jsfwdays 2013-2Jsfwdays 2013-2
Jsfwdays 2013-2
 
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVCАрхитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
 
Построение индексов Redis
Построение индексов RedisПостроение индексов Redis
Построение индексов Redis
 
New SpyLOG architechture (Highload 2008)
New SpyLOG architechture (Highload 2008)New SpyLOG architechture (Highload 2008)
New SpyLOG architechture (Highload 2008)
 
Highload++ 2015
Highload++ 2015Highload++ 2015
Highload++ 2015
 
анализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестированияанализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестирования
 
Mobilefest2012
Mobilefest2012Mobilefest2012
Mobilefest2012
 
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
 
Мировые информационные ресурсы. Лекция 5
Мировые информационные ресурсы. Лекция 5Мировые информационные ресурсы. Лекция 5
Мировые информационные ресурсы. Лекция 5
 
Node.js for enterprise 2021 - JavaScript Fwdays 3
Node.js for enterprise 2021 - JavaScript Fwdays 3Node.js for enterprise 2021 - JavaScript Fwdays 3
Node.js for enterprise 2021 - JavaScript Fwdays 3
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10
 
Обзор платформы B4
Обзор платформы B4Обзор платформы B4
Обзор платформы B4
 
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Разработка Web-приложений на Angular JS. Архитектурные семинары SoftengiРазработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
 
Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...
Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...
Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков...
 
Webparadox - как мы работаем
Webparadox - как мы работаемWebparadox - как мы работаем
Webparadox - как мы работаем
 
Поисковая оптимизация интернет-магазины на базе Drupal Commerce
Поисковая оптимизация интернет-магазины на базе Drupal CommerceПоисковая оптимизация интернет-магазины на базе Drupal Commerce
Поисковая оптимизация интернет-магазины на базе Drupal Commerce
 
Услуги разработки программного обеспечения под заказ. Step integrator
Услуги разработки программного обеспечения под заказ. Step integratorУслуги разработки программного обеспечения под заказ. Step integrator
Услуги разработки программного обеспечения под заказ. Step integrator
 
DATA CLUSTER
 DATA CLUSTER DATA CLUSTER
DATA CLUSTER
 
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
 

Mais de Транслируем.бел

Mais de Транслируем.бел (20)

Медицинские трансляции
Медицинские трансляцииМедицинские трансляции
Медицинские трансляции
 
Vinteo
VinteoVinteo
Vinteo
 
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайн
 
Unofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeksUnofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeks
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решений
 
Sennheiser ew100 g2
Sennheiser ew100 g2Sennheiser ew100 g2
Sennheiser ew100 g2
 
Sony mcs 8m
Sony mcs 8mSony mcs 8m
Sony mcs 8m
 
Сравнение поколений Y и Z
Сравнение поколений Y и ZСравнение поколений Y и Z
Сравнение поколений Y и Z
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетях
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в Facebook
 
The ultimate guide to facebook live for your event
The ultimate guide to facebook live for your eventThe ultimate guide to facebook live for your event
The ultimate guide to facebook live for your event
 
Guide to facebook live
Guide to facebook liveGuide to facebook live
Guide to facebook live
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектов
 
Belarus internet users discovery
Belarus internet users discoveryBelarus internet users discovery
Belarus internet users discovery
 
Эффективный маркетинг в Instagram
Эффективный маркетинг в InstagramЭффективный маркетинг в Instagram
Эффективный маркетинг в Instagram
 
Вторая волна исследования о развитии рынка электронной торговли в Беларуси за...
Вторая волна исследования о развитии рынка электронной торговли в Беларуси за...Вторая волна исследования о развитии рынка электронной торговли в Беларуси за...
Вторая волна исследования о развитии рынка электронной торговли в Беларуси за...
 
payqr presentation
payqr presentationpayqr presentation
payqr presentation
 
аналитика 2014 0806
аналитика 2014 0806аналитика 2014 0806
аналитика 2014 0806
 

Андрей Богомолов Автоматизация дистрибуции информации о наличии и цене товара для различных каналов генерации лидов в сегменте B2C

  • 1. Автоматизация дистрибуции информации о наличии и цене товара для различных каналов генерации лидов в сегменте B2C Андрей Богомолов, основатель проекта ERPVault.com Андрей Коротких, PI-consult.by, ведущий разработчик sales@erpvault.com Минск, 2011
  • 2. БИЗНЕС-ЗАДАЧИ обеспечить масштабируемость доставки информации о наличии, цене и характеристиках товара; обеспечить своевременность, точность, полноту, различное представление информации; SLA 99.9%, 4 ч., 24/7/365
  • 3. КАНАЛЫ ГЕНЕРАЦИИ ЛИДОВ || требования к масштабируемости веб сайт компании; веб сайты дочерних компаний (до 8); поисковые системы на порталах рекламных партнеров (до 64); веб-сайты компаний-партнеров с самостоятельным формированием цены, сроков поставки и ассортимента по условным группам (до 64); мобильное приложение Android; мобильное приложение iOS; online API для настольных систем дилеров.
  • 4. ДОП. ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ Время обновления информации <60 минут Период обновления: 2 раза / 24 ч Ассортимент: ~200 тыс. наименований товара Количество запросов: 2*10^6 / 24ч, Uniform Distribution Исполнение запроса: 0.1-4 с
  • 5. ДАНО классическая распределенная система => наследует общепринятые требования по: performance, scalability, simplicity, modifiability, visibility, portability, reliability
  • 6. ТЕХНИЧЕСКИЕ ЦЕЛИ Scalability of component interactions Generality of interfaces Independent deployment of components Intermediary components to reduce latency, enforce security and encapsulate legacy systems
  • 8. ВЫБОР ПРОТОКОЛОВ ВЗАИМОДЕЙСТВИЯ SOAP? CORBA? COM/DCOM? ReST (Representational State Transfer)? ???
  • 9. СВОЙСТВА ReST Client–server Stateless Cacheable Layered system Uniform interface HTTP-based
  • 10. ПРИНЦИПЫ ПОСТРОЕНИЯ ИНТЕРФЕЙСА Идентификация ресурсов Управление ресурсами через представление Self-descriptive сообщения Hypermedia как "движок" стостояний
  • 11. RESTful Web Service HTTP методы POST GET PUT DELETE ???
  • 12. ОБМЕН ДАННЫМИ XML JSON Google Protocol Buffers TXT/CSV XHTML ???
  • 14. ПРИМЕР ВНЕДРЕНИЯ: Моторлэнд веб сайт компании, веб сайты дочерних компаний – автоматическая и ручная репликация из ERP системы с различными параметрами по ассортименту, формированию цен, расположению товара; поисковые системы на порталах рекламных партнеров, веб-сайты компаний партнеров с самостоятельным формированием цены, сроков поставки и ассортимента по условным группам – виджеты с авторизацией и настройками для каждого из партнеров (ассортимент, цены, доставка и т.д.); мобильное приложение Android, мобильное приложение iOS – отображение информации через точку входа для мобильных устройств; online API для настольных систем дилеров – запрос к специальной точке доступа при помощи POST и GET, получение результата в удобном виде (XML, CSV, текст и т.д.).
  • 15. Примеры запросов Все необходимые методы для отображения формы поиска, отправки запросов, получения результатов, находятся в подключаемом JavaScript-классе API. Используется механизм AJAX, который отправляет данные поисковой формы методом GET и получает данные в виде JSON. Эти данные обрабатываются и отображаются клиенту в виде HTML.
  • 16. Примеры запросов Функция JavaScript для отправки данных поисковой формы и обработки результатов: this.submit = function() { // Получение данных формы var myargs = this.getFormData( 'erpvault_ucp_searchform' ); // Инициализация класса JsHttpRequest для отправки AJAX запроса var req = new JsHttpRequest(); // Функция для обработки результатов req.onreadystatechange = function() { if ( req.readyState == 4 ) { // Обработка ошибок и вывод результатов // … } } // Отправка запроса req.open( 'GET', this.url, true ); req.send( myargs ); }
  • 17. Примеры передачи данных Данные отправляется методом GET, массив имеет вид: Array ( [auto_brand] => 6 [auto_model] => 160 [part_type] => 5 ... ) Заданы параметры для поиска запчастей по марке, модели и названию запчасти (индексы берутся из элементов SELECT поисковой формы).
  • 18. Примеры ответов Данные ответов генерируются на серверных компонентах системы дистрибуции контента (PHP). В соответствии с полученными параметрами делается выборка из базы данных MySQL, полученные данные обрабатываются, преобразуются в JSON и передаются во Frontend. Пример кода PHP (утрировано для облегчения восприятия): // Инициализация класса JsHttpRequest $JsHttpRequest = new JsHttpRequest( ); // Обработка параметров GET, идентификация партнера, получение параметров … // Запрос к БД $sql = "SELECT parts.* FROM parts WHERE true"; $sql .= " AND auto_brand =".$db->escape( $_GET['auto_brand'] )."; $sql .= " AND auto_model =".$db->escape( $_GET[auto_model'] )."; $sql .= " AND part_type =".$db->escape( $_GET['part_type'] )."; if ( $tbl = $db -> Exec ( $sql ) ) while ( $res = $tbl -> FetchAssoc() ) { // Обработка данных // .. } } // Преобразование результатов в JSON и отправка во Frontend //.. На выходе мы имеем данные в формате JSON, которые класс JavaScript получает, обрабатывает и выводит клиенту.
  • 19. ПРИМЕР ИМПЛЕМЕНТАЦИИ: виджет Для вызова виджета используется JavaScript-код на странице клиента. Также можно задать индивидуальные CSS-стили для отображения формы поиска и результатов и элемент HTML, в котором будет отображаться содержимое виджета. При вызове виджета можно указать уникальный ключ идентификации партнера, кодировку для генерации контента и т.д.
  • 20. ПРИМЕР ИМПЛЕМЕНТАЦИИ: виджет Для вызова виджета используется JavaScript-код на странице клиента. Также можно задать индивидуальные CSS-стили для отображения формы поиска и результатов и элемент HTML, в котором будет отображаться содержимое виджета. При вызове виджета можно указать уникальный ключ идентификации партнера, кодировку для генерации контента и т.д.
  • 21. ПРИМЕР ИМПЛЕМЕНТАЦИИ: виджет <style> .erpvault_ucp_hidden{ display: none; } .erpvault_ucp_parts_title{ margin: 0px 0px 15px 0px; } .erpvault_ucp_searchform_table{ background-color: #deebfb; } .erpvault_ucp_searchform_td1{ padding: 5px; } .erpvault_ucp_searchform_td2{ padding: 5px; } .erpvault_ucp_searchform_footer{ padding: 5px; } .erpvault_ucp_searchform_submit{ font-size: 12px; } .erpvault_ucp_searchform_cancel{ font-size: 12px; } .erpvault_ucp_search_results_div{ margin: 15px 0px 20px 0px; } .erpvault_ucp_err{ color: red;} .erpvault_ucp_parts_table{ width: 100%; border-collapse: collapse; } .erpvault_ucp_parts_th{ border: 1px solid #dddddd; padding: 2px; background-color: #f2f2f2; } .erpvault_ucp_parts_td{ border: 1px solid #dddddd; padding: 2px; } .erpvault_ucp_loading_img { margin: 0px 3px 0px 3px; vertical-align: middle; } .erpvault_ucp_footer { margin: 15px 0px 15px 0px; color: #666666; } </style> <div id="erpvaultUcpSearchDiv"></div> <script language="JavaScript" src="http://www.motorland.by/search_api/" type="text/javascript" ></script>
  • 26. ПРИМЕР МОБИЛЬНОГО ПРИЛОЖЕНИЯ Платформа: Android Motorland – мобильное приложение для поиска автозапчастей и двигателей б/у Актуальная информация о наличии и цене Более 180 000 ассортиментных позиций в наличии на складах в г. Минске и в товаропроводящей сети в Республике Беларусь Ассортимент обновляется 2 раза в день из системы планирования ресурсов предприятия ERPVault™ Функциональные возможности: Поиск запчастей Публичный стол заказов Запрос в стол заказов Где купить? – Интерактивная карта
  • 27. Технические особенности Интерфейсы приложения оптимизированы для работы на современных мобильных устройствах на базе ОС Android версии 1.6 с HVGA (320x480), что позволяет охватить наибольшее количество пользователей Возможна работа приложения с другими версиями ОС Android (1.5+) и распространенными разрешениями экрана с оптической плотностью ldpi (120), mdpi (160), hdpi (240) Размещение элементов управления, скорость обработки и представление информации позволяет за минимальное время получать необходимую информацию о наличии и цене автозапчастей б/у, интерактивно устранять информационную асимметрию, исторически обусловленную свойствами товара и обычаями делового оборота в данном сегменте рынка Применяется эффективная технология обмена данных Серверная часть приложения позволяет держать высокую нагрузку, построена на собственной архитектуре "облачных" вычислений Приложение использует такие технологические особенности мобильных устройств, как: сенсорный дисплей, GPS-приемник Тщательно тестировано и рекомендовано для работы в 3G|3G+ сетях Velcom
  • 29. Результаты поиска Показываются только запчасти в наличии Подробные сведения о запчасти Цена (при наличии >5 единиц) Прямой телефон продавца Возможность сделать звонок прямо из приложения при нажатии на номер телефона Удобный скроллинг списка, ориентированный на возможности сенсорного экрана Удобная навигация для частого и быстрого использования
  • 31. ЭКОНОМИЧЕСКИЙ ЭФФЕКТ увеличение количества лидов с 2 тыс. до 30-100 тыс. /24 часа AVG Цена 1 лида < 0.005$ при стоимости высокочастотной контекстной рекламы в yandex > 0.1$ отсутствие роста постоянных затрат, связанных с поддержкой инфраструктуры и персоналом
  • 32. TODO Уровень универсальной абстракции дескрипторов товара Возможность масштабируемой записи, не только получение контента Встроенные средства для SEO и интернет-маркетинга