以前未使用DTM设置Cookie时,获取Adobe Marketing Cloud ID?
我试图找出如何捕捉Adobe Marketing Cloud ID(MID)时,页面第一次加载使用数据元素(或通过任何替代方法将工作)。如果Marketing Cloud Cookie已经存在,我的数据元素逻辑工作正常。如果没有营销云的Cookie已经存在,我的数据元素读取营销云ID的Cookie,因为它被写入,但MID并不在数据元素读它的时候cookie的填充。以前未使用DTM设置Cookie时,获取Adobe Marketing Cloud ID?
有什么方法可以访问该值并在初始页面加载的eVar中报告它?实际上,我将MID与其他值结合以创建eVar值。如上所述,我的代码工作除非Marketing Cloud ID不存在,并且必须在页面加载期间创建。
您可以使用Visitor.getInstance()
得到Visitor
实例,然后再Visitor.getMarketingCloudVisitorID()
得到MC ID(你在mid=
PARAM见)
例如:
var visitor = Visitor.getInstance("[mcorgid]@AdobeOrg")
s.eVar1 = visitor.getMarketingCloudVisitorID(); // set v2 with mid= value
如果您实施了MC ID服务作为DTM工具,您也可以使用_satellite.getVisitorId()
,而不是Visitor.getInstance()
,如:
s.eVar1 = _satellite.getVisitorId().getMarketingCloudVisitorID();
因此,对于你数据元素,而不是做一个Cookie类型(我认为这是你做了什么),你将需要使用自定义脚本类型和返回值,例如
try {
return _satellite.getVisitorId().getMarketingCloudVisitorID();
} catch(e) {console.log(e);}
(更新)替代
从下面的评论(我的粗体强调):
只是要清楚,这只是发生在我身上的第一页时, Marketing Cloud Cookie不存在。 我确实在服务器 上看到MID的调用。
既然你已经证实,AA越来越而不是尝试它的实际价值推到你的EVAR在其请求的mid=
值,你可以通过其他方式间接地弹出它。
动态变量
dynamic variable语法引用mid=
PARAM:
s.eVar1 = "D=mid";
注:D=
是默认dynamic variable prefix语法。检查你的AA工具配置/其他自定义代码,以确保它没有被设置为其他东西。
处理规则
如果您有权创建的处理规则,你可以设置一个处理规则设置你的EVAR到mid=
价值在那里。
-so你是说你即使Markting Cloud ID Cookie没有MID可用,这个信息也会被提供给数据元素吗?谢谢。 –
我尝试了上述方法,但我遇到了同样的问题。 _satellite.getVisitorId()返回没有值。getMarketingCloudVisitorID();如果我点击一个页面并且我的cookies已被清除。我认为这是MID尚未生成的时机问题? –
@MichaelJohns所以要清楚的是,您将MC ID服务实施为DTM *工具*,对吗? –