有没有人知道跟踪电子邮件读取时间的方法?

时间:2012-08-01 20:38:04

标签: php html email

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

感谢。

4 个答案:

答案 0 :(得分:8)

除了阅读回执(gmailoutlook/live)之外,没有可靠的方法来跟踪是否已阅读电子邮件。可以使用“web bug”,但禁用图像自动加载的电子邮件客户端(如大多数现代版本所做的那样)将会破坏此方法,缓存,某些防火墙设置等也会失败(例如,请参阅“ Insensitive Pig“)。

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

使用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等网站根据其政策创建的当前在线隐私环境,users are more sensitive and educated than ever关于谁收集了哪些信息及其使用方式。如果您的用户提示活动,使用任何类型的隐藏或秘密方法来跟踪客户端的用户活动可能会产生负面影响。

了解电子邮件营销有效性的价值很高,因此诱惑力很大,但要明白隐私与安全相关的趋势正在反对使用此类实践。

<强>文档

答案 1 :(得分:3)

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

出于多种原因,不建议这样做。除了道德的(我不会在这里介绍),有几个技术原因不建议:

  • 在它们与Web错误服务器之间拥有缓存代理的用户将无法为您提供准确的结果。代理服务器将是执行请求的代理,并且它可能会在那里暂停数据的时间比用户实际打开电子邮件的时间长。
  • 如果移动用户将电子邮件留在最前端并关闭屏幕,则可能会耗费大量电池和/或带宽(如果要显示图像,大多数移动设备都会尝试预加载图像)。
  • 打开电子邮件并阅读电子邮件不是一回事,有人可能会在整个预览窗格中打开您的电子邮件,当电子邮件进来时,他们甚至可能不在场。
  • 大多数现代邮件客户端默认阻止图像,因此与其他网络错误一样,这可能只涵盖一小部分用户。

答案 2 :(得分:0)

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

(显示代码) Track mass email campaigns

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

提供跟踪您提及的内容类型的网站是:

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

我看了一遍,看起来似乎是一个不错的应用程序。以下网站是来自about.com的评论,该主题约有5颗星。

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

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

这只是其中一个例子,但它确实可以帮助您确定要查找的内容。

答案 3 :(得分:0)

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

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

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

如果您无法阅读该消息,请单击此处

。并重定向到iframe内容。