這篇專門解構「Discord 訊息自動化」:如何將訊息分類,整合 Notion 資料庫,並透過特定 Emoji 反應做完成驗證。
💡 更多自動化工作的教學文章,整理在:【從這開始】100 小時掌握自動化工作術|系列教學文
教學案例:Discord 任務打卡訊息 → Notion 成就自動化

這篇教學將完整拆解,我成功實作的工作流 —— 從 Discord 訊息自動分類、提取學號、更新 Notion 成就,到最後給訊息加上 💎 emoji,打造一個完整、低維護成本的自動化流程。
✅ 本案例使用工具:n8n、Notion API、Discord Bot
這整套流程,從 Discord → Notion 成就更新 → 💎 反應訊息,完全自動化
適合應用在:「任務驗證、打卡紀錄、貢獻追蹤」等社群任務情境中。
👉 重點在於流程中的設計思維,而不只是每顆節點怎麼設。
歡迎你參考本工作流進行調整,也推薦在每個階段加入 Debug 節點觀察資料流動,幫助你建立自己的 n8n 流程理解力 🚀
🧠 整體自動化工作流程概覽
🔧 本案例可學習的 n8n 技巧:
- 使用
HTTP Request
節點,自訂 Discord API 抓取最新訊息(搭配after
參數) - 抓取 Discord
message.id
並回寫 Notion,以作為下次的抓取起點(避免漏訊或重複) - 利用
Code
節點解析訊息文字,自動抽出「學號」等特定格式資料 Switch
節點搭配多條條件組合(文字包含、是否有圖片等)進行分類- 每條分支使用
Set
節點設定對應任務類型(tag),並帶入後續流程 - 使用
Merge
(Append 模式)將多分支合併後送入單一流程處理 - 用 Notion API 執行條件式查找(
Find
)、更新欄位(Update
) - 以
SplitInBatches
搭配 Loop 控制項目逐一處理 - 將 Discord 訊息加上 Emoji 反應作為視覺化「完成提示」
- 整體流程模組化設計,讓每一屆只需更換 database ID 即可重複使用
第一步:使用 Discord API 的 after 參數,避免重複抓訊息
⚠️ 我這次沒有透過 n8n 官方的 Discord node1,而是透過 HTTP Request 做 API 請求,因為我想要只抓取「上次處理過的最後一筆」之後的訊息,已經封裝好的 node 做不到。
https://discord.com/api/v10/channels/{channelId}/messages?after={lastMessageId}
※ 這個是我最後才加上的環節,因為實際跑過一天自動化後,發現如果一下子太多學員回報任務,假設 120 人,但 Discord node 一個週期只能抓 100 筆,這樣只會抓到最新的 100 筆訊息,就有 20 調漏掉。
所以我們需要建一個資料表(可用 Notion 最方便,也可以用 Google Sheet),儲存 Message ID:

- 最新訊息以
message.id
為基準作為游標 - 每次抓完資料後,會把最新的
message.id
回寫到 Notion 的紀錄欄位(last_message_id
)
- 下次定時執行時,就會從這個 ID 之後的訊息開始抓取,這樣可確保:
- ✅ 不會漏訊
- ✅ 不會重複處理
第二步:用 Switch node 判斷訊息條件,搭配 Merge 承接多條分支

n8n 的 Switch node 讓我們可以針對每則訊息,根據不同條件(例如是否含特定文字、連結、圖片)判斷屬於哪個任務類型:
- 工具在手希望無窮(包含關鍵字 + discord.com 連結)
- 認真的人就是好看(包含圖片 + 特定關鍵字)
- ……共 10 種分類條件
每一條路徑都會接一個 Set Tag
節點,用來標記成就名稱。
但是!
🚨 n8n 的 Switch node 雖然支援多條輸出,但如果你不加 Merge,後續流程只會接收到其中一條資料。
因此我們使用 Merge node(Append 模式) 把所有符合條件的訊息資料合併成一批 item,確保後續都能被正確處理。
第三步:Set node 用來標記任務成就類型(tag)

每一條 Switch 路徑都會接一個 Set node,例如:
const tag = $json.tag || "未知成就";
這個值會作為 Notion 中「成就欄位」的更新內容,也可以用來決定最後加什麼 emoji 😎
第四步:Merge node 使用情境與設定技巧
Merge node 是 n8n 中非常核心的一顆節點,用來「整合多個來源資料」。
💡 官方教學文件:許多好圖必看,一看就瞭解用哪種 Mode ⬇️
Append Combine
📌 本應用案例使用的設定如下:
- Mode:Append
- Number of Inputs:10
第五步:Code node 抓出學號(連續 4 碼數字)並組合 Notion 資料
我們會在每則 Discord 訊息中找到「學號」(通常在訊息最後,例如 學號:8392
)
使用正則表達式擷取:
const content = $json.content || "";
const match = content.match(/\\d{4}$/);
const studentId = match ? match[0] : null;
接著,我們把學號與剛剛的 tag 一起輸出:
return [{
json: {
studentId,
notionField: "成就自動化",
notionValue: tag,
messageId: $json.id
}
}];
這樣就能接下來:
- 用
studentId
查找 Notion Database 對應的學員資料(用Find
功能) - 用
notionValue
更新成就欄位 - 用
messageId
回傳表情 💎 到該訊息下方
結論:整套自動化省了我多少時間?
這整套自動化建置下來,每週可以省下 200 次的學員打卡訊息驗證,如果每個打卡人工驗證的話,一個約 3 分鐘,一週就要 10 個小時,現在直接變成 10 分鐘維護,省了 60 倍的時間。
另外,還有一點我會想寫這篇文章的核心原因:
如果你也能像這篇一樣,把自動化需求拆解清楚、流程描述具體,不只更容易溝通,也能大幅加快開發速度。這篇文章剛好示範了,怎麼把「需求」寫成能被實作的工作流。如果你是業主或學員,未來有自動化需求,這樣寫,無論是讓 AI 或是真人,都能更好協助你 🙌🏼
從 Zapier 搬家到 n8n 的考量和過程
不過,其實這整套自動化,我之前是用 Zapier 快速建立,大概花我 30 分鐘建置。
但這次整套搬移到 n8n 卻花了我 3~4 個小時反覆驗證、優化迭代,果然自由度高就是建置麻煩。
不過,Zapier 上的長期維護更麻煩,例如下方是我當初的版本,我每週都要上來更改「Notion 資料庫 ID」,還要重新跑過 Find ID 更改參數,甚至也沒有 Discord 訊息反應的驗證機制:

