UiPath Documentation
activities
latest
false
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Activités de productivité

API d'automatisation codée par courrier

Les API vous permettent d'accéder aux services proposés dans le menu Gérer les packages et d'interagir avec ceux-ci. Vous pouvez utiliser ces API lorsque vous créez des automatisations codées. Rendez-vous sur la page Automatisations codées pour en savoir plus sur les automatisations codées et sur leur conception via API.

Remarque :

Using Go to Definition (F12) lets you access the definition of UiPath APIs for a certain service. We recommend relying only on the directly exposed APIs when you implement coded automations. Other APIs that are not directly exposed with a service are subject to change without prior notification.

Surcharges

Les API ont souvent des surcharges, ce qui signifie qu'elles fournissent plusieurs versions de la même méthode avec différentes options de paramètres. Les surcharges vous permettent de personnaliser le comportement de l'API en fonction de vos besoins. Par exemple, une API UI Automation peut avoir une surcharge qui accepte un paramètre de délai d'attente pour préciser le temps d'attente maximal d'un élément d'IU avant de terminer l'exécution.

By using the APIs with their respective overloads, you can achieve your desired automation logic and behavior.

API d'automatisation codée par courrier

The Mail coded automation APIs complement the capabilities of the Mail.Activities package, letting you have a full coding experience. This approach encourages custom actions, and supports reusability.

First, you create an interface that connects to the mail server that you want to use, through the mail object. The mail object lets you connect to Imap, Pop3, Outlook, and Smtp.

Une fois connecté, les API d'automatisation codée spécifiques au serveur de messagerie que vous avez choisi deviennent disponibles. Par exemple, si vous utilisez le serveur Outlook, des API d'automatisation codée telles que MarkRead et MoveMail deviennent disponibles.

Vous pouvez utiliser les interfaces suivantes pour accéder aux API d'automatisation codées spécifiques.

API d'automatisation codéeDescription
ImapInterface via laquelle vous accédez aux API d'automatisation codée spécifiques à IMAP.
Pop3Interface via laquelle vous accédez aux API d'automatisation codée spécifiques à POP3.
SmtpInterface via laquelle vous accédez aux API d'automatisation codée spécifiques à SMTP.
OutlookInterface via laquelle vous accédez aux API d'automatisation codée spécifiques à Outlook.

Utilisation des API

Utilisez le format suivant pour appeler une API à partir du service correspondant : service.API. Par exemple, system.GetAsset.

Utilisation d'API d'automatisation codées Mail

Pour utiliser les API d'automatisation codée par courrier, vous devez d'abord créer une interface qui se connecte au serveur de messagerie que vous souhaitez utiliser (Imap, Pop3, Smtp, Outlook), puis appeler les API d'automatisation codées souhaitées sur cette interface, par exemple interface.GetMessages().

  1. Téléchargez le package d’activités.
  2. Créez un workflow codé.
  3. Appelez le service mail et créez une interface qui se connecte à l'un des serveurs suivants : Imap, Pop3, Outlook, Smtp.
  4. Appelez les API d'automatisation codées souhaitées sur la connexion que vous avez précédemment créée.

Exemple

Dans l'exemple suivant, vous pouvez voir comment envoyer un e-mail, configurer l'e-mail, lire, itérer et déplacer des e-mails à l'aide d'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 <ListString>{"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 <ListString>{"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;

        }
    }
}

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour