Mail Apps have three main ingredients
- A manifest file which is what is used to install a Mail App and contains all the configuration and activation rules for the Mail App
- A html file that is rendered by the Mail client and controls the display elements.
Browser Hell - Writing a mail app that you want to run in any browser will take a lot of testing and tweaking, although some of the vendors have improved browser standards are still pretty lacking. For example to get this small Info Apps to work across Chrome, FireFox and ie9 required dealing with Google's different implementation of parseFromString which at the moment can't deal with prefixes while IE and firefox can. This is just one example, if you going to write mail apps make sure you put on your boots and get set to wade in.
DisplayName from the Item properties
EmailAddress from the Item properties
TimeZone from the Item properties.
Language from the Mailbox Context.
HostVersion from the Diag Object
UserAgent from the Hosting Browsers window.navigator
Total Mailbox Folder Count from EWS (FindFolder)
MailboxServer from the EWS PR_REPLICA_SERVER Extended property
Inbox Total Item Count EWS (GetFolder)
Inbox Unread Item Count EWS (GetFolder)
This is what it looks like the App Box
Every Mail App starts with a Manifest file which contains the configuration information about the MailApp. All Mail Apps need a unique GUID which you can generate easily in Powershell using
Permissions - Mail Apps have a three tired permission model if you want to use EWS you need to specify ReadWriteMailbox. A Mail Aps that is going to use EWS needs to be installed and enabled by an administrator. Eg for this apps the following is configured in the Manifest file
- <Rule xsi:type="ItemIs" ItemType="Message" />
Installation - There are a couple of way to install a Mail App by far the easiest is just to use EAC eg for this sample Apps if you want to use my hosted version the URL would be
You should however download and host it yourself I've put a download of the files here