所以雖然用 Zapier 30~60 分鐘能建置好,但 Notion 訓練營期間,我每週都要上來維護更新個 15 分鐘左右;而 n8n 我這整趟建置好,我只需要「每一屆」更新 Notion 資料庫 ID,大概花我 5 分鐘。
長期下來一屆的維護時間從 60 → 5 分鐘,累積起來也是很可觀的。
新手入門自動化可以 Zapier 感受一下速成魔法,但長期維護、跑的任務越大量,還是建議花些時間把 n8n 學好,未來會感謝自己的!想要開始熟悉 n8n,請參考這邊的系列文章 ⬇️
(晚一點也會把整套工作流 JSON 上傳到我們課程單元,給我們的付費學員 👍🏼)
📍 AI 自動化、n8n 系列教學文章
- 【自動化工具比較】怎麼選自己最適合的自動化工具服務?Zapier、Make、n8n
- 【n8n 部署教學】Zeabur 一鍵自架,享有免費無限流量的自動化工具
- 【n8n 串接 Google 服務教學】API、Credentials 憑證設定,完整步驟圖文解釋
- 【n8n 教學】如何用 Zeabur 自動備份 n8n 工作流、憑證?匯出工作流給他人?
- 【n8n 教學】介面功能說明、Webhook 和自動化工作流應用?
- 【自動化應用解構教學】寄出大量客製化通知信、專屬優惠碼
🆕 立即學習・持續更新:零基礎自動化入門課
📍 我的 零基礎 AI 自動化工作線上課程(已經正式上線,可立即學習)裡,有完整的教學、展示和解構多種跨 APP 的自動化應用&模版範本資源,還有我自製的「自動化工作術 AI 助教」機器人 GPTs,只要是 Zapier、Make、n8n 的問題都能問它,能解決你 80% 以上的問題,還能直接提供 json 讓你複製貼上匯入使用。
甚至提供課後學員社群,我每天都會上去逛;如果你碰上自動化的困難,都可以直接提問,一起交流解決 👍🏼
學會這套,不分你平常用的是什麼 APP(例如 Power Automate 基本只在微軟系統比較好用),或是零基礎小白、已開始踏入自動化的應用的人,這堂課都能讓你立即讓工作更輕鬆。



🚀 這是加入「自動化工具,全方位應用指南教學」課程,能學習到的內容
- ✅ 理解 No-Code 自動化工具的底層邏輯:如何選擇哪些任務,適合自動化?
- ✅ 選擇適合的工具:掌握 Zapier、Make、n8n 的介面特點及選擇策略&n8n 部署教學
- ✅ 掌握 Zapier 的操作和核心功能:以案例解構自動化工具的介面、關鍵功能及操作邏輯
- ✅ 建立第一個自動化工作流:從零開始設計自己的自動化流程
- ✅ 自動化應用案例解構:實際直播從 0 到 1 建構自動化工作流,並整合 AI 應用
- ✅ 深入了解個人和商業的自動化案例,加入課後社群,享受持續更新的補充資源
🤫 老慣例,這堂「AI 自動化工作流課」與我的其他課程一樣,都能加入課後社群與其他學員一起討論,我還會持續補充教學內容,越早購買福利越多!
🙋🏼♂️ 上過課的同學心得評價
- 謝謝雷蒙用入門的角度,讓一直想要踏入的觀望者,有更實際的案例可以參考,尤其是又聽到之後可能會舉辦實體工作坊,有課程內容與實踐小組更能催化我們學習,並製作出真正屬於自己的自動化流程!
- 真的可以感受到你們非常用心的在準備,補充資料也好豐富,非常超值的一堂課!現在上完的感覺,就像是看完雷蒙示範了非常厲害、炫目的魔法,每一招都很想學,但最大的功課還是要想想自己有哪些情境適合使用。
- 上課前完全是自動化小白,並不會阻礙接收新知,雖然上課之前完全沒接觸過 Zapier、n8n,不過課程內容講的真好!很多生活化的應用,推推。以前對於這類新知,會直覺的想說「過程應該很複雜」,就直接放棄接收新訊息。今天聽了以後覺得可以試試看,但最有收穫的地方,是開始知道「原來哪些流程是有機會自動化的」。
謝謝這些同學的分享和推薦,一起讓這堂課被更多需要的人看見,也讓更多人聰明工作、解放時間!
👉 觀看更多學員心得
※ 文章內容補充&註解
- 怎麼建立 Discord Bot?可以直接到 Discord Developer Portal 搭配 AI 詢問,就知道怎麼做囉! ↩︎