Exchange/Exchange26/Mail Priorities
From Evolution
Author: Shakti Prasad Sen <>
Contents |
[edit]
Introduction
Sometime it is required to alert the user to indicate the importance of a message. For example if someone wants to send a mail which needs some immediate action then he has to set the Importance/Priority of that mail.
Users should be able to send emails with two properties enabled : Importance - can mark mail as High, normal, and low priority. Sensitivity - can mark the mail as Confidential, Private, Personal and Normal
[edit]
Headers to be Used
The headers to be used for Importance are: X-Priority X-MSMail-Priority Importance The values for priority are: 1 (High), 2 (Low) and 3 (Normal). The values for X-MSMail-Priority are: High, Low and Normal. The values for Importance are: High, Low and Normal I really don't know if X-MSMail-Priority header field and Importance header field is really needed or not, but no harm adding all I feel. The default value is Normal. If the Importance is set (say High) the mail list view will show that mail in different color (Red for High). The header to be used for Sensitivity is: Sensitivity The values for Sensitivity header field are: Normal, Personal, Private and Company-Confidential The default value is Normal. Still no idea how to show the mails to user with sensitivity field set.
[edit]
Work Required
I am planning to do it as a plugin. In the compose window there will be menu-item named 'Exchange Options' (View->Exchange Options). When the user clicks on this menu-item it brings the "xchnage Options" dialog (as shown in the screenshot). There the user can set the Importance and Sensitivity if he likes to set. The default value will be normal for Importance and Sensitivity as well. In plugins somehow I have to insert the headers to the exsting headers so that the exchange server would know the Importance and Sensitivity. Thus when a mail is composed using evolution client and viewed using Outlook client it will able to show the sensitivity and importance of that mail,if it is set. The vice-versa is also true. In evolution, the Importance will be shown by color difference. For example, a mail with Importance as 'High' will be shown in red color in the list-view of the mail component. Still I have no idea how I will show the Sensitivity.
[edit]
Screen Shots
Screenshot of Outlook for setting "Importance".
Screenshot of Outlook for setting "Sensitivity".
[edit]
Proposed UI for Exchange
The image below shows the place of "Exchange Options" menu-item in a compose window. This place holder for this menu-item is a temporary one and we (with mailer guys) have decided to place it in 'Insert' menu as 'Send Options' menu-item. It is just the place holder and the name of the menu item, but the functionality would be same.
The image below shows the proposed "Exchange Options" dialog.
The image below shows the list view with red color when the priority is set.
[edit]
Observations so far ...
1) It is possible to do it as plugins. 2) It is possible to insert/add a new header to the existing header. 3) X-Priority header doesn't work properly. X-Priority: 1 -> Shows High priority [right behaviour] X-Priority: 2 -> Also shows High priority instead of Low [wrong behaviour] X-priority: 3 -> Shows normal priority [right behaviour] 4) The X-MSMail-Priority header works fine. I will use this one (not X-Priority header then) 5) The Sensitivy header works fine. 6) I composed mails from evolution with all the combinations of Importance and Sensitivity and viewed it in Outlook and it works fine :) 7) As of now there is no way for the user to view the Sensitivity from evolution client. For priority, Red is comming for High priority mails (also for low priority, may be a bug) and black for normal mails.
[edit]
From Code point of view
1) I am planning to do it as a plugin. So I need to get the CamelMessageInfo structure first. 2) At the time of writing hook we are planning to expose this structure to make use of it. 3) I will use the using camel_message_info_set_user_tag() API to add some tags. By doing this I will - Change the colour of the message (in tree-view) as the priority is set. Red : High priority Black : Normal Priority Gray : Low Priority (People usually don't set the priority to low. Anyway, I am taking care of it) - Add the label(at the time of viewing the mail) in the message showing the value of Importance and Sensitivity set. 4) There is no way for the user to make out the sensitivity of a mail (from the tree-view). For this I am planning to add one more column saying 'Importance/Sensitivity' (like 'From', 'Subject', 'Date', 'Size' etc columns). How is this idea???