Discord 自動發文實戰:如何申請 Bot Token 並打造「分眾推播」系統? (n8n 子工作流)

前情提要

如果你是從 多平台自動發文系統 (Main Workflow) 這篇文章過來的,
這裡就是你要找的 「Discord 子工作流」。

對我來說,Threads 和 Instagram 是「公海」,是用來觸及泛流量的;
而 Discord 才是我的「私域」,這裡面的每一個人,都是精準的對象。

比起期待別人看到我的 IG Reels 或 Youtube 影片,
我更傾向於主動把內容推播給 Discord 的成員。
因為他們才是真正對內容感興趣的夥伴。


下載區

老樣子,工具我都準備好了:

  1. 📥 這裡下載 Discord 發文助理 (Sub-workflow)
  1. Backend API Key:你需要這個鑰匙來啟動我的後端服務。

Step 1: 申請 Discord Bot Token

跟 FB/IG 那種每兩個月就要換一次 Token 的麻煩事不同,
Discord 的 Bot Token 是永久有效的,
這意味著設定一次,終身受用。

流程非常簡單,跟著我做:

1. 建立 Application

前往 Discord Developer Portal。

  • 點擊右上角的 New Application。
  • 取個名字(例如:n8n-bot),這也是之後身分組顯示的名稱。
  • 勾選同意條款,按下 Create。

2. 建立 Bot

  • 在左側選單點擊 Bot。
  • 這邊你可以設定機器人的頭像 (Icon) 和名稱 (Username)。

⚠️ 關鍵步驟:開啟權限 (Privileged Gateway Intents)
往下滑,找到 Privileged Gateway Intents 區塊。
請務必把這三個開關都打開:

  • Presence Intent
  • Server Members Intent
  • Message Content Intent

3. 設定 Bot Permissions

  • 往下滑找到 Bot Permissions。
  • 勾選 Send Messages。
  • 勾選 Embed Links。
  • 勾選 Attach Files。
  • 勾選 Mention Everyone (如果你需要它 Tag 人的話)。

4. 取得 Token

  • 回到頁面最上方,找到 Token 附近的 Reset Token 按鈕。
  • 點擊下去,它會生成一串亂碼。
  • 先把它記住,待會我們需要利用它設定 n8n 的節點。

5. 邀請機器人進你的伺服器

  • 左側選單選 OAuth2 -> OAuth2 URL Generator。
  • Scopes 勾選:bot。
  • Bot Permissions 勾選:
  • 複製最下方的 Generated URL。
  • 在瀏覽器貼上這個網址,選擇你的伺服器,按下授權。

Step 2: 取得 Channel ID

伺服器有一個,但頻道有那麼多個,機器人不會知道要發到哪一個頻道。
我們需要告訴它明確的 Channel ID。

  1. 打開 Discord 設定 -> 應用程式設定 -> 進階。
  1. 開啟 開發者模式 (Developer Mode)。
  1. 回到你的伺服器,對著你想發文的頻道(例如 #一般 或 #公告)按右鍵。
  1. 點擊最下方的 複製頻道 ID。

請把你需要的頻道 ID 都複製下來備用:

  • 一般閒聊頻道 ID
  • 影片發布頻道 ID
  • Reels/短影音頻道 ID

💡 小撇步:私人頻道怎麼辦?

如果 Bot 需要發私人頻道,則需要將 Bot 加入私人頻道,並取得私人頻道的 ID。
在類別 / 頻道名稱上按右鍵,選擇 編輯 -> 權限 新增成員或身分組,將 Bot 加入。


Step 3: n8n 工作流解析

首先把 Discord 發文助理 (Discord Post (Sub)(Template)) 匯入你的 n8n。

智慧分流

系統會根據 Notion 傳過來的 Type 或 Platform 標籤,自動決定要把貼文丟到哪裡。

  • Youtube Video?:如果類型是 Video 且平台包含 Youtube -> 自動發送到 Video Channel (例如 #新片通知)。
  • Instagram Reels?:如果類型是 Reels 且平台包含 Instagram -> 自動發送到 Reels Channel (例如 #短影音專區)。
  • Newsletter?:如果是電子報 -> 發送到 Newsletter Channel。
  • 其他:如果都不是,就發送到預設的 General Channel。

工作流中有 4 個 Setting 節點,分別對應 4 個頻道:

  • Setting (Discord Newsletter Channel ID)
  • Setting (Discord Video Channel ID)
  • Setting (Discord Reels Channel ID)
  • Setting (Discord General Channel ID)

請在這些節點裡,把 Channel ID 換成你剛剛複製的那串數字。
這只是我的範例,你可以根據自己的需求新增或刪減。

設定 Credentials

這裡會稍微複雜一點,因為我們要同時設定 API Key 資料庫 與 n8n 認證。

1. 取得 API Key

前往 會員後台 申請你的專屬 Key。

2. 設定 Get Token 節點 (Data Table)

工作流中用到了一個 n8n 內建的 Data Table 來管理你的 API Key。

  • 點擊 Select Table -> Create New DataTable。
  • 建立欄位:

3. 設定 Discord Publish (Backend) 節點

工作流中的 Discord Publish (Backend) 節點需要透過 Header 驗證來呼叫我的後端 API。

  • 點擊節點中的 Authentication,確保選的是 Header Auth。
  • 建立一個新的 Header Auth 憑證:

4. Get Content 及 Upload Post ID 節點

這裡我們要讓 n8n 有權限讀取你的 Notion 資料庫。
如果你還沒申請過 Notion API Key,請先參考這篇 Notion 連接教學。
注意這些節點你只需要設定 Credential,其他都不用動。

5. Get IG Token 節點

選擇你存放 IG Token 的 Data Table。
如果你沒有跟我一起設定 IG Token 的 Data Table,可以參考這篇 IG Token 申請教學。


結語

以後每當 Notion 寫完文章,勾選 Discord,它就會自動推送到對應的頻道。
不要白白的把辛苦寫的內容,埋沒在 IG, FB, Threads 的演算法中。

現在,你的虛擬助理團隊又多了一位強力成員了。

加入自動化社群

如果你對這套系統感興趣,或者在嘗試搭建的過程中遇到問題,
歡迎 加入我的 Discord 社群,有任何卡關的地方,都可以直接在群裡找我。

👉 立即加入自動化討論群組

付費會員會有一個專屬的私人頻道,
你可以在那裡直接告訴我你在自動化過程中遇到的痛點。
如果這是一個大家都有的需求,我會親自開發解決方案,並把它整合進系統裡。

讓我們一起把它變得更強大。

留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *