主題:學生日程自動提醒系統
Google Calendar → n8n → Function / AI → Email 或 LINE Notify
步驟 | 任務 | 成功標準 |
---|---|---|
1️⃣ | 使用 Cron 排程觸發每日執行 | 每天早上 9:00 自動啟動 |
2️⃣ | Function 處理並整合訊息 | 輸出可讀的行程提醒 |
3️⃣ | 發送 Email 或 LINE Notify | 自動寄出通知 |
4️⃣ | 寫下測試結果與心得 | 驗證整體運作順利 |
拖入 Cron Node
設定:
Every Day
09:00
(早上九點)Asia/Taipei
✅ 測試時可暫時改成每分鐘執行(方便檢查流程是否正確)。
確認 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": ""
}
]
(延續 Day28)
輸出格式:
{
"message": "📅 今日行程提醒\n1. 期中報告準備:09:00~10:00(與同學討論報告方向)\n2. 體育課:13:00~15:00"
}
Node 名稱:Send Email
連接上一個 Function Node
模式選擇:SMTP
填入:
smtp.gmail.com
465
你的信箱
📅 今日行程提醒
={{$json["message"]}}
✅ 測試結果(信箱)
主旨:📅 今日行程提醒
內容:
📅 今日行程提醒
1. 期中報告準備:09:00~10:00(與同學討論報告方向)
2. 體育課:13:00~15:00
登入後點擊「發行權杖」
欄位:
n8n daily reminder
取得後,會看到一段類似:
Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
新增 HTTP Request Node
Method:POST
URL:https://notify-api.line.me/api/notify
Headers:
Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/x-www-form-urlencoded
Body:
message={{$json["message"]}}
Encoding:Form URL-Encoded
✅ 測試結果(LINE)
📅 今日行程提醒
- 期中報告準備:09:00~10:00(與同學討論報告方向)
- 體育課:13:00~15:00
Cron(每日9點)
↓
Google Calendar → Function(整理文字)
↓
AI Node(可選,生成自然語句)
↓
Email / LINE Notify