前情提要
如果你一路跟著我的腳步,在上一章中我們已經完成了 多平台自動排程發文助理。
但發文只是漏斗的第一步,接下來還有很多工作需要處理。
今天這一篇,我們要把這套系統升級,為你裝上「社群互動助理」。
我們要讓系統自動偵測每一篇貼文、短影音 (Shorts, Reels)、甚至長影片(Youtube)下的留言。
一旦出現我們設定的「關鍵字」,它就會自動回覆並發送私訊,把你準備好的表單或資料遞給對方。
當對方填完表單後,系統不僅會把資料自動建檔到我們的 Notion CRM,還會直接利用 Brevo 自動寄送 Email,把大禮包或資源交到對方手中。
這篇文章,就來分享這套系統是怎麼運作的,以及每個工作流又該怎麼設定。
開始前的重要提醒
這套「社群互動助理」是建立在我們原本的內容生產線上。
如果你還沒有看過並且實作 多平台自動排程發文助理,
請務必 先回去完成那一章的設定,並複製該章節的 Notion 範例資料庫。
因為回覆系統必須依賴該 Notion 資料庫裡的特定欄位才能順利讀取並執行動態回覆。
如果你跳過前置作業,這個助理將會無法運作!
我的系統核心邏輯:如何打造一個不睡覺的互動助理?
這套系統的運作方式很簡單。你在 Notion 發文的時候,就可以一併把「這篇貼文要觸發的關鍵字」、「要回覆的留言內容」、以及「Email 的主旨與內容」通通設定好。
只要有人留言,這套串聯起各大社群平台、表單、CRM 與 Email 系統的機器就會開始運作:
- 偵測關鍵字:掃描留言內容是否命中你設定的字眼。
- 追蹤檢查:如果是 IG, Threads 或 FB,系統會去「看一眼」這個留言的人有沒有追蹤你。有追蹤就給表單,沒追蹤就請對方先追蹤。
- 發送私訊/表單:根據 Notion 裡的設定,看是要直接丟網址給他,還是請他填寫一份自訂的問卷表單。
- 回傳資料入庫:當粉絲填完表單,資料會直接更新到 Notion 的 CRM 資料庫。
- 自動寄信交貨:系統自動透過 Brevo 寄出一封 Email,裡面裝著你答應要給他的資源。
Part 1:你的 Notion 指揮中心設定
再說一次,Notion 是這整套系統的大腦。
在你的「貼文資料庫」裡,有幾個欄位是專門用來控制這套回覆系統的:
Keyword:你想讓機器人偵測的字詞(例如:AI、自動化、+1)。Reply Text:對方留言後,你要在留言區或私訊回覆他的話(例如:「感謝留言!填完以下表單我就會把資料發送到你電郵嚕 + 表單網址」)。Without Form:- 有打勾:代表這只是一個簡單的索取。系統不會發送表單,它只會純粹回覆
Reply Text裡的文字或連結。 - 沒打勾:這代表你想收集名單。系統會暫停直接給資源,而是發送專屬的
Information Form表單。
- 有打勾:代表這只是一個簡單的索取。系統不會發送表單,它只會純粹回覆
Email Title:粉絲填完表單後收到的 Email 主旨。Email Content:粉絲收到的 Email 內文(你可以用 HTML 語法來排版,並把最重要的資源下載連結放在這裡)。
把這些設定好,後面的苦工,互動助理會幫你處理好,
再也不能煩惱 4 個平台都要處理留言的問題,
就是當你把 Reels 利用多平台發佈助理到 IG,FB,Threads 及 Youtube 變成 Shorts 的之後,
這套系統就能幫你處理所有平台的留言了。
Part 2:拆解各個獨立工作流 (Workflow)
因為這是一套牽連甚廣的系統,我把它拆分成了多個獨立的工作流,讓你可以針對不同的平台去部署。
接下來,我會帶你把這些工作流拆開來看,告訴你裡面的節點 (Node) 是怎麼設定的。
💡 節點顏色圖例說明:
🟢 需要你手動改動/輸入參數的節點
🔴 系統已經寫好,不需要去動它的節點
工作流一:Threads Reply Webhook
節點設定詳解:
- Threads Webhook (Access) 🟢:用來驗證 Meta Webhook,Path 可以自訂名稱(例如我設為
dou-threads)。 - My Key? 🟢:對比密碼,確認是否是你本人使用。在
{{ $json.query['hub.verify_token'] }}下方填入你的自訂密碼並記住,稍後我們會到 Meta Developer 填上這組密碼。 - Respond to Webhook 🔴:回傳節點,告訴 Meta「我收到了」。
- Threads Webhook 🟢:這是負責監聽 Meta 傳來訊號的大門,一有人留言就會觸發。Path 必須跟
Threads Webhook (Access)節點設定的一模一樣。 - Remove Duplicate 🔴:防洗版機制!這是為了避免重複回覆同一個粉絲。如果系統發現有重複的留言,就會直接停止流程。
- Setting 🟢:
memberNumber: 你的成員編號 (就是用來區分不同社交媒體帳號的編號)platform: 填入這是哪一個平台 (這裡是寫Threads)。webhook_information_form: 系統會根據這個連結去觸發表單(打開「工作流六」,把那邊Information Form節點的 Production URL 貼進來)。owner_username: 系統會用這個帳號名稱去檢查對方是否追蹤你(例如我的 threads 為:charlsondou)。- Cookie 大法 (⚠️ Threads 必須填入四組):
ig_ds_user_id: 請用你的帳號登入電腦版 IG,按F12打開開發者工具。找到Application->Cookies->https://www.instagram.com,然後找到名稱為ds_user_id的值。ig_sessionid: 位置同上,找到名稱為sessionid的值。th_ds_user_id: 接著去電腦版 Threads 頁面,同樣打開Application->Cookies->https://www.threads.com/,找到ds_user_id的值。th_sessionid: 位置同上,找到sessionid的值。
- Get Threads Token 🔴:會根據剛剛 Setting 裡面的設定,去抓取對應帳號的 Threads Token。
- Myself? 🔴:防呆機制。因為「你自己發的留言」,Meta 也會傳進來,所以要判斷並過濾掉自己的留言。
- Get Data 🔴:去 Notion 查出你有哪些貼文是有設定關鍵字的。
- Get API Key 🔴:根據 Setting 節點中的
memberNumber去抓取我伺服器的 API Key。 - Reply 🔴:把資料傳給我的伺服器。我的伺服器會幫你處理「追蹤檢查」、「私訊回覆」與「表單連結的發送」。
- IF 🔴:如果 Reply 伺服器發現你的 Cookies 已經過期,或是不確定對方有沒有追蹤自己,就會觸發 IF 節點。
- Send a Message 🟢:警報器!發電郵告訴你 Cookies 已過期,記得去更新 (請在節點裡的
To填入你的電郵信箱)。 - Schedule 🔴:每天定時發動一次的清理機制。
- Clean Data 🔴:把
Remove Duplicates節點存下來的記憶快取清掉 (我有資料潔癖)。
如何到 Meta Developer 設定 Webhook:
進到 Meta Developer Console,打開你的 App (之前在發文助理教學中建立好的那個)。
在左側選單找到 使用案例 -> 存取 Threads API -> Threads 專用 Webhooks。
在 Moderate 點擊 Edit Subscription。
- 回呼網址:填入
Threads Webhook (Access)節點的 Production URL。 - 驗證權杖:填入剛剛在
My Key?節點中設定的密碼。 - 雙向 TLS:選「否」。
💡 小撇步:按「驗證並儲存」之前,請務必確認你的 n8n 工作流已經按下 Active 啟動了! 不然 Meta 測試連結時會找不到人。

