工作流介紹
從自動退訂電子郵件中取消訂閱 Mautic 聯絡人 – 工作流程分析
此 N8n 工作流程範本旨在透過整合流行的開源行銷自動化平台 Mautic,來自動管理透過 Gmail 收到的電子郵件退訂要求。當有人在主旨或內文(或相關欄位)中包含「unsubscribe」的電子郵件時,此工作流程會識別寄件人,驗證他們在 Mautic 中的聯絡人狀態,並透過更新相關區隔、選擇性地將他們加入「請勿聯絡」名單,以及回覆確認信來自動處理他們的選擇退出要求。
整個流程在 n8n 的事件觸發自動化中運行,消除了手動干預,並確保遵守及時處理選擇退出的電子郵件行銷最佳實務。
工作流程功能
此工作流程會監聽透過 Gmail 收到的電子郵件,篩選出看似退訂要求的郵件,提取寄件人的電子郵件地址,檢查他們是否存在於您的 Mautic CRM 中,然後執行多項自動化操作:
- 將聯絡人加入「已退訂」區隔
- 將他們從活躍的行銷區隔(例如:電子報)中移除
- 選擇性地將他們加入 Mautic 的「請勿聯絡」名單
- 發送自動回覆確認退訂
它確保了對退訂要求的及時、準確且可擴展的管理,而無需在設定後進行使用者輸入。
主要功能與能力
- ✅ 即時電子郵件監控:使用 Gmail Trigger 節點每分鐘輪詢新郵件,包括垃圾郵件/垃圾桶資料夾。
- ✅ 智慧篩選:使用基於收件者(「To」)欄位內容的條件邏輯,識別合法的退訂要求。
- ✅ 電子郵件解析邏輯:使用自訂 JavaScript 代碼處理複雜的「From」欄位格式(例如:
John Doe <[email protected]>)。 - ✅ 重複預防:在查詢 Mautic 之前匯總唯一的電子郵件地址,提高效率並避免冗餘的 API 呼叫。
- ✅ CRM 整合:與 Mautic 無縫互動,以更新聯絡人區隔和通訊偏好。
- ✅ 自動回覆:發送個人化的自動回覆,確認已成功選擇退出。
- ✅ 可設定選項:透過「Edit Fields」節點集中設定,可輕鬆自訂電子郵件地址和回覆訊息。
- ✅ 可擴展且可靠:一次處理多個退訂要求,同時保持資料完整性。
主要節點及其用途
| 節點名稱 | 類型 | 用途 |
|---|---|---|
| Gmail Trigger | Trigger | 即時監聽新進的電子郵件;每分鐘輪詢一次,並包含垃圾郵件/垃圾桶,以捕捉所有可能的退訂訊息。 |
| Edit Fields | Set | 儲存可設定的值,例如使用者自己的電子郵件地址和退訂回覆訊息。作為中央設定點。 |
| Is automated unsubscribe? | If Condition | 篩選「To」欄位包含「unsubscribe」且寄件人與設定的電子郵件不同(以避免自我觸發)的郵件。 |
| Extract Email from 'From' Field | Code (JavaScript) | 使用正規表示式解析原始的「From」標頭以提取乾淨的電子郵件地址,支援 [email protected] 和 "Name <[email protected]>" 格式。 |
| Extract Unique Email Addresses | Code (JavaScript) | 使用 Set 去除重複的已解析電子郵件,防止來自同一寄件人的多封郵件造成冗餘操作。 |
| Get Mautic Contact ID from Email Address | Mautic | 使用已解析的電子郵件地址查詢 Mautic API 以檢索聯絡人詳細資訊 (search=email:...)。僅返回一個結果 (limit=1)。 |
| If Contact Exists in Mautic | If Condition | 檢查查詢的聯絡人是否存在於 Mautic 中(即是否有 id)。據此決定後續步驟。 |
| Add to unsubscribed segment | Mautic | 將已識別的聯絡人加入預定義的 Mautic 區隔(ID:3),表示他們已退訂。 |
| Remove newsletter segment | Mautic | 將聯絡人從另一個區隔(ID:1)中移除,該區隔可能用於電子報或行銷活動。 |
| Add to Do Not Contact List | Mautic (disabled) | 會將聯絡人標記為 Mautic 中的「請勿聯絡」;目前已停用,但可啟用以實現更嚴格的合規性。 |
| Reply Unsubscribe Message | Gmail | 使用儲存在「Edit Fields」中的可自訂成功訊息,直接回覆原始電子郵件線程。 |
| Sticky Notes | Documentation | 為設定工作流程的使用者提供逐步設定說明和背景資訊。 |
使用案例與效益
理想適用於:
- 透過 Mautic 管理大型訂閱者名單的行銷團隊
- 需要遵守 GDPR、CAN-SPAM 或其他隱私權法規的企業
- 自動化客戶通訊並減少手動任務的代理機構
- 任何希望提高電子郵件參與度並降低退回/投訴率的組織
主要效益:
- ⏱️ 節省時間:無需手動處理每封退訂要求。
- 🛡️ 提高合規性:確保立即處理選擇退出,降低法律風險。
- 🔁 減少人為錯誤:自動化可防止遺漏或重複輸入。
- 💬 提升使用者體驗:向退訂的使用者發送即時確認。
- 📈 保持名單衛生:自動保持 Mautic 區隔的清潔和最新狀態。
工作流程邏輯步驟詳解
以下是工作流程的順序執行方式:
-
觸發:偵測到進件郵件
- 每當有新郵件到達時(每分鐘檢查一次),Gmail Trigger 節點就會啟動。
- 它會擷取完整的郵件元資料,包括
From、To、Subject和id。
-
設定配置
- Edit Fields 節點定義兩個關鍵變數:
emailAddress:您的公司電子郵件(例如:[email protected])unsubscribeMessage:確認退訂的自動回覆文字
- Edit Fields 節點定義兩個關鍵變數:
-
篩選有效退訂要求
- Is automated unsubscribe? 條件檢查:
- 「To」欄位中是否存在「unsubscribe」? → 可能是選擇退出要求
- 寄件人是否與您設定的電子郵件不同? → 防止迴圈/自我觸發
- 只有同時通過這兩個條件的郵件才會繼續。
- Is automated unsubscribe? 條件檢查:
-
解析寄件人電子郵件地址
- Extract Email from 'From' Field 節點使用 JavaScript 從各種格式中提取實際的電子郵件地址:
"[email protected]" → [email protected] "Alice Smith <[email protected]>" → [email protected] - 輸出:
{ "extractedEmail": "[email protected]" }
- Extract Email from 'From' Field 節點使用 JavaScript 從各種格式中提取實際的電子郵件地址:
-
去重複化電子郵件地址
- Extract Unique Email Addresses 節點收集所有已解析的電子郵件,並使用 JavaScript
Set去除重複項。 - 這可以避免對同一人進行不必要的重複 API 呼叫到 Mautic。
- Extract Unique Email Addresses 節點收集所有已解析的電子郵件,並使用 JavaScript
-
在 Mautic 中尋找聯絡人
- Get Mautic Contact ID from Email Address 節點查詢 Mautic:
search=email:[email protected] - 如果找到,則返回包含
id的聯絡人資訊;否則返回空值或最少資料。
- Get Mautic Contact ID from Email Address 節點查詢 Mautic:
-
檢查聯絡人是否存在
- If Contact Exists in Mautic 條件評估:
$json["id"]是否存在且不為空?
- 如果是 → 繼續更新 Mautic 記錄
- 如果否 → 仍跳轉到發送回覆(即使不在系統中也要確認)
- If Contact Exists in Mautic 條件評估:
-
更新 Mautic 區隔
- 三項並行的 Mautic 操作發生:
- ✅ Add to unsubscribed segment(區隔 ID:3)
- ✅ Remove from newsletter segment(區隔 ID:1)
- ⚠️ Add to Do Not Contact List — 目前已停用,但可啟用
- 三項並行的 Mautic 操作發生:
-
發送確認回覆
- Reply Unsubscribe Message 節點使用 Gmail API 直接回覆原始電子郵件線程。
- 訊息內文來自
$node["Edit Fields"].json["unsubscribeMessage"] - 維持對話歷史記錄並為寄件人提供結束感。
-
完成
- 無論聯絡人是否存在於 Mautic 中,工作流程都會順利結束。
- 所有有效的退訂嘗試都會收到回覆並被系統化處理。
摘要
此 n8n 工作流程提供了一個強大、低程式碼的解決方案,用於管理 Gmail 和 Mautic 中的退訂要求。透過結合觸發器、條件、程式碼邏輯和整合,它使企業能夠維持合規、專業且高效的電子郵件行銷營運 — 所有這些都只需最少的持續努力。透過 Sticky Notes 的清晰文件和模組化設計,它也非常適合不同的使用案例和組織需求。
使用方法:下載 JSON 檔案,然後在 n8n 中選擇「從檔案匯入」。