Aktivitäten
Neuestes
False
Bannerhintergrundbild
Produktivitätsaktivitäten
Letzte Aktualisierung 26. Apr. 2024

E-Mail-APIs

APIs ermöglichen es Ihnen, auf die Dienste zuzugreifen und mit ihnen zu 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: Mit Zu Definition wechseln (F12) können Sie auf die Definition von UiPath-APIs für einen bestimmten Dienst zugreifen. Es wird empfohlen, sich beim Implementieren codierter Automatisierungen nur auf die direkt verfügbar gemachten APIs zu verlassen. Andere APIs, die nicht direkt mit einem Dienst verknüpft sind, können ohne vorherige Ankündigung geändert werden.

Ü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.

Durch die Verwendung der APIs mit ihren jeweiligen Überladungen können Sie ganz einfach die gewünschte Automatisierungslogik und das gewünschte Verhalten erreichen.

E-Mail-APIs

Die Mail-APIs ergänzen die Funktionen des Mail.Activities-Pakets und ermöglichen Ihnen den vollen Funktionsumfang des Codierens. Dieser Ansatz fordert benutzerdefinierte Aktionen und unterstützt die Wiederverwendbarkeit.

Zunächst erstellen Sie eine Schnittstelle, die sich mit dem Mail-Server verbindet, den Sie verwenden möchten, über das mail -Objekt. Mit dem mail -Objekt können Sie eine Verbindung mit IMAP, Pop3, Outlook und Smtp herstellen.

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

Sie können die folgenden Schnittstellen verwenden, um auf die spezifischen APIs zuzugreifen.
APIBeschreibung
ImapDie Schnittstelle, über die Sie auf die für IMAP spezifischen APIs zugreifen.
Pop3Die Schnittstelle, über die Sie auf die für POP3 spezifischen APIs zugreifen.
SmtpDie Schnittstelle, über die Sie auf die SMTP -spezifischen APIs zugreifen.
OutlookDie Schnittstelle, über die Sie auf die für Outlook spezifischen APIs zugreifen.

Verwenden von APIs

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

Verwenden von Mail-APIs

Um E-Mail-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 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 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 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;

        }
    }
}
  • Überladungen
  • E-Mail-APIs
  • Verwenden von APIs
  • Verwenden von Mail-APIs
  • Beispiel

War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
UiPath Logo weiß
Vertrauen und Sicherheit
© 2005-2024 UiPath. All rights reserved.