1

我正在使用Sitecore 6.5 ECM我的电子邮件活动。

有很多错误..但不知何故我设法克服了它们。

现在,ECM 工作正常,它可以查看有Engagement plan多少,等等。percentageSentMessage OpenedMessage Unopened

但是我的客户想要一份详细报告……比如,,,, Sent对于Recipients每封发送OpenedClicked电子邮件。

在此处输入图像描述

所以,我想知道我应该采用哪种方法来获得以下报告。

我应该EmailCampaign dll APIs用来获取它们还是应该直接从 查询database

我已经看过数据库了。并且表名不容易找到。

有没有人这样做过?我可以有一些片段来做到这一点吗?

4

2 回答 2

2

威廉 - 您是正确的,您希望从 ECM 获得的详细报告尚未完成,并且无法开箱即用。我知道这样的东西在某个时候会可用,但我不知道什么时候和现在,这就是你可以做的事情,因为我现在正在为客户做这件事。

基本上它是通过直接的 SQL 调用来完成的。EngagementAutomation dll 中有一个 api。但根据我的经验,方法签名采用的对象是尝试创建比自己构建 SQL 调用更痛苦的对象。而不是发布我的大量代码。我只会告诉你数据在哪里以及如何获取它。为分析提供了一个 SQL API,但我发现尝试创建它比我自己使用旧的 .net 和 sql 命令更令人困惑。

我的方法是创建类来获取信息,例如参与计划的 GUID 或消息本身的 GUID。分析数据库中有几个表可以跟踪这些数据。一个是跟踪参与计划和发送的特定电子邮件的自动化和自动化状态(发送的每封电子邮件在自动化状态表中都有一个条目,该表链接到自动化(这是参与计划)。自动化状态表非常关键,将显示发送电子邮件的 Sitecore 用户的实际用户名。

跟踪事情(点击和那种事情)有点欺骗。一切都在 Pages 表和 PageEvent 表中完成和跟踪。它跟踪打开和点击。打开是通过 RegisterEmailOpened url 跟踪的,并且必须在包含 Querystring 的 UrlText 字段中跟踪点击,您可以解析 EC_AS= 指向 AutomationStateID GUID 的该列。

还有更多内容,但这应该可以帮助您入门,并让您了解如何开始。

于 2012-05-09T22:44:16.540 回答
1

I got some results..

just want to check with you whether they are correct?

I will get the CampaignID for the respective ECMs from Campaigns table.

Then I will get AutomationID for that CampaignID from Automation table..

After that, I will get the respective row from AutomationStates table by using the AutomationID that I got from Automation table.

The number of Rows that I get for each AutomationID is the number of emails that ECM sent.

And if the VisitorID is NULL that recipient hasn't opened the email.

If there is a value in VisitorID, that email can be counted as Opened.

For Click through, I thought I could use the StateID and StateName from AutomationStates table as I saw some old data of the StateName has value called Unproductive Visitors

But when I click through my newly sent ECM, that field doesn't change anything.

So, I am wondering whether I should user Visits table or Pages and PagesEvents table for Click through.

Please advise.

Thanks for your guidance.

于 2012-05-15T02:27:43.330 回答