Přidat nebo odstranit kontakty z Microsoft Exchange Server v Javě

Microsoft Exchange Server je e-mailový a kalendářový server, který poskytuje různé služby pro spolupráci, jako je e-mail, kalendáře, správa kontaktů atd. V jednom z mých příspěvků jsem vám ukázal, jak přistupovat k e-mailům a jak je číst. z Microsoft Exchange Server programově v Javě. Často však potřebujeme seznam kontaktů, který máme na MS Exchange Serveru. V tomto článku se tedy dozvíte, jak přidat, odstranit nebo aktualizovat kontakty na Microsoft Exchange Server v Javě.

Java API pro přístup ke kontaktům na MS Exchange Server

Aspose.Email for Java je populární API pro implementaci aplikací e-mailových klientů v Javě. Navíc vám umožňuje pracovat s MS Exchange Server a manipulovat s kontakty, e-maily a položkami konverzace. Toto rozhraní API použijeme k přidávání, aktualizaci a odstraňování kontaktů na Exchange Server. JAR API si můžete buď stáhnout, nebo jej nainstalovat pomocí následujících konfigurací Maven.

úložiště:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

Závislost:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>22.2</version>
    <classifier>jdk16</classifier>
</dependency>

Přidejte kontakty na MS Exchange Server v Javě

Následují kroky pro přidání kontaktů na Microsoft Exchange Server v Javě.

  • Nejprve vytvořte a inicializujte objekt NetworkCredential s uživatelským jménem, heslem a doménou.
  • Poté inicializujte IEWSClient s URI poštovní schránky a objektem NetworkCredential.
  • Vytvořte objekt třídy Kontakt a nastavte jeho vlastnosti, jako je jméno, zaměstnání, pohlaví, telefon, přidružené osoby atd.
  • Nakonec zavolejte metodu EWSClient.createContact(Contact) pro přidání kontaktu.

Následující ukázka kódu ukazuje, jak přidat kontakt na Microsoft Exchange Server v jazyce Java.

// Nastavte URI poštovní schránky, uživatelské jméno, heslo, informace o doméně
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);

// Vytvořit nový kontakt
Contact contact = new Contact();

// Nastavte obecné informace
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());

// Přidejte telefonní čísla
contact.getPhoneNumbers().add(tmp0);
AssociatedPerson tmp1 = new AssociatedPerson();
tmp1.setName("Catherine");
tmp1.setCategory(AssociatedPersonCategory.getSpouse());

// Přidružené osoby kontaktu
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());

// Nastavte e-mailovou adresu kontaktu
contact.getEmailAddresses().add(tmp6);

try {
	// Vytvořte kontakt
	client.createContact(contact);
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Odstraňte kontakty z MS Exchange Server v Javě

Můžete také odstranit kontakt z MS Exchange Server. K filtrování kontaktů můžete použít jméno, e-mail nebo jinou vhodnou vlastnost. Následují kroky k odstranění kontaktu z Microsoft Exchange Server v Javě.

Následující ukázka kódu ukazuje, jak odstranit kontakty z Microsoft Exchange Server v Javě.

// Inicializujte klienta EWS
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Kontaktní jméno
String strContactToDelete = "John Teddy";

// Získejte kontakty
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());

// Procházet kontakty
for (Contact contact : contacts) {
    if (contact.getDisplayName().equals(strContactToDelete))
    	// Smazat kontakt
        client.deleteItem(contact.getId().getEWSId(), DeletionOptions.getDeletePermanently());
}
client.dispose();

Aktualizujte kontakt na Exchange Server v Javě

Aspose.Email for Java také umožňuje aktualizovat kontakt na MS Exchange Server. Následují kroky k provedení této operace.

Následující ukázka kódu ukazuje, jak aktualizovat kontakt na MS Exchange Server v Javě.

// Nastavte URI poštovní schránky, uživatelské jméno, heslo, informace o doméně
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);

// Inicializujte klienta EWS
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);

// Seznam všech kontaktů a procházení všech kontaktů
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());
Contact contact = contacts[0];

// Aktualizujte kontaktní údaje
System.out.println("Name: " + contact.getDisplayName());
contact.setDisplayName("David Ch");
client.updateContact(contact);

Získejte bezplatnou licenci API

Můžete získat bezplatnou dočasnou licenci k používání Aspose.Email pro Java bez omezení hodnocení.

Závěr

V tomto článku jste se naučili pracovat s kontakty na Microsoft Exchange Server v Javě. Ukázali jsme, jak přidat, odebrat a aktualizovat kontakty z MS Exchange Server v Javě. Kromě toho můžete prozkoumat dokumentaci a přečíst si více o Aspose.Email pro Java. Své dotazy můžete také zveřejňovat na našem fóru.

Viz také