Partilhar via


Como criar ações personalizadas no Power Automate para computadores

Aumente a produtividade, a capacidade de reutilização e a extensibilidade com ações personalizadas no Power Automate para computadores. Este artigo aborda como as ações personalizadas no Power Automate para computadores podem ajudar os criadores a criar suas próprias ações reutilizáveis ​​que podem ser usadas em vários fluxos. Os criadores criam ações personalizadas ao compor uma sequência de passos ou funções numa nova ação. As ações personalizadas são criadas ao utilizar SDK de ações do Power Automate para computadores, que fornece um conjunto de APIs que permitem aos criadores criar ações personalizadas através de linguagem C# de .NET. As ações personalizadas também podem ser partilhadas com outros utilizadores através da secção de ações personalizadas no Power Automate (make.powerautomate.com). Neste artigo, vai encontrar orientações detalhadas de como criar, compilar, implementar, usar e atualizar ações personalizadas.

Importante

Embora as caraterísticas essenciais utilizadas na criação de ações personalizadas sejam suportadas, as soluções, os recursos e os scripts de amostra fornecidos e mencionados aqui servem como um exemplo de implementação destas caraterísticas e não incluem suporte.

Descrição geral

A capacidade de ações personalizadas no Power Automate para computadores permite que crie as suas próprias ações reutilizáveis ​​que podem ser usadas em vários fluxos de ambiente de trabalho. As ações personalizadas poupam-lhe tempo e esforço, permitindo reutilizar ações complexas ou usadas com frequência sem precisar as recriar sempre que cria um novo fluxo. Os criadores podem aplicar as suas competências e conhecimentos existentes para criar ações personalizadas que se integram com outros sistemas e serviços. Além disso, os programadores profissionais podem encapsular as funções ou bibliotecas de código existentes para criar uma nova ação personalizada que resulte em capacidade de reutilização aumentada dos recursos organizacionais.

Criações personalizadas ao compor uma sequência de métodos ou funções numa nova ação. Depois de criar uma ação personalizada, use-a em qualquer fluxo de ambiente de trabalho arrastando-a e soltando-a na tela do estruturador do Power Automate para computadores.

As ações personalizadas podem ser partilhadas com outros utilizadores através da secção de ações personalizadas no Power Automate, que fornece um repositório central para partilhar e descobrir ações personalizadas. Isto significa que os utilizadores podem beneficiar das competências e do conhecimento de outras pessoas na organização e podem facilmente encontrar e usar ações personalizadas criadas por outros criadores.

No geral, as ações personalizadas no Power Automate para computadores fornecem uma forma poderosa de expandir a funcionalidade do produto, simplificar o processo de criação de fluxos e fomentar a colaboração e a inovação na organização.

Pré-requisitos

Crie a sua própria ação personalizada

  1. Abra o Visual Studio para criar um novo projeto utilizando o modelo da Biblioteca de Classes (.NET Framework). Captura de ecrã da caixa de diálogo Criar projeto C#.

  2. Configure o seu novo projeto com um nome de projeto, localização de ficheiro e defina o Framework como .NET Framework 4.7.2.

    Nota

    Certifique-se de segue as convenções de nomenclatura. Mais informações: Convenções de nomenclatura de módulos personalizados

    Captura de ecrã dos detalhes de Criar biblioteca de classes C#.

  3. No Visual Studio, selecione Ferramentas>Gestor de pacote NuGet>Consola do Gestor de Pacotes.

    Captura de ecrã do Gestor de Pacotes .NET.

  4. Abra uma janela do PowerShell e instale o pacote NuGet PowerAutomate.Desktop.Actions.SDK através deste comando do PowerShell.

    Find-Package Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK
    NuGet\Install-Package Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK
    
  5. Siga os passos em Criar ações personalizadas para criar o ficheiro de Classe para a sua ação personalizada.

Informações que pode usar como referência para a sua ação

Ficheiro da solução de referência: Solução do Módulo .NET

Ação: escreva uma mensagem para um ficheiro local.

Parâmetros de entrada: nome do ficheiro, mensagem a escrever no ficheiro.

Parâmetros de saída: código de estado — true se for bem-sucedido e false se não for bem-sucedido.

Definição de Classe:

using System;
using System.IO;
using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK;
using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK.Attributes;

namespace ModulesLogEvent
{
    [Action(Id = "LogEventToFile" , Order = 1, Category = "Logging")]
    [Throws("LogEventError")]
    public class LogEventToFile : ActionBase
    { 
        [InputArgument]
        public string LogFileName { get; set; }

        [InputArgument]
        public string LogMessage { get; set; }

        [OutputArgument]
        public bool StatusCode { get; set; }
    
        public override void Execute(ActionContext context)
        {
            try
            {           
                    // To append all of the text to the file
                    File.AppendAllText(LogFileName, LogMessage);
                    StatusCode = true;  
            }
            catch (Exception e)
            {
                if (e is ActionException) throw;

                throw new ActionException("LogEventError", e.Message, e.InnerException);
            }
        }
    }
}

Recursos

Esta tabela lista as descrições e os nomes amigáveis para parâmetros num ficheiro Resources.resx.

