練習 - 根據推文人氣設定分支

已完成

在此練習中,我們將繼續處理社交媒體監視應用程式。 我們將新增控制動作,如此工作流程可以根據推文情緒進行分支。 下圖顯示應用程式的概念性檢視並顯目提示要處理的部分。

Diagram shows the triggers and actions in the social media monitoring logic app workflow. The third step is an action showing a control action that tests the sentiment score. If the score is greater than 0.7, the workflow branches to an Insert row action. If the score is less than or equal to 0.7, the workflow branches to a Send an email action.

建立 SQL Server 資料庫來儲存正面評價的推文

工作流程觸發程序接收正面推文時,我們要將推文儲存至後端資料庫。 在此節中,我們會執行指令碼,以建立要使用的資料庫。 完成本課程模組時,請務必刪除資料庫,以避免產生費用。 [摘要] 一節會包含刪除資料庫的指示。

  1. 在 Cloud Shell 工作階段中,執行下列 curl 命令,從 GitHub 複製 setup-sql-database.sh 指令碼:

    curl https://raw.githubusercontent.com/MicrosoftDocs/mslearn-route-and-process-data-logic-apps/master/setup-sql-database.sh > setup-sql-database.sh
    
  2. 執行下列命令來執行指令碼。 此命令需要幾分鐘的時間:

    bash setup-sql-database.sh
    
  3. 請等待指令碼完成。 指令碼完成後,Cloud Shell 會顯示下列屬性的值:

    • SQL Server 執行個體名稱
    • SQL Server 使用者名稱
    • SQL Server 密碼
    • SQL Server 資料庫名稱
  4. 將這些值儲存於安全的位置。 我們稍後在此練習中更新 Azure 入口網站中的邏輯應用程式工作流程時,會需要這些值。

新增 [條件] 控制動作

第一個步驟是將 [條件] 控制動作新增至 Azure 入口網站中的邏輯應用程式工作流程。 以程式設計的術語來說,我們正要新增「if 陳述式」來測試條件。

  1. 在邏輯應用程式資源功能表的 [開發工具] 下,選取 [邏輯應用程式設計工具] 以返回至工作流程設計工具。

  2. 在設計工具上的 [情緒] 動作下,選取 [新增步驟]

  3. 在 [選擇作業] 搜尋欄位下,選取 [內建]。 在搜尋欄位中輸入 condition

  4. 選取 [控制項] 連接器。 從動作區段選取 [條件]

設定條件

現在必須指定要測試的條件。 請記住,[情緒] 動作會傳回「分數」,這是介於零到一之間的數字。 若數字大於 0.7,我們就會將貼文視為具有正面評價。 反之,推文則具有負面評價。

  1. 在 [條件] 動作中,選取最左邊的 [選擇值] 欄位。

  2. 從開啟的動態內容清單中選取 [情緒]

  3. 在中間資料行的運算子清單中,選取 [大於]

  4. 在最右邊的 [選擇值] 欄位中,輸入 0.7

  5. 完成後,請儲存您的工作流程。

新增 SQL 伺服器「插入資料列」動作

即使已設定動作,工作流程仍不會要採取的動作,無論分數是否為正值或負值。 當情緒分數值大於 0.7 時,我們希望工作流程將推文新增至 SQL 資料庫。 針對此工作,我們會將命名為插入資料列 的 SQL Server 動作新增至工作流程。 新增動作時,我們也會提供 SQL Server 資料庫名稱和使用者認證。

  1. 在條件動作下 [True] 區段中,選取 [新增動作]

  2. 在 [選擇作業] 搜尋欄位中,輸入 SQL

  3. 選取 [SQL Server] 連接器。 從動作清單中選取 [插入資料列]

  4. 如有需要,請提供 SQL Server 連線的資訊。

    1. 在 [連線名稱] 欄位中,輸入 SQLConnection

    2. 從 [驗證類型] 清單中選取 [SQL Server 驗證]

    3. 在 [SQL 伺服器名稱] 中,輸入先前建立 SQL 伺服器的名稱。 請包含連接埠號碼 3342,以存取 SQL Server 執行個體的公用端點。

      如需詳細資訊,請參閱連線至 Azure SQL Database 或 SQL 受控執行個體

    4. 在 [SQL 資料庫名稱] 中輸入 PositiveTweetDatabase,這是使用指令碼所建立資料庫的名稱。

    5. 輸入您稍早在設定指令碼完成時所儲存的 SQL 使用者名稱SQL 密碼

    6. 完成時,選取建立

