好好使用Logic App, 沒事幹嘛寫程式?

不是所有東西都要寫程式的。

最近幾年,又開始流行No Code/Low Code Solutions,RPA(Robotic Process Automation, 機器人流程自動化)就是其中之一。

微軟在SaaS和PaaS平台都有相關的服務,M365的SaaS平台中,Power Automate就是RPA解決方案,可以讓power user用拖曳設計的方式,撰寫少量或幾乎不用撰寫程式碼,就可以完成一些自動化流程。

而PaaS平台上,就是Azure Portal中的Logic App

什麼是Logic App

技術人員可以把透過Logic App,用拖拉組合的方式,把一個流程設計出來,定時或在特定事件發生時,觸發後續的一連串動作。例如,當用戶把檔案上傳到 OneDrive,就自動進行圖像的人臉辨識,然後把辨識結果發送mail給特定人,如今這樣的流程,你完全不需要寫一行程式碼即可以完成。

透過這樣的方式,你可以大幅的簡化人工作業流程,乍聽之下,它跟Azure Functions, Power Automate都很像,但還是有些差異,Azure Functions雖然有binding功能,但主要還是透過撰寫function code來進行核心邏輯的處理,而Power Automate比起Logic App則比較偏向於End-User用戶端,Logic Apps中的connector和trigger則比較偏向雲端服務的整合。

具體差異可以參考微軟官方文件『Logic Apps、Functions、WebJobs 和 Power Automate 之間做選擇

建立Logic App服務

當你建立好一個Logic App服務之後,緊接著可以建立工作流程,底下影片展是如何在 Azure Portal 上 建立一個Logic App服務:

建立與使用Logic App自動化流程

建立好了服務之後,我們接著就可以建立一個流程,建立的過程中,我們需要選定 trigger 也就是觸發條件。

請看底下的例子,我們在用戶上傳檔案到 onedrive 的時候,觸發流程,然後透過 outlook connector 來進行後續的自動化動作,將上傳的檔案名稱與路徑寫入mail中發送給特定用戶:

從上面的設計展示影片中你可以看到,onedrive connector被我們用來作為trigger,觸發整個流程運行。而下一個步驟 則是 outlook connector,負責發送信件。請特別留意,我們可以從第一個 connector 產出的變數作為參數,帶入第二個connector作為email的標題(檔案名稱)或內文(檔案上傳路徑)。

運行Logic App

底下影片展示了運行的結果:

你會發現,果然在用戶上傳到 onedrive 的root目錄時,可以觸發流程,並且把檔案名稱和路徑,以outlook email給用戶。

從這邊你也會發現,Logic App的connector數量多寡,將大幅的影響實用性。微軟也知道,因此,目前已經有成千上萬的 connector 供您使用,底下網址有完整的清單:
https://learn.microsoft.com/en-us/connectors/connector-reference/connector-reference-logicapps-connectors

圖片

留言

這個網誌中的熱門文章

使用 Airtable 在小型需求上取代傳統資料庫

在POC或迷你專案中使用 LiteDB

專業的價值...

精彩(且驚人)的Semantic Kernel入門範例

周末讀書會 - 一如既往