DIL模块 dil-modules

WARNING
从2023年7月开始,Adobe已停止开发Data Integration Library (DIL)和DIL扩展。
现有客户可以继续使用其DIL实施。 但是,Adobe在此点之后不会开发DIL。 建议客户评估Experience PlatformWeb SDK的长期数据收集策略。
如果客户希望在2023年7月之后实施新的数据收集集成,则应改用Experience PlatformWeb SDK

描述DIL.modules命名空间中的方法。 利用这些模块,可按编程方式收集数据并处理Audience Manager对象。

siteCatalyst.init sitecat-init

与DIL配合使用以发送Analytics标记元素(变量、prop、eVar等) Audience Manager。 以逗号分隔的列表形式返回数据。 在版本2.6中提供。

函数签名: DIL.modules.siteCatalyst.init(siteCatalystReportingSuite, dilInstance, trackVars, options)

NOTE
您必须将此代码放在页面​ 上的 s.t();函数之前。

参数

名称
类型
描述
names
字符串
一个字符串数组,其中包含未枚举的 Analytics 变量,如 pageName channel campaign product 等。
iteratedNames
对象
一个对象数组,其中包含枚举的 Analytics 变量,如prop和evar(例如 prop1 prop2 evar3 evar4 )。
maxIndex
整数
指示要返回多少个迭代名称。 例如,要返回两个prop或evar,请设置 maxIndex:2
siteCatalystReportingSuite
对象
表示 Analytics 对象的对象。
dilInstance
对象
表示DIL的对象。
options
对象

其他选项:

  • replaceContextDataPeriodsWith

    如果不指定其他内容,句点将替换为默认下划线( _ )。

    例如, s.contextData = {abc.def = '123'} 将在事件调用查询字符串中生成 c_contextData_abc_def=123

    此选项仅在DIL版本5.0或更高版本中可用。

  • filterFromContextVariables

    例如, filterFromContextVariables: ['email', 'zip', 'accountNumber'] 会导致从上下文数据的数据集合中筛选字符串数组。 此选项不包括个人身份信息(PII)。

由siteCatalyst.init捕获的数据

此函数返回有关以下Analytics属性的详细信息:

  • pageName
  • channel
  • campaign
  • products
  • events
  • eVar (1 - 250)
  • prop (1 - 75)
  • pe
  • pev1
  • pev2
  • pev3

示例代码

此代码创建Analytics事件(prop、eVar等)的逗号分隔列表 (如果它们的值存在)。

// Get the Site Catalyst object instance:
var s = s_gi(s_account);

// Instantiate DIL code:
var scDil = DIL.create({
        partner: 'adobe',
        containerNSID: 5
});

// Use the module:
DIL.modules.siteCatalyst.init(s, scDil, {
        //Specify the Site Catalyst variables you want to capture:
        names: ['pageName', 'channel', 'campaign'],
        //Use this to create iterated variable names:
        iteratedNames: [{
               name: 'eVar',
               maxIndex: 75
        }, {
               name: 'prop',
               maxIndex: 75
        }]
});

若要跟踪所有受监视的Analytics数据点,而不使用上面显示的其他函数,请单独调用siteCatalyst.init,如下所示:

DIL.modules.siteCatalyst.init(s, scDil);

GA.submitUniversalAnalytics ga-submit-universal-analytics

GA.submitUniversalAnalytics();函数将数据从Google的Universal Analytics发送到Audience Manager。 此DIL函数设计为与analytics.js一起使用,后者是Google Universal Analytics的最新代码库。

IMPORTANT
  • Audience Manager对Google analytics.js代码库没有任何洞察或控制。 当Google发布analytics.js的新版本时,您应该验证是否仍在进行DIL数据收集。

  • 如果您仍在使用Google的旧版Analytics跟踪代码(例如,ga.jsdc.js),则无法使用GA.submitUniversalAnalytics();。 请参阅GA.init

函数签名: DIL.modules.GA.submitUniversalAnalytics(gaObject, dilInstance, internalPropertyName);

属性

GA.submitUniversalAnalytics();函数接受以下属性。

属性
描述
gaObject
实例的全局变量Google Analytics。 默认情况下,这通常为 ga ,除非您自定义了Google Analytics代码。
dilInstance
表示DIL的实例的变量。
internalPropertyName

(可选) analytics.js 库中,内部属性是缩小的变量 'b' 。 此变量包含个Google Analytics数据。

