Прочее

Запись последних utm-меток

Наш сервис по умолчанию записывает в свойства пользователей первые utm метки. Но если вы хотите, чтобы наш сервис фиксировал и метки со следующих посещений, то в разделе "трекинг" - "Мастер сбора данных" - "Настроить Javascript код" события нужно прописать следующий код:

 

 

function TrackUtm(){
    var utm_source = window.location.href.match(/utm_source=([^&]+)/);
    var utm_medium = window.location.href.match(/utm_medium=([^&]+)/);
    var utm_campaign = window.location.href.match(/utm_campaign=([^&]+)/);
    var utm_term = window.location.href.match(/utm_term=([^&]+)/);
    var utm_content = window.location.href.match(/utm_content=([^&]+)/);
    if (utm_content != undefined) {
        carrotquest.identify({ 'Последняя метка UTM Content': utm_content[1] });
    }
    if (utm_source != undefined) {
        carrotquest.identify({ 'Последняя метка UTM Source': utm_source[1] });
    }
    if (utm_medium != undefined) {
        carrotquest.identify({ 'Последняя метка UTM Medium': utm_medium[1] });
    }
    if (utm_campaign != undefined) {
        carrotquest.identify({ 'Последняя метка UTM Campaign': utm_campaign[1] });
    }
    if (utm_term != undefined) {
        carrotquest.identify({ 'Последняя метка UTM Term': utm_term[1] });
        }
} 
TrackUtm();

Скопировать код

 

Добавить url страницы в свойства события и пользователя

Запись в событие пользователя

Для начала вам нужно зайти в раздел javascript код и вставить туда вот такой код:

$('body').prepend('<input type="hidden" value="' + window.location.href + '" id="cqurl">');

Скопировать код

 

Код в разделе должен выглядеть вот так. Не забудьте сохранить.

 

Теперь вы можете использовать селектор #cqurl для вставки в свойства события или свойства пользователя.

Запись в свойство пользователя

Чтобы добавить в свойства пользователя URL страницы, на котором в данный момент находится пользователь, необходимо воспользоваться методом identify.

 

Пример. Запись последней посещенной страницы
В раздел Трекинг - Мастер сбора данных - Настроить JavaScript код вставляем следующий скрипт:

carrotquest.identify([{op: 'update_or_create', key: 'Последняя посещенная страница', value: window.location.href}]);

Скопировать код

 

Теперь после каждого обновления страницы свойство будет обновляться и содержать в себе последнюю посещенную страницу сайта.

 

Фильтрация ботов

По умолчанию фильтруются следующие боты из JavaScript библиотеки Carrot quest:

  • Yahoo
  • Googlebot
  • Mail.Ru Bot
  • YandexBot
  • BingBot
  • FaceBot
  • VK Share
  • AppleBot
  • TwitterBot

Все другие боты, переходящие на ваш сайт, будут влиять на информацию о пользователях в базе Carrot Quest. Установите код, чтобы отфильтровывать таких пользователей:

  1. Просматривайте  информацию юзер агента у уникальных посетителей вашего сайта;
  2. Ищите слово “bot” где-нибудь в информации юзер агента.
  3. Если вы нашли слово “bot”, задайте свойство $ignore определено.

Если вы можете, установите общую закономерность действий ботов, чтобы заблокировать всех сразу. Этого можно добиться, если фильтровать любое взаимодействие с вашим сайтом, которое исходит из web framework, не похожего на браузер пользователей.

В качестве примера для GTM ботов код будет выглядеть так:

(function() {
    function Build(name, args) {
        return function() {
            window.carrotquestasync.push(name, arguments);
        }
    }
    if (typeof carrotquest === 'undefined') {
        var s = document.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = '//cdn.carrotquest.io/api.min.js';
        var x = document.getElementsByTagName('head') 0;
        x.appendChild(s);
        window.carrotquest = {};
        window.carrotquestasync = [];
        carrotquest.settings = {};
        var m = 'connect', 'track', 'identify', 'auth', 'open', 'onReady', 'addCallback', 'removeCallback', 'trackMessageInteraction';
        for (var i = 0; i < m.length; i++) carrotquest[mi] = Build(mi);
    }
})();

if (!/(Bot)/i.test(navigator.userAgent)) {
    carrotquest.connect('xxx')
}

Скопировать код

 

Если вы установите этот код, вы заблокируете всех юзер агентов с “Bot” в имени пользователя. Если это не сработает, вы можете начать отслеживать этого агента, чтобы установить общую закономерность среди всех ботов на вашем сайте.

Добавление в свойства данных про размер экрана пользователя