工作流二:Threads Reply (Cron) 漏接補救班
Threads 目前是流量成長最快的地方,但它的 Webhook 偶爾會漏接。
人家明明留言了,Meta 卻裝死不通知我們的 n8n。
所以我寫了這支第二防線(Cron Job)。
節點設定詳解:
- Threads Comment 🔴:設定每 1 小時啟動一次。
- Setting 🟢:
memberNumber: 你的成員編號。platform:Threads。webhook_information_form: 一樣貼上「工作流六」那個表單生成器的 Webhook Production URL。
- Get Threads Token 🔴:去抓取 Threads Token。
- Get Data 🔴:查出 Notion 裡有設定關鍵字的貼文。
- Loop Over Items 🔴:把留言一個一個拿去比對,看有沒有符合關鍵字。
- Get API Key 🔴:抓取我伺服器的 API Key。
- Reply 🔴:我的伺服器會處理回覆留言與發送表單連結。
💡 注意:這支 Cron 補救工作流不會做「追蹤檢查」。為了避免資源浪費與過度複雜,它會直接看 Notion 裡
Without Form的設定,直接把資源丟給對方,確保沒人被漏掉。
工作流三:Instagram Reply Webhook
節點設定詳解:
- IG Webhook (Access) 🟢:驗證 Meta Webhook 用,Path 可自訂(例如我設為
dou-ig-comment)。 - My Key? 🟢:
{{ $json.query['hub.verify_token'] }}下方填入自訂密碼。 - Respond to Webhook 🔴:回傳給 Meta。
- IG Comment 🟢:監聽大門,一有人留言就會觸發。Path 必須跟
IG Webhook (Access)設的一樣。 - Setting 🟢:
memberNumber,platform(寫Instagram),webhook_information_form設定與前面相同。owner_username: 你的 IG 帳號名稱,用來檢查對方是否追蹤你。ig_ds_user_id&ig_sessionid: 跟 Threads 那邊教的一樣,按F12去找 Cookies 的值貼上。
- Get IG Token 🔴:抓取對應帳號的 IG Token。
- Myself? 🔴:過濾掉自己發的留言。
- Get Data 🔴:從 Notion 抓取關鍵字名單。
- Get API Key 🔴:抓取我伺服器的 API Key。
- Reply 🔴:把追蹤檢查與私訊的髒活交給伺服器處理。
- IF 🔴: Cookie 失效防線。
- Send a Message 🟢:填入你的 Email,Cookie 過期時會發警報給你。
如何到 Meta Developer 設定 Webhook:
進到 Meta Developer Console,進去你的 Instagram 專用 App。
左側點擊 Instagram -> 含有 Instagram 登入的 API 設定 -> 產生存取權杖 -> 打開 Webhook 訂閱。
(註:這裡可能要先產生權杖才能打得開訂閱按鈕,但這個權杖對我們這段流程其實沒什麼用,我以前影片教的放法有點小誤區,等一下會教你正確的。)
打開 Webhook 訂閱之後,去 設定 Webhooks -> 回呼網址 -> 貼上 IG Webhook (Access) 節點的 Production URL。
驗證權杖 -> 貼上 My Key? 節點的密碼。
按「驗證並儲存」(一樣,請先啟動 n8n 工作流)。
Webhook 訂閱欄位管理:
出現清單後,只選擇把 comments 的訂閱打開就好。

