Aktivieren Ihres Outlook-Add-Ins für mehrere Nachrichten

Mit der Mehrfachauswahlfunktion für Elemente kann Ihr Outlook-Add-In jetzt mehrere ausgewählte Nachrichten auf einmal aktivieren und Vorgänge ausführen. Bestimmte Vorgänge, z. B. das Hochladen von Nachrichten in Ihr CRM-System (Customer Relationship Management) oder das Kategorisieren zahlreicher Elemente, können jetzt problemlos mit einem einzigen Klick abgeschlossen werden.

In den folgenden Abschnitten wird beschrieben, wie Sie Ihr Add-In so konfigurieren, dass die Betreffzeile mehrerer Nachrichten im Lesemodus abgerufen wird.

Hinweis

Die Unterstützung für die Mehrfachauswahl von Elementen wurde in Anforderungssatz 1.13 eingeführt, wobei zusätzliche Elementeigenschaften jetzt in nachfolgenden Anforderungssätzen verfügbar sind. Siehe Clients und Plattformen, die diese Anforderungsgruppe unterstützen.

Einrichten der Umgebung

Schließen Sie den Outlook-Schnellstart ab, um ein Add-In-Projekt mit dem Yeoman-Generator für Office-Add-Ins zu erstellen.

Konfigurieren des Manifests

  1. Öffnen Sie in Ihrem bevorzugten Code-Editor das Outlook-Schnellstartprojekt, das Sie erstellt haben.

  2. Öffnen Sie die manifest.json Datei, die sich im Stammverzeichnis des Projekts befindet.

  3. Ändern Sie im Array "authorization.permissions.resourceSpecific" den Wert der Eigenschaft "name" in "Mailbox.ReadWrite.User". Wenn Sie fertig sind, sollte es wie folgt aussehen.

    "authorization": {
        "permissions": {
            "resourceSpecific": [
                {
                    "name": "Mailbox.ReadWrite.User",
                    "type": "Delegated"
                }
            ]
        }
    },
    
  4. Nehmen Sie im ersten Objekt des Arrays "extensions.runtimes" die folgenden Änderungen vor.

    1. Ändern Sie die Eigenschaft "requirements.capabilities.minVersion" in "1.13".
    2. Fügen Sie im gleichen "actions"-Objekt die Eigenschaft "supportsNoItemContext" hinzu, und legen Sie sie auf fest true.
    3. Fügen Sie im gleichen "actions"-Objekt die Eigenschaft "multiselect" hinzu, und legen Sie sie auf fest true.

    Ihr Code sollte wie folgt aussehen, nachdem Sie die Änderungen vorgenommen haben.

    "runtimes": [
        {
            "requirements": {
                "capabilities": [
                    {
                        "name": "Mailbox",
                        "minVersion": "1.13"
                    }
                ]
            },
            "id": "TaskPaneRuntime",
            "type": "general",
            "code": {
                "page": "https://localhost:3000/taskpane.html"
            },
            "lifetime": "short",
            "actions": [
                {
                    "id": "TaskPaneRuntimeShow",
                    "type": "openPage",
                    "pinnable": false,
                    "view": "dashboard",
                    "supportsNoItemContext": true,
                    "multiselect": true
                }
            ]
        },
        ...
    ]
    
  5. Löschen Sie das zweite Objekt des Arrays "extensions.runtimes", dessen "id" "CommandsRuntime" ist.

  6. Löschen Sie im Array "extensions.ribbons.tabs.controls" das zweite Objekt, dessen "id" "ActionButton" ist.

  7. Speichern Sie Ihre Änderungen.

Hinweis

Wenn Sie das Feature für die Mehrfachauswahl von Elementen in Ihrem Add-In aktivieren, unterstützt Ihr Add-In automatisch das Feature "Kein Elementkontext ", auch wenn es nicht explizit im Manifest konfiguriert ist.

Konfigurieren des Aufgabenbereichs

Die Mehrfachauswahl von Elementen basiert auf dem SelectedItemsChanged-Ereignis , um zu bestimmen, wann Nachrichten ausgewählt oder deaktiviert werden. Dieses Ereignis erfordert eine Aufgabenbereichsimplementierung.

  1. Öffnen Sie im Ordner ./src/taskpanetaskpane.html.

  2. Ersetzen Sie im <body-Element> das gesamte <Standard-Element> durch das folgende Markup.

    <main id="app-body" class="ms-welcome__main">
        <h2 class="ms-font-xl">Retrieve the subject line of multiple messages with one click!</h2>
        <ul id="selected-items"></ul>
        <div role="button" id="run" class="ms-welcome__action ms-Button ms-Button--hero ms-font-xl">
            <span class="ms-Button-label">Run</span>
        </div>
    </main>
    
  3. Speichern Sie Ihre Änderungen.

Implementieren eines Handlers für das SelectedItemsChanged-Ereignis