Nome Valor Comentário
LogEventToFile_Description Ação personalizada para registar mensagens no ficheiro fornecido Descrição da ação
LogEventToFile_FriendlyName LogEventToFile Nome da ação
LogEventToFile_LogFileName_Description Parâmetro de entrada de tipo de texto Descrição de entrada de ação
LogEventToFile_LogFileName_FriendlyName LogFileName Nome da entrada da ação
LogEventToFile_LogMessage_Description Parâmetro de entrada de tipo de texto Descrição de entrada de ação
LogEventToFile_LogMessage_FriendlyName LogMessage Nome da entrada da ação
LogEventToFile_StatusCode_Description Parâmetro de saída de tipo booleano Descrição da saída da ação
LogEventToFile_StatusCode_FriendlyName LogMessage Nome de saída da Ação
ModulesLogEvent_Description Módulo para gerir eventos de registo Descrição do módulo
ModulesLogEvent_FriendlyName LogEvent Nome do módulo

Criar o pacote e implementar a sua ação personalizada

Crie o pacote e implemente no Power Automate.

  1. Adquira o certificado digital para que o ficheiro DLL de ação personalizada possa ser assinado.

    Importante

    Os certificados autoassinados são apenas para fins de teste e não são recomendados para uso em produção. Para implementação organizacional de ações personalizadas no seu ambiente, recomendamos que use um certificado digital fidedigno que siga as suas diretrizes organizacionais.

    Sugestão

    Para simplificar o processo de programação e utilização de ações personalizadas para o Power Automate para computadores em toda a sua organização, pode agrupar um certificado digital fidedigno com o instalador do Power Automate para computadores que é distribuído através de SCCM/Appstore. > Isto permitirá que o certificado seja instalado automaticamente tanto nos computadores dos criadores e runtime automático que requeiram o Power Automate para computadores, sem qualquer necessidade de ações adicionais.

    Neste exemplo, é usado um certificado autoassinado.

    1. Crie um certificado autoassinado com este script.

      $certPFXFileName="C:\PADCustomAction\PADCustomActionCert.pfx";
      $certCERFileName="C:\PADCustomAction\PADCustomActionCert.cer";
      $certStoreLocation="Cert:\LocalMachine\AuthRoot";
      $certname = "PADCustomActionSelfSignCert"
      ##Create certificate
      $cert = New-SelfSignedCertificate -CertStoreLocation Cert:\CurrentUser\My -Type CodeSigningCert  -Subject "CN=$certname" -KeyExportPolicy Exportable -KeySpec Signature -KeyLength 2048 -KeyAlgorithm RSA -HashAlgorithm SHA256
      $mypwd = ConvertTo-SecureString -String <YOUR CERT PASSWORD GOES HERE> -Force -AsPlainText
      ##Export certificate
      $certPFXFile = Export-PfxCertificate -Cert $cert -FilePath $certPFXFileName -Password $mypwd
      $certCERFile = Export-Certificate -Cert $cert -FilePath $certCERFileName -Type CERT -Verbose -Force
      
    2. Importe o certificado para o arquivo de certificados com este comando.

      ##Import certificate
      Import-Certificate -CertStoreLocation $certStoreLocation -FilePath $certCERFile
      
    3. Valide se o certificado importado aparece em Autoridades de Certificação de Raiz Fidedigna>Certificados no snap-in da Consola do Microsoft Manager de Certificados (MMC).

  2. Finalize o módulo personalizado criado ao assinar o ficheiro DLL com um certificado fidedigno. Use a linha de comandos do programador do Visual Studio para usar a SignTool para esta atividade.

    Signtool sign /f "C:/PADActions/PADCustomActionCert.pfx" /p <YOURCERTPASSWORD> /fd SHA256 "C:/PADActions/PADCustomActionEventLog/Modules.LogEvent.dll"
    
  3. Para implementar a ação personalizada, crie o conteúdo do pacote num ficheiro CAB (.cab) através deste script do PowerShell.

    .\BuildCAB.ps1 "C:/PADActions/PADCustomActionEventLog" "C:/PADActions/PADCustomActionEventLog" PADCustomActionEventLog.cab
    

    Aceda ao ficheiro de script BuildCAB.ps1 de amostra

  4. Assine o ficheiro CAB gerado com a SignTool.

    Signtool sign /f "C:/PADActions/PADCustomActionCert.pfx" /p <YOURCERTPASSWORD> /fd SHA256 "C:/PADActions/PADCustomActionEventLog/PADCustomActionEventLog.cab"
    
  5. Aceda à secção de ação personalizada do Power Automate para carregar a ação personalizada que criou. Forneça o nome, a descrição e o ficheiro CAB e, em seguida, selecione Carregar.

    Captura de ecrã da importação do pacote de ações personalizado (ficheiro CAB) no portal do Power Automate

    Recebe uma notificação quando a ação for carregada com sucesso.

Seguindo estes passos, o módulo de ação personalizado é empacotado num ficheiro CAB e assinado com um certificado fidedigno. Além disso, o ficheiro CAB de ações personalizadas é carregado para a biblioteca de ações personalizadas no Power Automate.

