Contact_monitoring

Мониторинг контактов

Мониторинг трафика и активности контактов иногда может быть несколько техническим и сложным для понимания. Mautic делает этот мониторинг простым и легко настраиваемым.

Мониторинг веб-сайтов

Мониторинг всего трафика на сайте может быть осуществлен путем загрузки файла javascript (начиная с версии Mautic 1.4) или добавления пикселя отслеживания на сайт. Важно отметить, что трафик от залогиненных пользователей Mautic не будет отслеживаться. Чтобы проверить, работает ли JS/пиксель, используйте окно инкогнито или приватный просмотр или просто выйдите из Mautic перед тестированием.

Обратите внимание, что по умолчанию Mautic не будет отслеживать трафик, исходящий из той же частной сети, что и он сам, но этот внутренний трафик можно настроить на отслеживание, установив опцию конфигурации track_private_ip_ranges в app/config/local.php на true и затем очистив кэш symfony.

Отслеживание Javascript (JS)

Метод отслеживания с помощью JS был реализован в Mautic 1.4 и рекомендован как основной способ отслеживания веб-сайта. Чтобы реализовать его,

  1. перейдите в Mautic > Настройки (нажмите на шестеренку в правом верхнем углу) > Конфигурация > Настройки отслеживания, чтобы найти сборку кода отслеживания JS для вашего экземпляра Mautic.
  2. вставьте код перед завершающим тегом <body/> сайта, который вы хотите отслеживать

Или скопируйте приведенный ниже код и измените URL вашего экземпляра Mautic.

Начиная с версии 2.3.0, Mautic устанавливает файлы cookie со сроком службы 2 года. Возвращающиеся посетители идентифицируются исключительно с помощью cookie. Если cookie еще не существует, Mautic создает новый контакт и устанавливает cookie. Убедитесь, что url вашего сайта указан в настройках CORS. Это первый шаг к лучшей идентификации контактов. Обратите внимание, что если браузер настроен на непринятие файлов cookie, это может привести к тому, что каждый контакт будет создавать нового посетителя. Если такое поведение вызывает беспокойство, см. опцию "Отпечаток пальца" ниже.

<script>
    (function(w,d,t,u,n,a,m){w['MauticTrackingObject']=n;
        w[n]=w[n]||function(){(w[n].q=w[n].q||[]).push(arguments)},a=d.createElement(t),
        m=d.getElementsByTagName(t)[0];a.async=1;a.src=u;m.parentNode.insertBefore(a, m)
    })(window,document,'script','http(s)://yourmautic.com/mtc.js','mt');

    mt('send', 'pageview');
</script>

Не забудьте изменить схему (http(s)) на http или https, в зависимости от того, какую схему вы используете для вашего Mautic. Также измените [yourmautic.com] на домен, на котором работает ваш Mautic._

Преимущество JS-трекинга в том, что запрос на отслеживание, который может занять довольно много времени, загружается асинхронно, поэтому он не замедляет работу отслеживаемого сайта. JS также позволяет отслеживать больше информации автоматически:

  • Заголовок страницы - это текст, написанный между тегами </title>.
  • Язык страницы - язык, определенный в браузере.
  • Page Referrer - URL, с которого контакт пришел на текущий сайт.
  • Page URL - URL текущего сайта.

mt() События

Начиная с версии 2.2.0, mt() поддерживает два обратных вызова, onload и onerror, принимаемый в качестве четвертого аргумента. Метод onload будет выполнен, как только пиксель отслеживания будет загружен. Если пиксель по какой-либо причине не загрузится, будет выполнен метод onerror.

mt('send', 'pageview', {}, {
    onload: function() {
        redirect();
    },
    onerror: function() {
        redirect();
    }
});

Куки локального контакта

Начиная с версии Mautic 2.2.0, если CORS настроен так, чтобы разрешить доступ из домена, в который встроен mtc.js, на том же домене будет размещен файл cookie с именем mtc_id. Этот файл cookie будет иметь значение идентификатора текущего отслеживаемого контакта. Это обеспечивает доступ к ID контакта для программного обеспечения на стороне сервера и, таким образом, предоставляет возможность интеграции с REST API Mautic.

