التعامل مع علامات الرسائل على الخادم

تغيير علامات الرسالة

يمكنك تغيير علامات الرسائل باستخدام changeMessageFlags() طريقة. تأخذ هذه الطريقة معلمتين.

  1. رقم تسلسل الرسالة أو المعرف الفريد.
  2. MessageFlag.

يمكن تعيين العلامات التالية:

تعيين علامات الرسائل

تُظهر الشيفرة البرمجية التالية كيفية تغيير علامات الرسائل على خادم IMAP باستخدام 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());

إزالة علامات الرسائل

يمكن أيضًا إزالة علامات الرسائل باستخدام removeMessageFlags() طريقة. الاستخدام مشابه لطريقة changeMessageFlags() طريقة. تأخذ رقم تسلسل أو معرف رسائل فريد وت MessageFlag. تُظهر الشيفرة البرمجية التالية كيفية إزالة علامات الرسائل.

// 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());

تعيين علامات مخصصة

يمكنك أيضًا تعيين علامات مخصصة لرسالة باستخدام ImapClient من الواجهة البرمجية. عميل ImapClient AddMessageFlags توفر القدرة على تعيين علامات مخصصة للرسائل.

// 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");
}