💡 正確獲取 Token 的方法:
接著去左手邊的 Messenger -> Instagram 設定 -> 粉絲專頁 -> 產生權杖(如果沒有粉專,請先建一個)。
這支產生出來的 Token,才是我們要放在 n8n Data Table 的 Comment_DM_Token 欄位裡面的東西!請手動把它覆蓋更新。

工作流四:Facebook Reply Webhook
節點設定詳解:
- FB Webhook (Access) 🟢:驗證 Meta Webhook 用,Path 可自訂(例如我設為
dou-fb-comment)。 - My Key? 🟢:
{{ $json.query['hub.verify_token'] }}下方填入自訂密碼。 - Respond to Webhook 🔴:回傳節點。
- FB Comment 🟢:監聽大門。Path 必須跟
FB Webhook (Access)設的一樣。 - Setting 🟢:大同小異,但有三個地方要特別注意!
owner_id: 系統會用這個 ID 去檢查對方是否追蹤你。這個 ID 跟 IG/Threads 的英文字母帳號不一樣,我們要到自己的 FB 粉專,然後看網址列https://www.facebook.com/profile.php?id=後面的那一串數字,就是這個 ID!fb_ds_user_id: 登入 FB 後按F12看 Cookies,找到名稱為c_user的值貼進來。fb_sessionid: 找到名稱為xs的值貼進來。
- Get FB Token 🔴:抓取 FB Token。
- Myself of Like? 🔴:防呆機制。這顆比 IG 的更囉嗦,因為 Meta 除了留言,連「有人按讚」、「自己刪文」等奇奇怪怪的動作都會傳進來,所以得過濾掉。
- Get Data 🔴:回 Notion 抓關鍵字名單。
- Get API Key 🔴:抓我伺服器的 API Key。
- Reply 🔴:伺服器接棒處理流程。
- IF 🔴: Cookie 失效防線。
- Send a Message 🟢:填寫你的警報 Email。
💡 小撇步 (超重要!):最好開一個新的「小號」,然後把粉專的權限也授權給這個小號。在抓 Cookie 時,利用小號的 Cookies 給 Setting 節點。因為以我的經驗,Facebook 非常喜歡登出並強制更新本尊帳號的 Cookies;而用小號的 Cookie,會穩定很多!
如何到 Meta Developer 設定 Webhook:
進到 Meta Developer Console,去 Instagram 專用的那個 App。
左側選 Messenger -> Messenger API 設定 -> 設定 Webhooks -> 回呼網址 -> 貼上 FB Webhook (Access) 節點的 Production URL。
驗證權杖 -> 貼上密碼。驗證並儲存。
Webhook 訂閱欄位管理:
只選擇把 feed 和 messages 這兩項的訂閱打開。
接著到下方的 產生存取權杖 -> 在你的粉專那列點擊「產生權杖」 -> 把這串 Token 貼到 n8n Data Table 的 Comment_DM_Token 欄位裡(記得要確認對應的 Platform 是 Facebook 以及你的帳號)。