Действительные домены для CORS должны включать полное имя домена, а также протокол. (например, http://example.org). Если вы обслуживаете защищенные и незащищенные страницы, вы должны указать как https://example.org, так и http://example.org. Все поддомены также должны быть указаны (например, http://example.org и http://www.example.org ), если ваш сервер позволяет это. Если вы хотите разрешить все поддомены, в качестве подстановочного знака можно использовать звездочку (например, http://*.example.org).

Отслеживание пользовательских параметров

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

    mt('send', 'pageview', {email: 'my@email.com', firstname: 'John'});

Этот код отправит все автоматические данные в Mautic и добавит также email и firstname. Значения этих полей должны быть сгенерированы вашей системой.

Начиная с версии Mautic 2.13, код отслеживания также поддерживает поля компании. Mautic может назначить компанию отслеживаемому контакту на основе названия компании. Тогда вы должны добавить параметр company или companyname в код отслеживания вместе с другими полями компании (companyemail, companyaddress1, companyaddress2, companyphone, companycity, companystate, companyzipcode, companycountry, companywebsite, companynumber_of_employees, companyfax, companyannual_revenue, companyindustry, companyindustry, companydescription...):

    mt('send', 'pageview', {email: 'my@email.com', firstname: 'John', company: 'Mautic', companyemail: 'mautic@mautic.com', companydescription: 'описание компании', companywebsite: 'https://mautic.com'});

Событие загрузки

Поскольку в JS отслеживание запроса загружается асинхронно, вы можете попросить JS вызвать функцию при загрузке запроса. Для этого определите функцию onload в опциях следующим образом:

    mt('send', 'pageview', {email: 'my@email.com', firstname: 'John'}, {onload: function() { alert("Tracking request is loaded"); }});

Отпечаток пальца (бета-версия функции)

Mautic 1.4.0 поставляется с функцией отслеживания, называемой отпечатком пальца. Была использована библиотека Fingerprint2. Она должна работать вместе или заменить текущие идентификаторы отслеживания, такие как IP-адрес и/или идентификатор cookie. Этот метод еще не глубоко внедрен в систему, но вы уже можете увидеть больше информации в хронологии событий на странице попадания в контактную информацию:

  • Отпечаток пальца - Уникальный хэш, вычисляемый из настроек браузера и других переменных окружения.
  • Разрешение - Ширина х Высота разрешения дисплея устройства.
  • Смещение часового пояса - Количество минут плюс-минус от UTC.
  • Платформа - Платформа устройства. Обычно это ОС и архитектура процессора.
  • Adblock - Булево значение, использует ли контакт плагин для браузера adblock.
  • Do Not Track - Булево значение, если DNT включено.

Если вы хотите сохранить любое из перечисленных выше значений в поле подробной информации о контакте, создайте новое пользовательское поле, названное точно так же, как в списке выше, и сделайте это поле общедоступным для обновления. Вы также можете попытаться сделать поле "Отпечаток пальца" уникальным и таким образом смоделировать будущее отслеживание отпечатков пальцев. Однако эта функция не протестирована, не используйте ее в продакшене, пока не протестируете сначала.

Отслеживание пикселей

Этот метод является вторичным, начиная с Mautic 1.4.

http://yourdomain.com/mtracking.gif

Запрос пикселя отслеживания

Чтобы получить максимальную отдачу от пикселя отслеживания, рекомендуется передавать информацию о веб-запросе через URL изображения.

Информация о странице

В настоящее время Mautic поддерживает page_url, referrer, language и page_title (обратите внимание, что использование url и title устарело из-за конфликтов с контактными полями).

UTM-коды

Support for UTM codes in the contact time-line was introduced in version 1.2.1. Currently, utm_medium, utm_source, utm_campaign, utm_content, and utm_term are used to generate the content in a new time-line entry.

utm_campaign will be used as the time-line entry's title.

utm_medium values are mapped to the following Font Awesome classes:

.
Values Class
social, socialmediafa-share-alt if utm_source is not available otherwise utm_source will be used as the class. For example, if utm_source is Twitter, fa-twitter will be used.
email, newsletterfa-envelope-o
banner, adfa-bullseye
cpcfa-money
locationfa-map-marker
devicefa-tablet if utm_source is not available otherwise utm_source will be used as the class. Например, если utm_source - Mobile, то будет использоваться fa-mobile.

Все UTM-метки доступны в записи времени, просто переключив кнопку детализации записи.

Обратите внимание, что UTM-метки записываются только при отправке формы, содержащей действие "Записать UTM-метки".

Встраивание пикселя

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

Вот несколько фрагментов кода, которые также могут помочь:

HTML

<img src="http://yourdomain.com/mtracking.gif?page_url=http%3a%2f%2fyourdomain.com%2fyour-product-page&page_title=Some%20Cool%20Product&email=user%40theirdomain.com&tags=ProductA,-ProductB" style="display: none;" alt="mautic is open source marketing automation" />

PHP

$d = urlencode(base64_encode(serialize(array(
    'page_url' => 'http://' . $_SERVER[HTTP_HOST] . $_SERVER['REQUEST_URI'],
    'page_title' => $pageTitle, // Используйте средства вашего сайта для получения заголовка или вставьте его вручную
    'email' => $loggedInUsersEmail // Используйте средства управления пользователями вашего сайта для получения email.
))));

echo '<img src="http://your-mautic.com/mtracking.gif?d=' . $d . '" style="display: none;" />';

Javascript

<script>
var mauticUrl = 'http://your-mautic.com';
var src = mauticUrl + '/mtracking.gif?page_url=' + encodeURIComponent(window.location.href) + '&page_title=' + encodeURIComponent(document.title);
var img = document.createElement('img');
img.style.width = '1px';
img.style.height = '1px';
img.style.display = 'none';
img.src = src;
var body = document.getElementsByTagName('body')[0];
body.appendChild(img);
</script>

Поля контактов

Вы также можете передавать информацию, специфичную для вашего контакта, установив поле (поля) контакта Mautic как публично обновляемое. Обратите внимание, что значения, добавляемые в пиксель отслеживания, должны быть закодированы в url (%20 для пробелов, %40 для @ и т.д.).

Теги

Теги контакта могут быть изменены с помощью параметра запроса tags. Несколько тегов могут быть разделены запятой. Чтобы удалить тег, добавьте к нему тире (знак минус).

Например, mtracking.gif?tags=ProductA,-ProductB добавит к контакту тег ProductA и удалит ProductB.

Доступные плагины

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

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

Примечание: Важно отметить, что вы не ограничены этими плагинами и можете разместить пиксель отслеживания непосредственно на любой HTML-странице для отслеживания веб-сайта.

Идентификация посетителей по отслеживаемому URL

В Mautic 2.9 в конфигурацию добавлена опция идентификации посетителей по отслеживаемому URL. Если опция включена, возвращающиеся посетители будут идентифицироваться по URL отслеживания из каналов (особенно из электронных писем), когда еще не существует cookie.

Примечание: поле Email контакта должно быть отмечено как уникальный идентификатор и публично обновляемо в Конфигурации.

Мобильный мониторинг

Суть мониторинга того, что происходит в приложении, схожа с мониторингом того, что происходит на сайте. Mautic содержит строительные блоки, необходимые для нативных (или псевдо-нативных) и HTML5-оберток приложений, независимо от платформы.

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

Шаги в Mautic

  1. Сделайте поле email общедоступным для редактирования, это означает, что вызов отслеживающего GIF с переменной email будет правильно распознан Mautic.

  2. Настройте форму, которая будет точкой доступа вашей кампании (например, новый контактный email). Сделайте эту форму как можно более простой, поскольку вы будете отправлять на нее POST-адреса из вашего приложения. Типичный URL формы, на который вы будете отправлять POST, выглядит следующим образом

http://your_mautic/form/submit?formId=<form_id>

Вы можете получить ID из mautic URL при просмотре / редактировании формы в интерфейсе Mautic (или в таблицах форм, последний столбец), и вы можете получить поля формы, посмотрев HTML 'Manual Copy' HTML на странице редактирования форм.

  1. Определите в своих кампаниях экраны, которые вы хотите использовать в качестве триггеров (например, 'cart_screen' и т.д.). Mautic не ищет реальный URL в форме 'http://' для page_url, подойдет любая типичная строка. Например:
http://yourdomain.com/mtracking.gif?page_url=cart_screen&email=myemail@somewhere.com

В вашем приложении

Лучший в своем классе подход - это иметь класс (скажем, 'mautic'), который обрабатывает все ваши потребности в отслеживании. Например, этот пример вызова метода POST для формы с ID 3 - см. предыдущий раздел (примечание: для краткости и универсальности эти примеры написаны на языке типа JavaScript / ECMAScript, используйте аналогичный вызов на языке вашего мобильного приложения).

mautic.addContact("myemail@somehwere.com",3)

А затем, чтобы отследить активность отдельных пользователей в приложении, этот пример вызова сделает HTTP-запрос к трекеру:

mautic.track("cart_screen", "myemail@somewhere.com")

Что является ничем иным, как HTTP-запросом к этому URL в формате GET (как также показано в предыдущем разделе):

http://yourdomain.com/mtracking.gif?page_url=cart_screen&email=myemail@somewhere.com

Важно: Убедитесь, что в вашем приложении вышеуказанный HTTP-запрос использует cookie (если возможно, повторно используйте cookie из предыдущего POST-запроса mautic.addcontact) и что вы повторно используете этот cookie от одного запроса к другому. Так Mautic (и другие программы отслеживания) узнают, что это действительно один и тот же пользователь. Если вы не сможете этого сделать, вы можете столкнуться с (маловероятным, но возможным) случаем, когда у вас есть несколько контактов с одного IP-адреса, и Mautic объединит их все в один контакт, поскольку не сможет определить, кто есть кто без куки.

Поддержка отслеживания контактов в Google Analytics и Facebook Pixel

Mautic поддерживает отслеживание контактов в Google Analytics и Facebook pixel. Перейдите на вкладку Mautic Configurations Tracking Settings и настройте:

Коды отслеживания также поддерживают Google Analytics USERID и Facebook Pixel Advanced Matching .

Действие кампании Отправить событие отслеживания

Действие позволяет отправлять пользовательское событие в Google Analytics или Facebook Pixel и зависит от решения Visits a page.

Как проверить код отслеживания Google Analytics и действие кампании.
  • Установите Tag assistent и включите запись на вашем сайте.
  • Создайте кампанию с решением Visits a page и действием Send tracking event.
  • Протестируйте ее и увидите отладочное окно Tag assistent с одним запросом на просмотр страницы и 1 событием

Как протестировать код отслеживания Facebook Pixel и действие кампании
  • Установите Facebook Pixel Helper.
  • Создайте кампанию с решением "Посещение страницы" и действием "Отправка события отслеживания".
  • Протестируйте ее и увидите отладочное окно Facebook Pixel Helper с одним просмотром страницы и одним пользовательским действием события

События следует использовать для Remarketing with Analytics и Remarketing for Facebook Ads

Другой онлайн-мониторинг

Существует несколько других способов отслеживания активности контактов и привязки точек к этим действиям. Мониторинг веб-сайтов - это только один из способов отслеживания контактов. Другие способы мониторинга контактов могут состоять из сообщений на форумах, сообщений в чатах, сообщений в списках рассылки, сообщений на GitHub/Bitbucket, отправки кода, сообщений в социальных сетях и множества других вариантов.

Устранение неполадок

Если отслеживание не работает, посмотрите Page troubleshooting или Email troubleshooting.