activities
latest
false
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática.
UiPath logo, featuring letters U and I in white
Actividades de productividad
Last updated 15 de nov. de 2024

API de correo

Las API te permiten acceder e interactuar con los servicios ofrecidos en el menú Gestionar paquetes. Puedes utilizar estas API al diseñar automatizaciones. Visita Automatizaciones codificadas para obtener más información sobre las automatizaciones codificadas y cómo diseñarlas utilizando API.
Nota: Al utilizar Ir a definición (F12), puedes acceder a la definición de las API de UiPath para un determinado servicio. Recomendamos confiar solo en las API expuestas directamente al implementar automatizaciones codificadas. Otras API que no estén expuestas directamente a un servicio serán sujeto de cambios sin notificación previa.

Sobrecargas

Las API tienen sobrecargas con frecuencia, lo que significa que proporcionan varias versiones del mismo método con diferentes opciones de parámetros. Las sobrecargas te permiten personalizar el comportamiento de la API en función de tus requisitos específicos. Por ejemplo, una API de automatización de IU puede tener una sobrecarga que acepte un parámetro de tiempo de espera para especificar el tiempo máximo de espera para que aparezca un elemento de IU antes de finalizar la ejecución.

Al utilizar las API con sus respectivas sobrecargas, puedes lograr fácilmente la lógica y el comportamiento de automatización deseados.

API de correo

Las API de correo complementan las capacidades del paquete Mail.Activities, lo que te permite tener una experiencia de codificación completa. Este enfoque fomenta las acciones personalizadas y admite la reutilización.

Primero, creas una interfaz que se conecta al servidor de correo que quieres utilizar, a través del objeto mail . El objeto mail te permite conectarte a Imap, Pop3, Outlook y Smtp.

Una vez conectado, las API específicas para el servidor de correo elegido estarán disponibles. Por ejemplo, si utilizas el servidor de Outlook, las API como MarkRead y MoveMail estarán disponibles.

Puedes utilizar las siguientes interfaces para acceder a las API específicas.
APIDescripción
ImapLa interfaz a través de la que accedes a las API específicas de IMAP.
Pop3La interfaz a través de la que accedes a las API específicas de POP3.
SmtpLa interfaz a través de la que accedes a las API específicas de SMTP.
OutlookLa interfaz a través de la que accedes a las API específicas de Outlook.

Uso de API

Utiliza el siguiente formato para llamar a una API desde el servicio correspondiente: service.API. Por ejemplo, system.GetAsset.

Uso de las API de correo

Para utilizar las API de correo, primero debes crear una interfaz que se conecte al servidor de correo que quieres utilizar (Imap, Pop3, Smtp, Outlook) y, a continuación, llamar a las API deseadas en esta interfaz, como interface.GetMessages().
  1. Descarga el paquete de actividades.
  2. Crear un flujo de trabajo codificado.
  3. Llama al servicio mail y crea una interfaz que se conecte a uno de los siguientes servidores: Imap, Pop3, Outlook, Smtp.
  4. Llame a las API deseadas en la conexión que creó anteriormente.

Ejemplo

En el siguiente ejemplo, puedes ver cómo puedes enviar un correo electrónico, configurar el correo electrónico, leer, iterar y mover correos electrónicos utilizando Outlook.

using ProductivityTests.ObjectRepository;
using System;
using System.Collections.Generic;
using System.Data;
using UiPath.CodedWorkflows;
using UiPath.Core;
using UiPath.Core.Activities.Storage;
using UiPath.Mail.Activities.Api;
using UiPath.Orchestrator.Client.Models;
using UiPath.Testing;
using UiPath.Testing.Activities.TestData;
using UiPath.Testing.Activities.TestDataQueues.Enums;
using UiPath.Testing.Enums;
using UiPath.UIAutomationNext.API.Contracts;
using UiPath.UIAutomationNext.API.Models;
using UiPath.UIAutomationNext.Enums;
using UiPath.Mail;
using System.Net.Mail;
using System.Diagnostics;

