Получить идентификатор Adobe Marketing Cloud, если файлы cookie не были установлены ранее с помощью DTM?

Я пытаюсь выяснить, как получить идентификатор Adobe Marketing Cloud (MID) при первой загрузке страницы с использованием элемента данных (или любого другого альтернативного метода). Логика моего элемента данных работает нормально, если файл cookie Marketing Cloud уже существует. Если файл cookie Marketing Cloud уже не существует, мой элемент данных считывает файл cookie Marketing Cloud ID по мере его записи, но MID не заполняется в файле cookie в то время, когда элемент данных считывает его.

Есть ли способ получить доступ к значению и сообщить об этом в eVar при начальной загрузке страницы? На самом деле я беру MID и комбинирую его с дополнительным значением, чтобы создать значение eVar. Как уже говорилось, мой код работает, если идентификатор Marketing Cloud не существует и должен быть создан во время загрузки страницы.


person Michael Johns    schedule 02.10.2016    source источник


Ответы (1)


Вы можете использовать Visitor.getInstance(), чтобы получить экземпляр Visitor, а затем и затем Visitor.getMarketingCloudVisitorID(), чтобы получить идентификатор MC (то, что вы видите в параметре mid=)

пример:

var visitor = Visitor.getInstance("[mcorgid]@AdobeOrg")
s.eVar1 = visitor.getMarketingCloudVisitorID(); // set v2 with mid= value

Если вы внедрили службу MC ID в качестве инструмента DTM, вы можете вместо Visitor.getInstance() использовать _satellite.getVisitorId(), например:

s.eVar1 = _satellite.getVisitorId().getMarketingCloudVisitorID();

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

try {
  return _satellite.getVisitorId().getMarketingCloudVisitorID();
} catch(e) {console.log(e);}

(Обновить) Альтернативы

Из вашего комментария ниже (выделено жирным шрифтом):

Просто для ясности: это происходит со мной только на первой странице, когда файлы cookie Marketing Cloud не существуют. Я вижу MID в вызове сервера.

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

Динамические переменные

Синтаксис динамической переменной для ссылки на параметр mid=:

s.eVar1 = "D=mid";

Примечание. D= — это динамическая переменная по умолчанию. префикс синтаксис. Проверьте конфигурацию вашего инструмента AA/другой пользовательский код, чтобы убедиться, что он не настроен на что-то другое.

Правила обработки

Если у вас есть доступ к созданию правил обработки, вы можете настроить правило обработки, чтобы установить там значение eVar, равное mid=.

person Crayon Violent    schedule 02.10.2016
comment
- значит, вы говорите, что эта информация будет доступна для элемента данных, даже если файл cookie Markting Cloud ID еще не имеет доступного MID? Спасибо. - person Michael Johns; 03.10.2016
comment
Я попробовал вышеуказанный подход, но у меня та же проблема. _satellite.getVisitorId().getMarketingCloudVisitorID() не возвращает никакого значения; если я попал на страницу, и мои куки были очищены. Я предполагаю, что это проблема синхронизации, когда MID еще не сгенерирован? - person Michael Johns; 03.10.2016
comment
@MichaelJohns Итак, чтобы было ясно, вы реализовали службу MC ID как инструмент DTM, верно? - person Crayon Violent; 04.10.2016
comment
Да, это реализовано как инструмент в DTM - person Michael Johns; 08.10.2016
comment
@MichaelJohns хм, ладно .. Я проверил это в своей песочнице, и оно у меня появилось, и не заметил проблем с синхронизацией. Но если вы уверены, что в остальном все настроено правильно, и вы сделали все вышеперечисленное правильно, давайте попробуем подтвердить/опровергнуть синхронизацию, а не что-то еще. Во-первых, видите ли вы значение mid= в запросе AA? если это так, то это заставляет меня поверить, что, возможно, вы на самом деле не сделали это правильно, или что-то еще происходит. - person Crayon Violent; 08.10.2016
comment
Кроме того, очистите файлы cookie и перейдите на страницу, дайте странице полностью загрузиться, а затем введите _satellite.getVisitorId().getMarketingCloudVisitorID(); в консоль js. Вы получаете значение? - person Crayon Violent; 08.10.2016
comment
Просто для ясности: это происходит со мной только на первой странице, когда файлы cookie Marketing Cloud не существуют. Я вижу MID в вызове сервера. Если я посмотрю на содержимое файла cookie в начальном состоянии, когда элемент данных выполняется, в нем будет только немного данных (например, -179204249). Если после этого я посмотрю на содержимое файла cookie, при загрузке той же страницы он будет иметь полную закодированную строку с MID в файле cookie. - person Michael Johns; 08.10.2016
comment
Хорошо, основываясь на вашем комментарии, я лично все еще думаю, что в вашем коде есть какое-то отключение. Где-то опечатка, Плохая логика set/get/ref. Что-то в этом роде. Но поскольку вы подтвердили одну вещь, я добавил несколько решений, которые должны работать в качестве альтернативы, если вы хотите отказаться от преследования и положить этому конец. - person Crayon Violent; 08.10.2016
comment
спасибо за ваши решения, которые вы обновили, но я не могу выполнить какую-либо постобработку, как вы предлагаете, потому что значение eVar захватывается на одной главной странице и отправляется третьей стороне, поэтому оно должно быть фактическим значением. В противном случае это сработает. Извините, что не раскрыл это изначально. - person Michael Johns; 09.10.2016
comment
Служба поддержки Adobe предлагает мне попробовать: var analyticsID = visitor.getAnalyticsVisitorID(обратный вызов) - person Michael Johns; 18.10.2016
comment
@MichaelJohns Поддержка Adobe ошибается. getAnalyticsVisitorID возвращает устаревший идентификатор Analytics, если он доступен/применим. Что НЕ является средним значением - person Crayon Violent; 18.10.2016