多租戶 LINE Bot 進件管理平台 最後更新:2026-04-09
本系統是一套基於 Cloudflare Pages + LINE Messaging API 的多租戶進件管理平台。一套程式碼可支援多個單位(雄七、雲林…等),每個單位獨立 KV 資料庫、獨立 LINE Channel、獨立管理後台。
| 角色 | 使用方式 |
|---|---|
| 業務員 | 透過 LINE Bot 圖文選單/關鍵字進入送件/查詢頁,完成綁定後一鍵登入 |
| 管理員 | 透過 pages.dev 後台登入,核對、補件、催補、匯入、下載報表 |
| 各客戶單位 | 獨立網址、獨立帳密、獨立 KV。資料完全隔離 |
三種進入方式,任選其一:
進入送件頁後:
yunlin2026)CSV 匯入格式:姓名, 身分證號, 需幫忙代送的夥伴姓名(多人用,分隔)
| 設定項目 | 說明 |
|---|---|
| 管理員密碼 | 後台登入密碼 |
| LINE Channel Access Token | LINE Bot 推播用 Token |
| LINE Channel Secret | 用於 webhook 簽章驗證 |
| LIFF ID(送件/查詢/綁定) | 三個欄位可填同一個 LIFF(同 channel 共用 profile) |
| 偵測間隔 | 後台背景輪詢新送件的頻率(分鐘) |
●●●● 顯示,點 👁 按鈕可切換明碼/密碼模式。重整頁面後值會從 KV 自動載回。
業務員在 LINE 聊天視窗輸入下列關鍵字會觸發 flex 按鈕回覆,按下去的連結會自動帶上 LINE uid,手機 / PC / iPad 的 LINE 都能一鍵登入:
| 關鍵字 | 回應 |
|---|---|
| 選單 / menu / 功能 | 完整功能選單(送件 / 查詢 / 綁定) |
| 新增送件 / 送件 | 送件按鈕 |
| 查詢案件 / 查詢 / 進度 | 查詢按鈕 |
| 綁定 / bind | 綁定按鈕 |
功能選單會自動偵測綁定狀態:
業務員管理分頁會顯示每位業務員的即時統計:
| 指標 | 定義 |
|---|---|
| 總件數 | 該業務員的全部送件數 |
| 補件數 | 曾被通知補件的件數(有 suppAt 欄位) |
| 催補次數 | 被催補過的件數(有 remindAt 欄位) |
按「📊 下載統計報表」匯出的 CSV 包含:
桌面上的「開通管理介面.bat」執行後會打開 http://localhost:9527 本機管理介面。
https://insurance-[代號].pages.dev/form.html,記下 LIFF IDtainan)https://insurance-[代號].pages.dev/api/line-webhookwrangler 已登入:開 PowerShell 跑 npx wrangler login。wrangler 的 oauth token 約每小時會過期,如果開通管理介面啟動時顯示「wrangler 未登入」請重新登入一次。
| 元件 | 技術 | 說明 |
|---|---|---|
| 前端 | 原生 HTML / JS | Cloudflare Pages 靜態托管,無框架 |
| 後端 API | Cloudflare Pages Functions | functions/api/*.js |
| 資料庫 | Cloudflare KV | 每個客戶一個獨立 KV namespace,資料完全隔離 |
| LINE Bot | Messaging API + LIFF | webhook 接收事件、LIFF 提供自動登入 |
| 多租戶設計 | clients.json + 系統名稱變數化 | 一套程式碼支援無限客戶,開通時替換名稱後部署 |
每個客戶單位有自己的:
insurance-[代號].pages.dev)INSURANCE_DB_[代號])檢查後台「系統設定」的 LIFF ID 是否有填。Rich menu 必須指向 LIFF URL(https://liff.line.me/xxx)才能自動帶 profile。重建圖文選單可透過一鍵開通流程的 STEP 5,或直接改 KV 的 settings:liff_form_id 然後重新部署。
確認 LINE Developers → Webhook URL 已設定且開啟。如果之前已加過好友,需要封鎖再解除封鎖才會重新觸發 follow 事件。
管理員必須先在後台「業務員管理」把該業務員的姓名和身分證字號加進去,綁定時會比對。身分證字號大小寫會自動轉大寫。
Bot 的 flex 訊息按鈕會自動帶 ?uid=xxx 參數,所以文字輸入「選單」觸發的按鈕在任何平台都能一鍵登入。圖文選單因為使用 LIFF URL,在 LIFF 支援的裝置(手機 LINE)可以自動登入。
按 👁 按鈕切換明碼顯示。資料實際上已從 KV 載入,只是預設被遮罩。
統計是前端從全部送件記錄即時計算,沒有快取。如果剛改過狀態,重整一次即可。
檢查桌面「開通管理介面」的 log:C:\Users\[你]\AppData\Local\Temp\onboard-dbg.log(debug log)和 onboard.log(stdout)。wrangler token 過期時請重新執行 npx wrangler login。