UiPath Documentation
activities
latest
false
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde. Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.

Produktivitätsaktivitäten

E-Mail-codierte Automatisierungs-APIs

Mit APIs können Sie auf die Dienste zugreifen und mit ihnen interagieren, die im Menü Pakete verwalten angeboten werden. Sie können diese APIs verwenden, wenn Sie codierte Automatisierungen entwerfen. Unter Codierte Automatisierungen erfahren Sie mehr über codierte Automatisierungen und wie Sie sie mithilfe von APIs entwerfen.

Hinweis:

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.

Überladungen

APIs enthalten oft Überladungen, was bedeutet, dass sie mehrere Versionen der gleichen Methode mit unterschiedlichen Parameteroptionen bereitstellen. Mit Überladungen können Sie das Verhalten der API basierend auf Ihren spezifischen Anforderungen anpassen. Beispielsweise kann eine UI-Automatisierungs-API eine Überladung enthalten, die einen Timeout-Parameter akzeptiert, um die maximale Zeit anzugeben, die gewartet werden soll, bis ein UI-Element angezeigt wird, bevor die Ausführung beendet wird.

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

E-Mail-codierte Automatisierungs-APIs

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.

Nach der Verbindung werden die spezifischen codierten Automatisierungs-APIs für den von Ihnen gewählten E-Mail-Server verfügbar. Wenn Sie beispielsweise den Outlook-Server verwenden, werden codierte Automatisierungs-APIs wie MarkRead und MoveMail verfügbar.

Sie können die folgenden Schnittstellen verwenden, um auf die spezifischen codierten Automatisierungs-APIs zuzugreifen.

API für codierte AutomatisierungBeschreibung
ImapDie Schnittstelle, über die Sie auf die codierten Automatisierungs-APIs zugreifen, die für IMAP spezifisch sind.
Pop3Die Schnittstelle, über die Sie auf die codierten Automatisierungs-APIs zugreifen, die für POP3 spezifisch sind.
SmtpDie Schnittstelle, über die Sie auf die codierten Automatisierungs-APIs zugreifen, die für SMTP spezifisch sind .
OutlookDie Oberfläche, über die Sie auf die codierten Automatisierungs-APIs zugreifen, die für Outlook spezifisch sind.

Verwenden von APIs

Verwenden Sie das folgende Format, um eine API vom entsprechenden Dienst aufzurufen: service.API. Beispiel: system.GetAsset.

Verwenden von E-Mail-codierten Automatisierungs-APIs

Um E-Mail-codierte Automatisierungs-APIs zu verwenden, erstellen Sie zuerst eine Schnittstelle, die eine Verbindung mit dem E-Mail-Server herstellt, den Sie verwenden möchten (Imap, Pop3, Smtp, Outlook), und rufen dann die gewünschten codierten Automatisierungs-APIs auf dieser Schnittstelle auf, z. B. interface.GetMessages().

  1. Laden Sie das Aktivitätspaket herunter.
  2. Erstellen Sie einen codierten Workflow.
  3. Rufen Sie den mail -Dienst auf und erstellen Sie eine Schnittstelle, die sich mit einem der folgenden Server verbindet: Imap, Pop3, Outlook, Smtp.
  4. Rufen Sie die gewünschten codierten Automatisierungs-APIs für die Verbindung auf, die Sie zuvor erstellt haben.

Beispiel

Im folgenden Beispiel sehen Sie, wie Sie eine E-Mail senden, die E-Mail konfigurieren sowie E-Mails mit Outlook lesen, iterieren und verschieben können.

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;

        }
    }
}

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben