跳至主要內容

里程碑

Haru 하루|讓分帳變簡單的小助手

米 @yuu.wav發布於

動機
以前跟朋友出去玩時,曾經因為分帳的問題發生過一些衝突。明明大家是開開心心出去玩,卻因為糾結誰要給誰多少錢,讓氣氛變得不太好。(抱歉其實是我們的腦袋不太好(⁠。⁠ŏ⁠﹏⁠ŏ⁠))
所以我就在想,如果有一個系統可以讓大家無腦記帳、計算每個人要付的金額,甚至直接查詢還有哪些錢還沒還清,是不是就能減少很多麻煩,也避免因為金錢問題產生不必要的爭執?

系統功能

  • 成員身分登記: 將 LINE 使用者的身分與登記姓名連結,讓系統知道訊息中的「我」代表誰。
  • 建立旅遊活動: 使用者可以建立新的旅遊活動存進 Google Sheets,並將群組成員加入活動。
  • 支出紀錄與分帳: 記錄支出明細、總金額及付款人,依照參與分攤的人數計算每個人的金額。
  • 查詢帳目與欠款: 可以查詢活動中的收支與尚未結清的還款紀錄。
  • 還款紀錄管理: 記錄還款金額與處理狀態,並區分尚未還清及等待確認的款項。

我怎麼製作
(圖片放在下面,有點太大張了(⁠ ̄⁠ヘ⁠ ̄⁠;⁠))

遇到的問題

  1. LINE 使用者身分與姓名的對應

一開始輸入"我"怎樣怎樣的時候,系統會把"我"當成一個新的活動成員名字,而不是輸入者的名字。
因此,我另外在google sheet建立成員身分紀錄表,專門記錄群組 ID、使用者 ID 與登記姓名連結,讓系統能正確判斷"我"代表哪位成員。

  1. 在空白sheet中新增第一列的欄位名稱

找了所有n8n中google sheet節點所提供的選項都沒有找到能夠新增欄位的功能,甚至問了chatgpt 和gemini都沒有找到成功的辦法,直到在yt找到有專人在教才解決,這個花了我快半天的時間,差一點就放棄了

  1. 不同活動的成員欄位需要動態處理

在計算支出紀錄時,因為每個活動的參與成員都不大一樣,因此在欄位的名字也不相同,如果在append row使用固定的欄位對應的話,每一次跑新的活動時都需要重新設定。後來發現可以改用map automatically就能自動對應到欄位的成員名稱

角色設定和功能示範

  • 角色設定

Haru 하루 是一位友善、細心的旅遊分帳助理,負責協助記錄支出、計算分帳以及整理還款狀況。
1.親切、溫柔、清新,帶有一點韓系可愛感
2.像一起旅行的朋友,不像制式客服。
3.偶爾使用韓文音譯中文,例如「安妞~」「歐摸」「欸咕~」「康撒哈密達」,讓對話自然又有特色。
4.可以少量使用 ♡、✿、🧳、🥹 等符號,但不要每句都塞滿表情。
5.說話簡短、自然、容易理解,不要過度撒嬌或刻意裝可愛。
6.打招呼時可以說「安妞~」。
遇到意外或資料不符時,可以說「歐摸?」或「欸咕~」,接著清楚說明問題。
感謝或告別時可以偶爾使用「康撒哈密達 ♡」。

  • 功能示範

■ 建立旅遊活動
使用者輸入"活動名稱"及"參與成員人數"後,AI Agent 判斷用戶是否有提供完整資訊;有的話,系統透過 Google Sheets 讀取成員資料,再將活動名稱、成員名單及活動狀態寫入活動總覽,並依照設定建立對應的活動支出工作表。

■ 記錄旅遊支出
使用者需要輸入"支出項目"、"總金額"、"付款者"及"參與分攤的成員",由AI Agent 判斷用戶是否有提供完整資訊;有的話,系統接著讀取活動與成員資料,透過 Code 節點計算每位成員應分攤的金額,最後利用 Google Sheets 將支出明細及計算結果儲存至對應活動的表格中,並透過HTTP回覆處理結果。

■結束旅遊
使用者表示此次旅遊結束後,系統透過 Google Sheets 讀取活動總覽紀錄並把表格中狀態改為已結束,同時計算最終的分帳金額是誰要給誰多少錢,最後把分帳結果存進還款紀錄的表格中,方便後續查詢還款進度。

■ 查詢活動收支/欠款狀態
使用者提出收支/欠款查詢需求後,根據活動狀態是否結束來判斷是查收支還是欠款,系統透過 Google Sheets 讀取活動/還款紀錄,再由 Code 節點依照活動名稱、還款狀態及剩餘金額篩選資料,整理目前收支情況/尚未結清的款項,最後透過HTTP回覆查詢結果,讓成員了解目前的欠款狀況。

■ 處理還款確認
使用者提出還款相關操作後,由AI Agent整理出付款人、收款人及還款金額等資訊。系統讀取相關還款紀錄,透過HTTP回覆收款者是否確定有收到款項,並把還款表格中的狀態欄改為待確認;等收款人確認收到款項後,再更新 Google Sheets 中的還款狀態制已還清或未還清(可能只還了一部分),讓後續查詢能反映最新的還款進度。

■ 使用說明
使用者提出詢問或傳出與分帳功能無關的對話,系統會給用戶提供使用說明,告訴他可以做哪些動作

我的小小TMI
其實我原本還想要在最後放上討債系統,因為我覺得要跟不是這麼熟的朋友拿錢是一件很難說出口的事,所以我希望有一個工具幫忙開口就不會這麼尷尬,但後來發現建這個系統會需要用到push,而我設定的程序是要在群組裡公告達到讓付款者盡快還錢的作用,所以這樣我的限額可能很快就會被用完,於是我就忍痛放棄了ㅠㅠ

0 個愛心0 則留言

登入並驗證手機後就能留言。登入