Microsoft 365: Copiar, mover, responder y eliminar correos electrónicos con la API Microsoft Graph

Para acceder a los datos de Microsoft 365 como correos electrónicos, Microsoft está dejando de lado la autenticación básica para IMAP y POP3 y está promoviendo cada vez más la API gráfica.

A partir de la v19 R8, dispone de nuevos comandos integrados en 4D NetKit para automatizar de forma nativa las operaciones de correo electrónico de Microsoft 365, como copiar, mover, responder y eliminar correos electrónicos.

Gestión de correo electrónico HDI

Conexión A la cuenta

Antes de crear el email, crearemos el objeto de conexión OAuth2 y el objeto Office 365.

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"))

Mover o copiar correos electrónicos

Para mover un correo electrónico de una carpeta a otra, debe pasar su mailId y folderId a la función .move():

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

Del mismo modo, para copiar un correo electrónico de una carpeta a otra, debe pasar su mailId y folderId a la función .copy():

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

Responder un correo electrónico

Para responder a un correo electrónico y crear una conversación, debe pasar el texto que desea enviar y el mailId del correo original a la función .reply():

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

Añadir un correo electrónico

Puede crear un borrador de correo electrónico y guardarlo en la carpeta que desee con la función .append():

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

Borrar un correo electrónico

Para borrar un correo electrónico, debe pasar su id a la función .delete():

$office365.mail.delete($mailId)

Descubra esta función con el IDH anterior y la documentación para más detalles.

Para encontrar más comandos sobre la gestión del correo electrónico, lea esta entrada del blog.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se unió al equipo de 4D Program en noviembre de 2016. Como Product Owner, está a cargo de escribir las historias de usuario y luego traducirlas a especificaciones funcionales. Su papel es también asegurarse de que la implementación de la característica entregada cumple con las necesidades del cliente. Después de obtener una licenciatura en Ciencias de la Computación en el CNAM, Fabrice se unió a una pequeña empresa de publicación de software como desarrollador Windev. A continuación, trabajó para diferentes empresas del sector industrial y comercial como desarrollador de Windev y de la web, así como asesor técnico de nuevas funcionalidades.