Dialogflow Slack 整合可讓您輕鬆建立自己的 Slack 應用程式和機器人,並訓練 Slack 應用程式和機器人理解自然語言。
限制
這項整合功能只支援預設代理程式語言。
設定 Slack
如要為您的代理程式設定 Slack 整合,您必須符合以下條件:
- 具備 Slack 帳戶
- 具備 Slack 團隊
建立 Slack 應用程式
- 前往 Slack Developer Console
- 輸入應用程式的名稱
- 選擇要與應用程式連結的團隊
- 按一下「Create App」(建立應用程式) 按鈕
新增機器人使用者
- 按一下左側選單中的「OAuth & Permissions」
- 前往「範圍」部分,確認下列 OAuth 範圍位於「機器人權杖範圍」部分
- 按一下左側選單中的「應用程式首頁」
- 啟用「Always Show My Bot as Online」(持續顯示我的機器人狀態為線上),並視需要編輯「App Display Name」(應用程式顯示名稱) (使用者會看到這個機器人名稱)
在 Dialogflow 中啟用整合功能
在 Slack Developer Console 中,按一下左側選單中的「基本資訊」,然後向下捲動至「應用程式憑證」部分。然後記下「Client ID」(用戶端 ID)、「Client Secret」(用戶端密鑰) 和「Verification Token」(驗證憑證)。
將 Slack 連結至 Dialogflow
- 在 Dialogflow 的左側選單中,按一下 [Integrations] (整合)
- 按一下 [Slack] 圖塊
- 在下列欄位中輸入相關值:
- 用戶端 ID
- 用戶端密碼
- 驗證權杖
- 按一下「開始」
繼續設定 Slack
Slack 和 Dialogflow 現已設定完成,接著請啟用 OAuth、事件要求網址 (由 Dialogflow 提供) 和事件訂閱。
新增 OAuth 網址
- 從 Dialogflow 的 Slack 設定頁面複製 OAuth 網址
- 前往 Slack Developer Console,然後按一下左側選單中的 [OAuth & Permissions]
- 按一下 [Add a new Redirect URL] 按鈕,然後貼上 OAuth 網址
- 按一下「新增」
- 按一下「儲存網址」按鈕
新增事件要求網址並啟用事件訂閱
- 從 Dialogflow 的 Slack 設定頁面複製事件要求網址
- 前往 Slack Developer Console,然後按一下左側選單中的 [Event Subscriptions]
- 按一下切換按鈕來啟用事件,並在「Request URL」欄位中貼上事件訂閱網址
經過一段時間後,要求網址欄位上方會顯示綠色的「Verified」字樣。 在「Subscribe to Bot Events」底下,按一下「Add Bot User Event」按鈕
畫面上會顯示文字欄位和事件清單。您可以在這個欄位中輸入字詞,搜尋要讓機器人回應的事件。以下是建議新增的事件清單:事件名稱 事件說明 message.im 訊息已發佈至即時訊息管道 message.groups 訊息已發佈至私人管道 message.channels 訊息已發佈至某個管道 im_created 即時訊息已建立。 在「Subscribe to events on behalf of users」(代表使用者訂閱事件) 專區下方,按一下「Add Workspace Event」(新增 Workspace 事件) 按鈕,新增 im_created 事件,然後按一下「Save Changes」(儲存變更)。 更新完這些設定後,請按一下頁面底部的「儲存變更」按鈕。
將 Slack 機器人新增至團隊
- 在 Slack Developer Console 中,按一下左側選單中的 [Manage Distribution]
- 在「Share Your App with Your Workplace」部分底下,按一下「Add to Slack」按鈕
- 在下一個頁面,按一下「授權」按鈕來新增代理程式
測試
您可以測試代理程式,而不建立公開 Slack 機器人,如要啟用,請前往代理程式的「Integrations」(整合) 頁面,然後點選「Slack」圖塊中的切換按鈕。接著在彈出式視窗中,按一下「Test In Slack」(在 Slack 中測試) 按鈕。
系統會提示您登入 Slack。登入後,請前往執行個體並找出名為 @dialogflow-bot 的機器人使用者。您可以傳送即時訊息給代理程式來進行測試,或是將代理程式新增到執行個體中的管道。
活動
這項整合功能會叫用下列事件:
事件 | 說明 |
---|---|
SLACK_WELCOME |
使用者和您的 Slack 機器人開啟對話時,就會觸發這個事件。 |
複合式回應訊息
系統支援下列複合式回應訊息。
圖片回覆
支援的格式和大小:
- gif
- jpeg
- png
- bmp
回覆卡片
Slack 卡片沒有必填欄位,可使用任何元素組合。
系統支援含有網址和文字回傳的按鈕。含有網址的按鈕會顯示為超連結。
快速回覆訊息
一鍵式 Slack 整合支援快速回覆,且快速回覆對應於Slack 互動式按鈕的文字版本。
自訂酬載回應
一鍵整合 Slack 後,即可使用格式化文字
Slack 機器人可以傳送格式化文字,如下例所示:
{ "slack": { "text": "This is an example of *bold*, _italic_, and `code`." } }