Aspose.Email for Java به شما امکان می دهد با خدمات Microsoft Exchange Server مانند ایمیل، مدیریت تماس، تقویم و غیره کار کنید. در پست قبلی، شما را مشاهده کرده اید. چگونه ایمیل های MS Exchange Server را به صورت برنامه ریزی شده از داخل برنامه های جاوا خود بخوانیم. با این حال، در موارد خاص، ممکن است مجبور شوید ایمیلها را از یک پوشه به پوشه دیگر در Exchange Server منتقل کنید. در این مقاله، نحوه انتقال ایمیل ها به یک پوشه خاص در MS Exchange Server در جاوا را خواهید آموخت.
- Java API برای انتقال ایمیل ها در سرور Microsoft Exchange
- ایمیل موجود را به پوشه ای در MS Exchange Server منتقل کنید
- ایمیل جدید را به پوشه ای در MS Exchange Server منتقل کنید
Java API برای انتقال ایمیل ها در سرور Microsoft Exchange
Aspose.Email for Java یک API ایمیل قدرتمند برای کار با MS Exchange Server بدون نوشتن کد پیچیده است. در این مقاله، ما از این API برای انتقال ایمیل ها به یک پوشه خاص از صندوق پستی در MS Exchange Server استفاده می کنیم. میتوانید API را دانلود یا با استفاده از تنظیمات Maven زیر نصب کنید.
مخزن:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
وابستگی:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.2</version>
<classifier>jdk16</classifier>
</dependency>
ایمیل را به یک پوشه در سرور MS Exchange در جاوا منتقل کنید
در زیر مراحل انتقال ایمیل ها به یک پوشه خاص در MS Exchange Server در جاوا آمده است.
- ابتدا شیء IEWSClient را با استفاده از نام کاربری، رمز عبور، دامنه و URI مقداردهی کنید.
- سپس، با استفاده از روش IEWSClient.listMessages(IEWSClient.getMailboxInfo().getInboxUri()) فهرستی از پیامهای ایمیل را در یک شی ExchangeMessageInfoCollection دریافت کنید.
- پس از آن، از طریق هر پیام ExchangeMessageInfo حلقه بزنید و پیام مورد نیاز را فیلتر کنید.
- سپس، URI پیام ایمیل را با استفاده از روش ExchangeMessageInfo.getUniqueUri() دریافت کنید.
- در نهایت، پیام ایمیل را با استفاده از روش IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()) منتقل کنید.
نمونه کد زیر نحوه انتقال ایمیل به پوشه ای در MS Exchange Server در جاوا را نشان می دهد.
try {
// با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
"pwd", "domain");
// برای فهرست کردن اطلاعات پیامها از صندوق ورودی، با روش ListMessages تماس بگیرید
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());
// برای دریافت URI پیام، مجموعه را مرور کنید
for (ExchangeMessageInfo msgInfo : msgCollection) {
if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
String strMessageURI = msgInfo.getUniqueUri();
// در پوشه خاصی کپی کنید
String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
}
}
} catch (java.lang.RuntimeException ex) {
System.out.println(ex.getMessage());
}
ایمیل جدید را به پوشه ای در MS Exchange Server منتقل کنید
همچنین می توانید یک ایمیل جدید ایجاد شده را به یک پوشه خاص در MS Exchange Server منتقل کنید. مراحل زیر برای انجام این عملیات آورده شده است.
- ابتدا شی IEWSClient را با استفاده از نام کاربری، رمز عبور، دامنه و URI مقداردهی اولیه کنید.
- سپس، یک پیام جدید با استفاده از کلاس MailMessage ایجاد کنید.
- پس از آن، URI پیام ایمیل را با روش IEWSClient.appendMessage(MailMessage) دریافت کنید.
- در نهایت، پیام ایمیل را با استفاده از روش IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()) منتقل کنید.
نمونه کد زیر نحوه انتقال یک پیام ایمیل جدید به پوشه ای در MS Exchange Server را نشان می دهد.
try {
// با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
"pwd", "domain");
// یک پیام جدید ایجاد کنید
MailMessage message = new MailMessage("from@domain.com", "to@domain.com",
"EMAILNET-34997 - " + UUID.randomUUID().toString(),
"EMAILNET-34997 Exchange: Copy a message and get reference to the new Copy item");
// URI را دریافت کنید
String messageUri = client.appendMessage(message);
// انتقال به پوشه
String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
System.out.println(ex.getMessage());
}
مجوز API رایگان دریافت کنید
میتوانید برای استفاده از Aspose.Email برای جاوا بدون محدودیت ارزیابی، مجوز موقت رایگان دریافت کنید.
نتیجه
در این مقاله، نحوه انتقال ایمیل ها به یک پوشه خاص در Microsoft Exchange Server را با استفاده از جاوا یاد گرفتید. علاوه بر این، نحوه انتقال یک پیام ایمیل جدید را به یک پوشه خاص در Exchange Server مشاهده کرده اید. علاوه بر این، برای مطالعه بیشتر در مورد Aspose.Email برای جاوا، می توانید اسناد را کاوش کنید. همچنین، میتوانید سؤالات خود را از طریق [تالار گفتمان17 ما بپرسید.