3

我知道有几家公司能够进行这种跟踪,并且讨论的大多数技术都是高级网络错误。但幕后究竟是什么?我见过有人声称他们使用长加载图像或重定向技术来跟踪,即使它不是很准确,但仍然足够好。只是想知道是否有人有一些这样做的示例 php 代码或一些清晰的逻辑?

谢谢。

4

4 回答 4

8

除了已读回执(gmailoutlook/live)之外,没有可靠的方法来跟踪电子邮件是否已被阅读。可以使用“网络错误”,但是禁用自动加载图像的电子邮件客户端(就像大多数现代的那样)会破坏这种方法,缓存、一些防火墙设置等也会失败(例如,请参阅“不敏感的猪”部分)。

长时间加载图像是可能的,但准确性再次取决于您无法控制的因素——如果电子邮件客户端在用户卸载邮件时取消其对图像的请求。客户端可能不会这样做,它可能允许图像在后台“完成”。

使用 PHP,可以通过发送图像头来完成长时间加载图像,然后休眠一小段时间,记录请求仍然打开的事实,然后再次休眠。

非常粗略地,这就是这样的代码的样子:

session_start();
function recordViewTime () {
    /* 
        the difference between $_SESSION['_image_start_time'] and 
        $_SESSION['_image_active'] is, theoretically, your email view time
    */
}

register_shutdown_function('recordViewTime');
header('Content-Type: image/jpeg');
$_SESSION['_image_start_time'] = microtime();
while (true) {
    $_SESSION['_image_active'] = microtime();
    sleep(1);
}

强制性免责声明

用户通常不喜欢这种做法。特别是考虑到 Facebook 和 Google 等网站根据其政策创建的当前在线隐私环境,用户比以往任何时候都更加敏感和了解谁收集了哪些信息以及如何使用这些信息。如果您的用户提示该活动,使用任何类型的隐藏或秘密方法来跟踪客户端上的用户活动可能会产生负面影响。

了解您的电子邮件营销的有效性的价值很高,因此诱惑很大,但只要了解与隐私相关的隐私和安全趋势正在反对使用这种类型的做法。

文档

于 2012-08-01T20:43:47.373 回答
3

我知道只有一种方法可以做到这一点,而且设置起来相当先进。基本上,您放置了一个永远不会完成加载的 webbug,然后跟踪用户尝试下载它的时间。您必须每隔几秒钟发送一些新数据,否则远程端可能会超时。

出于多种原因,不建议这样做。除了道德问题(我不会在这里讨论)之外,还有几个技术原因不推荐:

  • 在他们和网络错误服务器之间有缓存代理的用户不会给你准确的结果。代理服务器将是执行请求的代理,它可能会坐在那里吞食数据,比用户实际打开电子邮件的时间要长得多。
  • 如果移动用户将电子邮件放在最前面并关闭屏幕,他们可能会消耗大量电池和/或带宽(如果要显示图像,大多数移动设备会尝试预加载图像)。
  • 打开电子邮件和阅读电子邮件不是一回事,有人可能会整天在他们的预览窗格中打开您的电子邮件,甚至当电子邮件进来时他们甚至都不在场。
  • 大多数现代邮件客户端默认阻止图像,因此与其他网络错误一样,这可能只覆盖一小部分用户。
于 2012-08-01T20:46:50.557 回答
0

仅供参考:SuperUser 的一个答案和 StackOverflow 的另一个答案也解决了同样的问题(在一定程度上)。它还谈到了幕后发生的事情。

(显示代码) 跟踪大量电子邮件活动

https://superuser.com/questions/290568/how-to-track-if-email-was-read

一个能够跟踪您提到的事物类型的网站是:

http://www.didtheyreadit.com/(从我收集到的非常挑剔)

我看了一遍,这似乎是一个足够体面的应用程序。以下网站是来自 about.com 的评论,该主题大约有 3 颗星(满分 5 星)。

http://email.about.com/od/windowsreturnreceipts/gr/didtheyreadit.htm

另外,请记住,仅仅因为一个页面打开了几秒钟或一个小时并不意味着他们没有或确实阅读了所有内容。这更多地衡量了电子邮件何时打开以及打开了多长时间。

这只是现有内容的 1 个示例,但它确实希望能帮助您确定要查找的内容。

于 2012-08-01T20:44:30.237 回答
-1

您可以在电子邮件中使用 iframe,指向您网站中的邮件内容。您可以在那里放置一个脚本来计算阅读时间。

http://www.campaignmonitor.com/blog/post/3219/do-iframes-work-in-email/

如果电子邮件客户端不支持 iframe,您可以放置​​如下链接:

if you can't read the message, click here

. 并重定向到 iframe 内容。

于 2012-08-02T09:08:59.620 回答