2012-05-07 2 views
1

Я использую Sitecore 6.5 ECM для своей кампании электронной почты.Сведения об отчете ECM Sitecore

Существует довольно много ошибок. Но каким-то образом мне удалось их преодолеть.

Теперь, ECM работает прилично и имеет Engagement plan, чтобы посмотреть, сколько percentage является Sent, Message Opened, Message Unopened и так далее ..

Но мои клиенты хотят детали сообщить .. как Sent, Recipients, Opened , Clicked за каждое отправленное электронное письмо.

enter image description here

Итак, я задаюсь вопросом, какой метод должен следовать, чтобы получить следующий отчет.

Должен ли я использовать EmailCampaign dll APIs, чтобы получить их, или я должен запросить непосредственно у database?

Я уже посмотрел базу данных. и имена таблиц нелегко узнать.

Кто-нибудь сделал это раньше? Могу ли я использовать некоторые фрагменты?

ответ

2

William - Вы правы в том, что подробные отчеты, которые вы хотите получить от ECM, еще не выполнены и не доступны из коробки. Я знаю, что что-то вроде этого будет доступно в какой-то момент, но я не знаю, когда и на данный момент, так вы можете заниматься тем, потому что я делаю это точно сейчас для клиента.

В основном это то, что делается через прямой вызов SQL. Существует api в dll EngagementAutomation .. но по моему опыту, сигнатуры метода берут объекты, которые больнее пытаться создать, чем просто создавать вызовы SQL. Вместо того, чтобы опубликовать мой обширный код, я просто скажу вам, где находятся данные и как вы можете его получить. Для аналитики есть API SQL, но я счел более запутанным пытаться создать, чем просто использовать старые команды .net и sql.

Мой подход заключался в создании классов, которые возвращают информацию, дающую нечто вроде GUID для плана взаимодействия или GUID для самого сообщения. В базе данных аналитики есть несколько таблиц, которые отслеживают эти данные. Один из них - это Automation and AutomationStates, который отслеживает планы взаимодействия и конкретные отправленные письма (каждый отправленный электронный адрес имеет запись в таблице AutomationStates, которая ссылается на Automation (это план взаимодействия). Таблица AutomationStates довольно важна и покажет фактическое имя пользователя Sitecore, которому было отправлено электронное письмо.

Отслеживание вещей (щелчки и подобные вещи) немного обманывает. Все делается и отслеживается в таблице Pages и таблице PageEvent. клики. Открытие отслеживается с помощью URL-адреса RegisterEmailOpened, и клики должны быть отслежены в поле UrlText, в которое включен Querystring, и вы можете проанализировать этот столбец для EC_AS =, который указывает на GUID AutomationStateID.

Th Это гораздо больше, но это должно заставить вас начать и позволить вам понять, как начать работу с этим.

+0

Хорошо. Спасибо за ваше предложение. Я немного занят этим докладом. Я сделаю это, вероятно, на следующей неделе. Спасибо за Ваш ответ. :) – william

+0

Привет, divamatrix, у меня есть частичная рабочая идея. Я разместил его в качестве другого ответа и хотел бы проверить, правильно ли он исправлен. – william

1

Я получил некоторые результаты ..

просто хочу проверить с вами, являются ли они правильно?

Я получу CampaignID для соответствующих ECM от таблицы Campaigns.

Тогда я получу AutomationID для этого CampaignID из Automation таблицы ..

После этого, я буду получать соответствующую строку из AutomationStates таблицы с помощью AutomationID, что я получил от Automation стола.

Число Rows, которое я получаю за каждые AutomationID, - количество писем, отправленных ECM.

И если VisitorID является NULL, этот получатель не открыл электронное письмо.

Если в VisitorID есть значение, это электронное письмо можно назвать Opened.

Для Click through, я думал, что я мог бы использовать StateID и StateName из AutomationStates стола, я увидел некоторые старые данные StateName имеет значение, называемое Unproductive Visitors

Но когда я щелкаю через мой вновь послал ECM, что поле Безразлично» ничего не меняйте.

Итак, мне интересно, должен ли я пользователь Visits стол или Pages и PagesEvents стол для Click through.

Просьба сообщить.

Благодарим вас за руководство.

+1

CampaignID ссылается на кампанию .. НЕ план взаимодействия. Кампания гораздо больше ориентирована на маркетинговые аспекты и не имеет никакого отношения к отчетности. Это полезно для резюме, но не для других целей отчетности. То, что вы действительно хотите, это AutomationID, который является идентификатором плана взаимодействия, и находится в таблице Automations. Идентификатор для собственно сообщения ECM находится в поле «Данные» в таблице «Автоматизация». – divamatrix

+1

Число строк, которые вы получаете для автоматизации, - это количество emaisl, отправленных для этого плана взаимодействия (технически возможно, чтобы несколько писем были настроены на использование одного и того же плана взаимодействия. Хотя это и не так) , Государство ссылается на состояние плана взаимодействия. Здесь вы узнаете, открыл ли пользователь адрес электронной почты или нажал ссылки и т. Д. VisitorID гораздо более сосредоточен вокруг аналитики, и хотя он может быть полезен, он также может вводить в заблуждение, поскольку отношения между внешними/первичными ключами в базе данных аналитики очень сложны. – divamatrix

+1

Переходы по ссылке очень сложны, так как они будут записывать клики через страницы в таблице «Страницы», но вам нужно разобрать одно из полей в таблице, чтобы найти записи страниц, относящиеся к сообщению ECM. Вот пример SQL-запроса, который я использовал для получения кликов для каждого пользователя, которому было отправлено электронное письмо. Это покажет вам немного о том, как работает структура при передаче идентификатора состояния автоматизации для каждого получателя: SELECT Distinct (ItemId) FROM Pages WHERE Url НЕ НРАВИТСЯ '% RegisterEmailOpened%' AND UrlText как '% ec_as%' + @automationstateid + '%' – divamatrix

Смежные вопросы