5

enter image description here

When selecting the action Send Email Campaign Message for an engagement plan in design phase, the dialog box opened up, contains all Email Campaign managers for all sites, but does not include emails created under it. It only shows redirects in email campaign manager. Not sure why this is not working in Sitecore 8.1

How do I set the data I see here? The Engagement Automation Action: Send Email Campaign message has a Editor Url that gets its dialog with options the value is as shown below http://sitecore/shell/default.aspx?xmlcontrol=EmailCampaign.SelectStandardMessage

I was not able to find the control. Don't know how to solve this. Not able to send any emails as an engagement action.

  • Have you read and followed doc.sitecore.net/email_experience_manager/… ? – Jacob Nielsen Dec 28 '16 at 15:54
  • Hi jacob, the link you forwarded talks about adding stuff to engagement plan of an email. What im trying to do is , i have an engagement plan and im triggereing an action to send an email. Now im using the Send email message action but, i cannot see an email items to be selected to send. – user1234 Dec 28 '16 at 16:22
  • I should have specified I was referring to the section "Add a trigger to a state". I now see that's what you're doing from the screenshot. Do you have any activated automated/triggered campaigns? Also, it looks like you've got some customised templates. Have you tried reproducing on a clean installation? – Jacob Nielsen Dec 28 '16 at 18:58
4

Use reflector to look into OnLoad implementation of SelectStandardMessage Action Dialog (Sitecore.Modules.EmailCampaign.UI.Dialogs.ActionDialogs, SelectStandardMessage, Sitecore.EmailCampaign).

I am not sure what code is inside your version(could differs from one revision to another). Mine is only for example:

protected override void OnLoad(System.EventArgs e)
{
    if (!Context.ClientPage.IsEvent)
    {
        this.MessageTree.RootItems = (
            from managerRoot in Factory.Instance.GetManagerRoots()
            select managerRoot.InnerItem.ID.ToString()).ToList<string>();
        this.MessageTree.ExcludeTemplatesForProcess.AddRange(new string[]
        {
            "{EFC3A4B6-6C05-45F4-8220-2D0291359DD5}",
            "{FE8D604D-26F6-426D-A3E2-E4EDFF091B47}"
        });
        this.MessageTree.ItemFilterForProcess = new System.Func<Item, bool>(SelectStandardMessage.CheckMessageType);
        this.MessageTree.ExcludeTemplatesForDisplay.AddRange(new string[]
        {
            "{D8AD4B81-9269-4868-949F-37D1C28687E5}",
            "{69474581-3668-4FED-B0F0-0B88C2532CAE}",
            TemplateIDs.Folder.ToString()
        });
        this.MessageTree.IncludeTemplatesForSelection.Add("{A0EA9681-5C86-43AB-80F7-C522DADF6F12}");
        this.MessageTree.StopTemplates.Add("{A0EA9681-5C86-43AB-80F7-C522DADF6F12}");
        this.MessageTree.InitTree();
        string text = this.IsAutomationRequest ? base.GetParameterValueByKey("StandardMessageId", null) : WebUtil.GetQueryString("selItem");
        if (!string.IsNullOrEmpty(text))
        {
            this.SetSelectedMessageNode(text);
        }
    }
    base.OnLoad(e);
}

When you will review OnLoad implementation you will get answer what templates are included, what templates are excluded.

| improve this answer | |
  • Thanks for your help. I digged into the file and its exactly same as yours. – user1234 Dec 28 '16 at 22:54
  • Thanks for your help. I digged into the file and its exactly same as yours. The messageTree.InitTree() wont show my emails that inherit from Mail message template. Because the Mail message template ie."{A0EA9681-5C86-43AB-80F7-C522DADF6F12}" if you notice the code is added to includeTemplates for selection and also Stoptemplates. The Inittree() calls AddChildNodes function that does not add childnodes that have template of Mail Messsage, ince its added to stopTemplate – user1234 Dec 28 '16 at 22:57
  • Why would we have code, that add templates to includeTemplates and also adds same template to stopTemplates. Doesnt make sense to me – user1234 Dec 28 '16 at 23:08
  • 2
    @user1234 Send me a Skype tomorrow. I can tell you what the issue is. Remember that you went through an upgrade and it's possible not all triggered messages got updated appropriately. – Pete Navarra Dec 28 '16 at 23:21
  • @user1234 I am not sure for what is responsible property StopTemplates, but I guess that it should show item in tree, but exclude all his children. Now, when you are near to problem you would be able either raise bug to Sitecore support and get hotfix or solve it by yourself: override code of control by your own. – Anton Dec 28 '16 at 23:21
0

There was problem with my master db locally. We had recently been through an upgrade and i guess there is change in templates and status fields for emails. On pulling latest master db from prod solved the problem.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.