e2k-action

e2k-action —

Synopsis




gboolean    e2k_actions_extract             (guint8 **data,
                                             int *len,
                                             GPtrArray **actions);
void        e2k_actions_append              (GByteArray *ba,
                                             GPtrArray *actions);
E2kAction*  e2k_action_move                 (GByteArray *store_entryid,
                                             GByteArray *folder_source_key);
E2kAction*  e2k_action_copy                 (GByteArray *store_entryid,
                                             GByteArray *folder_source_key);
E2kAction*  e2k_action_reply                (GByteArray *template_entryid,
                                             guint8 template_guid[16]);
E2kAction*  e2k_action_oof_reply            (GByteArray *template_entryid,
                                             guint8 template_guid[16]);
E2kAction*  e2k_action_defer                (GByteArray *data);
E2kAction*  e2k_action_bounce               (E2kActionBounceCode bounce_code);
E2kAction*  e2k_action_forward              (E2kAddrList *list);
E2kAction*  e2k_action_delegate             (E2kAddrList *list);
E2kAction*  e2k_action_tag                  (const char *propname,
                                             E2kPropType type,
                                             gpointer value);
E2kAction*  e2k_action_delete               (void);
void        e2k_actions_free                (GPtrArray *actions);
void        e2k_action_free                 (E2kAction *act);
E2kAddrList* e2k_addr_list_new              (int nentries);
void        e2k_addr_list_set_local         (E2kAddrList *list,
                                             int entry_num,
                                             const char *display_name,
                                             const char *exchange_dn,
                                             const char *email);
void        e2k_addr_list_set_oneoff        (E2kAddrList *list,
                                             int entry_num,
                                             const char *display_name,
                                             const char *email);
void        e2k_addr_list_free              (E2kAddrList *list);

Description

Details

e2k_actions_extract ()

gboolean    e2k_actions_extract             (guint8 **data,
                                             int *len,
                                             GPtrArray **actions);

Attempts to extract a list of actions from *data, which contains a binary-encoded list of actions from a server-side rule.

On success, *actions will contain the extracted list, *data will be advanced past the end of the restriction data, and *len will be decremented accordingly.

data : pointer to data pointer
len : pointer to data length
actions : pointer to array to store actions in
Returns : success or failure

e2k_actions_append ()

void        e2k_actions_append              (GByteArray *ba,
                                             GPtrArray *actions);

Appends actions to ba as part of a server-side rule.

ba : a buffer into which a server-side rule is being constructed
actions : the actions to append to ba

e2k_action_move ()

E2kAction*  e2k_action_move                 (GByteArray *store_entryid,
                                             GByteArray *folder_source_key);

Creates a rule action to move a message into the indicated folder

store_entryid : The PR_STORE_ENTRYID of the message store
folder_source_key : The PR_SOURCE_KEY of a folder in that store
Returns : the new rule action

e2k_action_copy ()

E2kAction*  e2k_action_copy                 (GByteArray *store_entryid,
                                             GByteArray *folder_source_key);

Creates a rule action to copy a message into the indicated folder

store_entryid : The PR_STORE_ENTRYID of the message store
folder_source_key : The PR_SOURCE_KEY of a folder in that store
Returns : the new rule action

e2k_action_reply ()

E2kAction*  e2k_action_reply                (GByteArray *template_entryid,
                                             guint8 template_guid[16]);

Creates a rule action to reply to a message using the indicated template

template_entryid : The entryid of the reply template
template_guid : The GUID of the reply template
Returns : the new rule action

e2k_action_oof_reply ()

E2kAction*  e2k_action_oof_reply            (GByteArray *template_entryid,
                                             guint8 template_guid[16]);

Creates a rule action to send an Out-of-Office reply to a message using the indicated template

template_entryid : The entryid of the reply template
template_guid : The GUID of the reply template
Returns : the new rule action

e2k_action_defer ()

E2kAction*  e2k_action_defer                (GByteArray *data);

Creates a rule action to defer processing on a message

data : data identifying the deferred action
Returns : the new rule action

e2k_action_bounce ()

E2kAction*  e2k_action_bounce               (E2kActionBounceCode bounce_code);

Creates a rule action to bounce a message

bounce_code : a bounce code
Returns : the new rule action

e2k_action_forward ()

E2kAction*  e2k_action_forward              (E2kAddrList *list);

Creates a rule action to forward a message to the indicated list of recipients

list : a list of recipients
Returns : the new rule action

e2k_action_delegate ()

E2kAction*  e2k_action_delegate             (E2kAddrList *list);

Creates a rule action to delegate a meeting request to the indicated list of recipients

list : a list of recipients
Returns : the new rule action

e2k_action_tag ()

E2kAction*  e2k_action_tag                  (const char *propname,
                                             E2kPropType type,
                                             gpointer value);

Creates a rule action to set the given property to the given value on a message.

propname : a MAPI property name
type : the type of propname
value : the value for propname
Returns : the new rule action

e2k_action_delete ()

E2kAction*  e2k_action_delete               (void);

Creates a rule action to permanently delete a message (ie, not just move it to the trash).

Returns : the new rule action

e2k_actions_free ()

void        e2k_actions_free                (GPtrArray *actions);

Frees actions and all of its elements

actions : an array of E2kAction

e2k_action_free ()

void        e2k_action_free                 (E2kAction *act);

Frees act

act : the action

e2k_addr_list_new ()

E2kAddrList* e2k_addr_list_new              (int nentries);

Creates an address list for a forward or delegate rule, with nentries slots

nentries : the number of entries
Returns : the new address list

e2k_addr_list_set_local ()

void        e2k_addr_list_set_local         (E2kAddrList *list,
                                             int entry_num,
                                             const char *display_name,
                                             const char *exchange_dn,
                                             const char *email);

Sets entry number entry_num of list to refer to the indicated local Exchange user.

list : the address list
entry_num : the list entry to set
display_name : the UTF-8 display name of the recipient
exchange_dn : the Exchange 5.5-style DN of the recipient
email : the SMTP email address of the recipient

e2k_addr_list_set_oneoff ()

void        e2k_addr_list_set_oneoff        (E2kAddrList *list,
                                             int entry_num,
                                             const char *display_name,
                                             const char *email);

Sets entry number entry_num of list to refer to the indicated "one-off" SMTP user.

list : the address list
entry_num : the list entry to set
display_name : the UTF-8 display name of the recipient
email : the SMTP email address of the recipient

e2k_addr_list_free ()

void        e2k_addr_list_free              (E2kAddrList *list);

Frees list and all its entries.

list : the address list