LINE Bot
用 Google Apps Script 當 LINE 聊天機器人的後台,不用租伺服器、不用寫資料庫:使用者在 LINE 傳訊息,GAS 接到後讀寫試算表,再把結果回傳給使用者。這個分類帶你從申請帳號一路做到可上線的記帳機器人。
運作原理
LINE 把使用者的每則訊息包成 JSON,用 Webhook(LINE 主動 POST 到你指定的網址)送給你。你的 GAS 部署成 Web App,doPost 就是接收端;處理完後,再呼叫 LINE 的 Messaging API 把回覆送回去。
sequenceDiagram
participant U as 使用者(LINE App)
participant L as LINE Platform
participant G as GAS Web App
participant S as 試算表
U->>L: 傳送訊息
L->>G: POST Webhook(doPost)
G->>S: 讀寫資料
G->>L: Reply API(帶 replyToken)
L->>U: 顯示機器人回覆
最需要掌握的 20%
- 兩個角色分清楚:LINE Developers Console 管機器人的身分與 Webhook 網址;GAS 管邏輯。兩邊各設定一半,缺一不通。
doPost(e):用JSON.parse(e.postData.contents)取得events陣列,逐一處理。replyToken:每個事件附一次性的回覆憑證,拿它呼叫 Reply API 就能回訊息,而且免費。- Channel access token:呼叫 LINE API 的鑰匙,放 Script Properties,不要寫進程式碼。
- 部署三個設定:執行身分「我」、存取對象「所有人」、改程式後要「新版本」。這三個是新手最常卡關的地方。
這個分類的頁面
| 頁面 | 你會學到 |
|---|---|
| 建立機器人並接上 GAS | 申請 LINE 官方帳號、取得金鑰、部署 Webhook,做出會回聲的機器人 |
| 處理事件與回覆訊息 | 事件種類、Reply 與 Push 的差別、指令路由、貼圖/快速回覆/Flex |
| 實作:試算表記帳機器人 | 把使用者輸入寫進試算表、查詢統計、每日定時推播 |
| 上線注意事項 | 無法驗證簽章、重複事件、額度、時間限制、何時該換平台 |
適合與不適合
| 適合 | 不適合 |
|---|---|
| 個人或小團隊的記帳、打卡、待辦、查詢機器人 | 每秒數十則訊息的高流量客服 |
| 資料本來就在試算表,想用聊天介面查詢 | 需要嚴格驗證 Webhook 簽章的正式商業系統(GAS 讀不到標頭,見 上線注意) |
| 排程提醒、通知(時間觸發+Push) | 要即時、低延遲的回應 |
官方文件
LINE 官方說明以 Messaging API 總覽、建立機器人 與 API 參考 為準(英文)。GAS 端請對照 Web Apps 指南。
推薦影音
社群裡有不少繁體中文的 LINE Bot + GAS 實作影片。操作畫面會隨 LINE 後台改版而略有差異,遇到按鈕位置不同時,以本站步驟與官方文件為準。
- 申請帳號與 Webhook 設定:見 建立機器人並接上 GAS
- 接試算表的記帳實作:見 試算表記帳機器人