Hantera inkorgsregler på Exchange Server i Java

När du använder Microsoft Exchange Servers tjänster kan du behöva definiera olika regler för inkorgsmappen. Dessa regler tillämpas på meddelanden som att flytta ett meddelande till en mapp, ta bort ett meddelande, etc. En inkorgsregel består av villkor och de åtgärder som ska utföras när villkoren är uppfyllda. I den här artikeln kommer du att lära dig hur du skapar och uppdaterar inkorgsregler på MS Exchange Server i Java.

Java API för att hantera inkorgsregler på Exchange Server

För att arbeta med inkorgsregler på MS Exchange Server kommer vi att använda Aspose.Email for Java. API:et är utformat för att sömlöst fungera med MS Exchange Server och hantera dess tjänster. Du kan antingen ladda ner API:et eller installera det med följande Maven-konfigurationer.

Förvar:

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

Beroende:

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

Skapa en inkorgsregel på Exchange Server i Java

Aspose.Email för Java använder Exchange Web Services (EWS) för att arbeta med inkorgsregler på Exchange Server. Följande är stegen för att skapa en inkorgsregel på Exchange Server i Java.

Följande kodexempel visar hur man skapar en inkorgsregel på Exchange Server i Java.

// Anslut till Exchange Server
IEWSClient client = EWSClient.getEWSClient(mailboxURI, credential);
System.out.println("Connected to Exchange server");

// Skapa en ny regel
InboxRule rule = new InboxRule();
rule.setDisplayName("Message from client ABC");

// Lägg till villkor
RulePredicates newRules = new RulePredicates();
// Ange ämne innehåller strängen "ABC" och Lägg till villkoren
newRules.containsSubjectStrings().addItem("ABC");
newRules.getFromAddresses().addMailAddress(new MailAddress("administrator@ex2010.local", true));
rule.setConditions(newRules);

// Lägg till åtgärder och flytta meddelandet till en mapp
RuleActions newActions = new RuleActions();
newActions.setMoveToFolder("120:AAMkADFjMjNjMmNjLWE3NzgtNGIzNC05OGIyLTAwNTgzNjRhN2EzNgAuAAAAAABbwP+Tkhs0TKx1GMf0D/cPAQD2lptUqri0QqRtJVHwOKJDAAACL5KNAAA=AQAAAA==");
rule.setActions(newActions);

// Skapa regel
client.createInboxRule(rule);

Uppdatera en inkorgsregel på Exchange Server i Java

Följande är stegen för att hämta och uppdatera en befintlig inkorgsregel på Exchange Server i Java.

  • Anslut först till Exchange Server och hämta instansen av EWS-klienten till ett IEWSClient-objekt.
  • Anropa sedan metoden IEWSClient.getInboxRules() för att få alla regler i en array InboxRule.
  • Gå igenom varje InboxRule i arrayen.
  • Filtrera de obligatoriska reglerna baserat på vissa villkor.
  • Uppdatera regelns villkor eller åtgärder.
  • Anrop slutligen metoden IEWSClient.updateInboxRule(InboxRule) för att uppdatera inkorgsregeln.

Följande kodexempel visar hur man uppdaterar en inkorgsregel på MS Exchange Server i Java.

// Anslut till Exchange Server
IEWSClient client = EWSClient.getEWSClient(mailboxURI, credential);
System.out.println("Connected to Exchange server");

// Få alla regler för inkorgen
InboxRule[] inboxRules = client.getInboxRules();

// Gå igenom varje regel
for (InboxRule inboxRule : inboxRules) {
    if ("Message from client ABC".equals(inboxRule.getDisplayName())) {
        // Uppdatera regeln
        inboxRule.getConditions().getFromAddresses().set_Item(0, new MailAddress("administrator@ex2010.local", true));
        client.updateInboxRule(inboxRule);
    }
}

Skaffa en gratis API-licens

Du kan få en gratis temporär licens för att använda Aspose.Email för Java utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du arbetar med inkorgsregler på Microsoft Exchange Server från Java-applikationer. Du har sett hur man lägger till eller uppdaterar en inkorgsregel på Exchange Server i Java. Dessutom kan du utforska funktionerna i Aspose.Email för Java med hjälp av dokumentationen. Om du skulle ha några frågor kan du också skicka inlägg till vårt forum.

Se även