JS Event API

Для указания настроек инициализации и колбеков приложения Convead используется глобальная переменная ConveadSettings.

Ивенты

Ивенты используются для передачи данных с сайта в Convead.

convead('event', 'EVENT_TYPE', event_properties = {}, visitor_info = {});

Link

Открытие новой страницы с указанием «ключевой страницы».

convead('event', 'link', {key_page_id: 123}, {});

Purchase

Передает событие покупки.

  • order_id — id заказа (уникальное значение)
  • revenue — полная стоимость заказа с учетом стоимости доставки и скидок
  • items — массив из списка товаров в заказе
  • product_id — id наименования товара
  • qnt — количество товаров
  • price — цена
  • product_url — адрес страницы товара (необязателен)
  • product_image_url — изображение товара (необязателен)
  • state — статус заказа (необязательный атрибут)
convead('event', 'purchase', { order_id: '12345', revenue: 99.99, items: [ {product_id: '1', qnt: 1, price: 125.15, product_image_url: 'http://site/2.jpg', product_url: 'http://site.net/product/2'}, {product_id: '2', qnt: 15, price: 127.02, product_image_url: 'http://site/2.jpg', product_url: 'http://site.net/product/2'} ]}, { first_name: 'Сергей', last_name: 'Сергеев', email: 'test@example.net', phone: '555555' } );

Order update

Обновление статуса заказа

  • order_id — id заказа (уникальное значение)
  • state — статус заказа
  • revenue — полная стоимость заказа с учетом стоимости доставки и скидок (необязательный атрибут)
  • items — массив из списка товаров в заказе (необязательный атрибут)
  • product_id — id наименования товара
  • qnt — количество товаров
  • price — цена
convead('event', 'order_update', {order_id: '12345', state: 'paid', revenue: 99.99, items: [ {product_id: '1', qnt: 1, price: 125.15}, {product_id: '2', qnt: 15, price: 127.02} ]});

Custom

Отправка пользовательского события.

key — ключ пользовательского эвента. Задается в разделе  Мой аккаунт=>Мои события.

convead('event', 'custom', {key: 'event_key'});

Update info

Используется для изменения данных посетителя.

Последним параметром передается объект visitor_info, который содержит информацию о посетителе.

convead('event', 'update_info', {}, {email: 'test@example.net'});

View product

Передает информацию о просмотренном товаре.

  • product_id — id товара
  • product_name — название товара
  • category_id — id раздела, в котором расположен товар (необязателен)
  • product_url — адрес страницы с товаром (допускается значение window.location.href)
  • price — цена (необязателен)
  • product_image_url — изображение товара (необязателен)
convead('event', 'view_product', { product_id: '123', product_name: 'Сковородка RX9000', category_id: '123', product_url: window.location.href, price: 125.15, product_image_url: 'http://site/1.jpg' });

Update cart

Передает полный состав корзины. Если корзина очищена, то отправляется с пустым массивом items: [].

Параметры product_name, product_url, product_image_url необязательны.

convead('event', 'update_cart', { items: [ {product_id: '1', qnt: 1, price: 125.15, product_name: "Сало диетическое", product_url: 'http://site.net/product/1', product_image_url: 'http://site/2.jpg'}, {product_id: '2', qnt: 15, price: 127.02, product_name: "Булочки с маком", product_url: 'http://site.net/product/2', product_image_url: 'http://site/2.jpg'} ] });

Add to cart

Добавляет одно наименование товара в корзину.

Вместо данного эвента рекомендуется использовать update_cart.

Параметры product_name, product_url необязательны.

convead('event', 'add_to_cart', { product_id: '1', qnt: 2, price: 125.03, product_name: 'Сало диетическое', product_url: 'http://site.net/product/1' });

Remove from cart

Удаляет qnt товаров из одного наименования товара корзины.

Вместо данного эвента рекомендуется использовать update_cart.

convead('event', 'remove_from_cart', { product_id: '1', qnt: 2});

Mailto

Передача e-mail.

convead('event', 'mailto', {email: 'chuck-norris@example.com'}, {});

File

Скачивание файла.

convead('event', 'file', {file_url: 'http://example.com/file.zip'}, {});

Методы для работы с виджетами

Показ виджета

