Práce se značkami zpráv na serveru

Změna příznaků zprávy

Zprávové příznaky můžete změnit pomocí changeMessageFlags() metoda. Tato metoda přijímá dva parametry.

  1. Číslo sekvence zprávy nebo jedinečné ID.
  2. MessageFlag.

Následující značky lze nastavit:

Nastavování značek zpráv

Následující úryvek kódu ukazuje, jak změnit značky zpráv na IMAP serveru pomocí Aspose.Email.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Mark the message as read
client.changeMessageFlags(1, ImapMessageFlags.isRead());

Odstraňování značek zpráv

Značky zpráv lze také odstranit pomocí removeMessageFlags() metoda. Použití je podobné jako u changeMessageFlags() metoda. Přijímá číslo sekvence nebo jedinečné ID zprávy a MessageFlag. Následující úryvek kódu ukazuje, jak odstranit značky zprávy.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Remove the message flag
client.removeMessageFlags(1, ImapMessageFlags.isRead());

Nastavování vlastních značek

Můžete také nastavit vlastní značky zprávě pomocí ImapClient z API. ImapClient AddMessageFlags poskytuje možnost nastavit vlastní značky na zprávách.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Create a message
MailMessage message = new MailMessage("user@domain1.com", "user@domain2.com", "subject", "message");

// Append the message to mailbox
String uid = client.appendMessage(ImapFolderInfo.IN_BOX, message);

// Add custom flags to the added messge
client.addMessageFlags(uid, com.aspose.email.ImapMessageFlags.op_BitwiseOr(ImapMessageFlags.keyword("custom1"), ImapMessageFlags.keyword("custom1_0")));

// Retreive the messages for checking the presence of custom flag
client.selectFolder(ImapFolderInfo.IN_BOX);

ImapMessageInfoCollection messageInfos = client.listMessages();
for (ImapMessageInfo inf : messageInfos) {
    ImapMessageFlags[] flags = inf.getFlags().split();

    if (inf.containsKeyword("custom1"))
        System.out.println("Keyword found");
}