這篇文章將會教你如何在 n8n 中設置 Discord Trigger,以及設置 n8n Discord Credentials,讓你製作的 Discord Bot 能夠做到更多事情,像是 AI 客服、指令交互等!

前情提要

由於 n8n 官方並沒有支援 Discord Trigger,所以我在社群節點中找到可行的方法,並整理成完整的圖文教學,給想在 n8n 製作 Discord Bot 的你!

參考的 Repo 來源:

GitHub - katerlol/n8n-discord-trigger: A n8n node that triggers based on discord events such as messages sent to channels.
A n8n node that triggers based on discord events such as messages sent to channels. - katerlol/n8n-discord-trigger

n8n 新增 Discord Trigger

第一步:安裝社群節點

首先打開 n8n,點擊左下角進入 Settings

n8n Discord Trigger 與憑證設置教學 01

接著點擊 Community nodes > install > 輸入 n8n-nodes-discord-trigger > 勾選確認點擊 Install

n8n Discord Trigger 與憑證設置教學 02

還沒有自己的 n8n 可以參考下方這篇文章安裝 ⬇️

n8n 自架部署教學|教你用 5 分鐘、5 美金,換來無限自動化自由!
完整介紹使用 Zeabur 自架部署 n8n,附上完整的部署過程圖文,讓你一步步搭建屬於你的自動化工作流平台。

第二步:新增 Discord Bot

到 Discord Developer Portal 登入後,點擊右上角 New Applications,

n8n Discord Trigger 與憑證設置教學 03

第三步:調整設置

接下來是關於 Discord Bot 的設置,跟著圖片教學一步步完成,因為要設定的細節有點多!

  1. 點擊左側 Installation > 將 Install Link 設置為 None > 點擊 Save Changes 儲存
n8n Discord Trigger 與憑證設置教學 04
  1. 點擊左側 Bot,將參數開關調整為以下設置:
  • Authorization Flow(全關)
    • PUBLIC BOT:關閉
    • REQUIRES OAUTH2 CODE GRANT:關閉
  • Privileged Gateway Intents(全開)
    • PRESENCE INTENT:開啟
    • SERVER MEMBERS INTENT:開啟
    • MESSAGE CONTENT INTENT:開啟
n8n Discord Trigger 與憑證設置教學 05
  1. 打開 n8n,點擊新增 Credentials,選擇 Discord OAuth2 API,複製 OAuth Redirect URL,接著回到 Discord Developer Portal
n8n Discord Trigger 與憑證設置教學 06
  1. 點擊左側 OAuth2 > 在 Redirects 欄位填入你剛剛複製的那串 URL,點擊儲存
  2. 接著在下方會看到 OAuth2 URL Generator
    1. SCOPES 勾選 botapplications.commands
    2. BOT PERMISSIONS 勾選 Administrator
    3. 複製 GENERATED URL 並貼上到瀏覽器執行,就會跳轉到把 Bot 加到 Discord 群組的畫面,選擇你要加的伺服器
n8n Discord Trigger 與憑證設置教學 07

第四步:新增 Credentials

有兩個需要新增的 Credentials,分別是 n8n 原有的 Discord 節點,以及 n8n 社群節點 Discord Trigger,先從 n8n 原有的 Discord 節點開始。

💡
建議這些資訊可以先存在記事本中,因為如果要再次查看,則需要重置(Reset),重置後會導致原本使用舊 Token 的 Bot 無法使用
  • Client IDClient Secret:在 Develop Portal 的左側 OAuth2 裡面會找到
  • Bot Token:點擊左側 Bot,找到 Token 下方點擊 Reset Token 就會看到
  • 填入後,點擊 Connect to account,選擇對應伺服器並給予授權即可
n8n Discord Trigger 與憑證設置教學 08

接著是 Discord Trigger 的節點,從 Credentials 中找到 Discord Bot Trigger API

n8n Discord Trigger 與憑證設置教學 09

需要的資訊有:

  • Client IDBot Token:與剛剛的一樣,直接填入
  • n8n API Key:從 n8n Settings 中找到 n8n API
    • 點擊 Create API,輸入方便記住的名字
    • Expiration 設定為 No Expiration
    • 獲得你的 API Key,點擊並複製起來
  • Base URL:將這串的網址網域的部分替換成你的 n8n 網域即可
    • https://n8n.example.com/api/v1

接著點擊儲存,最後最後!我們需要重啟 n8n 伺服器,才能順利啟用 Discord Trigger。

n8n Discord Trigger 與憑證設置教學 10

第五步:測試 Discord Trigger

開啟一個 n8n Workflow,選擇 Discord Trigger,這時候預設會選擇你設定好的 Credentials,所以我簡單介紹一下這個社群節點的設置。

  • Trigger Type
    • 什麼動作會觸發此 Trigger,最常用的是 Message,也就是訊息觸發
    • 其他像是身份組、表情回覆、用戶加入也都可以自行使用
  • Server Names or IDs
    • 選擇要觸發的 Discord 伺服器
  • Listen to Channels
    • 要監聽、觸發 Trigger 的頻道
    • 注意:如果使用多個 Trigger 且監聽範圍重複,可能會導致 Trigger 失效
  • Listen to Roles
    • 要監聽的對象身份組
  • Pattern
    • 特徵,選擇 Every 則是所有,另外也可以設定當訊息開頭、結尾、內容包含哪些指定條件才會觸發
  • Trigger Only on Message Replies
    • 如果打開就代表,只有被回覆時才會觸發,預設關閉即可

接著實際測試一次,這次監聽訊息我使用全部,而身份組與頻道則自訂,點擊 Test Step,並在 Discord 發送訊息就會看到囉!

💡
要特別注意,如果在同一個 n8n 中,設置兩個或以上的 Discord Trigger Credentials,可能會遇到失效的問題!
n8n Discord Trigger 與憑證設置教學 11

這樣就成功啦~如果你覺得這篇文章有幫助到你,也歡迎訂閱我的電子信,未來當 n8n 相關文章與工作流應用更新時,你就能收到最新通知。

此外,有任何問題也都歡迎到 Discord 社群詢問,我製作了實用的 n8n Templates 搜尋 Bot,讓你用口語化的方式,從 1,800 多個官方模板中找出需要的模板!

加入 科技宅阿高 Discord 伺服器!
快到 Discord 上的 科技宅阿高 社群消磨時間,與 231 位成員享受免費的語音與文字聊天。