Mais informações: Carregar ações personalizadas

Use a sua atividade de ação personalizada no fluxo de ambiente de trabalho com o Power Automate para computadores

  1. Crie um novo fluxo de ambiente de trabalho e, em seguida, selecione a Biblioteca de Recursos no estruturador.

    Captura de ecrã de Navegar para a Biblioteca de Recursos no Power Automate para computadores

  2. Inspecione a ação personalizada disponível na biblioteca de recursos. Repare na ação criada anteriormente e carregada para a secção de ações personalizadas do Power Automate.

    Selecione Adicionar para adicionar esta ação personalizada à secção Ações do estruturador.

    Captura de ecrã de Adicionar ação personalizada da Biblioteca de Recursos

  3. Valide se a ação personalizada foi adicionada com sucesso. Pesquise por ela na barra de pesquisa Ações no estruturador do Power Automate para computadores.

    Captura de ecrã de Pesquisar ação personalizada no Power Automate para computadores

  4. Arraste a ação personalizada ou clique duas vezes nela para a adicionar ao fluxo de ambiente de trabalho.

  5. Forneça os parâmetros de entrada e passos adicionais para testar a ação personalizada.

    Captura de ecrã dos parâmetros de entrada para a ação personalizada

    Fluxo de ambiente de trabalho de amostra a usar a ação personalizada.

    Captura de ecrã de Usar ação personalizada no Fluxo de ambiente de trabalho

  6. Teste o fluxo para ver a ação personalizada a funcionar em tempo real.

    Testar a ação personalizada no Fluxo de ambiente de trabalho

Nota

Importe o certificado usado para assinar o ficheiro CAB para o computador usado para criar fluxos de ambiente de trabalho com ações personalizadas e para cada um dos computadores de runtime que executarão os fluxos de ambiente trabalho.

Ao seguir estes passos, foi criada uma ação personalizada, o módulo empacotado num ficheiro CAB, assinado com um certificado fidedigno, carregado na biblioteca de ações personalizadas no Power Automate, um fluxo de ambiente de trabalho para usar a ação personalizada criada e testada para uma execução bem-sucedida.

Atualizar e voltar a implementar a ação personalizada

Atualize a funcionalidade da ação personalizada para refletir a capacidade atualizada seguindo estes passos.

  1. Atualize o ficheiro de classes na solução Visual Studio com a nova funcionalidade de ação. Mais informações: Solução do Módulo .NET atualizada

    Modificada a assinatura do ficheiro de classes para receber um terceiro parâmetro de entrada, como mostrado.

    using System;
    using System.IO;
    using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK;
    using Microsoft.PowerPlatform.PowerAutomate.Desktop.Actions.SDK.Attributes;
    
    namespace ModulesLogEvent
    {
     [Action(Id = "LogEventToFile" , Order = 1, Category = "Logging")]
     [Throws("LogEventError")]
     public class LogEventToFile : ActionBase
     { 
         [InputArgument]
         public string LogFileName { get; set; }
    
         [InputArgument]
         public string LogMessage { get; set; }
    
         [InputArgument]
         public string LogLevel { get; set; }
    
         [OutputArgument]
         public bool StatusCode { get; set; }
    
         public override void Execute(ActionContext context)
         {
             try
             {
                     // To append all of the text to the file
                     File.AppendAllText(LogFileName, LogLevel + ": " + LogMessage);
                     StatusCode = true;
             }
             catch (Exception e)
             {
                 if (e is ActionException) throw;
    
                 throw new ActionException("LogEventError", e.Message, e.InnerException);
             }
         }
      }
    }
    
  2. Use passos semelhantes descritos anteriormente, onde assina o ficheiro DLL, cria o ficheiro CAB, assina o ficheiro CAB e carrega o ficheiro CAB para a secção de ações personalizadas no Power Automate. Mais informações: Criar o pacote e implementar a sua ação personalizada

    Nota

    Antes de carregar o ficheiro CAB de ação personalizada atualizado, certifique-se de que analisa o impacto desta alteração, pois os fluxos de ambiente de trabalho com esta ação serão atualizados com novas capacidades.

    Captura de ecrã da atualização da ação personalizada no Portal do Power Automate

  3. Atualize o fluxo de ambiente de trabalho conforme necessário.

    Para validar a capacidade de atualização, adicionámos um terceiro parâmetro de entrada à ação personalizada. Note que a atividade de ação personalizada está marcada como Erro no estruturador e precisa de ser atualizada com o novo parâmetro de entrada.

    Captura de ecrã de refatorizar o fluxo de ambiente de trabalho

    Captura de ecrã da ação personalizada atualizada com parâmetros de entrada adicionais

  4. Teste o fluxo para ver a ação personalizada atualizada a funcionar em tempo real.

    Teste novamente a ação personalizada atualizada no Fluxo de ambiente de trabalho

Nesta secção, atualizou a funcionalidade subjacente da ação personalizada, criou o pacote, implementou no Power Automate, refatorizou o fluxo de ambiente de trabalho e validou a funcionalidade ao executar o fluxo de ambiente de trabalho com capacidades atualizadas da ação personalizada no Power Automate para computadores.