RDORuleAction object represents an
action that is run when the parent rule (RDORule
object) is executed.
Returned by:
RDORuleActions.AssignToCategory,
RDORuleActions.Bounce, RDORuleActions.CopyToFolder,
RDORuleActions.Defer,
RDORuleActions.Delete,
RDORuleActions.DeletePermanently,
RDORuleActions.Forward,
RDORuleActions.ForwardAsAttachment,
RDORuleActions.Importance,
RDORuleActions.MarkAsRead,
RDORuleActions.MoveToFolder,
RDORuleActions.Redirect,
RDORuleActions.Reply,
RDORuleActions.Sensitivity,
RDORuleActions.Tag
The following objects are derived
from RDORuleAction to represent specific actions that expose additional
properties besides ActionType and Enabled.
RDORuleActionMoveOrCopy
RDORuleActionSend
RDORuleActionTemplate
RDORuleActionAssignToCategory
RDORuleActionImportance
RDORuleActionSensitivity
RDORuleActionDefer
RDORuleActionBounce
RDORuleActionTag
The example below creates a rule that
sets the message importance to High if the incoming message has the
"x-test-header" MIME header
'Constant definitions, don't
need these if Redemption is added to the project references.
RES_CONTENT = 3
FL_SUBSTRING = 1
FL_IGNORECASE = &H10000
PR_TRANSPORT_MESSAGE_HEADERS = &H007D001E
'create the rule set
Session = CreateObject("Redemption.RDOSession")
Session.Logon
set Rules = Session.Stores.DefaultStore.Rules
set Rule = Rules.Create("Test delete")
set Rule = Rules.Create("Test Importance")
'set the action
set Action = Rule.Actions.Importance
Action.Importance = olImportanceHigh
Action.Enabled = true
'set the restriction on message headers
set Restriction = Rule.SetRawConditionsKind(RES_CONTENT)
Restriction.ulFuzzyLevel = FL_SUBSTRING or FL_IGNORECASE
Restriction.ulPropTag = PR_TRANSPORT_MESSAGE_HEADERS
Restriction.lpProp = "x-test-header"
'enable and save the rule
Rule.Enabled = true
Rule.Save |
|
Derived from:
IDispatch
|
|
Properties |
|
ActionFlavor |
integer, read/write. Provides
direct access to the Action.ulActionFlavor MAPI structure member.
|
|
ActionType |
Returns the action type,
read-only.
Can be one of the following
rdoRuleActionType enums:
olRuleActionUnknown = 0
olRuleActionMoveToFolder = 1
olRuleActionAssignToCategory = 2
olRuleActionDelete = 3
olRuleActionDeletePermanently = 4
olRuleActionCopyToFolder = 5
olRuleActionForward = 6
olRuleActionForwardAsAttachment = 7
olRuleActionServerReply = 9
olRuleActionImportance = 15
olRuleActionSensitivity = 16
olRuleActionRedirect = 8
olRuleActionMarkRead =19
olRuleActionDefer = 28
olRuleActionBounce = 1024
olRuleActionTag = 1025
|
|
Enabled |
Boolean, read/write. Enables
or disables the action.
|
|
Flags |
integer, read/write. Provides
direct access to the Action.ulFlags MAPI structure member.
|
|
RDORuleActionMoveOrCopy object |
RDORuleActionMoveOrCopy object
represents an action that copies or moves the message when the parent rule (RDORule
object) is executed.
RDORuleActionMoveOrCopy is derived
from the RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.CopyToFolder,
RDORuleActions.MoveToFolder
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
Folder |
Returns or sets the folder (RDOFolder
object) |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Store = Session.Stores.GetSharedMailbox("natalia")
set Inbox = Store.GetDefaultFolder(olFolderInbox)
on error resume next
err.clear
set SubFolder = Inbox.Folders("Test Subfolder")
if (err.Number <> 0) or (SubFolder Is Nothing) Then
set SubFolder = Inbox.Folders.Add("Test Subfolder")
End If
set Rules = Store.Rules
set Rule = Rules.Create("Test copy to folder")
set Action = Rule.Actions.CopyToFolder
Action.Folder = SubFolder
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionSend object represents
an action that sends a message to the specified recipient when the parent rule (RDORule
object) is executed.
RDORuleActionSend is derived from the
RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Forward, RDORuleActions.ForwardAsAttachment,
RDORuleActions.Redirect
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
Recipients |
Returns the list of recipient
(RDORecipients) to whom the message will
be sent when the rule action is executed. |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Store = Session.Stores.GetSharedMailbox("natalia")
set Inbox = Store.GetDefaultFolder(olFolderInbox)
set Rules = Store.Rules
set Rule = Rules.Create("Test forward")
set Action = Rule.Actions.Forward
set Recip = Action.Recipients.Add("dmitry")
Recip.Resolve
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionTemplate object |
RDORuleActionTemplate object
represents an action that sends a reply using the specified template when the
parent rule (RDORule object) is executed.
RDORuleActionTemplate is derived from
the RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Reply
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
TemplateMessage |
Returns or sets the message (RDOMail)
to be used as a template when the action is executed |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Store = Session.Stores.GetSharedMailbox("natalia")
set Inbox = Store.GetDefaultFolder(olFolderInbox)
set TemplateMessage = Inbox.HiddenItems.Add
TemplateMessage.Subject = "This is an automated reply"
TemplateMessage.Body = "Automated reply body"
TemplateMessage.MessageClass = "IPM.Note.Rules.ReplyTemplate.Microsoft"
'required!
TemplateMessage.Save
set Rules = Store.Rules
set Rule = Rules.Create("Test Reply")
set Action = Rule.Actions.Reply
Action.TemplateMessage = TemplateMessage
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionAssignToCategory object |
RDORuleActionAssignToCategory object
represents an action that assigns the specified category or categories to a
message when the parent rule (RDORule object) is
executed.
RDORuleActionAssignToCategory is
derived from the RDORuleAction object and inherits its properties ActionType
and Enabled.
Returned by:
RDORuleActions.AssignToCategory
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
Categories |
String, read/write.
Returns or sets the category
or categories assigned to a message when the action is executed.
Separate multiple categories
with ";" if multiple categories must be used. |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Store = Session.Stores.GetSharedMailbox("natalia")
set Inbox = Store.GetDefaultFolder(olFolderInbox)
set Rules = Store.Rules
set Rule = Rules.Create("Test category")
set Action = Rule.Actions.AssignToCategory
Action.Categories = "Auto Category;Redemption"
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionImportance object |
RDORuleActionImportance object
represents an action that assigns the specified importance to a message when the
parent rule (RDORule object) is executed.
RDORuleActionImportance is derived
from the RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Importance
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
Importance |
rdoImportance,
read/write.
Returns or sets the
importance assigned to a message when the action is executed.
Can be one of the following
rdoImportance enums:
olImportanceLow = 0
olImportanceNormal = 1
olImportanceHigh = 2 |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Rules = Session.Stores.DefaultStore.Rules
set Rule = Rules.Create("Test delete")
set Rule = Rules.Create("Test Importance")
set Action = Rule.Actions.Importance
Action.Importance = olImportanceHigh
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionSensitivity object |
RDORuleActionSensitivity object
represents an action that assigns the specified sensitivity to a message when
the parent rule (RDORule object) is executed.
RDORuleActionSensitivity is derived
from the RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Sensitivity
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
Sensitivity |
rdoSensitivity,
read/write.
Returns or sets the
sensitivity assigned to a message when the action is executed.
Can be one of the following
rdoSensitivity enums:
olNormal = 0
olPersonal = 1
olPrivate =2
olConfidential = 3 |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Store = Session.Stores.GetSharedMailbox("natalia")
set Rules = Store.Rules
set Rule = Rules.Create("Test Sensitivity")
set Action = Rule.Actions.Sensitivity
Action.Sensitivity = olConfidential
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionDefer object |
RDORuleActionDefer object represents
an action that creates a deferred action message to be processed later by a
client side rule when the parent rule (RDORule object)
is executed.
RDORuleActionDefer is derived from
the RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Defer
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
Data |
String, read/write.
Returns or sets the data to
be set on the deferred action message created when the parent rule is
executed.
Data must be a string
representing the binary data in hex, i.e. each byte of the data is
represented by 2 hex characters. |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Rules = Session.Stores.DefaultStore.Rules
set Rule = Rules.Create("Test Deferred Action")
set Action = Rule.Actions.Defer
Action.Data = "0000BAD1" ''string representing hex data
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionBounce object |
RDORuleActionBounce object represents
an action that bounces (creates a bounce message) when the parent rule (RDORule
object) is executed.
RDORuleActionBounce is derived from
the RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Bounce
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
BounceCode |
rdoBounceCode,
read/write.
Returns or sets the bounce
code.
Can be one of the
rdoBounceCode enums:
bcMessageSizeTooLarge = 13
bcFormsMismatch =31
bcAccessDenied = 38 |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Rules = Session.Stores.DefaultStore.Rules
set Rule = Rules.Create("Test Bounce")
set Action = Rule.Actions.Bounce
Action.BounceCode = &H26 'bcAccessDenied
Action.Enabled = true
Rule.Enabled = true
Rule.Save
|
RDORuleActionTag object represents an
action that tags (set the specified property to the specified value) when the
parent rule (RDORule object) is executed.
RDORuleActionTag is derived from the
RDORuleAction object and inherits its properties ActionType and
Enabled.
Returned by:
RDORuleActions.Tag
|
Derived from:
RDORuleAction
properties derived from
RDORuleAction:
ActionType
Enabled |
|
Properties |
|
PropTag |
Integer, read/write.
Property tag to be set, such
as PR_SUBJECT (= 0x0037001E).
|
|
Value |
Variant, read/write.
The value of the property to
be set.
The Value type must match the
property type. E.g. for the PR_SUBJECT (property type is PT_STRING8),
Value must be string. |
set Session =
CreateObject("Redemption.RDOSession")
Session.Logon
set Store = Session.Stores.GetSharedMailbox("natalia")
set Inbox = Store.GetDefaultFolder(olFolderInbox)
set Rules = Store.Rules
set Rule = Rules.Create("Test Tag")
set Action = Rule.Actions.Tag
Action.PropTag = &H001A001E 'PR_MESSAGE_CLASS
Action.Value = "IPM.Note.Special"
Action.Enabled = true
Rule.Enabled = true
Rule.Save |
|