Вы можете сегментировать аудиторию по размеру экрана (выбирая из них посетителей с мобильных устройств), чтобы настраивать отдельные сценарии для каждого сценария. Для этого запишите в свойства пользователя информацию о размере экрана. Это можно сделать двумя способами:  

 

1. С помощью javascript

С помощью javascript событий вы можете добавить данные о размере экрана пользователя.

Для этого вам нужно прописать в разделе javascript события следующий код:

 

if (window.screen.availWidth < 768) carrotquest.identify({"Маленький экран": 1}); else carrotquest.identify({"Маленький экран": 0});

 

Теперь, если экран у посетителя меньше 768 пикселей, к нему в свойства будет записываться свойство "Маленький экран" = 1, если нет, то 0.

 

2. Из свойства события "Начал сессию"

Вы также можете брать свойство "тип устройства" из события "Начал сессию" и записывать его в свойство пользователя.

Забрать это свойство из события можно так:

  1. Создайте триггерный javascript.
  2. В качестве триггера выберите Начал сессию.
  3. Выставьте отсрочку отправки 2 секунды. Повторная отправка — через 20 минут.
  4. В сообщение вставьте скрипт:

carrotquest.identify([{ op: 'update_or_create', key: 'Тип устройства', value: "{{event['$device_type']}}" }]);

 

Пользователю будет записываться свойство "Тип устройства" и значением как у аналогичного свойства события "Начал сессию".

 

Сбор данных с формы

 

Достаточно часто в регистрации есть обязательные поля, не заполнив которые нельзя пройти дальше. С помощью мастера сбора данных вы можете настроить событие клика по кнопке “Зарегистрироваться”, но оно не будет учитывать заполнение полей и будет срабатывать каждый раз при нажатии на кнопку. Чтобы отделить несостоявшиеся регистрации и записывать только действительно зарегистрированных пользователей, вы можете воспользоваться JavaScript’ом.

Давайте создадим такое событие.

Рассмотрим простую форму регистрации:

 

В форме есть пять обязательных полей: логин, пароль, подтверждение пароля, e-mail и проверочное слово с картинки.

Определим селекторы у этих полей:

input[name="USER_LOGIN"],

input[name="USER_PASSWORD"],

input[name="USER_CONFIRM_PASSWORD"],

input[name="USER_EMAIL"] и

input[name="captcha_word"].

Также определим селектор кнопки «Регистрация»: input[name="Register"].

Продумаем логику срабатывания события регистрации: при клике на кнопку «Регистрация» будет проверяться заполнены ли все обязательные поля. Если заполнены — будет срабатывать метод track. Перенесем это на язык JavaScript:

document.querySelector('input[name="Register"]').onclick = function() {
    if (document.querySelector('input[name="USER_LOGIN"]').value != '' &&
    document.querySelector('input[name="USER_PASSWORD"]').value != '' &&
    document.querySelector('input[name="USER_CONFIRM_PASSWORD"]').value != '' &&
    document.querySelector('input[name="USER_EMAIL"]').value != '' &&
    document.querySelector('input[name="captcha_word"]').value != '') {
        carrotquest.track('Зарегистрировался')
    }
};

Скопировать код

Остается только вставить этот код в раздел Трекинг - Мастер сбора данных - Настроить JavaScript код и сохранить.

 

Таким образом, возможности сбора событий ограничиваются только возможностями JavaScript и вашей фантазией.

 

Скрытие событий из списков триггеров и сегментации

В Carrot Quest вы не можете удалять ранее созданные события и свойства.

Все события и свойства в Carrot Quest плотно переплетены и составляют историю ваших пользователей. Событие может быть триггером для разных автосообщений, входить в разные воронки или использоваться для сегментации пользователей. Вы даже не заметите, как ваша аналитика или автосообщение перестанут работать корректно, если вы удалите событие, на основе которого строилась автоматизация маркетинга.

В карточке пользователя вы можете посмотреть всю историю лида. Каждое действие на сайте дополняет его образ, вы лучше узнаёте клиента и можете эффективнее с ним контактировать. Если какое-то событие или свойство будет удалено, вы не сможете восстановить полную историю, не поймёте, почему он купил/не купил или как он отреагировал на то или иное сообщение.

Вы можете скрыть определённое событие. Информация по нему будет собираться, но вы не увидите его среди остальных.

Для этого перейдите в раздел “Трекинг” —> “События”. Здесь вы можете посмотреть  полный список настроенных вами событий.

image00.png

 

Найдите событие, которое хотите скрыть, и перейдите к его редактированию. Здесь снимите галочку “Показывать”.

image01.png

 