Um Ihr Add-In zu benachrichtigen, wenn das SelectedItemsChanged Ereignis eintritt, müssen Sie einen Ereignishandler mithilfe der addHandlerAsync -Methode registrieren.

  1. Öffnen Sie im Ordner ./src/taskpanetaskpane.js.

  2. Ersetzen Sie in der Office.onReady() Rückruffunktion den vorhandenen Code durch Folgendes:

    if (info.host === Office.HostType.Outlook) {
        document.getElementById("sideload-msg").style.display = "none";
        document.getElementById("app-body").style.display = "flex";
        document.getElementById("run").onclick = run;
    
        // Register an event handler to identify when messages are selected.
        Office.context.mailbox.addHandlerAsync(Office.EventType.SelectedItemsChanged, run, asyncResult => {
          if (asyncResult.status === Office.AsyncResultStatus.Failed) {
            console.log(asyncResult.error.message);
            return;
          }
    
          console.log("Event handler added.");
        });
    }
    

Abrufen der Betreffzeile ausgewählter Nachrichten

Nachdem Sie nun einen Ereignishandler registriert haben, rufen Sie die getSelectedItemsAsync-Methode auf, um die Betreffzeile der ausgewählten Nachrichten abzurufen und im Aufgabenbereich zu protokollieren. Die getSelectedItemsAsync -Methode kann auch verwendet werden, um andere Nachrichteneigenschaften abzurufen, z. B. die Element-ID, den Elementtyp (Message ist derzeit der einzige unterstützte Typ) und den Elementmodus (Read oder Compose).

  1. Navigieren Sietaskpane.jszur run Funktion, und fügen Sie den folgenden Code ein.

    // Clear list of previously selected messages, if any.
    const list = document.getElementById("selected-items");
    while (list.firstChild) {
        list.removeChild(list.firstChild);
    }
    
    // Retrieve the subject line of the selected messages and log it to a list in the task pane.
    Office.context.mailbox.getSelectedItemsAsync(asyncResult => {
        if (asyncResult.status === Office.AsyncResultStatus.Failed) {
            console.log(asyncResult.error.message);
            return;      
        }
    
        asyncResult.value.forEach(item => {
            const listItem = document.createElement("li");
            listItem.textContent = item.subject;
            list.appendChild(listItem);
        });
    });
    
  2. Speichern Sie Ihre Änderungen.

Probieren Sie es aus

  1. Führen Sie in einem Terminal den folgenden Code im Stammverzeichnis Ihres Projekts aus. Dadurch wird der lokale Webserver gestartet und das Add-In querladen.

    npm start
    

    Tipp

    Wenn Ihr Add-In nicht automatisch querladen wird, befolgen Sie die Anweisungen unter Querladen von Outlook-Add-Ins zum Testen , um es manuell in Outlook querzuladen.

  2. Stellen Sie in Outlook sicher, dass der Lesebereich aktiviert ist. Informationen zum Aktivieren des Lesebereichs finden Sie unter Verwenden und Konfigurieren des Lesebereichs für eine Vorschau von Nachrichten.

  3. Navigieren Sie zu Ihrem Posteingang, und wählen Sie mehrere Nachrichten aus, indem Sie strg gedrückt halten, während Sie Nachrichten auswählen.

  4. Wählen Sie im Menüband Aufgabenbereich anzeigen aus.

  5. Wählen Sie im Aufgabenbereich Ausführen aus, um eine Liste der Betreffzeilen der ausgewählten Nachrichten anzuzeigen.

    Eine Beispielliste von Betreffzeilen, die aus mehreren ausgewählten Nachrichten abgerufen wurden.

  6. Wenn Sie den lokalen Webserver beenden und das Add-In deinstallieren möchten, befolgen Sie die entsprechenden Anweisungen:

    • Führen Sie den folgenden Befehl aus, um den Server zu beenden. Wenn Sie verwendet haben npm start, sollte auch der folgende Befehl das Add-In deinstallieren.

      npm stop
      
    • Wenn Sie das Add-In manuell quergeladen haben, lesen Sie Entfernen eines quergeladenen Add-Ins.

Multiauswahlverhalten und Einschränkungen von Elementen

Die Mehrfachauswahl von Elementen unterstützt nur Nachrichten innerhalb eines Exchange-Postfachs sowohl im Lese- als auch im Verfassenmodus. Ein Outlook-Add-In wird nur für mehrere Nachrichten aktiviert, wenn die folgenden Bedingungen erfüllt sind.

  • Die Nachrichten müssen jeweils aus einem Exchange-Postfach ausgewählt werden. Nicht-Exchange-Postfächer werden nicht unterstützt.
  • Die Nachrichten müssen jeweils aus einem Postfachordner ausgewählt werden. Ein Add-In wird nicht für mehrere Nachrichten aktiviert, wenn sie sich in verschiedenen Ordnern befinden, es sei denn, die Unterhaltungsansicht ist aktiviert. Weitere Informationen finden Sie unter Mehrfachauswahl in Unterhaltungen.
  • Ein Add-In muss einen Aufgabenbereich implementieren, um das SelectedItemsChanged Ereignis zu erkennen.
  • Der Lesebereich in Outlook muss aktiviert sein. Eine Ausnahme besteht darin, wenn die Mehrfachauswahlfunktion des Elements über das Feature "Kein Elementkontext" im Manifest aktiviert ist. Weitere Informationen finden Sie unter Aktivieren Ihres Outlook-Add-Ins ohne aktivierten Lesebereich oder ausgewählte Nachricht.
  • Es können maximal 100 Nachrichten gleichzeitig ausgewählt werden.

