里程碑
【水滴精靈 Dewy】會記錄喝水量,還會陪聊的 LINE 小精靈
Camille @cami發布於
一、我的想法
我常常一天結束才發現「今天好像沒喝水」。App 太多反而懶得開,但 LINE 每天都會開。
所以我做了一隻住在 LINE 裡的喝水小精靈「水滴精靈 Dewy」:傳一個數字就能記錄喝水量,還能查進度、比排行,聊天時也會溫柔提醒你喝水。
設計原則:能用規則算清楚的事交給程式,需要溫度的事交給 AI。
數字(加總、排名)由程式計算,AI 只負責聊天,所以不會算錯、也不會亂編。
二、功能設計
| 使用者傳的訊息 | 小精靈做的事 |
|---|---|
300 或 喝水 300 | 記錄 300 ml,並回覆今日進度條 |
今天 | 查看今日累計與達成率 |
排行 | 今日排行榜(我和朋友互相較勁) |
日報 | 昨天的喝水報告:進度、排名、一句評語 |
週報 | 上週一到週日每天的長條圖、達標天數、冠軍 |
| 聊天、抱怨、分享心情 | AI 以小精靈人設回應,並自然提醒喝水 |
| 說了「剛喝了一杯珍奶」 | AI 不會自己編數字,會引導輸入「喝水 500」 |
| 輸入怪數字(如 99999) | 友善提醒單次記錄範圍 50~2000 ml |
防呆設計: 單次記錄限定 50~2000 ml,避免手滑打錯。
回覆範例:
✅ 已記錄 300 ml
💧 今日進度
🟦🟦🟦⬜⬜⬜⬜⬜⬜⬜ 15%
已喝 300 / 2000 ml三、系統架構
LINE 訊息 → n8n Webhook → 過濾空事件 → 解析指令 → 取得暱稱 → 分流
├─ 記錄 → 寫入 Google Sheets → 讀取全部紀錄 ─┐
├─ 今天 / 排行 / 日報 / 週報 ────────────────┤→ 組合回覆 → LINE 回覆
└─ 其他(聊天)→ AI Agent(Gemini)→ 整理回覆 → LINE 回覆| 元件 | 負責什麼 |
|---|---|
| LINE Messaging API | 使用者介面,朋友不用學新工具 |
| n8n | 流程大腦:判斷指令、串接各服務 |
| Google Sheets | 資料庫,每次喝水都留下一列紀錄 |
| Gemini(AI Agent) | 負責聊天與人設,不碰計算 |
四、每次水量怎麼記錄?
每次記錄會在試算表新增一列:
| 時間 | 日期 | userId | 暱稱 | ml |
|---|---|---|---|---|
| 2026-10-25 04:09:12 | 2026-10-25 | (LINE 使用者代碼) | (LINE 暱稱) | 300 |
- 以 userId 區分是誰,暱稱改了也不會搞混。
- 進度、排行、日報、週報,都是從這張表即時加總出來的,改資料就會同步。
五、AI 人設(System Prompt)
你是「水滴精靈 Dewy」,住在 LINE 裡的喝水小精靈,陪使用者養成喝水習慣。
【個性】
溫暖、活潑、有點俏皮,像一個貼心但不囉嗦的朋友。
【規則】
1. 一律使用繁體中文(台灣用語),每次回覆不超過 60 字,可適度使用 1~2 個 emoji。
2. 不評論身材、不給醫療診斷;使用者提到身體不適,建議諮詢醫師。
3. 若使用者聊天、抱怨或分享心情,先簡短回應情緒,再自然地提醒喝水。
4. 若使用者提到剛喝了某種飲料,可說明「想記錄請輸入『喝水 數字』,例如『喝水 500』」,不要自己編造記錄或數字。
5. 不要自己計算或編造任何喝水總量、排名、進度;這些請使用者輸入「今天」「排行」查詢。
6. 與喝水無關的話題,簡短友善回應後,引導回喝水。
【輸出格式】
只輸出要回給使用者的文字,不加前言、不加標題。設計重點: 規則 4、5 是替 AI 設的「護欄」,避免它把「一杯珍奶」亂猜成某個毫升數,或編造進度。
六、實測結果
- 傳
300→ 成功記錄並回覆進度條。 - 傳「剛喝了一杯珍奶」→ 小精靈回應後,引導我輸入「喝水 數字」,沒有亂編數字。
- 傳
99999→ 小精靈友善提醒要用「喝水 數字」格式。
七、踩過的坑(給之後要做的人)
- Webhook 404:測試網址只聽一次,正式使用要切 Active 並換 Production URL。
- 憑證的允許網域沒填:n8n 憑證限制網域,要填
api.line.me,否則抓不到暱稱。 - Switch 出口沒接線:分流的每個出口都要接,不然那個指令就已讀不回。
- AI 與 LINE 欄位對不上:AI 輸出叫
output,LINE 要replyText,中間要加一顆整理節點。
八、未來想加的功能
- 每週一早上 9 點自動推播上週週報
- LINE 圖文選單:一鍵記錄 250 / 500 ml
- 回覆時顯示「思考中」載入動畫
- 每人自訂每日目標、定時提醒
0 個愛心0 則留言
登入並驗證手機後就能留言。登入