Creating Rich Client-Side Rules

To implement richer rules (2) functionality than provided by the server (for example, rules (2) that are evaluated when sending a message, the client can store additional rules (2) metadata that is opaque to the server. If the client does have metadata associated with rules (2) in the rules table, the client MUST store this metadata in a Rule FAI message stored in the Inbox folder. For more details about working with FAI messages, see [MS-OXCFOLD] and [MS-OXCMSG].

The Rule FAI message is an FAI message, as specified in [MS-OXCMSG]. The client MUST create (or open, if already present) the Rule FAI message in the Inbox folder. This message MUST be identified by the values of its PidTagSubject ([MS-OXCMSG] section and PidTagMessageClass ([MS-OXCMSG] section properties as follows: the value of the PidTagMessageClass property MUST be set to "IPM.RuleOrganizer"; the value of the PidTagSubject property MUST be set to "Outlook Rules Organizer".

Other properties on the Rule FAI message are up to the client application and MUST be treated by the server as opaque. The client uses the PidTagRwRulesStream property (section on the Rule FAI message to store additional rule data. The client's use of other opaque properties on the Rule FAI message is determined by the implementer.