1 接收:监测链接和 SDK 上报

结论:数据从两个口进来:腾讯每次曝光和点击回调监测链接,DSP 10 ms 内返回 204;App 里的自有 SDK 批量上报事件。

SDK 的接入、事件和联调见SDK 模块(挂在第 1 步)。

这一步看哪些指标:接收延迟、曝光对账差异、SDK 事件延迟

1. 链接模板

每个链接属于一个广告主和一个计划,在链接管理里生成和复制。

展开完整链接模板(曝光,17 个参数)
https://t-dsp.emorika.com/tencent/imp?
lk={链接ID}
&sig={签名}
&imp_id=__IMPRESSION_ID__
&imp_time=__IMPRESSION_TIME__
&req_id=__REQUEST_ID__
&account_id=__ACCOUNT_ID__
&adgroup_id=__ADGROUP_ID__
&creative_id=__DYNAMIC_CREATIVE_ID__
&os=__DEVICE_OS_TYPE__
&muid=__MUID__
&oaid=__HASH_OAID__
&android_id=__HASH_ANDROID_ID__
&caid=__CAID__
&ip=__IP__
&ua=__USER_AGENT__
&site=__SITE_SET_NAME__
&callback=__CALLBACK__

2. 点击监测链接

结论:点击链接和曝光链接一起生成,路径是 /tencent/clk,多一个宏 click_id=__CLICK_ID__。

每次点击,腾讯回调一次,DSP 返回 204。点击事件叫 tencent_click,去重键是 click_id。点击用来给用户打“点过”标签(见数据挖掘),也用来算 CTR。两个链接都在链接管理里复制。

3. 签名

结论:签名能防止别人猜出链接,但拿到链接的人仍能造数据,所以还靠频率上限和按天对账。

腾讯不对请求签名,所以签名写在链接里:sig 等于 HMAC-SHA256(链接密钥,链接 ID)的前 16 位。链接一旦泄露,任何人都能用它发请求。所以还要做三件事:同一 IP 每秒超过 20 次请求就限流;同一设备键每分钟超过 10 次曝光就进隔离区;每天按 imp_id 和腾讯后台的曝光数对账。

4. 事件等于名称加属性

结论:每次曝光变成一条事件 tencent_impression,属性就是下表。宏是占位符,腾讯发请求时换成真实值。

必填

宏属性类型示例意思
__IMPRESSION_ID__imp_id文本8f3a…曝光 ID,也是去重键(定义见清洗第 5 步)
__IMPRESSION_TIME__imp_time秒级时间戳1793269495曝光发生的时间
__ACCOUNT_ID__account_id数字2345678腾讯广告主 ID,用来对应 DSP 的广告主
__DEVICE_OS_TYPE__osios / androidandroid系统
__HASH_OAID__oaidMD5 哈希e10a…安卓设备标识(安卓必填)
__MUID__muidMD5 哈希5d41…腾讯设备标识(无 OAID、CAID 时必填)
__CALLBACK__callbackURL 编码https%3A…需要转化回传时必填

选填

宏属性类型示例意思
__REQUEST_ID__req_id文本r-91…腾讯请求 ID,排查用
__ADGROUP_ID__adgroup_id数字771广告组 ID
__DYNAMIC_CREATIVE_ID__creative_id数字5521创意 ID
__HASH_ANDROID_ID__android_idMD5 哈希9a0b…安卓 ID
__CAID__caidMD5 哈希c4ca…iOS 设备标识
__IP__ipIPv41.2.3.4用于过滤无效流量和限流
__USER_AGENT__ua文本Mozilla/5.0…用于过滤无效流量
__SITE_SET_NAME__site文本SITE_SET_MOBILE_UNION投放版位

DSP 收到时再加一个属性 received_at(收到时间,毫秒),和 imp_time 存在一起。每个属性的负责人和状态见数据字典。

宏名来源:腾讯广告开发者文档《曝光监测》。事件建模参照 Mixpanel:每条事件有名称、发生时间和唯一 ID,唯一 ID 用来去重,所以重复请求是安全的(Mixpanel Import API)。

5. SDK 上报

SDK 把事件攒满 50 条或等 15 s 发一次,地址是 /sdk/events。它和监测链接走同一套清洗。详见SDK 模块。

6. 返回规则

任何情况都返回 204,没有内容,腾讯不重试。检查结果只记在接收监控里。

下一步:2 清洗