HEX
Server: Apache/2
System: Linux jingle.dotvndns.vn 2.6.32-754.17.1.el6.x86_64 #1 SMP Tue Jul 2 12:42:48 UTC 2019 x86_64
User: chuahuehuong (1863)
PHP: 7.3.16
Disabled: apache_note,apache_setenv,proc_get_status,exec,passthru,proc_nice,proc_terminate,shell_exec,system,ini_restore,syslog,define_syslog_variables,symlink,link,error_log,leak,dbmopen,closelog,stream_socket_server,execl,escapeshellcmd,ini_alter,dl,show_source,posix_getpwuid,posix_geteuid,posix_getegid,posix_getgrgid,open_basedir,safe_mode_include_dir,pcntl_exec,pcntl_fork,pclose,virtual,openlog,popen,escapeshellarg,eval,calo,posix_getpwuid,symlinks,symlink,getpwuid,mail
Upload Files
File: //usr/include/dovecot/push-notification-triggers.h
/* Copyright (c) 2015-2017 Dovecot authors, see the included COPYING file */

#ifndef PUSH_NOTIFICATION_TRIGGERS_H
#define PUSH_NOTIFICATION_TRIGGERS_H

#include "mail-types.h"

struct mail;
struct mailbox;
struct push_notification_txn;
struct push_notification_txn_mbox;
struct push_notification_txn_msg;


enum push_notification_event_trigger {
    PUSH_NOTIFICATION_EVENT_TRIGGER_NONE,

    /* Mailbox actions */
    PUSH_NOTIFICATION_EVENT_TRIGGER_MBOX_CREATE       = 0x001,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MBOX_DELETE       = 0x002,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MBOX_RENAME       = 0x004,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MBOX_SUBSCRIBE    = 0x008,

    /* Message actions */
    PUSH_NOTIFICATION_EVENT_TRIGGER_MSG_SAVE_NEW      = 0x010,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MSG_SAVE_APPEND   = 0x020,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MSG_EXPUNGE       = 0x040,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MSG_FLAGCHANGE    = 0x080,
    PUSH_NOTIFICATION_EVENT_TRIGGER_MSG_KEYWORDCHANGE = 0x100,
};

/* Mailbox actions. */
void
push_notification_trigger_mbox_create(struct push_notification_txn *txn,
                                      struct mailbox *box,
                                      struct push_notification_txn_mbox *mbox);
void
push_notification_trigger_mbox_delete(struct push_notification_txn *txn,
                                      struct mailbox *box,
                                      struct push_notification_txn_mbox *mbox);
void
push_notification_trigger_mbox_rename(struct push_notification_txn *txn,
                                      struct mailbox *src,
                                      struct mailbox *dest,
                                      struct push_notification_txn_mbox *mbox);
void
push_notification_trigger_mbox_subscribe(struct push_notification_txn *txn,
                                         struct mailbox *box,
                                         bool subscribed,
                                         struct push_notification_txn_mbox *mbox);

/* Message actions. */
void
push_notification_trigger_msg_save_new(struct push_notification_txn *txn,
                                       struct mail *mail,
                                       struct push_notification_txn_msg *msg);
void
push_notification_trigger_msg_save_append(struct push_notification_txn *txn,
                                          struct mail *mail,
                                          struct push_notification_txn_msg *msg);
void
push_notification_trigger_msg_save_expunge(struct push_notification_txn *txn,
                                           struct mail *mail,
                                           struct push_notification_txn_msg *msg);
void
push_notification_trigger_msg_flag_change(struct push_notification_txn *txn,
                                          struct mail *mail,
                                          struct push_notification_txn_msg *msg,
                                          enum mail_flags old_flags);
void
push_notification_trigger_msg_keyword_change(struct push_notification_txn *txn,
                                             struct mail *mail,
                                             struct push_notification_txn_msg *msg,
                                             const char *const *old_keywords);


#endif /* PUSH_NOTIFICATION_TRIGGERS_H */