iT邦幫忙

2025 iThome 鐵人賽

0
DevOps

Mac 環境 n8n 30 天學習計畫系列 第 29

Day 29|實作 Part 3:通知

  • 分享至 

  • xImage
  •  

🎯 專案總覽

主題:學生日程自動提醒系統

Google Calendar → n8n → Function / AI → Email 或 LINE Notify


🧭 今日任務路線圖

步驟 任務 成功標準
1️⃣ 使用 Cron 排程觸發每日執行 每天早上 9:00 自動啟動
2️⃣ Function 處理並整合訊息 輸出可讀的行程提醒
3️⃣ 發送 Email 或 LINE Notify 自動寄出通知
4️⃣ 寫下測試結果與心得 驗證整體運作順利

🪄 一、Cron 排程設定(每日執行)

  1. 拖入 Cron Node

  2. 設定:

    • 模式:Every Day
    • 時間:09:00(早上九點)
    • 時區:Asia/Taipei

✅ 測試時可暫時改成每分鐘執行(方便檢查流程是否正確)。


🧩 二、輸入資料:Google Calendar(延續 Day27)

確認 Google Calendar Node 已能輸出以下格式的 JSON:

[
  {
    "summary": "期中報告準備",
    "start": { "dateTime": "2025-10-29T09:00:00+08:00" },
    "end": { "dateTime": "2025-10-29T10:00:00+08:00" },
    "description": "與同學討論報告方向"
  },
  {
    "summary": "體育課",
    "start": { "dateTime": "2025-10-29T13:00:00+08:00" },
    "end": { "dateTime": "2025-10-29T15:00:00+08:00" },
    "description": ""
  }
]

⚙️ 三、資料處理:Function Node

(延續 Day28)
輸出格式:

{
  "message": "📅 今日行程提醒\n1. 期中報告準備:09:00~10:00(與同學討論報告方向)\n2. 體育課:13:00~15:00"
}

✉️ 四、通知方式一:Email(SMTP)

1️⃣ 新增 Email Node

  1. Node 名稱:Send Email

  2. 連接上一個 Function Node

  3. 模式選擇:SMTP

  4. 填入:

    • Host: smtp.gmail.com
    • Port: 465
    • User: 你的 Gmail
    • Password: 應用程式密碼(非登入密碼)
    • SSL/TLS:✅ 開啟

2️⃣ 設定內容:

  • To Email你的信箱
  • Subject📅 今日行程提醒
  • Text={{$json["message"]}}

測試結果(信箱)

主旨:📅 今日行程提醒
內容:
📅 今日行程提醒
1. 期中報告準備:09:00~10:00(與同學討論報告方向)
2. 體育課:13:00~15:00

💬 五、通知方式二:LINE Notify(替代 Email)

Step 1️⃣|取得 LINE Notify Token

  1. 前往 👉 https://notify-bot.line.me/my/

  2. 登入後點擊「發行權杖」

  3. 欄位:

    • 權杖名稱:n8n daily reminder
    • 權限:選擇「發送訊息給自己」
  4. 取得後,會看到一段類似:

    Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    

Step 2️⃣|n8n 設定 HTTP Request Node

  1. 新增 HTTP Request Node

  2. Method:POST

  3. URL:https://notify-api.line.me/api/notify

  4. Headers:

    Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxx
    Content-Type: application/x-www-form-urlencoded
    
  5. Body:

    message={{$json["message"]}}
    
  6. Encoding:Form URL-Encoded


測試結果(LINE)

📅 今日行程提醒

  1. 期中報告準備:09:00~10:00(與同學討論報告方向)
  2. 體育課:13:00~15:00

🔍 六、整體測試流程(最終版)

Cron(每日9點)
     ↓
Google Calendar → Function(整理文字)
     ↓
AI Node(可選,生成自然語句)
     ↓
Email / LINE Notify

上一篇
Day 28|實作 Part 2:資料處理(AI / Function)
下一篇
Day 30 — 最終日:成果回顧
系列文
Mac 環境 n8n 30 天學習計畫30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言