工作流五:YouTube Reply (長影音與 Shorts)
節點設定詳解:
- Youtube Comment 🔴:設定每 5 分鐘主動去掃描一次。
- Setting 🟢:
memberNumber: 你的成員編號。platform: 填入Youtube。webhook_information_form: 一樣貼上 Information Form 的 Webhook Production URL。
- Get Data 🔴:去 Notion 比對這篇影片的
Keyword。 - Loop Over Items 🔴:把留言一個個拉出來比對關鍵字。
- Get API Key 🔴:抓我伺服器的 API Key。
- Reply 🟢:我的伺服器會直接在 YT 留言區底部回覆,並附上表單連結或純文字。
- 重要:這裡的節點需要你在
OAuth2 API Credential選擇 Google 的 Credential(直接選你之前在 Youtube 發佈子工作流設定好的那個 Credential 就可以了)。
- 重要:這裡的節點需要你在
⚠️ 為什麼 YouTube 版本不檢查有沒有訂閱?
雖然 YT 有提供 API 可以查對方有沒有 Subscribe 自己,但也允許使用者「把訂閱名單設為不公開」。當對方隱藏名單時,API 回傳的空白 JSON 格式,跟「沒有 Subscribe 自己」的 JSON 一模一樣。因為無法有效判斷對方是真的沒訂閱,還是單純隱私設定不公開,為了不冤枉粉絲,目前我們只能妥協:只要關鍵字對了,就直接在留言區回覆表單連結。
工作流六:Information Form (製作問卷)
這是當 Notion 的 Without Form 沒打勾時,負責產生動態問卷的中繼站。
當粉絲想要你的資源,系統會生成一個專屬他的問卷頁面。總共可以自訂高達 10 條問題。
節點設定詳解:
- Infomation Form 🟢:這是一個 Webhook,用來自訂 Path(例如我設為
infomation-form)。這也就是上面所有工作流裡都要填入的webhook_information_form網址來源! - Setting 🟢:
memberNumber: 你的成員編號。webhook_form_receiver: 這是「資料歸途」的網址。請把下方那支「工作流七」裡的 Form Receiver Production URL 貼進來。question_1到question_10: 這裡就是自訂你的表單要問什麼問題!(如果某個問題是必填的,請在題目名稱的「前後打出星號」,例如* 名字 **)。
- HTML 🔴:負責將所有的設定吐成漂漂亮亮的 HTML 表單網頁給粉絲填。
- Respond to Webhook 🔴:回應節點。
工作流七:Form Receiver & Email 寄送 (資料歸檔)
當粉絲老實地填完那 1-10 個問題並按下送出後,資料就會打向這支名叫 Form Receiver 的工作流。
節點設定詳解:
- Form Receiver 🟢:這是一個 Webhook,用來自訂 Path(例如
form-receiver)。 - Post ID Filter 🔴:根據表單傳過來的 Post ID,跑去 Notion 查他當初到底是留言了哪一篇文章的關鍵字。
- Send Email 🟢:利用 Brevo 把資源 Email 傳給對方。
- 請把節點裡的
Sender改成你自己的 Email 地址。 - 👉 (等一下會教你怎麼拿 Brevo 的 API Key)。
- 請把節點裡的
- Get Data (CRM) 🔴:找出我們存在 Notion 裡的 CRM Database 準備寫入資料。
- Existed? 🔴:利用填寫的 Email 來查核,判斷這位粉絲是不是我們資料庫裡的新名單。
- 最後面的節點會依據邏輯,自動執行「更新舊名單」或「新增一筆新名單」到 Notion CRM 裡面。
✉️ Brevo API 申請教學
先去 Brevo 官網 註冊登入 -> 進入後台右上角找到 Setting -> SMTP & API -> API Keys & MCP -> 點擊 Generate a new API Key。
把這串很長的鑰匙複製起來,回到 n8n 的 Send Email 節點,新增一個 Credential 貼上去就可以了!