Мы призываем вас обдуманно подходить к созданию свойств и событий, ведь каждое из них сразу становится частью истории вашего сервиса.

 

Запись телефона из поля с маской

В случаях когда на поле ввода телефона присутствует маска (подсказки в виде +7, скобки, дефисы), обычный способ записи через запись поля ввода не сработает. Маска не позволит системе списать данные.

 

Записать телефон из поля с маской можно как с помощью продвинутого мастера сбора данных, так и через JavaScript. Рассмотрим оба примера.

 

Запись через мастер сбора данных 

Для того чтобы собрать данные с этого поля нужно использовать "продвинутый мастер сбора данных"

 

В мастере нужно выбрать типа действия "клик по элементу", записать совершенное действия "записать данные как свойство пользователя"

В CSS-селекторе вы выбираете селектор кнопки отправки формы для поля телефона. Обычно это кнопка "отправить"/"сохранить"/"ок". Кнопка которая отправляет введенный телефон в обработку.

А ниже в "свойствах из селекторов" указать свойство "телефон" и ввести селектор поля телефона.

 

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

 

Запись через JavaScript

Рассмотрим способ сбора телефона из поля с маской для ввода с помощью JavaScript. Предположим, что у нас есть поле с селектором #USER_PHONE.  Принцип работы будет следующим: при потере фокуса полем (пользователь закончил заполнять поле и кликнул в другое место на сайте) будет срабатывать метод identify, который будет записывать значение поля с телефоном в карточку пользователя.

Перенесем это на язык JavaScript:

Вставляем этот код в раздел Трекинг - Мастер сбора данных - Настроить JavaScript код и сохраняем.

 

Как создать событие "Попытка ухода с сайта"

Событие "Попытка ухода с сайта" позволит отправлять триггерное сообщение пользователям и ловить их внимание в самый последний момент — когда они уводят курсор за верхнюю границу вашего сайта.

 

Чтобы создать событие "Попытка ухода с сайта", сделайте несколько простых шагов:

1. Перейдите в раздел Трекинг — Мастер сбора данных — Настроить JavaScript код


 

2. Вставьте в окошко следующий скрипт:

(function() {
    init()
    function init() {
        setTimeout(addMouseout, 5000);
    }
    function addMouseout() {
        document.addEventListener('mouseout', mouseout);
    }
    function mouseout(e) {
        if (Math.round(e.x) >= 0 && Math.round(e.y) <= 0) {
            carrotquest.track('Попытка ухода с сайта');
            deleteEvent();
            setTimeout(addMouseout, 10000);
        }
    }
    function deleteEvent() {
        document.removeEventListener('mouseout', mouseout);
    }
}());

Скопировать код

3. Кликните «Сохранить».

 

Как работает скрипт:

1. Скрипт инициируется через 5 секунд после захода пользователя на сайт.

2. Когда пользователь будет уводить курсор мыши выше окна сайта, будет срабатывать событие «Попытка ухода с сайта».

3. Повторно событие сработает через 10 секунд.

 

Также вы можете добавить скрипты, которые будут срабатывать при попытке ухода с конкретных страниц или разделов.

Попытка ухода с конкретной страницы (пропишите нужный адрес страницы и название события):

//попытка ухода со страницы Футболка женская
if (window.location.href == 'http://bitrix.carrotquest.ru/catalog/t-shirts/women-s-t-shirt-purity/') {
    (function() {
        init()
        function init() {
            setTimeout(addMouseout, 5000);
        }
        function addMouseout() {
            document.addEventListener('mouseout', mouseout);
        }
        function mouseout(e) {
            if (Math.round(e.x) >= 0 && Math.round(e.y) <= 0) {
                carrotquest.track('leave attempt "Pricing"');
                deleteEvent();
                setTimeout(addMouseout, 10000);
            }
        }
        function deleteEvent() {
            document.removeEventListener('mouseout', mouseout);
        }
    }())
};

Скопировать код

Попытка ухода из раздела:

//попытка ухода из раздела
if (location.href.indexOf('/product/') > -1) {
    (function() {
        init()
        function init() {
            setTimeout(addMouseout, 5000);
        }
        function addMouseout() {
            document.addEventListener('mouseout', mouseout);
        }
        function mouseout(e) {
            if (Math.round(e.x) >= 0 && Math.round(e.y) <= 0) {
                carrotquest.track('Попытка ухода из любой карточки товара');
                deleteEvent();
                setTimeout(addMouseout, 10000);
            }
        }
        function deleteEvent() {
            document.removeEventListener('mouseout', mouseout);
        }
    }())
};

Скопировать код

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 4 из 4
Остались вопросы? Напишите нам!

Комментарии