aiver AI智慧助理 — SaaS 串接架構

Demo 走模式 A,未來需要時切模式 B

1要架起一套服務,需要三種資料

這兩項不是「填表單」就有,第一次都要有人手動在對應後台操作一次才會產生:

LINE 資料
LINE Login channel + Messaging API 官方帳號的 Channel ID、LIFF ID、Access Token、Secret
需手動在 LINE Developers 建立一次
xAI Voice Agent 資料
xAI Console 建立的 Agent 名稱 + API Key
需手動在 xAI Console 建立一次
Cloudflare 帳號
部署 Workers + D1 用,不需要另外買網域,Workers 自帶 *.workers.dev 網址
模式 A 只有我們自己要有一份

2Demo 現在:模式 A共用後端

客戶只要給 LINE 資料 + xAI 資料,Cloudflare 完全不用碰 — 全部在我們同一份服務裡用 tenant_id 分流

客戶 A
客戶 B
客戶 C
各自提供 LINE + xAI 資料
我們的 Admin 後台
每個客戶填一次資料,存進「客戶對照表」
共用 Workers + D1
同一份程式碼,每張表帶 tenant_id 過濾
A 的官方帳號
B 的官方帳號
C 的官方帳號
各自獨立運作,資料互不干擾
誰要有 Cloudflare 帳號只有我們自己一份
資料怎麼隔離D1 每張表加 tenant_id,每次查詢都帶這個過濾(跟 voice-agent-cloudflare-saas-design.html 設計一致)
新增一個客戶要做什麼幫他建 LINE channel + xAI Agent,把資料填進 Admin 後台的客戶對照表,不用重新部署
適合階段Demo、客戶數量少、還在驗證商業模式

3未來要切:模式 B各自獨立部署

客戶要求資料實體隔離、或單一客戶流量大到要獨立計費時才切

客戶 A
自己的 Cloudflare 帳號
A 專屬 Workers + D1
同一套程式碼部署一份
客戶 B
自己的 Cloudflare 帳號
B 專屬 Workers + D1
跟 A 完全獨立,互不相通
切換不用重寫架構:程式碼邏輯不變(tenant_id 分流機制留著,B 模式下每個部署只有一個 tenant,或直接拿掉過濾即可)。差別只在「誰的 Cloudflare 帳號執行 wrangler deploy」跟「D1 屬於誰」。真正要做的事是幫每個客戶各自跑一次部署流程(就是這次 SR 在做的事,重複執行一次)。

4一句話

Demo 用模式 A:客戶只要給 LINE 資料 + xAI 資料兩樣東西,Cloudflare 帳號是我們自己的,不用客戶碰,也不用網域。之後要切模式 B,只是「多部署幾次、換成客戶自己的 Cloudflare 帳號」,不是重新設計系統。

5語音助理流程與介面(詳細版)

aiver AI智慧助理 — 流程與介面設計

voice-agent · Rich Menu 常駐選單方向(選項二)· icon 一律 SVG

使用者旅程

掃 QR / 加好友
LINE 官方帳號
聊天室出現
常駐選單
Rich Menu
點「開始
語音對話」
開啟 LIFF
LINE 身分
自動登入
免輸入帳密
即時語音對話
xAI Realtime API

介面設計

aiver AI智慧助理
歡迎加入!點下方選單開始使用語音助理
Rich Menu
聊天室畫面:常駐 Rich Menu(SVG icon 佔位圖)
aiver AI智慧助理
聆聽中…請直接說話
LIFF 語音介面(點選單後開啟,LINE 內建瀏覽器)
Rich Menu 圖片目前是佔位圖(2500×1686px,SVG line-icon 繪製,已存到 assets/rich-menu/richmenu-placeholder.png),之後有正式設計稿再替換上傳即可,不影響功能運作。