設定 SQL Server「插入資料列」動作

現在,請指定將推文資料對應至資料庫資料行的方式。 讓我們將推文的文字儲存於名為 Content(內容) 的資料行,並將張貼推文人員的使用者名稱儲存於名為 Source (來源) 的資料行。

  1. 在 [插入資料列] 動作的 [資料表名稱] 清單中,選取名為 Mentions (提及) 的資料表。

  2. 開啟 [新增參數] 清單,然後選取 [內容]

  3. 開啟動態內容清單時,在 [當有新推文張貼時] 下選取 [推文文字]

    替代:若您使用名為 When a feed item is published (摘要項目發佈時) 的 RSS 觸發程序,請改為選取 FeedSummary 屬性。

  4. 開啟 [新增參數] 清單,並選取 [來源]

  5. 開啟動態內容清單時,在 [當有新推文張貼時] 下選取 [推文者]

    替代:若您使用名為 When a feed item is published (摘要項目發佈時) 的 RSS 觸發程式時,請選取 [FeedTitle]

  6. 完成後,請儲存您的工作流程。

新增 Outlook「傳送電子郵件」動作

現在,我們希望工作流程透過電子郵件,將分數小於 0.7 (含) 的推文傳送至客戶支援。 一開始,我們必須尋找 Outlook「傳送電子郵件」動作。

注意

如果您沒有 Outlook.com 電子郵件帳戶且不想建立一個帳戶,您可以將連接器作業搜尋字詞變更為「傳送電子郵件」,如此您可以選取其他電子郵件提供者,例如 Gmail 和 Office 365 Outlook。

  1. 在條件動作的 [False] 區段下,選取 [新增動作]

  2. 在 [選擇作業] 搜尋欄位中,輸入 Outlook

  3. 選取 Outlook.com 連接器。 在動作清單中,選取 [傳送電子郵件]

設定 Outlook「傳送電子郵件」動作

現在,將推文資料對應至個別的電子郵件欄位。

  1. 出現提示時,請選取 [登入] 並使用 Microsoft 帳戶認證來登入。 如果沒有帳戶,您可以現在建立一個。

  2. 確認您想要將邏輯應用程式的存取權授與電子郵件帳戶。

  3. 在 [至] 欄位中,輸入有效電子郵件地址。 針對測試,您可以使用自己的地址。

  4. 在 [主旨] 欄位中,輸入偵測到負面推文的來源。 在動態內容清單的 [當有新推文張貼時] 區段中,選取 [原始推文的推文者]

    替代:若您使用名為 When a feed item is published (摘要項目發佈時) 的 RSS 觸發程式時,請選取 [FeedTitle]

  5. 在 [主體] 欄位中,輸入推文的內容。 在動態內容清單的 [當有新推文張貼時] 區段中,選取 [原始推文文字]

    替代:若您使用名為 When a feed item is published (摘要項目發佈時) 的 RSS 觸發程式時,請選取 [FeedSummary]

  6. 完成後,請儲存您的工作流程。

檢閱正面情緒推文的結果

現在,[控制] 動作已正確設定和執行。 讓我們來檢查 SQL 資料庫,檢閱我們的正面推文。

  1. 在 Azure 入口網站首頁上,選取 [所有資源]。 從資源清單中,選取 SQL 資料庫 PositiveTweetDatabase

  2. 從 SQL 資料庫資源功能表中,選取 [查詢編輯器]

  3. 以上一個單元中使用指令碼先前所建立和儲存的伺服器管理登入密碼,登入資料庫。

  4. 在工具列上,選取 [新增查詢]。

  5. 在查詢編輯器中,輸入 Select * from dbo.mentions

  6. 選取 [執行] 以執行查詢並列出所有新增至資料庫的正面推文。

檢閱負面情緒推文的結果

最後,讓我們檢查電子郵件帳戶,看看是否收到任何有關負面推文的郵件。

  1. 登入 Outlook 動作中提供的電子郵件帳戶。

  2. 等候電子郵件通知送達。