Share via


Verwalten des Zustellungsdatums und der Uhrzeit einer Nachricht

Der Outlook-Client bietet Ihnen die Möglichkeit, die Zustellung einer Nachricht zu verzögern, erfordert jedoch, dass Sie Outlook und Ihr Gerät weiterhin ausführen, um sie zum angegebenen Zeitpunkt zu senden. Mit der Office JavaScript-API können Sie jetzt ein Outlook-Add-In implementieren, das geplante Nachrichten sendet, auch wenn Ihr Outlook-Client geschlossen oder ihr Gerät ausgeschaltet ist. Diese Funktion bietet Ihren Benutzern den Komfort, E-Mail-Marketingkampagnen zu planen oder eine Nachricht während der Geschäftszeiten eines Kollegen oder Kunden zuzustellen.

Hinweis

Die Unterstützung für dieses Feature wurde in Anforderungssatz 1.13 eingeführt. Siehe Clients und Plattformen, die diese Anforderungsgruppe unterstützen.

Konfigurieren des Manifests

Um die Zustellung einer Nachricht zu planen, muss Ihr Add-In in der Lage sein, im Nachrichtenerstellungsmodus zu aktivieren. Dies wird über den MessageComposeCommandSurface-Erweiterungspunkt in einem XML-Manifest oder die mailCompose-Eigenschaft "contexts" in einem einheitlichen Manifest für Microsoft 365 definiert.

Weitere Anleitungen zum Konfigurieren eines Outlook-Add-In-Manifests finden Sie unter Office-Add-In-Manifeste.

Zugreifen auf die Übermittlungseigenschaft einer Nachricht

Die item.delayDeliveryTime-Eigenschaft gibt ein DelayDeliveryTime-Objekt zurück, das Ihnen Methoden zum Abrufen oder Festlegen des Zustellungsdatums und der Uhrzeit einer Nachricht bereitstellt.

Abrufen des Zustellungsdatums und der Uhrzeit einer Nachricht

Um das Zustellungsdatum und die Uhrzeit einer Nachricht im Verfassenmodus abzurufen, rufen Sie item.delayDeliveryTime.getAsync auf, wie im folgenden Beispiel gezeigt. Wenn noch kein Zustellungsdatum für eine Nachricht festgelegt wurde, gibt der Aufruf zurück 0. Andernfalls wird ein JavaScript Date-Objekt zurückgegeben.

// Gets the delivery date and time of a message.
Office.context.mailbox.item.delayDeliveryTime.getAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log(asyncResult.error.message);
    return;
  }

  const deliveryDate = asyncResult.value;
  if (deliveryDate === 0) {
    console.log("Your message will be delivered immediately when you select Send.");
  } else {
    const date = new Date(deliveryDate);
    console.log(`Message delivery date and time: ${date.toString()}`);
  }
});

Festlegen des Zustellungsdatums und der Uhrzeit einer Nachricht

Um die Zustellung einer Nachricht zu verzögern, übergeben Sie ein JavaScript-Date-Objekt als Parameter an die item.delayDeliveryTime.setAsync-Methode , wie im folgenden Beispiel gezeigt.

// Delays the delivery time by five minutes from the current time.
const currentTime = new Date().getTime();
const milliseconds = 5 * 60 * 1000;
const timeDelay = new Date(currentTime + milliseconds);
Office.context.mailbox.item.delayDeliveryTime.setAsync(timeDelay, (asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log(asyncResult.error.message);
    return;
  }

  console.log("Message delivery has been scheduled.");
});

Featureverhalten und Einschränkungen

Wenn Sie die Zustellung einer Nachricht mithilfe der item.delayDeliveryTime.setAsync -Methode planen, wird die Verzögerung auf dem Server verarbeitet. Dadurch kann die Nachricht auch dann gesendet werden, wenn der Outlook-Client nicht ausgeführt wird. Aus diesem Fall wird die Nachricht jedoch nicht im Ordner Postausgang angezeigt, sodass Sie die Nachricht nicht bearbeiten oder die Zustellung abbrechen können, nachdem Sie Senden ausgewählt haben. Sie können die Nachricht aus dem Ordner Gesendete Elemente überprüfen, nachdem die Nachricht gesendet wurde.

Dieses Verhalten unterscheidet sich von einer Nachricht, die mithilfe der nativen Option Übermittlung verzögern im Outlook-Client geplant wurde, der die Verzögerung clientseitig verarbeitet. Eine mit dieser Option geplante Nachricht wird im Ordner Postausgang angezeigt und nur zugestellt, wenn der Outlook-Client, von dem sie gesendet wurde, zur angegebenen Übermittlungszeit ausgeführt wird.

Ausprobieren von Beispielausschnitten in Script Lab

Rufen Sie das Script Lab für das Outlook-Add-In ab, und testen Sie den Beispielausschnitt "Abrufen und Festlegen der Nachrichtenübermittlung (Message Compose)". Weitere Informationen zum Script Lab finden Sie unter Erkunden der Office JavaScript-API mithilfe von Script Lab.

Der Beispielausschnitt für die Nachrichtenübermittlung in Script Lab.

Hinweis

Ab Version 115 von Chromium-basierten Browsern wie Chrome und Edge wird die Speicherpartitionierung getestet, um eine bestimmte seitenkanalübergreifende Nachverfolgung zu verhindern (siehe auch Microsoft Edge-Browserrichtlinien). Diese Änderung verhindert, dass Script Lab Codeausschnitte in Outlook im Web ausgeführt werden. Um dies zu umgehen, wechseln Sie in Ihrem Browser zu chrome://flags oder edge://flags , und legen Sie dann das Flag Storage Partitioning (#third-party-storage-partitioning) von Drittanbietern auf Deaktiviert fest.

Siehe auch