افزودن یا حذف مخاطبین از Microsoft Exchange Server در جاوا

Microsoft Exchange Server یک سرور ایمیل و تقویم است که خدمات همکاری مختلفی مانند ایمیل، تقویم، مدیریت مخاطبین و غیره را ارائه می‌دهد. در یکی از پست‌های من، نحوه دسترسی و خواندن ایمیل‌ها را به شما نشان داده‌ام. از Microsoft Exchange Server به صورت برنامه نویسی در جاوا. با این حال، ما اغلب به لیست مخاطبینی که در MS Exchange Server داریم نیاز داریم. بنابراین در این مقاله، نحوه افزودن، حذف یا به روز رسانی مخاطبین را در Microsoft Exchange Server در جاوا خواهید آموخت.

Java API برای دسترسی به مخاطبین در MS Exchange Server

Aspose.Email for Java یک API محبوب برای پیاده سازی برنامه های سرویس گیرنده ایمیل در جاوا است. علاوه بر این، به شما امکان می دهد با MS Exchange Server کار کنید و مخاطبین، ایمیل ها و موارد مکالمه را دستکاری کنید. ما از این API برای افزودن، به روز رسانی و حذف مخاطبین در Exchange Server استفاده خواهیم کرد. می‌توانید JAR 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 Server در جاوا اضافه کنید

مراحل زیر برای افزودن مخاطبین به Microsoft Exchange Server در جاوا آمده است.

  • ابتدا شی NetworkCredential را با نام کاربری، رمز عبور و دامنه ایجاد و مقداردهی اولیه کنید.
  • سپس، IEWSClient را با URI صندوق پست و شی NetworkCredential مقداردهی اولیه کنید.
  • یک شی از کلاس Contact ایجاد کنید و ویژگی های آن مانند نام، شغل، جنسیت، تلفن، افراد مرتبط و غیره را تنظیم کنید.
  • در نهایت، برای افزودن مخاطب، روش EWSClient.createContact(Contact) را فراخوانی کنید.

نمونه کد زیر نحوه افزودن مخاطب به Microsoft Exchange Server در جاوا را نشان می دهد.

// URI صندوق پستی، نام کاربری، رمز عبور، اطلاعات دامنه را تنظیم کنید
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);

// ایجاد مخاطب جدید
Contact contact = new Contact();

// تنظیم اطلاعات عمومی
contact.setGender(Gender.Male);
contact.setDisplayName("Frank Lin");
contact.setCompanyName("ABC Co.");
contact.setJobTitle("Executive Manager");
PhoneNumber tmp0 = new PhoneNumber();
tmp0.setNumber("123456789");
tmp0.setCategory(PhoneNumberCategory.getHome());

// اضافه کردن شماره تلفن
contact.getPhoneNumbers().add(tmp0);
AssociatedPerson tmp1 = new AssociatedPerson();
tmp1.setName("Catherine");
tmp1.setCategory(AssociatedPersonCategory.getSpouse());

// با افراد مرتبط تماس بگیرید
contact.getAssociatedPersons().add(tmp1);
AssociatedPerson tmp2 = new AssociatedPerson();
tmp2.setName("Bob");
tmp2.setCategory(AssociatedPersonCategory.getChild());
contact.getAssociatedPersons().add(tmp2);
AssociatedPerson tmp3 = new AssociatedPerson();
tmp3.setName("Merry");
tmp3.setCategory(AssociatedPersonCategory.getSister());
contact.getAssociatedPersons().add(tmp3);
Url tmp4 = new Url();
tmp4.setHref("www.blog.com");
tmp4.setCategory(UrlCategory.getBlog());

// URL ها
contact.getUrls().add(tmp4);
Url tmp5 = new Url();
tmp5.setHref("www.homepage.com");
tmp5.setCategory(UrlCategory.getHomePage());
contact.getUrls().add(tmp5);
EmailAddress tmp6 = new EmailAddress();
tmp6.setAddress("Frank.Lin@Abc.com");
tmp6.setDisplayName("Frank Lin");
tmp6.setCategory(EmailAddressCategory.getEmail1());

// آدرس ایمیل مخاطب را تنظیم کنید
contact.getEmailAddresses().add(tmp6);

try {
	// تماس ایجاد کنید
	client.createContact(contact);
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

مخاطبین را از MS Exchange Server در جاوا حذف کنید

همچنین می توانید یک مخاطب را از MS Exchange Server حذف کنید. برای فیلتر کردن مخاطبین، می توانید از نام، ایمیل یا هر ویژگی مناسب دیگری استفاده کنید. مراحل زیر برای حذف یک مخاطب از Microsoft Exchange Server در جاوا آمده است.

نمونه کد زیر نحوه حذف مخاطبین از Microsoft Exchange Server در جاوا را نشان می دهد.

// کلاینت EWS را راه اندازی کنید
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// نام تماس
String strContactToDelete = "John Teddy";

// مخاطبین را دریافت کنید
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());

// حلقه از طریق مخاطبین
for (Contact contact : contacts) {
    if (contact.getDisplayName().equals(strContactToDelete))
    	// مخاطب را حذف کنید
        client.deleteItem(contact.getId().getEWSId(), DeletionOptions.getDeletePermanently());
}
client.dispose();

یک مخاطب را در Exchange Server در جاوا به روز کنید

Aspose.Email برای جاوا همچنین به شما امکان می دهد یک مخاطب را در MS Exchange Server به روز کنید. مراحل زیر برای انجام این عملیات آورده شده است.

  • ابتدا شی NetworkCredential را با نام کاربری، رمز عبور و دامنه ایجاد و مقداردهی اولیه کنید.
  • سپس، IEWSClient را با URI صندوق پست و شی NetworkCredential مقداردهی کنید.
  • با استفاده از روش IEWSClient.getContacts(EWSClient.getMailboxInfo().getContactsUri()) مخاطبین را از Exchange Server دریافت کنید.
  • پس از آن، مخاطبین را حلقه زده و مخاطب مورد نظر را فیلتر کنید.
  • در نهایت، ویژگی های مخاطب را به روز کنید و برای ذخیره با IEWSClient.updateContact(Contact) تماس بگیرید.

نمونه کد زیر نحوه به روز رسانی یک مخاطب را در MS Exchange Server در جاوا نشان می دهد.

// URI صندوق پستی، نام کاربری، رمز عبور، اطلاعات دامنه را تنظیم کنید
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

// کلاینت EWS را راه اندازی کنید
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);

// لیست تمام مخاطبین و حلقه از طریق تمام مخاطبین
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());
Contact contact = contacts[0];

// اطلاعات تماس را به روز کنید
System.out.println("Name: " + contact.getDisplayName());
contact.setDisplayName("David Ch");
client.updateContact(contact);

مجوز API رایگان دریافت کنید

می توانید برای استفاده از Aspose.Email برای جاوا بدون محدودیت ارزیابی، مجوز موقت رایگان دریافت کنید.

نتیجه

در این مقاله نحوه کار با مخاطبین در Microsoft Exchange Server در جاوا را یاد گرفتید. ما نحوه افزودن، حذف و به‌روزرسانی مخاطبین را از سرور MS Exchange در جاوا نشان داده‌ایم. علاوه بر این، برای مطالعه بیشتر درباره Aspose.Email برای جاوا، می‌توانید اسناد را کاوش کنید. همچنین، می توانید سوالات خود را در [فروم 16 ما ارسال کنید.

همچنین ببینید