I have been faced with a number of situations where I am asked to develop functionality related to mail enabled lists in SharePoint. Mail enabled lists are exactly what they sound like. They are lists which can be configured with an e-mail address so that users can add items by e-mailing the address designated to the list. For example, let's say I set up an announcement list and I gave it the address announcements@xyx.com, I could just write an e-mail to that address and that the body and subject line of the email would become a new announcement. You can't just make ANY list e-mail enabled in SharePoint. It has to be one of the following types:
- Document, picture, or form library
- Announcements list
- Calendar list
- Discussion board
- Blog
Specific information on how to set this up can be found here. This is all very cool functionality to be sure, however there is one major catch. This catch is that you need have to have an e-mail infrastructure in place to be able to get this to work. For most production environments this means Microsoft Exchange. On a test environment this is generally something less involved, like setting up the SMTP and IMAP/POP3 services that are included as part of Windows 2003 Server.
Recently, I upgraded my development VM to use Windows 2008 Server. I did this because I wanted to become familiar with the new OS as I would imagine I'm going to be seeing a lot more 2008 production environments as time moves forward. So, I set up this really sweet Windows 2008 VM. It had everything. It was a domain controller, It had SQL Server, it had MOSS 2007, I set up reporting services (in integrated mode mind you). I had a separate virtual host set up in IIS for deploying WCF web services. I had Visual Studio 2008 and the new 1.2 version of the Visual Studio Extensions for SharePoint loaded up.
Things seemed to work really well until I needed to configure email enabled lists. As it turns out, Microsoft decided to discontinue the IMAP & POP3 component. This puts a big damper on reading any e-mail generated by SharePoint. Furthermore, the SMTP service was subjugated to a much deprecated role. Basically, so not to steal any of the IIS 7 thunder, they didn't include any kind of management SMTP management tool in the IIS 7 Internet Information Services Manager. You need to manage it from the rickety old IIS 6 console which displays some cryptic error messages when you click on the parts they decided not to wire up to this shinny new operating system.
So it looked like I had a real problem on my hands. How was I going to get mail to work? A few ideas went through my head:
- I will just install Exchange 2007
- WRONG: I have a 32-bit VM, I can't install Exchange which is now 64-bit only, on this image.
- Ok, I will set up a 64-bit VM
- WRONG: The sharepoint development tools don't exactly work on a 64-bit OS yet.
- Hmm, go back to 2003 for my development sandbox?
- WRONG: Turns out there is another solution.
Another company put together a quick and dirty solution to this very problem in the form of the Visendo SMTP Extender for Windows 2008 which I found out about here. It's basically a POP3 service that you can set up on Windows 2008 that works with the built in SMTP server. It's not exactly pretty, in fact there is NO management UI at all, you have to do everything with configuration files… but it gets the job done. Right now it's free.