Microsoft 365: Kopieren, Verschieben, Antworten und Löschen von E-Mails mit der Microsoft Graph API

Um auf die Daten in Microsoft 365 zuzugreifen, wie z.B. E-Mails, verzichtet Microsoft auf die Basic-Authentifizierung für IMAP und POP3 und fördert zunehmend die Graph API.

Ab v19 R8 stehen in 4D NetKit neue integrierte Befehle zur Verfügung, um Microsoft 365 E-Mail-Vorgänge wie Kopieren, Verschieben, Beantworten und Löschen von E-Mails nativ zu automatisieren.

HDI-E-Mail-Verwaltung

Kontoverbindung

Bevor Sie eine E-Mail erstellen, legen Sie das OAuth2-Verbindungsobjekt und das Office 365-Objekt an.

var $oAuth2: cs.NetKit.OAuth2Provider
var $office365 : cs.NetKit.Office365

$oAuth2:=cs.NetKit.OAuth2Provider.new($param)
$office365:=cs.NetKit.Office365.new($oAuth2;\
 New object("mailType"; "Microsoft"))

E-Mails verschieben oder kopieren

Um eine E-Mail von einem Ordner in einen anderen zu verschieben, müssen Sie Ihre mailId und folderId an die Funktion .move() übergeben:

$status:=$office365.mail.move($mailId; $folderId)

Um eine E-Mail von einem Ordner in einen anderen zu kopieren, müssen Sie Ihre mailId und folderId an die Funktion .copy() übergeben:

$status:=$office365.mail.copy($mailId; $folderId)

Auf eine E-Mail antworten

Um auf eine E-Mail zu antworten und eine Konversation zu erstellen, müssen Sie den Text, den Sie senden möchten, und die mailId der ursprünglichen E-Mail an die Funktion .reply() übergeben:

$reply:=New object
// Text that will be sent as reply
$reply.comment:="Thank you for your message"
$status:=$office.mail.reply($reply; $mails.mailId)

Anhängen einer E-Mail

Mit der Funktion .append() können Sie einen E-Mail-Entwurf erstellen und in einem Ordner Ihrer Wahl speichern:

// Send the email
$status:=$office365.mail.append($draft; $folder.id)

Eine E-Mail löschen

Um eine E-Mail zu löschen, müssen Sie deren ID an die Funktion .delete() übergeben:

$office365.mail.delete($mailId)

Schauen Sie sich diese Funktion mit dem obigen HDI an und lesen Sie die Dokumentation für weitere Details!

Weitere Befehle zur E-Mail-Verwaltung finden Sie in diesem Blogbeitrag.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené gehört seit November 2016 zum 4D Program Team. Als Product Owner ist er verantwortlich für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen. Seine Aufgabe ist es auch, sicherzustellen, dass die gelieferte Funktionsimplementierung den Kundenanforderungen entspricht.Nach seinem Bachelor-Abschluss in Informatik am CNAM arbeitete Fabrice als Windev-Entwickler bei einem kleinen Software-Verlag. Danach arbeitete er für verschiedene Unternehmen in Industrie und Handel als Windev- und Webentwickler sowie als technischer Berater für neue Funktionen.