Работает только для ручных виджетов.

  • on_complete — вызывает функцию в момент показа виджета и передает в нее переменную el с содержимым виджета.
  • allow_close — при значении false запрещает закрывать виджет. При этом иконка закрытия/сворачивания видна не будет.
<code><code>convead('widget', 'show', {id: 123}); convead('widget', 'show', {id: 123, on_complete: function(el) { alert(el); }}); convead('widget', 'show', {id: 123, allow_close: false});

Скрытие/сворачивание виджета

  • Для типов виджетов: Popup, Notice — происходит закрытие.
  • Для типов виджетов: TopBar, BottomBar — сворачивание.

id — передает id виджета, который нужно закрыть/свернуть.

display_type — тип виджетов, которые нужно закрыть/свернуть (принимает значения manual и auto для ручных и автоматических).

convead('widget', 'close'); convead('widget', 'close', {id: 123}); convead('widget', 'close', {display_type: 'manual'});

Трекинг

Запрещает/разрешает передачу данных из магазина в Convead из Вашего браузера.

Предназначен для исключения из статистики менеджеров магазина.

Отключить трекинг.

convead('track', 'disable');

Включить трекинг.

convead('track', 'enable');

❗️Внимание! Если вы интегрировали свой сайт с помощью модуля Convead, то убедитесь, что у Вас установлена последняя версия модуля, в противном случае может отключиться трекинг не всех эвентов.

Методы для чата

Развернуть окно чата.

convead('module', 'chat', {method: 'show'});

Свернуть окно чата.

convead('module', 'chat', {method: 'hide'});

Колбеки

Для отслеживания ключевых событий в convead предусмотрено колбеки. Они прописываются в объект ConveadSettings при инициализации.

  • onload — Срабатывает после загрузки всех скриптов, но перед инициализацией основного кода convead;
  • onready — Срабатывает при завершении инициализации convead после всех обязательных методов;
  • onevent — Срабатывает после отправки событий. Возвращает переменные которые были отправлены в этом событии: event_name, properties, visitor_info, attributes
ConveadSettings.onload = function() { console.log('loaded'); }; ConveadSettings.onready = function() { console.log('ready'); } ConveadSettings.onevent = function(event_name, properties, visitor_info, attributes) { console.log('event', event_name, properties, visitor_info, attributes); }

Подписка на внутренние события

Подписка на внутренние события работает аналогично колбекам, но позволяет добавлять несколько обработчиков для каждого внутреннего события.

Метод подписки  ConveadClient.event_emitter. subscribe(name, callback) доступен после инициализации convead.

Доступные внутренние события:

  • event.<event_name> — отправлено событие в convead. это имя события convead;
  • find_email — сработала функция определения email в водимых данных в форме на сайте. Возвращает определенный email;
  • chat.show — чат развернут;
  • chat.hide — чат свернут;
  • leaving — текущая вкладка браузера закрыта;
ConveadSettings.onready = function() { ConveadClient.event_emitter.subscribe('event.view_product', function() { console.log('View product event was sent'); }); ConveadClient.event_emitter.subscribe('find_email', function(email) { console.log('Your email is', email); }); ConveadClient.event_emitter.subscribe('chat.show', function() { console.log('Chat is open'); }); ConveadClient.event_emitter.subscribe('chat.hide', function() { console.log('Chat is close'); }); ConveadClient.event_emitter.subscribe('chat.send_msg', function(msg) { console.log('The visitor sent a message', msg); }); ConveadClient.event_emitter.subscribe('chat.new_msg', function(msg) { console.log('The visitor has received a new message', msg); }); ConveadClient.event_emitter.subscribe('chat.unread_msg', function(msg) { console.log('Visitor has unread messages', msg); }); ConveadClient.event_emitter.subscribe('chat.entered_msg', function(msg) { console.log('Chat init', msg); }); ConveadClient.event_emitter.subscribe('leaving', function() { console.log('The browser window is closed'); }); };<br>

Для работы с Сonvead EVENT можно использовать  php или ruby библиотеки.

Эта статья вам помогла? Спасибо за отзыв! Не удалось отправить отзыв. Пожалуйста, попробуйте позже.

Еще нужна помощь? Свяжитесь с нами Свяжитесь с нами