1

I have tried, and successfully failed, to determine a way to inject the emailed item's value from a universal custom column into the default alert emails generated by SharePoint, in both the subject and body. I'm hoping someone in the community here can assist.

Initially, we attempted to add content directly to the XML alert template file.

We also attempted working through the information in:

  1. Customizing Alert Notifications and Alert Templates in Windows SharePoint Services 3.0
  2. How To: Customizing alert emails using IAlertNotifyHandler

I've also been through this post which doesn't seem to dive deep enough, as well as this answer and this answer, neither of which answered the situation I'm looking to solve here.

We've found a number of other blog posts and sites that seem to just copy and paste from the examples in the above two. All of the discussions we've worked through either talk about changing the formatting of an email template, or show you how to build a completely custom email and send that instead of the normal system-generated email. I've been through the questions here and it's the same story...

My goal is to not reinvent the wheel. I want in some sense of the idea, to let SharePoint build its email, then catch it, inject content, then send it on its way.

So, two parts to the question:

  1. Can someone explain the sequence from the timer job starting to emails hitting the mail server?
  2. Does anyone have a known method for either
    1. intercepting an email, injecting content, then releasing it, or
    2. invoking the default alert handler within a custom alert handler, so that we don't have to rewrite all of the default email templates in C#?
  • What type of content are you looking to inject? There are event sinks for SMTP services and Exchange server which would allow you to catch the email OnArrival. – tyshock Feb 4 '14 at 17:12
  • Hi, so, we've a custom column that's added to every list, and we want to call the value of it for the particular record and inject that into the subject and parts of the body. I know in some alerts it's there, but not where we want it, and if that column value doesn't change it also doesn't appear in update alerts. – Matt Feb 5 '14 at 8:25
  • I see. One other option is to send the emails via workflows. You would lose the ability to have users subscribe themselves to the alerts, but you would gain the ability to fine-tune exactly what appears in the email. – tyshock Feb 5 '14 at 15:39
  • Should have mentioned that -- via workflow is a non-started because this has to be done for every email in every list in the installation. From your experience though, no go? – Matt Feb 5 '14 at 15:43
  • Based on what I see at msdn.microsoft.com/en-us/library/… , it should be possible. There also might be some 3rd party tools out there like Alerts Plus from Bamboo that could help. – tyshock Feb 5 '14 at 16:35
0

I do something real similar to what you are looking for here: How can I create custom Alerts for external email addresses?

However, the correct location for the custom field would be in the xml template. Although this answer may work better for you than the ones listed above: Hide or Remove Workflow Columns on Alert Emails

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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