Samouczek: tworzenie przepływów pracy, które przetwarzają wiadomości e-mail przy użyciu usług Azure Logic Apps, Azure Functions i Azure Storage
Dotyczy: Azure Logic Apps (Zużycie)
W tym samouczku pokazano, jak utworzyć przykładowy przepływ pracy, który integruje usługi Azure Functions i Azure Storage przy użyciu usługi Azure Logic Apps. W tym przykładzie utworzono przepływ pracy aplikacji logiki Zużycie, który obsługuje przychodzące wiadomości e-mail i wszelkie załączniki, analizuje zawartość wiadomości e-mail przy użyciu usługi Azure Functions, zapisuje zawartość w usłudze Azure Storage i wysyła wiadomość e-mail na potrzeby przeglądania zawartości.
Po zakończeniu przepływ pracy wygląda podobnie do następującego przykładu wysokiego poziomu:
Napiwek
Aby dowiedzieć się więcej, możesz zadać następujące pytania dotyczące platformy Azure Copilot:
- Co to jest usługa Azure Logic Apps?
- Co to jest usługa Azure Functions?
- Co to jest usługa Azure Storage?
- Co to jest przepływ pracy aplikacji logiki Zużycie?
Aby znaleźć narzędzie Azure Copilot, na pasku narzędzi witryny Azure Portal wybierz pozycję Copilot.
Podobny przepływ pracy można utworzyć za pomocą zasobu aplikacji logiki w warstwie Standardowa, w którym niektóre operacje łącznika, takie jak usługa Azure Blob Storage, są również dostępne jako wbudowane operacje oparte na dostawcy usług. Jednak środowisko użytkownika i kroki samouczka różnią się nieco od wersji Zużycie.
Wymagania wstępne
Konto i subskrypcja platformy Azure. Jeśli nie masz subskrypcji, zarejestruj się w celu założenia bezpłatnego konta platformy Azure.
Konto e-mail od dostawcy poczty e-mail obsługiwanego przez usługę Azure Logic Apps, takie jak Office 365 Outlook, Outlook.com lub Gmail. Aby uzyskać informacje o innych obsługiwanych dostawcach poczty e-mail, zobacz Łączniki dla usługi Azure Logic Apps.
W tym przykładzie użyto usługi Office 365 Outlook z kontem służbowym. Jeśli używasz innego konta e-mail, ogólne kroki pozostają takie same, ale środowisko użytkownika może się nieco różnić. Jeśli używasz Outlook.com, użyj swojego osobistego konta Microsoft, aby się zalogować.
Uwaga
Jeśli chcesz użyć łącznika Gmail, tylko konta biznesowe usługi G-Suite mogą używać tego łącznika bez ograniczeń w przepływach pracy aplikacji logiki. Jeśli masz konto użytkownika Gmail, możesz użyć tego łącznika tylko z określonymi usługami zatwierdzonymi przez firmę Google lub utworzyć aplikację kliencką Google do użycia do uwierzytelniania za pomocą łącznika Gmail. Aby uzyskać więcej informacji, zobacz Zasady zabezpieczeń i prywatności danych dla łączników Google w usłudze Azure Logic Apps.
Pobierz i zainstaluj bezpłatny Eksplorator usługi Microsoft Azure Storage. To narzędzie ułatwia sprawdzanie, czy kontener magazynu został skonfigurowany prawidłowo.
Jeśli przepływ pracy musi komunikować się za pośrednictwem zapory, która ogranicza ruch do określonych adresów IP, zapora musi zezwolić na dostęp zarówno dla adresów IP przychodzących, jak i wychodzących używanych przez usługę Azure Logic Apps w regionie świadczenia usługi Azure, w którym istnieje zasób aplikacji logiki. Jeśli przepływ pracy używa również łączników zarządzanych, takich jak łącznik usługi Office 365 Outlook lub łącznik SQL, lub używa łączników niestandardowych, zapora musi również zezwolić na dostęp do wszystkich wychodzących adresów IP łącznika zarządzanego w regionie platformy Azure aplikacji logiki.
Konfigurowanie magazynu na potrzeby zapisywania załączników
Poniższe kroki umożliwiają skonfigurowanie usługi Azure Storage w celu przechowywania przychodzących wiadomości e-mail i załączników jako obiektów blob.
W witrynie Azure Portal zaloguj się przy użyciu poświadczeń konta platformy Azure.
Wykonaj następujące kroki, aby utworzyć konto magazynu, chyba że masz je już.
Na karcie Podstawowe podaj następujące informacje:
Właściwości Wymagania Wartość Opis Subskrypcja Tak <Azure-subscription-name> Nazwa subskrypcji platformy Azure.
W tym przykładzie użyto płatności zgodnie z rzeczywistym użyciem.Grupa zasobów: Tak <Azure-resource-group> Nazwa grupy zasobów platformy Azure używana do organizowania powiązanych zasobów i zarządzania nimi.
Uwaga: grupa zasobów istnieje w konkretnym regionie. Chociaż elementy w tym samouczku mogą nie być dostępne we wszystkich regionach, spróbuj używać tego samego regionu, jeśli jest to możliwe.
W tym przykładzie użyto la-Tutorial-RG.Nazwa konta magazynu Tak <Azure-storage-account-name> Unikatowa nazwa konta magazynu, która musi zawierać od 3 do 24 znaków i może zawierać tylko małe litery i cyfry.
W tym przykładzie użyto metody attachmentstorageacct.Region Tak <Region świadczenia usługi Azure> Region danych platformy Azure dla konta magazynu.
W tym przykładzie użyto zachodnich stanów USA.Usługa podstawowa Nie. <Azure-storage-service> Podstawowy typ magazynu do użycia na koncie magazynu. Zobacz Przeglądanie opcji przechowywania danych na platformie Azure. Wydajność Tak - Standardowa
- PremiumTo ustawienie określa obsługiwane typy danych oraz nośniki do przechowywania danych. Zobacz Omówienie konta magazynu.
W tym przykładzie użyto warstwy Standardowa.Nadmiarowość Tak - Magazyn lokalnie nadmiarowy
- Magazyn geograficznie nadmiarowy (GRS)To ustawienie umożliwia przechowywanie wielu kopii danych jako ochrony przed zaplanowanymi i nieplanowanymi zdarzeniami. Aby uzyskać więcej informacji, zobacz Nadmiarowość usługi Azure Storage.
W tym przykładzie użyto magazynu geograficznie nadmiarowego (GRS).Aby utworzyć konto magazynu, możesz również użyć programu Azure PowerShell lub wiersza polecenia platformy Azure.
Gdy wszystko będzie gotowe, wybierz pozycję Przejrzyj i utwórz. Po zweryfikowaniu przez platformę Azure informacji o zasobie konta magazynu wybierz pozycję Utwórz.
Po wdrożeniu konta magazynu na platformie Azure wybierz pozycję Przejdź do zasobu. Możesz też znaleźć i wybrać konto magazynu przy użyciu pola wyszukiwania platformy Azure.
Pobierz klucz dostępu konta magazynu, wykonując następujące kroki:
W menu konta magazynu w obszarze Zabezpieczenia i sieć wybierz pozycję Klucze dostępu.
Skopiuj nazwę konta magazynu i klucz1. Zapisz te wartości w bezpiecznym miejscu, aby użyć ich później.
Aby uzyskać klucz dostępu do konta magazynu, możesz również użyć programu Azure PowerShell lub wiersza polecenia platformy Azure.
Utwórz kontener magazynu obiektów blob na potrzeby załączników do wiadomości e-mail.
W menu konta magazynu w obszarze Magazyn danych wybierz pozycję Kontenery.
Na pasku narzędzi strony Kontenery wybierz pozycję Kontener.
W okienku Nowy kontener podaj następujące informacje:
Właściwości Wartość Opis Nazwa/nazwisko Załączniki Nazwa kontenera. Poziom dostępu anonimowego Kontener (anonimowy dostęp do odczytu dla kontenerów i obiektów blob) Wybierz pozycję Utwórz.
Po zakończeniu na liście kontenerów zostanie wyświetlony nowy kontener magazynu.
Aby utworzyć kontener magazynu, możesz również użyć programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
Następnie połącz Eksplorator usługi Storage z kontem magazynu.
Konfiguracja Eksploratora usługi Storage
Poniższe kroki łączą się Eksplorator usługi Storage z kontem magazynu, aby upewnić się, że przepływ pracy poprawnie zapisuje załączniki jako obiekty blob w kontenerze magazynu.
Uruchom Eksplorator usługi Microsoft Azure Storage. Zaloguj się przy użyciu konta Azure.
Uwaga
Jeśli nie zostanie wyświetlony żaden monit, na pasku działań Eksplorator usługi Storage wybierz pozycję Zarządzanie kontami (ikona profilu).
W oknie Wybieranie środowiska platformy Azure wybierz środowisko platformy Azure, a następnie wybierz pozycję Dalej.
W tym przykładzie wybieramy globalną, wielodostępną platformę Azure.
W wyświetlonym oknie przeglądarki zaloguj się przy użyciu konta platformy Azure.
Wróć do Eksplorator usługi Storage i okna Zarządzanie kontami. Upewnij się, że wybrano prawidłową dzierżawę i subskrypcję firmy Microsoft Entra.
Na pasku działań Eksplorator usługi Storage wybierz pozycję Otwórz okno dialogowe nawiązywania połączenia.
W oknie Wybieranie zasobu wybierz pozycję Konto magazynu lub usługa.
W oknie Wybierz metodę połączenia wybierz pozycję Nazwa konta i klucz>Dalej.
W oknie Łączenie z usługą Azure Storage podaj następujące informacje:
Właściwości Wartość Nazwa wyświetlana Przyjazna nazwa połączenia Nazwa konta Nazwa konta magazynu Klucz konta Wcześniej zapisany klucz dostępu W polu Domena magazynu upewnij się, że wybrano pozycję Azure (core.windows.net), a następnie wybierz przycisk Dalej.
W oknie Podsumowanie potwierdź informacje o połączeniu i wybierz pozycję Połącz.
Eksplorator usługi Storage tworzy połączenie. Twoje konto magazynu zostanie wyświetlone w oknie Eksploratora w obszarze Emulator i dołączone>konta magazynu.
Aby znaleźć kontener magazynu obiektów blob, w obszarze Konta magazynu rozwiń swoje konto magazynu, czyli attachmentstorageacct w tym przykładzie. W obszarze Kontenery obiektów blob, w których znajduje się kontener załączników , na przykład:
Następnie utwórz aplikację funkcji platformy Azure i funkcję, która usuwa kod HTML z zawartości.
Tworzenie aplikacji funkcji
Poniższe kroki umożliwiają utworzenie funkcji platformy Azure wywoływanej przez przepływ pracy w celu usunięcia kodu HTML z przychodzącej poczty e-mail.
Przed utworzeniem funkcji utwórz aplikację funkcji, wybierając plan Zużycie i wykonując następujące kroki:
Na karcie Podstawowe podaj następujące informacje:
Wybierz pozycję Dalej: Magazyn. Na karcie Magazyn podaj następujące informacje:
Właściwości Wymagania Wartość Opis Konto magazynu Tak <Azure-storage-account-name> Utwórz konto magazynu dla aplikacji funkcji do użycia. Nazwy kont magazynu muszą mieć długość od 3 do 24 znaków i mogą zawierać tylko małe litery i cyfry.
W tym przykładzie użyto funkcji cleantextfunctionstorageacct.
Uwaga: to konto magazynu zawiera aplikacje funkcji i różni się od wcześniej utworzonego konta magazynu dla załączników wiadomości e-mail. Możesz również użyć istniejącego konta, które musi spełniać wymagania dotyczące konta magazynu.Po zakończeniu wybierz pozycję Przejrzyj i utwórz. Po zweryfikowaniu podanych informacji na platformie Azure wybierz pozycję Utwórz.
Po wdrożeniu zasobu aplikacji funkcji na platformie Azure wybierz pozycję Przejdź do zasobu.
Tworzenie funkcji w celu usunięcia kodu HTML
Poniższe kroki umożliwiają utworzenie funkcji platformy Azure, która usuwa kod HTML z każdej przychodzącej wiadomości e-mail przy użyciu przykładowego fragmentu kodu. Ta funkcja ułatwia przetwarzanie zawartości poczty e-mail. Tę funkcję można wywołać z poziomu przepływu pracy.
Aby uzyskać więcej informacji, zobacz Tworzenie pierwszej funkcji w witrynie Azure Portal. W przypadku rozszerzonego tworzenia funkcji można również utworzyć funkcję lokalnie.
W witrynie Azure Portal otwórz aplikację funkcji, jeśli nie jest jeszcze otwarta.
Aby uruchomić funkcję później w witrynie Azure Portal, skonfiguruj aplikację funkcji, aby jawnie akceptować żądania z portalu. W menu aplikacji funkcji w obszarze INTERFEJS API wybierz pozycję CORS. W obszarze Dozwolone źródła wprowadź ,
https://portal.azure.com
a następnie wybierz pozycję Zapisz.W menu aplikacji funkcji wybierz pozycję Przegląd. Na karcie Funkcje wybierz pozycję Utwórz.
W okienku Tworzenie funkcji wybierz pozycję Wyzwalacz HTTP: C#>Next.
Uwaga
Jeśli nie widzisz wersji języka C#, upewnij się, że
Podaj następujące informacje dla funkcji i wybierz pozycję Utwórz:
Parametr Wartość Nazwa funkcji RemoveHTMLFunction Poziom autoryzacji Funkcja Na karcie Kod i test wprowadź następujący przykładowy kod, który usuwa kod HTML i zwraca wyniki do obiektu wywołującego.
#r "Newtonsoft.Json" using System.Net; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Primitives; using Newtonsoft.Json; using System.Text.RegularExpressions; public static async Task<IActionResult> Run(HttpRequest req, ILogger log) { log.LogInformation("HttpWebhook triggered"); // Parse query parameter string emailBodyContent = await new StreamReader(req.Body).ReadToEndAsync(); // Replace HTML with other characters string updatedBody = Regex.Replace(emailBodyContent, "<.*?>", string.Empty); updatedBody = updatedBody.Replace("\\r\\n", " "); updatedBody = updatedBody.Replace(@" ", " "); // Return cleaned text return (ActionResult)new OkObjectResult(new {updatedBody}); }
Po zakończeniu na pasku narzędzi Kod i testowanie wybierz pozycję Zapisz, a następnie wybierz pozycję Testuj/Uruchom.
W okienku Test/Przebieg na karcie Dane wejściowe w polu Treść wprowadź następujące przykładowe dane wejściowe i wybierz pozycję Uruchom:
{"name": "<p><p>Testing my function</br></p></p>"}
Dane wyjściowe funkcji wyglądają następująco:
{"updatedBody": "{\"name\": \"Testing my function\"}"}
Po potwierdzeniu, że funkcja działa, utwórz zasób aplikacji logiki i przepływ pracy. Chociaż w tym samouczku pokazano, jak utworzyć funkcję usuwającą kod HTML z wiadomości e-mail, usługa Azure Logic Apps udostępnia również łącznik HTML to Text .
Tworzenie zasobu aplikacji logiki Zużycie
W polu wyszukiwania w witrynie Azure Portal wprowadź ciąg aplikacja logiki i wybierz pozycję Aplikacje logiki.
Na pasku narzędzi strony Aplikacje logiki wybierz pozycję Dodaj.
Zostanie wyświetlona strona Tworzenie aplikacji logiki i zostanie wyświetlona następująca opcja:
Plan Opis Zużycie Tworzy zasób aplikacji logiki, który obsługuje tylko jeden przepływ pracy uruchamiany w wielodostępnej usłudze Azure Logic Apps i używa modelu Zużycie do rozliczeń. Standardowa Tworzy zasób aplikacji logiki, który obsługuje wiele przepływów pracy. Dostępne są następujące opcje:
- Plan usługi przepływu pracy: przepływy pracy działają w usłudze Azure Logic Apps z jedną dzierżawą i używają modelu standardowego do rozliczeń.
- Środowisko App Service Environment w wersji 3: przepływy pracy są uruchamiane w usłudze Azure Logic Apps z jedną dzierżawą i używają planu środowiska App Service Environment na potrzeby rozliczeń.Na stronie Tworzenie aplikacji logiki wybierz pozycję Zużycie (wiele dzierżaw).
Na karcie Podstawy podaj następujące informacje o zasobie aplikacji logiki:
Parametr Wymagania Wartość Opis Subskrypcja Tak <Azure-subscription-name> Ta sama subskrypcja platformy Azure, która była wcześniej używana. Grupa zasobów Tak LA-Tutorial-RG Ta sama grupa zasobów platformy Azure, która była wcześniej używana. Nazwa aplikacji logiki Tak <logic-app-name> Nazwa zasobu aplikacji logiki, która musi być unikatowa w różnych regionach i może zawierać tylko litery, cyfry, łączniki (-), podkreślenia (_), nawiasy (()) i kropki (.).
W tym przykładzie tworzony jest zasób aplikacji logiki o nazwie LA-ProcessAttachment. Aplikacja logiki zużycie i przepływ pracy zawsze mają taką samą nazwę.Region Tak Zachodnie stany USA Ten sam region, który był wcześniej używany. Włączanie analizy dzienników Tak Nie Zmień tę opcję tylko wtedy, gdy chcesz włączyć rejestrowanie diagnostyczne. Na potrzeby tego samouczka zachowaj wybór domyślny.
Uwaga: ta opcja jest dostępna tylko w przypadku aplikacji logiki Zużycie.Uwaga
Strefy dostępności są automatycznie włączone dla nowych i istniejących przepływów pracy aplikacji logiki Zużycie w regionach świadczenia usługi Azure, które obsługują strefy dostępności. Aby uzyskać więcej informacji, zobacz Niezawodność w usłudze Azure Functions i Ochrona aplikacji logiki przed awariami regionów przy użyciu stref nadmiarowości i stref dostępności.
Gdy wszystko będzie gotowe, wybierz pozycję Przejrzyj i utwórz. Po zweryfikowaniu przez platformę Azure informacji o zasobie aplikacji logiki wybierz pozycję Utwórz.
Po wdrożeniu zasobu aplikacji logiki na platformie Azure wybierz pozycję Przejdź do zasobu. Możesz też znaleźć i wybrać zasób aplikacji logiki przy użyciu pola wyszukiwania platformy Azure.
Dodawanie wyzwalacza do monitorowania przychodzącej poczty e-mail
W poniższych krokach dodano wyzwalacz, który oczekuje na przychodzące wiadomości e-mail z załącznikami.
W menu aplikacji logiki w obszarze Narzędzia programistyczne wybierz pozycję Projektant aplikacji logiki.
W projektancie przepływu pracy wykonaj następujące ogólne kroki, aby dodać wyzwalacz usługi Office 365 Outlook o nazwie Po nadejściu nowej wiadomości e-mail.
Łącznik usługi Office 365 Outlook wymaga zalogowania się przy użyciu konta służbowego firmy Microsoft. Jeśli używasz osobistego konta Microsoft, użyj łącznika Outlook.com.
Zaloguj się do konta e-mail, które tworzy połączenie między przepływem pracy a kontem e-mail.
W polu informacje o wyzwalaczu z listy Parametry zaawansowane dodaj następujące parametry, jeśli nie są wyświetlane, i podaj następujące informacje:
Parametr Wartość Opis Znaczenie Dowolne Określa poziom ważności żądanej wiadomości e-mail. Tylko z załącznikami Tak Pobieraj tylko wiadomości e-mail z załącznikami.
Uwaga: wyzwalacz nie usuwa żadnych wiadomości e-mail z konta; sprawdza tylko nowe wiadomości i przetwarza tylko te wiadomości, które pasują do filtru tematu.Dołącz załączniki Tak Pobieraj załączniki jako dane wejściowe dla przepływu pracy, zamiast tylko sprawdzać wiadomości pod kątem istnienia załączników. Folder Skrzynka odbiorcza Folder poczty e-mail do sprawdzenia. Filtr tematu Analityk biznesowy 2 #423501 Określa tekst do znalezienia w temacie wiadomości e-mail. Po zakończeniu wyzwalacz wygląda podobnie do następującego przykładu:
Zapisz przepływ pracy. Na pasku narzędzi projektanta wybierz pozycję Zapisz.
Przepływ pracy jest teraz aktywny, ale nie wykonuje żadnych innych czynności sprawdzających wiadomości e-mail. Następnie dodaj warunek określający kryteria umożliwiające kontynuowanie kolejnych akcji w przepływie pracy.
Dodawanie warunku sprawdzania załączników
Poniższe kroki dodają warunek, który wybiera tylko wiadomości e-mail z załącznikami.
W projektancie przepływu pracy wykonaj następujące ogólne kroki, aby dodać akcję Kontrolka o nazwie Warunek.
W okienku Informacje o akcji Warunek zmień nazwę akcji na Jeśli wiadomość e-mail zawiera załączniki i frazę tematu klucza.
Utwórz warunek sprawdzający wiadomości e-mail z załącznikami.
Na karcie Parametry w pierwszym wierszu w obszarze listy AND wybierz wewnątrz pola po lewej stronie, a następnie wybierz listę zawartości dynamicznej (ikona pioruna). Z tej listy w sekcji wyzwalacza wybierz dane wyjściowe Has Attachment (Ma załącznik).
Napiwek
Jeśli nie widzisz danych wyjściowych Has Attachment (Ma załącznik ), wybierz pozycję Zobacz więcej.
W środkowym polu zachowaj, że operator o nazwie jest równy.
W prawym polu wprowadź wartość true, która jest wartością do porównania z wartością wyjściową Has Attachment z wyzwalacza. Jeśli obie wartości są równe, wiadomość e-mail ma co najmniej jeden załącznik, warunek zostaje spełniony, a przepływ pracy jest kontynuowany.
W podstawowej definicji przepływu pracy, którą można wyświetlić, wybierając pozycję Widok kodu na pasku narzędzi projektanta, warunek wygląda podobnie do następującego przykładu:
"Condition": { "actions": { <actions-to-run-when-condition-passes> }, "expression": { "and": [ { "equals": [ "@triggerBody()?['HasAttachment']", "true" ] } ] }, "runAfter": {}, "type": "If" }
Zapisz przepływ pracy.
Testowanie warunku
Na pasku narzędzi projektanta wybierz pozycję Uruchom.>
Ten krok ręcznie uruchamia i uruchamia przepływ pracy, ale nic się nie dzieje, dopóki nie wyślesz testowej wiadomości e-mail do skrzynki odbiorczej.
Wyślij wiadomość e-mail spełniającą następujące kryteria:
Temat wiadomości e-mail zawiera tekst określony w filtrze tematu wyzwalacza: Analityk biznesowy 2 #423501
Wiadomość e-mail zawiera jeden załącznik. Teraz po prostu utwórz pusty plik tekstowy i załącz go do wiadomości e-mail.
Po nadejściu wiadomości e-mail przepływ pracy sprawdza załączniki i określony tekst tematu. Jeśli warunek przebiegnie, wyzwalacz zostanie wyzwolony i spowoduje utworzenie wystąpienia usługi Azure Logic Apps i uruchomienie wystąpienia przepływu pracy.
Aby sprawdzić, czy wyzwalacz został wyzwolony, a przepływ pracy został pomyślnie uruchomiony, w menu aplikacji logiki wybierz pozycję Przegląd.
Aby wyświetlić pomyślnie uruchamiane przepływy pracy, wybierz pozycję Historia przebiegów.
Aby wyświetlić pomyślnie wyzwolone wyzwalacze, wybierz pozycję Historia wyzwalaczy.
Jeśli wyzwalacz nie został wyzwolony lub przepływ pracy nie został uruchomiony pomimo pomyślnego wyzwalacza, zobacz Rozwiązywanie problemów z przepływem pracy aplikacji logiki.
Następnie zdefiniuj akcje do wykonania dla gałęzi True . Aby zapisać wiadomość e-mail wraz z załącznikami, usuń kod HTML z treści wiadomości e-mail, a następnie utwórz obiekty blob w kontenerze magazynu dla wiadomości e-mail i załączników.
Uwaga
Przepływ pracy może pozostawić pustą gałąź False i nie podejmować żadnych akcji, gdy wiadomość e-mail nie ma załączników. Jako ćwiczenie dodatkowe po zakończeniu tego samouczka możesz dodać dowolną odpowiednią akcję, którą chcesz wykonać dla gałęzi False .
Wywoływanie funkcji RemoveHTMLFunction
Poniższe kroki dodają wcześniej utworzoną funkcję platformy Azure, która akceptuje zawartość treści wiadomości e-mail z wyzwalacza wiadomości e-mail jako dane wejściowe.
W menu aplikacji logiki w obszarze Narzędzia programistyczne wybierz pozycję Projektant aplikacji logiki. W gałęzi True wybierz pozycję Dodaj akcję.
Wykonaj następujące ogólne kroki, aby dodać akcję usługi Azure Functions o nazwie Wybierz funkcję platformy Azure.
Wybierz wcześniej utworzoną aplikację funkcji, czyli CleanTextFunctionApp w tym przykładzie.
Wybierz funkcję o nazwie RemoveHTMLFunction w tym przykładzie, a następnie wybierz pozycję Dodaj akcję.
W okienku informacji o akcji usługi Azure Functions zmień nazwę akcji na Call RemoveHTMLFunction.
Teraz określ dane wejściowe funkcji do przetworzenia.
W polu Treść żądania wprowadź następujący tekst z spacją końcową:
{ "emailBody":
Gdy będziesz pracować z tymi danymi wyjściowymi w następnych krokach, do momentu wprowadzenia tych danych w poprawnym formacie JSON będzie wyświetlany komunikat o błędzie nieprawidłowego kodu JSON. Podczas wcześniejszego testowania tej funkcji dane wejściowe określone dla funkcji używały formatu JavaScript Object Notation (JSON). Dlatego treść żądania musi również używać tego samego formatu.
Wybierz wewnątrz pola Treść żądania, a następnie wybierz listę zawartości dynamicznej (ikona błyskawicy), aby można było wybrać dane wyjściowe z poprzednich akcji.
Z listy zawartości dynamicznej w obszarze Po nadejściu nowej wiadomości e-mail wybierz dane wyjściowe Treść . Po rozpoznaniu tej wartości w polu Treść żądania pamiętaj, aby dodać zamykający nawias klamrowy (}).
Po zakończeniu funkcja platformy Azure wygląda jak w poniższym przykładzie:
Zapisz przepływ pracy.
Następnie dodaj akcję, która tworzy obiekt blob do przechowywania treści wiadomości e-mail.
Dodawanie akcji w celu utworzenia obiektu blob dla treści wiadomości e-mail
Poniższe kroki umożliwiają utworzenie obiektu blob, który przechowuje treść wiadomości e-mail w kontenerze magazynu.
W projektancie w bloku True warunku w obszarze funkcji platformy Azure wybierz pozycję Dodaj akcję.
Podaj informacje o połączeniu dla konta magazynu, na przykład:
Parametr Wymagania Wartość Opis Nazwa połączenia Tak <nazwa połączenia> Opisowa nazwa połączenia.
W tym przykładzie użyto polecenia AttachmentStorageConnection.Typ uwierzytelnienia Tak <typ uwierzytelniania> Typ uwierzytelniania do użycia dla połączenia.
W tym przykładzie użyto klucza dostępu.Nazwa konta usługi Azure Storage lub punkt końcowy obiektu blob Tak <storage-account-name> Nazwa wcześniej utworzonego konta magazynu.
W tym przykładzie użyto metody attachmentstorageacct.Klucz dostępu do konta usługi Azure Storage Tak <storage-account-access-key> Klucz dostępu dla wcześniej utworzonego konta magazynu. Po zakończeniu wybierz pozycję Utwórz nowy.
W okienku Informacje o akcji Tworzenia obiektu blob zmień nazwę akcji na Create blob for email body (Tworzenie obiektu blob dla treści wiadomości e-mail).
Podaj następujące informacje o akcji:
Napiwek
Jeśli nie możesz znaleźć określonych danych wyjściowych na liście zawartości dynamicznej, wybierz pozycję Zobacz więcej obok nazwy operacji.
Parametr Wymagania Wartość Opis Nazwa konta magazynu lub punkt końcowy obiektu blob Tak Użyj ustawień połączenia (<nazwa konta magazynu lub punktu końcowego> obiektu blob) Wybierz opcję, która zawiera nazwę konta magazynu.
W tym przykładzie użyto wartościhttps://attachmentstorageacct.blob.core.windows.net
.Ścieżka folderu Tak <path-and-container-name> Ścieżka i nazwa wcześniej utworzonego kontenera.
W tym przykładzie wybierz ikonę folderu, a następnie wybierz załączniki.Nazwa obiektu blob Tak <nazwa nadawcy> W tym przykładzie użyj nazwy nadawcy jako nazwy obiektu blob.
1. Wybierz wewnątrz pola Nazwa obiektu blob, a następnie wybierz opcję listy zawartości dynamicznej (ikona pioruna).
2. W sekcji Po nadejściu nowej wiadomości e-mail wybierz pozycję Od.Zawartość obiektu blob Tak <czyszczona treść wiadomości e-mail> W tym przykładzie użyj treści wiadomości e-mail bez kodu HTML jako zawartości obiektu blob.
1. Wybierz wewnątrz pola Zawartość obiektu blob, a następnie wybierz opcję listy zawartości dynamicznej (ikona błyskawicy).
2. W sekcji Call RemoveHTMLFunction wybierz pozycję Treść.Poniższy zrzut ekranu przedstawia dane wyjściowe do wybrania akcji Tworzenie obiektu blob dla treści wiadomości e-mail:
Po zakończeniu akcja wygląda następująco:
Zapisz przepływ pracy.
Testowanie obsługi załączników
Na pasku narzędzi projektanta wybierz pozycję Uruchom.>
Ten krok ręcznie uruchamia i uruchamia przepływ pracy, ale nic się nie dzieje, dopóki nie wyślesz testowej wiadomości e-mail do skrzynki odbiorczej.
Wyślij wiadomość e-mail spełniającą następujące kryteria:
Temat wiadomości e-mail zawiera tekst określony w parametrze filtru tematu wyzwalacza: Analityk biznesowy 2 #423501
Wiadomość e-mail zawiera co najmniej jeden załącznik. Na razie wystarczy utworzyć jeden pusty plik tekstowy i dołączyć ten plik do wiadomości e-mail.
Wiadomość e-mail zawiera zawartość testowa w treści, na przykład: Testowanie przepływu pracy aplikacji logiki
Jeśli przepływ pracy nie został wyzwolny lub uruchomiony pomimo pomyślnego wyzwalacza, zobacz Rozwiązywanie problemów z przepływem pracy aplikacji logiki.
Sprawdź, czy przepływ pracy zapisał wiadomość e-mail do odpowiedniego kontenera magazynu.
W Eksplorator usługi Storage rozwiń pozycję Załączniki emulatora i dołączonych>kont>magazynustorageacct (Key)>Blob Containers.>
Sprawdź kontener attachments pod kątem wiadomości e-mail.
Na tym etapie w kontenerze pojawia się tylko wiadomość e-mail, ponieważ przepływ pracy nie przetworzył jeszcze załączników.
Po zakończeniu usuń wiadomość e-mail w Eksplorator usługi Storage.
Opcjonalnie, aby przetestować gałąź False , która w tej chwili nic nie robi, możesz wysłać wiadomość e-mail, która nie spełnia kryteriów.
Następnie dodaj pętlę Dla każdej pętli, aby przetworzyć każdy załącznik wiadomości e-mail.
Dodawanie pętli do przetwarzania załączników
Poniższe kroki umożliwiają dodanie pętli w celu przetworzenia każdego załącznika w wiadomości e-mail.
Wróć do projektanta przepływu pracy. W obszarze akcji Tworzenie obiektu blob dla treści wiadomości e-mail wybierz pozycję Dodaj akcję.
Wykonaj następujące ogólne kroki, aby dodać akcję Kontrolka o nazwie Dla każdego.
W okienku Informacje o każdej akcji zmień nazwę akcji na Dla każdego załącznika wiadomości e-mail.
Teraz wybierz zawartość pętli do przetworzenia.
W pętli Dla każdego załącznika wiadomości e-mail wybierz wewnątrz pola Wybierz dane wyjściowe z poprzednich kroków, a następnie wybierz opcję lista zawartości dynamicznej (ikona błyskawica).
W sekcji Po nadejściu nowej wiadomości e-mail wybierz pozycję Załączniki.
Dane wyjściowe Załączników zawierają tablicę ze wszystkimi załącznikami z wiadomości e-mail. Pętla For each powtarza akcje w każdym elemencie tablicy.
Napiwek
Jeśli nie widzisz załączników, wybierz pozycję Zobacz więcej.
Zapisz przepływ pracy.
Następnie dodaj akcję, która zapisuje każdy załącznik jako obiekt blob w kontenerze magazynu załączników .
Dodawanie akcji w celu utworzenia obiektu blob na załącznik
Poniższe kroki umożliwiają dodanie akcji w celu utworzenia obiektu blob dla każdego załącznika.
W projektancie w pętli Dla każdego załącznika wiadomości e-mail wybierz pozycję Dodaj akcję.
W okienku Informacje o akcji Tworzenia obiektu blob zmień nazwę akcji na Create blob for email attachment (Utwórz obiekt blob dla załącznika wiadomości e-mail).
Podaj następujące informacje o akcji:
Napiwek
Jeśli nie możesz znaleźć określonych danych wyjściowych na liście zawartości dynamicznej, wybierz pozycję Zobacz więcej obok nazwy operacji.
Parametr Wymagania Wartość Opis Nazwa konta magazynu lub punkt końcowy obiektu blob Tak Użyj ustawień połączenia (<nazwa konta magazynu lub punktu końcowego> obiektu blob) Wybierz opcję, która zawiera nazwę konta magazynu.
W tym przykładzie użyto wartościhttps://attachmentstorageacct.blob.core.windows.net
.Ścieżka folderu Tak <path-and-container-name> Ścieżka i nazwa wcześniej utworzonego kontenera.
W tym przykładzie wybierz ikonę folderu, a następnie wybierz załączniki.Nazwa obiektu blob Tak <nazwa załącznika> W tym przykładzie użyj nazwy załącznika jako nazwy obiektu blob.
1. Wybierz wewnątrz pola Nazwa obiektu blob, a następnie wybierz opcję listy zawartości dynamicznej (ikona pioruna).
2. W sekcji Po nadejściu nowej wiadomości e-mail wybierz pozycję Nazwa.Zawartość obiektu blob Tak <zawartość wiadomości e-mail> W tym przykładzie użyj zawartości wiadomości e-mail jako zawartości obiektu blob.
1. Wybierz wewnątrz pola Zawartość obiektu blob, a następnie wybierz opcję listy zawartości dynamicznej (ikona błyskawicy).
2. W sekcji Po nadejściu nowej wiadomości e-mail wybierz pozycję Zawartość.Uwaga
Jeśli wybierzesz dane wyjściowe zawierające tablicę, taką jak Dane wyjściowe zawartości , która jest tablicą zawierającą załączniki, projektant automatycznie dodaje pętlę For each wokół akcji odwołującej się do tych danych wyjściowych. Dzięki temu przepływ pracy może wykonać tę akcję na każdym elemencie tablicy. Aby usunąć pętlę, przenieś akcję odwołującą się do danych wyjściowych poza pętlą i usuń pętlę.
Poniższy zrzut ekranu przedstawia dane wyjściowe do wybrania akcji Utwórz obiekt blob dla załącznika wiadomości e-mail:
Po zakończeniu akcja wygląda następująco:
Zapisz przepływ pracy.
Ponowne testowanie obsługi załączników
Na pasku narzędzi projektanta wybierz pozycję Uruchom.>
Ten krok ręcznie uruchamia i uruchamia przepływ pracy, ale nic się nie dzieje, dopóki nie wyślesz testowej wiadomości e-mail do skrzynki odbiorczej.
Wyślij wiadomość e-mail spełniającą następujące kryteria:
Temat wiadomości e-mail zawiera tekst określony w parametrze filtru tematu wyzwalacza: Analityk biznesowy 2 #423501
Wiadomość e-mail zawiera co najmniej dwa załączniki. Teraz po prostu utwórz dwa puste pliki tekstowe i załącz je do wiadomości e-mail.
Jeśli przepływ pracy nie został wyzwolny lub uruchomiony pomimo pomyślnego wyzwalacza, zobacz Rozwiązywanie problemów z przepływem pracy aplikacji logiki.
Sprawdź, czy przepływ pracy zapisał wiadomości e-mail i załączniki do odpowiedniego kontenera magazynu.
Następnie dodaj akcję w przepływie pracy, która wysyła wiadomość e-mail w celu przejrzenia załączników.
Dodawanie akcji wysyłającej wiadomość e-mail
Poniższe kroki dodają akcję, aby przepływ pracy wysyłał wiadomość e-mail w celu przejrzenia załączników.
Wróć do projektanta przepływu pracy. W gałęzi True w pętli Dla każdego załącznika wiadomości e-mail wybierz pozycję Dodaj akcję.
-
W tym przykładzie łącznik office 365 Outlook działa tylko z kontem służbowym platformy Azure. Dla osobistych kont Microsoft wybierz łącznik usługi Outlook.com.
Jeśli zostanie wyświetlony monit o podanie poświadczeń, zaloguj się do swojego konta e-mail, aby usługa Azure Logic Apps utworzyła połączenie z kontem e-mail.
W okienku Wyślij informacje o akcji wiadomości e-mail zmień nazwę akcji na Wyślij wiadomość e-mail do przeglądu.
Podaj następujące informacje akcji i wybierz dane wyjściowe do uwzględnienia w wiadomości e-mail:
Napiwek
Jeśli nie możesz znaleźć określonych danych wyjściowych na liście zawartości dynamicznej, wybierz pozycję Zobacz więcej obok nazwy operacji.
Parametr Wymagania Wartość Opis Do Tak <recipient-email-address> Do celów testowych użyj własnego adresu e-mail. Temat Tak <temat wiadomości e-mail> Adres e-mail, który ma być dołączany.
W tym przykładzie użyto asAP — przejrzyj kandydata do pozycji:, a dane wyjściowe tematu z wyzwalacza.
1. W polu Temat wprowadź przykładowy tekst z spacją końcową.
2. Wybierz wewnątrz pola Temat , a następnie wybierz opcję listy zawartości dynamicznej (ikona pioruna).
3. Na liście w obszarze Po nadejściu nowej wiadomości e-mail wybierz pozycję Temat.Treść Tak <Treść wiadomości e-mail> Treść wiadomości e-mail do uwzględnienia.
W tym przykładzie użyto polecenia Please review new applicant:, the trigger output named From, the Path output from the Create blob for email body action, and the Body output from your Call RemoveHTMLFunction action (Utwórz obiekt blob dla treści wiadomości e-mail) oraz dane wyjściowe Treści z akcji Call RemoveHTMLFunction.
1. W polu Treść wprowadź przykładowy tekst: Przejrzyj nowego wnioskodawcę:
2. W nowym wierszu wprowadź przykładowy tekst, Nazwa wnioskodawcy:, a następnie dodaj pozycję Od danych wyjściowych z wyzwalacza.
3. W nowym wierszu wprowadź tekst przykładowy, lokalizacja pliku aplikacji: i dodaj dane wyjściowe Ścieżki z akcji Utwórz obiekt blob dla treści wiadomości e-mail.
4. W nowym wierszu wprowadź przykładowy tekst, zawartość wiadomości e-mail aplikacji: i dodaj dane wyjściowe Treść z akcji Call RemoveHTMLFunction .Uwaga
Jeśli wybierzesz dane wyjściowe zawierające tablicę, taką jak Dane wyjściowe zawartości , która jest tablicą zawierającą załączniki, projektant automatycznie dodaje pętlę For each wokół akcji odwołującej się do tych danych wyjściowych. Dzięki temu przepływ pracy może wykonać tę akcję na każdym elemencie tablicy. Aby usunąć pętlę, przenieś akcję odwołującą się do danych wyjściowych poza pętlą i usuń pętlę.
Poniższy zrzut ekranu przedstawia zakończoną akcję Wyślij wiadomość e-mail :
Zapisz przepływ pracy.
Gotowy przepływ pracy wygląda teraz jak w poniższym przykładzie:
Testowanie przepływu pracy
Wyślij do siebie wiadomość e-mail spełniającą następujące kryteria:
Temat wiadomości e-mail zawiera tekst określony w parametrze filtru tematu wyzwalacza: Analityk biznesowy 2 #423501
Wiadomość e-mail zawiera co najmniej jeden załącznik. Możesz ponownie użyć pustego pliku tekstowego z poprzedniego testu. Aby zrealizować bardziej realistyczny scenariusz, dołącz plik z życiorysem.
Treść wiadomości e-mail zawiera tekst, który możesz skopiować i wkleić:
Name: Jamal Hartnett Street address: 12345 Anywhere Road City: Any Town State or Country: Any State Postal code: 00000 Email address: jamhartnett@outlook.com Phone number: 000-000-0000 Position: Business Analyst 2 #423501 Technical skills: Dynamics CRM, MySQL, Microsoft SQL Server, JavaScript, Perl, Power BI, Tableau, Microsoft Office: Excel, Visio, Word, PowerPoint, SharePoint, and Outlook Professional skills: Data, process, workflow, statistics, risk analysis, modeling; technical writing, expert communicator and presenter, logical and analytical thinker, team builder, mediator, negotiator, self-starter, self-managing Certifications: Six Sigma Green Belt, Lean Project Management Language skills: English, Mandarin, Spanish Education: Master of Business Administration
Uruchom przepływ pracy. Jeśli przepływ pracy zakończy się pomyślnie, wyśle Ci wiadomość e-mail, która wygląda jak w poniższym przykładzie:
Jeśli nie dostaniesz żadnych wiadomości e-mail, sprawdź folder wiadomości-śmieci. W przeciwnym razie, jeśli nie masz pewności, że przepływ pracy działał poprawnie, zobacz Rozwiązywanie problemów z przepływem pracy aplikacji logiki.
Gratulacje, utworzono i uruchomiono przepływ pracy, który automatyzuje zadania w różnych usługach platformy Azure i wywołuje kod niestandardowy.
Czyszczenie zasobów
Przepływ pracy będzie kontynuowany do momentu wyłączenia lub usunięcia zasobu aplikacji logiki. Gdy ten przykład nie będzie już potrzebny, usuń grupę zasobów zawierającą aplikację logiki i powiązane zasoby.
W polu wyszukiwania witryny Azure Portal wprowadź grupy zasobów i wybierz pozycję Grupy zasobów.
Z listy Grupy zasobów wybierz grupę zasobów dla tego samouczka.
W menu grupy zasobów wybierz pozycję Przegląd.
Na pasku narzędzi strony Przegląd wybierz pozycję Usuń grupę zasobów.
Po wyświetleniu okienka potwierdzenia wprowadź nazwę grupy zasobów i wybierz pozycję Usuń.
Następne kroki
W tym samouczku utworzono przepływ pracy aplikacji logiki, który przetwarza i przechowuje załączniki wiadomości e-mail, integrując usługi platformy Azure, takie jak Azure Storage i Azure Functions. Teraz dowiedz się więcej o innych łącznikach, których można użyć do tworzenia przepływów pracy aplikacji logiki.