全自動運轉的社群互動助理
完成這一切後,你的業務運作將會變成這樣:
- Notion 寫好文章,設定關鍵字
送優惠,並把準備在 Email 發出的優惠連結填好。 - 系統日間幫你自動把貼文發佈到 Youtube, Instagram, Facebook 及 Threads。
- 你正在忙店的業務之時,有人在貼文下面留言了。
- 系統自動確認他有追蹤你,瞬間私訊回覆他,並附上表單連結。
- 對方填完問卷送出,名單自動進入你 Notion 的 CRM 建檔。
- Brevo 自動發出一封精美的信,把優惠連結送到他的信箱。
- 你起床打開 Notion,已經有 10 個準客戶名單在那等著你聯絡與分析了。
你不用一直刷新螢幕看有沒有人留言,也不用怕漏信得罪粉絲。
下一步,我正在思考如何幫這個 CRM 加上更多追蹤與再行銷的功能。如果有什麼特別想要的功能,記得在群裡告訴我!
🎁 資源下載區
整個「社群互動助理」的工作流與設定檔都在這裡,請依照你的平台需求下載匯入。
👉 加入自動化社群
如果你對這套系統感興趣,或者在嘗試搭建的過程中遇到問題,
歡迎加入我的 Discord 社群,有任何卡關的地方,都可以直接在群裡找我。
付費會員會有一個專屬的私人頻道,
你可以在那裡直接告訴我你在自動化過程中遇到的痛點。
如果這是一個大家都有的需求,我會親自開發解決方案,並把它整合進系統裡。
讓我們一起把它變得更強大。