Hinweis

Besprechungseinladungen und -antworten werden als Nachrichten und nicht als Termine betrachtet und können daher in eine Auswahl aufgenommen werden.

Mehrfachauswahl in Unterhaltungen

Die Mehrfachauswahl von Elementen unterstützt die Unterhaltungsansicht unabhängig davon, ob sie für Ihr Postfach oder für bestimmte Ordner aktiviert ist. In der folgenden Tabelle werden die erwarteten Verhaltensweisen beschrieben, wenn Unterhaltungen erweitert oder reduziert werden, wenn die Unterhaltungskopfzeile ausgewählt ist und sich Unterhaltungsnachrichten in einem anderen Ordner befinden als der aktuell angezeigte.

Selection Erweiterte Unterhaltungsansicht Reduzierte Unterhaltungsansicht
Der Unterhaltungsheader ist ausgewählt. Wenn der Unterhaltungsheader das einzige ausgewählte Element ist, wird ein Add-In, das die Mehrfachauswahl unterstützt, nicht aktiviert. Wenn jedoch auch andere Nachrichten ohne Header ausgewählt sind, wird das Add-In nur für diese aktiviert und nicht für den ausgewählten Header. Das Verhalten unterscheidet sich je nach Outlook-Client.

Outlook unter Windows (klassisch) und auf Mac:
Die neueste Nachricht (d. h. die erste Nachricht im Konversationsstapel) ist in der Nachrichtenauswahl enthalten.

Wenn sich die neueste Nachricht in der Unterhaltung in einem anderen Ordner befindet, der sich in dem aktuell angezeigten Ordner befindet, wird die nachfolgende Nachricht im Stapel im aktuellen Ordner in die Auswahl aufgenommen.

Outlook im Web und neues Outlook unter Windows:
Alle Nachrichten im Konversationsstapel sind ausgewählt. Dies schließt Nachrichten in der Unterhaltung ein, die sich in anderen Ordnern als dem aktuell angezeigten befinden.
Mehrere ausgewählte Nachrichten in einem Konversationsstapel befinden sich im selben Ordner wie die aktuell angezeigte Nachricht. Alle ausgewählten Nachrichten in derselben Unterhaltung sind in der Auswahl enthalten. Nicht zutreffend. Sie müssen den Konversationsstapel erweitern, um mehrere Nachrichten daraus auszuwählen.
Mehrere ausgewählte Nachrichten in einem Konversationsstapel befinden sich in unterschiedlichen Ordnern als dem aktuell angezeigten Ordner. Alle ausgewählten Nachrichten in derselben Unterhaltung sind in der Auswahl enthalten. Nicht zutreffend. Sie müssen den Konversationsstapel erweitern, um mehrere Nachrichten daraus auszuwählen.

Hinweis

Auf allen Outlook-Clients können Sie nicht mehrere Nachrichten auswählen, die zu verschiedenen Unterhaltungen gehören. Wenn Sie eine andere Unterhaltung erweitern, während eine andere Unterhaltung erweitert wird, wird die Ansicht der aktuell erweiterten Unterhaltung reduziert, und alle ausgewählten Nachrichten werden deaktiviert. Sie können jedoch mehrere Nachrichten aus derselben erweiterten Unterhaltung und Nachrichten auswählen, die nicht Teil einer Unterhaltung sind.

Anheften des Aufgabenbereichs in Add-Ins mit mehrfacher Auswahl

In Outlook im Web und im neuen Outlook unter Windows wird der Aufgabenbereich eines Add-Ins mit mehrfacher Auswahl automatisch an den Outlook-Client angeheftet. Sie bleibt auch dann angeheftet, wenn ein Benutzer zu einem anderen E-Mail-Element wechselt oder das Stecknadelsymbol im Aufgabenbereich auswählt. Der Aufgabenbereich kann nur durch Auswählen der Schaltfläche Schließen im Aufgabenbereich geschlossen werden.

Umgekehrt wird in Outlook unter Windows (klassisch) und auf Mac der Aufgabenbereich nicht automatisch angeheftet und geschlossen, wenn ein Benutzer zu einem anderen E-Mail-Element wechselt.

Nächste Schritte

Nachdem Sie Ihr Add-In nun für die Verwendung mehrerer ausgewählter Nachrichten aktiviert haben, können Sie die Funktionen Ihres Add-Ins erweitern und die Benutzerfreundlichkeit weiter verbessern. Erkunden Sie die Durchführung komplexerer Vorgänge mithilfe der Element-IDs der ausgewählten Nachrichten mit Diensten wie Microsoft Graph.

Siehe auch