namespace ProductivityTests
{
    public class MailExample : CodedWorkflow
    {
        [Workflow]
        public void Execute()
        {         

            //Send Simple Outlook Mail
            mail.Outlook().SendMail("firstname.lastname@organization.com","Test Subject","Body Message");
         
            //Configure your MailMessage and Send it
           SendMailOptions mailmessage = new SendMailOptions()
                .WithTo(new List<string>{"firstname.lastname@organization.com"})
                .WithSubject("A message through Coded Workflows")
                .WithBody(
                    "Hey,"
                    + Environment.NewLine
                    + "This message is sent by a robot built with Coded Workflows."
                    + Environment.NewLine
                    + Environment.NewLine 
                    + "Discover a sample code illustrating how to send, read, and move emails within the attachments."
                    + Environment.NewLine 
                    + "The mail package now features Coded Workflows support, introduced in the 1.22.0-preview Version released on December 04, 2023.");
           
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\CodedScreenshot.png");
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\MailExample.cs");
            mail.Outlook().SendMail(mailmessage);
                   
            // Read Mail Messages, iterate and move them
            GetOutlookMailOptions getMailOptions = new GetOutlookMailOptions()
                .WithFolder("Inbox")
                .WithOnlyUnreadMessages(true)
                .WithOrder(EOrderByDate.NewestFirst)
                .WithTop(50);
                                    
            var mails  = mail.Outlook().GetMessages(getMailOptions);
                       
            var counter =0;
            foreach(MailMessage mailMessage in mails)
            {
                counter++;
                Console.WriteLine(counter.ToString());
                Console.WriteLine(mailMessage.Subject);
                if (mailMessage.Subject.Contains("Coded Workflows"))
                {
                    //Move an email                    
                    mail.Outlook().MoveMail(mailMessage,"Demo");
                    Console.WriteLine("I found an email which contains Test");                   
                    
                }
                
            }
            //You can also define an object like this
            getMailOptions.WithFolder("Inbox");
            getMailOptions.WithOnlyUnreadMessages(true);
            getMailOptions.MailFolder ="Inbox";
            getMailOptions.OnlyUnreadMessages=true;
            getMailOptions.OrderByDate = EOrderByDate.NewestFirst;
            getMailOptions.Top=50;

        }
    }
}using ProductivityTests.ObjectRepository;
using System;
using System.Collections.Generic;
using System.Data;
using UiPath.CodedWorkflows;
using UiPath.Core;
using UiPath.Core.Activities.Storage;
using UiPath.Mail.Activities.Api;
using UiPath.Orchestrator.Client.Models;
using UiPath.Testing;
using UiPath.Testing.Activities.TestData;
using UiPath.Testing.Activities.TestDataQueues.Enums;
using UiPath.Testing.Enums;
using UiPath.UIAutomationNext.API.Contracts;
using UiPath.UIAutomationNext.API.Models;
using UiPath.UIAutomationNext.Enums;
using UiPath.Mail;
using System.Net.Mail;
using System.Diagnostics;

namespace ProductivityTests
{
    public class MailExample : CodedWorkflow
    {
        [Workflow]
        public void Execute()
        {         

            //Send Simple Outlook Mail
            mail.Outlook().SendMail("firstname.lastname@organization.com","Test Subject","Body Message");
         
            //Configure your MailMessage and Send it
           SendMailOptions mailmessage = new SendMailOptions()
                .WithTo(new List<string>{"firstname.lastname@organization.com"})
                .WithSubject("A message through Coded Workflows")
                .WithBody(
                    "Hey,"
                    + Environment.NewLine
                    + "This message is sent by a robot built with Coded Workflows."
                    + Environment.NewLine
                    + Environment.NewLine 
                    + "Discover a sample code illustrating how to send, read, and move emails within the attachments."
                    + Environment.NewLine 
                    + "The mail package now features Coded Workflows support, introduced in the 1.22.0-preview Version released on December 04, 2023.");
           
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\CodedScreenshot.png");
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\MailExample.cs");
            mail.Outlook().SendMail(mailmessage);
                   
            // Read Mail Messages, iterate and move them
            GetOutlookMailOptions getMailOptions = new GetOutlookMailOptions()
                .WithFolder("Inbox")
                .WithOnlyUnreadMessages(true)
                .WithOrder(EOrderByDate.NewestFirst)
                .WithTop(50);
                                    
            var mails  = mail.Outlook().GetMessages(getMailOptions);
                       
            var counter =0;
            foreach(MailMessage mailMessage in mails)
            {
                counter++;
                Console.WriteLine(counter.ToString());
                Console.WriteLine(mailMessage.Subject);
                if (mailMessage.Subject.Contains("Coded Workflows"))
                {
                    //Move an email                    
                    mail.Outlook().MoveMail(mailMessage,"Demo");
                    Console.WriteLine("I found an email which contains Test");                   
                    
                }
                
            }
            //You can also define an object like this
            getMailOptions.WithFolder("Inbox");
            getMailOptions.WithOnlyUnreadMessages(true);
            getMailOptions.MailFolder ="Inbox";
            getMailOptions.OnlyUnreadMessages=true;
            getMailOptions.OrderByDate = EOrderByDate.NewestFirst;
            getMailOptions.Top=50;

        }
    }
}
  • Sobrecargas
  • API de correo
  • Uso de API
  • Uso de las API de correo
  • Ejemplo

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo White
Confianza y seguridad
© 2005-2024 UiPath. Todos los derechos reservados.