此属性是可选的,因为除非Google更改其内部变量的名称,否则您无需设置此属性。 例如,如果此缩小的变量更改为 'a' ,您将调用 GA.submitUniversalAnalytics(); ,如下所示:

DIL.modules.GAsubmitUniversalAnalytics(ga, DilInstance, 'a');

示例

记得在调用DIL和GA.submitUniversalAnalytics();之前先定义Google Analytics ga对象。 您的代码可能类似于以下内容:

//Instantiate DIL
var dilInstance = DIL.create({
     partner:"adobe"
});

//Call the DIL Universal Analytics function
DIL.modules.GA.submitUniversalAnalytics(ga, dilInstance);

GA.init ga-init

GA.init()函数将数据从旧版/已弃用的Google Analytics版本发送到Audience Manager。

IMPORTANT
GA.init()仅适用于Google的旧版Analytics跟踪代码ga.jsdc.js。 如果您使用analytics.js(Google Universal Analytics的最新代码库),则无法调用此DIL函数。 使用DIL和Universal Analytics的Audience Manager客户应看到GA.submitUniversalAnalytics

函数签名: DIL.modules.GA.init(_gaq, dilInstance, trackVars);

参数

名称
类型
描述
_gaq
数组
包含GA命令的数组。
dilInstance
对象
包含DIL实例的对象。
trackVars
对象
(可选) ​包含names属性的对象。 此属性是您希望跟踪的GA命令名称数组。

支持的GA函数调用

默认情况下,GA.init从以下函数中捕获数据:

  • _setCustomVar
  • _addItem
  • _addTrans
  • _setAccount
  • _trackSocial

DIL创建GA数据的键

当GA处理数组中的项时,Audience Manager接受键值对形式的数据。 要处理GA数据,DIL会自动创建一个键值对,并形成如下键: c_ <key name>。 此外,GA数组中的项按特定顺序显示。 因此,必须按此顺序提供所有参数,即使它们不包含任何数据。 DIL映射以下GA方法的键:

// Tracking Social Interactions
_gaq.push(['_trackSocial',
    'facebook',                        // c_socialNetwork
    'like',                            // c_socialAction
    'https://www.adobe.com/cool.php',   // c_socialTarget
    '/cool.php'                        // c_socialPagePath
]);

// Tracking a Transaction
_gaq.push(['_addTrans',
   '1234',           // c_transOrderId
   'Womens Apparel', // c_transAfflication
   '28.28',          // c_transTotal
   '1.29',           // c_tranTax
   '15.00',          // c_transShipping
   'San Jose',       // c_transCity
   'California',     // c_transState
   'USA'             // c_transCountry
]);

// Tracking an item
_gaq.push(['_addItem',
   '1234',           // c_itemOrderId=1234
   'DD44',           // c_itemSku
   'T-Shirt',        // c_itemName
   'Olive Medium',   // c_itemCategory
   '11.99',          // c_itemPrice
   '1'               // c_itenQuantity
]);

示例代码

// DIL JavaScript library needs to be loaded and executed here
var dilInstance = DIL.create({
    partner : "adobe"
});

// Assume ga.js has not loaded
var _gaq = _gaq || [];
_gaq.push(
  ['_setAccount', 'UA-XXXXX-X'],
  ['_setDomainName', 'example.com'],
  ['_setCustomVar', 1, 'Section', 'Life & Style', 3],
  ['_trackPageview']
);
_gaq.push([
  '_addItem',
  '1234',         // order ID - necessary to associate item with transaction
  'DD44',         // SKU/code - required
  'T-Shirt',      // product name - necessary to associate revenue with product
  'Olive Medium', // category or variation
  '11.99',        // unit price - required
  '1'             // quantity - required
]);

要跟踪所有受监视的GA度量而不使用上面显示的附加函数,请单独调用GA.init,如下所示:

DIL.modules.GA.init(_gaq, dilInstance).submit();

示例事件调用

对Audience Manager的URL事件调用可能类似于以下形式:

https://adobe.demdex.com/event?...c_accountId=UA-XXXXX-X&c_Section=Life%20%26%20Style &c_itemOrderId=1234&c_itemSku=DD44&c_itemName=T-Shirt&c_itemCategory=Olive%20Medium& c_itemPrice=11.99&c_itemQuantity=1

recommendation-more-help
de293fbf-b489-49b0-8daa-51ed303af695