Tutorial: Criar fluxos de trabalho de automatização com base na agenda com o Azure Logic Apps
Aplica-se a: Azure Logic Apps (Consumo)
Este tutorial mostra como criar um fluxo de trabalho de aplicação lógica de exemplo que é executado com base numa agenda periódica. Especificamente, este fluxo de trabalho de exemplo verifica o tempo de deslocação, incluindo o tráfego, entre dois locais e é executado todos os dias da semana. Se o tempo exceder um limite específico, o fluxo de trabalho envia-lhe um e-mail que inclui o tempo de viagem e o tempo extra necessário para chegar ao seu destino. O fluxo de trabalho inclui vários passos, que começam com um acionador baseado na agenda seguido de uma ação de Mapas Bing, uma ação de operações de dados, uma ação de fluxo de controlo e uma ação de notificação por e-mail.
Neste tutorial, ficará a saber como:
- Crie uma aplicação lógica em branco e um fluxo de trabalho.
- Adicione um acionador Periodicidade que especifica a agenda para executar o fluxo de trabalho.
- Adicione uma ação Mapas Bing que obtém o tempo de viagem de uma rota.
- Adicione uma ação que cria uma variável, converte o tempo de deslocação de segundos em minutos e armazena que resulta na variável.
- Adicionar uma condição que compara o tempo de deslocação face a um limite especificado.
- Adicione uma ação que envia um e-mail se o tempo de deslocação exceder o limite.
Quando terminar, o fluxo de trabalho tem um aspeto semelhante ao seguinte exemplo de alto nível:
Pré-requisitos
Uma conta e subscrição do Azure. Se não tiver uma subscrição, inscreva-se numa conta do Azure gratuita.
Uma conta de e-mail de um fornecedor de e-mail que é suportada pelo Azure Logic Apps, como Office 365 Outlook, Outlook.com ou Gmail. Para outros fornecedores, consulte a lista de conectores aqui. Este início rápido utiliza Office 365 Outlook com uma conta escolar ou profissional. Se utilizar uma conta de e-mail diferente, os passos gerais permanecem os mesmos, mas a IU poderá ser ligeiramente diferente.
Importante
Se quiser utilizar o conector do Gmail, apenas as contas empresariais do G-Suite podem utilizar este conector sem restrições nos fluxos de trabalho da aplicação lógica. Se tiver uma conta de consumidor do Gmail, pode utilizar este conector apenas com serviços aprovados pela Google específicos ou pode criar uma aplicação cliente Google para utilizar para autenticação com o seu conector do Gmail. Para obter mais informações, veja Políticas de privacidade e segurança de dados para conectores do Google no Azure Logic Apps.
Para obter o tempo de deslocação para um percurso, precisa de uma chave de acesso para a API do Mapas Bing. Para obter esta chave, siga os passos em How to get a Bing Maps key (Como obter uma chave do Mapas Bing).
Se o fluxo de trabalho precisar de comunicar através de uma firewall que limita o tráfego a endereços IP específicos, essa firewall tem de permitir o acesso aos endereços IP de entrada e saída utilizados pelo Azure Logic Apps na região do Azure onde existe o recurso da aplicação lógica. Se o seu fluxo de trabalho também utilizar conectores geridos, como o conector do Outlook Office 365 ou o conector SQL, ou utilizar conectores personalizados, a firewall também precisa de permitir o acesso a todos osendereços IP de saída do conector gerido na região do Azure do recurso da aplicação lógica.
Criar um fluxo de trabalho de aplicação lógica de Consumo
Na portal do Azure, inicie sessão com a sua conta do Azure.
Na home page do Azure, selecione Criar um recurso.
No menu Azure Marketplace, selecioneAplicação Lógica de Integração>.
No painel Criar Aplicação Lógica , no separador Noções Básicas , forneça as seguintes informações sobre o recurso da aplicação lógica.
Propriedade Necessário Valor Descrição Subscrição Sim <Azure-subscription-name> O nome da sua subscrição do Azure. Este exemplo utiliza Pay As You Go. Grupo de Recursos Sim LA-TravelTime-RG O grupo de recursos do Azure onde cria o recurso da aplicação lógica e os recursos relacionados. Este nome tem de ser exclusivo entre regiões e pode conter apenas letras, números, hífenes ( -
), carateres de sublinhado (_
), parênteses ((
,)
) e pontos (.
).Nome Sim LA-TravelTime O nome do recurso da aplicação lógica, que tem de ser exclusivo entre regiões e pode conter apenas letras, números, hífenes ( -
), carateres de sublinhado (_
), parênteses ((
,)
) e pontos (.
).Antes de continuar a efetuar seleções, aceda à secção Plano . Em Tipo de plano, selecione Consumo para mostrar apenas as definições de um fluxo de trabalho da aplicação lógica consumo, que é executado no Azure Logic Apps multi-inquilino.
A propriedade Tipo de plano também especifica o modelo de faturação a utilizar.
Tipo de plano Description Standard Este tipo de aplicação lógica é a seleção predefinida e é executado no Azure Logic Apps de inquilino único e utiliza o modelo de faturação Standard. Consumo Este tipo de aplicação lógica é executado no Azure Logic Apps multi-inquilino global e utiliza o modelo de faturação Consumo. Agora, continue com as seguintes seleções:
Propriedade Necessário Valor Descrição Região Yes E.U.A. Oeste A região do datacenter do Azure para armazenar as informações da sua aplicação. Este exemplo implementa a aplicação lógica de exemplo na região E.U.A. Oeste no Azure.
Nota: se a sua subscrição estiver associada a um ambiente de serviço de integração, esta lista inclui esses ambientes.Ativar o Log Analytics Sim Não Esta opção é apresentada e aplica-se apenas quando seleciona o tipo de aplicação Lógica de consumo . Altere esta opção apenas quando pretender ativar o registo de diagnósticos. Neste tutorial, mantenha a seleção predefinida. Quando terminar, selecione Rever + criar. Depois de o Azure validar as informações sobre o recurso da aplicação lógica, selecione Criar.
Depois de o Azure implementar a sua aplicação, selecione Ir para recurso.
O Azure abre o painel de seleção do modelo de fluxo de trabalho, que mostra um vídeo de introdução, acionadores frequentemente utilizados e padrões de modelo de fluxo de trabalho.
Desloque-se para baixo nas secções de vídeo e acionadores comuns até à secção Modelos e selecione Aplicação Lógica em Branco.
Em seguida, adicione o acionador Periodicidade, que executa o fluxo de trabalho com base numa agenda especificada. Cada fluxo de trabalho tem de começar com um acionador, que é acionado quando ocorre um evento específico ou quando novos dados cumprem uma condição específica. Para obter mais informações, veja Criar um fluxo de trabalho de aplicação lógica de consumo de exemplo no Azure Logic Apps multi-inquilino.
Adicionar o acionador Periodicidade
No estruturador de fluxo de trabalho, na caixa de pesquisa, selecione Incorporado.
Na caixa de pesquisa, introduza periodicidade e selecione o acionador denominado Periodicidade.
Na forma Periodicidade , selecione o botão de reticências (...) e, em seguida, selecione Mudar o Nome. Mude o nome do acionador com a descrição
Check travel time every weekday morning
Dentro do acionador, altere estas propriedades conforme descrito e mostrado aqui.
Propriedade Necessário Valor Descrição Intervalo Yes 1 O número de intervalos de espera entre verificações Frequência Yes Semana A unidade de tempo a utilizar para a periodicidade Em Intervalo e Frequência, abra a lista Adicionar novo parâmetro e selecione estas propriedades para adicionar ao acionador.
- On these days (Nestes dias)
- At these hours (A estas horas)
- At these minutes (A estes minutos)
Agora, defina os valores para as propriedades adicionais, conforme mostrado e descrito aqui.
Propriedade Valor Descrição On these days (Nestes dias) Segunda- feira, terça-feira, quarta-feira, quinta-feira, sexta-feira Esta definição só está disponível quando define a Frequência como Semana. At these hours (A estas horas) 7, 8, 9 Esta definição só está disponível quando define a Frequência como Semana ou Dia. Para esta periodicidade, selecione as horas do dia. Este exemplo é executado nas 7
marcas ,8
e9
-hour.At these minutes (A estes minutos) 0, 15, 30, 45 Esta definição só está disponível quando define a Frequência como Semana ou Dia. Para esta periodicidade, selecione os minutos do dia. Este exemplo começa na marca de zero horas e é executado a cada 15 minutos. Este acionador é acionado todos os dias úteis, a cada 15 minutos a partir das 7:00 até às 9:45. A caixa Pré-visualização mostra a agenda da periodicidade. Para obter mais informações, veja Schedule tasks and workflows (Agendar tarefas e fluxos de trabalho) e Workflow actions and triggers (Ações e acionadores de fluxos de trabalho).
Para ocultar os detalhes do acionador por agora, feche a forma clicando dentro da barra de título da forma.
Guarde o fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.
O fluxo de trabalho da aplicação lógica está agora ativo no portal do Azure mas não faz nada além do acionador com base na agenda especificada. Por isso, adicione uma ação que responde quando o acionador é acionado.
Obter o tempo de deslocação para um percurso
Agora que tem um acionador, adicione uma ação que obtém o tempo de deslocação entre dois sítios. O Azure Logic Apps fornece um conector para a API Mapas Bing para que possa obter facilmente estas informações. Antes de começar esta tarefa, confirme que tem uma chave de API do Mapas Bing, conforme descrito nos pré-requisitos do tutorial.
No estruturador de fluxo de trabalho, no acionador Periodicidade, selecione Novo passo.
Em Escolher uma operação, selecione Standard. Na caixa de pesquisa, introduza mapas bing e selecione a ação denominada Obter rota.
Se não tiver uma ligação ao Mapas Bing, é-lhe pedido que a crie. Indique os detalhes da ligação conforme mostrado e descrito e, em seguida, selecione Criar.
Propriedade Necessário Valor Descrição Nome da Ligação Sim BingMapsConnection Indique um nome para a ligação. Este exemplo utiliza BingMapsConnection
.Chave de API Sim <Bing-Maps-API-key> Introduza a chave de API Mapas Bing que recebeu anteriormente. Se não tiver uma chave do Mapas Bing, saiba como obtê-la. Mude o nome da ação com esta descrição:
Get route and travel time with traffic
.Na ação, abra a lista Adicionar novo parâmetro e selecione estas propriedades.
- Otimizar
- Distance unit
- Travel mode
Agora, introduza os valores das propriedades apresentadas e descritas aqui.
Propriedade Necessário Valor Descrição Waypoint 1 Yes <start-location> A origem da rota. Este exemplo especifica um endereço inicial de exemplo. Waypoint 2 Sim <localização final> O destino da rota. Este exemplo especifica um endereço de destino de exemplo. Otimizar Não timeWithTraffic Um parâmetro para otimizar o percurso, por exemplo, a distância, o tempo de deslocação com o tráfego atual e assim sucessivamente. Selecione o valor do parâmetro timeWithTraffic. Distance unit No <a sua preferência> A unidade de distância do percurso. Este exemplo utiliza Mile como unidade. Travel mode No Driving O modo de deslocação para o percurso. Selecione Modo de condução . Para obter mais informações sobre estes parâmetros e valores, veja Calculate a route (Calcular uma rota).
Na barra de ferramentas do estruturador, selecione Guardar.
Em seguida, crie uma variável para que possa converter e armazenar o tempo de deslocação atual como minutos em vez de segundos. Desta forma, evita repetir a conversão e pode utilizar o valor mais facilmente em passos posteriores.
Criar uma variável para armazenar o tempo de viagem
Por vezes, poderá querer executar operações em dados no fluxo de trabalho e, em seguida, utilizar os resultados em ações posteriores. Para guardar estes resultados para que possa facilmente reutilizá-los ou referenciá-los, pode criar variáveis que armazenem esses resultados após o processamento. Só pode criar variáveis no nível superior do fluxo de trabalho.
Por predefinição, a ação Obter rota devolve o tempo de deslocação atual com tráfego em segundos a partir da propriedade Tráfego de Duração de Viagem . Ao converter e armazenar este valor em minutos, será mais fácil utilizá-lo mais tarde sem que tenha de reconvertê-lo.
No estruturador, na ação Obter rota , selecione Novo passo.
Em Escolher uma operação, selecione Incorporada. Na caixa de pesquisa, introduza variáveis e selecione a ação com o nome Initialize variable (Inicializar variável).
Mude o nome desta ação com a descrição
Create variable to store travel time
Forneça estas informações para a sua variável, conforme mostrado nesta tabela e nos passos abaixo da tabela:
Propriedade Necessário Valor Descrição Nome Sim travelTime O nome da variável. Este exemplo utiliza travelTime
.Tipo Yes Número inteiro O tipo de dados da variável Valor No Uma expressão que converte o tempo de deslocação atual de segundos para minutos (veja os passos abaixo desta tabela). O valor iniciar da variável Para criar a expressão para a propriedade Valor , clique no interior da caixa para que a lista de conteúdo dinâmico seja apresentada. Se necessário, alargue o browser até que seja apresentada a lista dinâmica. Na lista de conteúdos dinâmicos, selecione Expressão, que mostra o editor de expressões.
A lista de conteúdos dinâmicos mostra as saídas de ações anteriores que estão disponíveis para selecionar como entradas para ações subsequentes no fluxo de trabalho. A lista de conteúdos dinâmicos inclui um editor de expressões que pode utilizar para selecionar funções que executam operações na sua expressão. Este editor de expressões só está disponível na lista de conteúdos dinâmicos.
No editor de expressões, introduza a expressão
div(,60)
Na expressão, coloque o cursor entre os parênteses esquerdos (() e a vírgula (,) e selecione Conteúdo dinâmico.
Na lista de conteúdos dinâmicos, em selecione o valor da propriedade, Tráfego de Duração de Viagem.
Depois de o valor da propriedade ser resolvido dentro da expressão, selecione OK.
A propriedade Valor é agora apresentada conforme mostrado aqui:
Guarde o fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.
Em seguida, adicione uma condição que verifica se o tempo de deslocação atual é superior a um limite específico.
Comparar o tempo de viagem com o limite
Na ação Criar variável para armazenar o tempo de deslocação , selecione Novo passo.
Em Escolher uma operação, selecione Incorporada. Na caixa de pesquisa, introduza condição. e, na lista de ações, selecione a ação denominada Condição.
Mude o nome da condição com a descrição
If travel time exceeds limit
Crie uma condição que verifique se o valor da propriedade travelTime excede o limite especificado, conforme descrito e mostrado aqui:
Na condição, no lado esquerdo da condição, clique dentro da caixa Escolher um valor .
Na lista de conteúdos dinâmicos que é apresentada, em Variáveis, selecione a propriedade com o nome travelTime.
Na caixa de comparação do meio, selecione o operador com o nome é maior que.
No lado direito da condição, na caixa Escolher um valor , introduza este limite:
15
Quando terminar, a condição terá o seguinte aspeto:
Guarde o fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.
Em seguida, adicione a ação a executar quando o tempo de deslocação exceder o limite.
Enviar um e-mail quando o limite for excedido
Agora, adicione uma ação que lhe envia um e-mail quando o tempo de viagem exceder o seu limite. Este e-mail inclui o tempo de deslocação atual e o tempo extra necessário para percorrer o percurso especificado.
No ramo Verdadeiro da condição, selecione Adicionar uma ação.
Em Escolher uma operação, selecione Standard. Na caixa de pesquisa, introduza enviar e-mail. A lista devolve muitos resultados, por isso, para o ajudar a filtrar a lista, selecione primeiro o conector de e-mail pretendido.
Por exemplo, se tiver uma conta de e-mail do Outlook, selecione o conector do seu tipo de conta:
- Para contas escolares ou profissionais do Azure, selecione Office 365 Outlook (Outlook do Office 365).
- Par contas Microsoft pessoais, selecione Outlook.com.
Este exemplo continua ao selecionar Office 365 Outlook.
Quando as ações do conector aparecerem, selecione a ação que envia e-mail, por exemplo:
Se ainda não tiver uma ligação, inicie sessão e autentique o acesso à sua conta de e-mail quando lhe for pedido.
O Azure Logic Apps cria uma ligação à sua conta de e-mail.
Mude o nome da ação com a descrição
Send email with travel time
Para a propriedade Para , introduza o endereço de e-mail do destinatário. Para fins de teste, pode utilizar o seu endereço de e-mail.
Para a propriedade Assunto , especifique o assunto do e-mail e inclua a variável travelTime ao seguir estes passos:
Introduza o texto
Current travel time (minutes):
com um espaço à direita. Mantenha o cursor na caixa Assunto para que a lista de conteúdos dinâmicos permaneça aberta.Na lista de conteúdos dinâmicos, no cabeçalho Variables (Variáveis ), selecione See more (Ver mais ) para que a variável com o nome travelTime seja apresentada.
Nota
A lista de conteúdos dinâmicos não mostra automaticamente a variável travelTime porque a propriedade Assunto espera um valor de cadeia, enquanto travelTime é um valor inteiro.
Para a propriedade Corpo , especifique o conteúdo do corpo do e-mail ao seguir estes passos:
Introduza o texto
Add extra travel time (minutes):
com um espaço à direita. Mantenha o cursor na caixa Corpo para que a lista de conteúdos dinâmicos permaneça aberta.Na lista de conteúdos dinâmicos, selecione Expressão, que mostra o editor de expressões.
No editor de expressões, introduza sub(,15) para que possa calcular o número de minutos que excedem o limite:
Na expressão, coloque o cursor entre os parênteses esquerdos (() e a vírgula (,) e selecione Conteúdo dinâmico.
Em Variáveis, selecione travelTime.
Depois de a propriedade ser resolvida dentro da expressão, selecione OK.
A propriedade Corpo aparece agora conforme mostrado aqui:
Guarde o fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.
Em seguida, teste e execute o fluxo de trabalho, que agora tem um aspeto semelhante a este exemplo:
Executar o fluxo de trabalho
Para iniciar manualmente o fluxo de trabalho, na barra de ferramentas do estruturador, selecione Executar Execução do Acionador>.
Se o tempo de deslocação atual se mantiver abaixo do seu limite, o fluxo de trabalho não faz mais nada e aguarda ou o intervalo seguinte antes de verificar novamente.
Se o tempo de viagem atual exceder o seu limite, receberá um e-mail com o tempo de viagem atual e o número de minutos acima do limite. Eis um e-mail de exemplo que o fluxo de trabalho envia:
Dica
Se não receber nenhuma mensagem de e-mail, verifique a pasta de lixo do e-mail. O filtro de lixo de e-mail poderá redirecionar estes tipos de mensagem de e-mail. Caso contrário, se não tiver a certeza de que o fluxo de trabalho foi executado corretamente, veja Resolver problemas do fluxo de trabalho.
Parabéns, criou e executou um fluxo de trabalho periódico baseado na agenda.
Para criar outros fluxos de trabalho que utilizam o acionador Periodicidade , veja estes modelos, que estão disponíveis depois de criar um novo recurso de aplicação lógica:
- Receber lembretes diários.
- Eliminar blobs do Azure mais antigos.
- Adicionar uma mensagem a uma fila do Armazenamento do Azure.
Limpar os recursos
O fluxo de trabalho continua em execução até desativar ou eliminar o recurso da aplicação lógica. Quando já não precisar do fluxo de trabalho de exemplo, elimine o grupo de recursos que contém o recurso da aplicação lógica e os recursos relacionados.
Na caixa de pesquisa do portal do Azure, introduza o nome do grupo de recursos que criou. Nos resultados, em Grupos de Recursos, selecione o grupo de recursos.
Este exemplo criou o grupo de recursos com o nome
LA-TravelTime-RG
.Dica
Se a home page do Azure mostrar o grupo de recursos em Recursos recentes, pode selecionar o grupo na home page.
No menu do grupo de recursos, verifique se a opção Descrição geral está selecionada. Na barra de ferramentas do painel Descrição Geral , selecione Eliminar grupo de recursos.
No painel de confirmação apresentado, introduza o nome do grupo de recursos e selecione Eliminar.
Passos seguintes
Neste tutorial, criou um fluxo de trabalho de aplicação lógica que verifica o tráfego com base numa agenda especificada (nas manhãs da semana) e toma medidas (envia um e-mail) quando o tempo de deslocação excede um limite especificado. Agora, saiba como criar um fluxo de trabalho que envia pedidos de aprovação de listas de correio através da integração de serviços do Azure, serviços Microsoft e outras aplicações De Software como Serviço (SaaS).
Manage mailing list requests (Gerir pedidos de listas de correio)