這是一個簡單好用的 Google Apps Script (GAS) 聊天機器人,結合 Google 試算表管理資料,提供網頁介面讓用戶輕鬆互動。支援指令查詢、關鍵字回應、權限控制和主題切換等功能。本指南專為 Google Apps Script 初學者的中文用戶設計,幫助您快速上手。
快速上手🚀 [教學影片]
- 建立檔案副本:至[Google 雲端硬碟連結]將所有試算表複製一份到自己的雲端硬碟,建議機器人圖片更換成自己的。
- 設定4個共用連結:
- 打開主程式所在的試算表(我的聊天機器人_內含主程式_自由取名),裏頭有4個共用連結要填寫,分別為機器人圖像連結(圖片檔案)、成員名冊連結(試算表)、基本數據庫連結(試算表)、問題收集試算表連結(試算表),就是剛剛建立副本的那些檔案。
- 圖片檔案是用來顯示您的機器人圖片,檔案過大會影響顯示速度,共用權限請設定為「知道連結的任何人:檢視者」。
- 當然,可以順便修改與填寫其他的設定項目。
- 部署程式與執行:打開主程式所在的試算表(我的聊天機器人_內含主程式_自由取名),在上方功能選單中找到擴充功能中的「Apps Script」,利用右上角部署按鈕,將程式部署為「網頁應用程式」,執行身分為「我」,誰可以存取「所有人」,部署好後取得上面的網址就能執行了。
- 網頁介面:使用 Bootstrap 5.3.2,支援淺色和深色主題。
- 指令系統:輸入特定指令(如
/指令
、/幫助
)觸發功能。 - 關鍵字回應:根據試算表中的關鍵字回應用戶問題。
- 權限管理:限制某些回應僅特定用戶可見。
- 多樣回應:支援文字、圖片、隨機回應及外部資料。
- 手機友好:適配手機和平板,操作方便。
- 易於自訂:透過試算表調整設定和資料。
- 了解 Google Apps Script 和 Google 試算表 基礎。
- 擁有 Google 帳戶,可使用 Google 雲端硬碟和試算表。
- 略懂 HTML、CSS、JavaScript(若需自訂介面,非必要)。
聊天機器人支援以下五種回應方式,設定於試算表「數據庫」工作表的「回應方式」欄位:
- 一般:直接顯示指定的文字回應,或引用其他指令(以指令符號開頭)。
- 亂數:從多個回應中隨機挑選一個(用逗號分隔)。
- 圖片:顯示單張圖片(隨機選一張,若有多張),可附圖片說明。
- 圖片全:顯示所有指定圖片(用逗號分隔),每張可附說明。
- 外掛:將用戶輸入傳遞至外部試算表處理,適用進階功能。
- 點擊以下 Google 雲端硬碟連結,建立試算表副本:
[Google 雲端硬碟連結] - 資料夾包含以下試算表:
- 我的聊天機器人_內含主程式_自由取名.gsheet:主程式試算表。
- 成員名冊_內含程式_自由取名.gsheet:成員名冊,含選單功能。
- 數據庫(基本)_一定要有_自由取名.gsheet:基本資料庫。
- 數據庫(外掛)_自由取名.gsheet:外部資料庫。
- 問題收集試算表_自由取名.gsheet:收集未匹配問題。
- 範例圖檔可用於設定機器人圖像。
-
主聊天機器人試算表:
- 複製
我的聊天機器人_內含主程式_自由取名.gsheet
到您的 Google 雲端硬碟。 - 重新命名(例如「我的聊天機器人」)。
- 確認「設定」工作表包含以下欄位:
- 程式名稱:機器人名稱(例如「我的聊天機器人」)。
- 機器人圖像連結:機器人圖片的 Google 雲端硬碟共用連結,權限至少為「知道連結的任何人:檢視者」。
- 機器人介紹:機器人介紹文字。
- 指令特殊符號:指令前綴(預設:
/
)。 - 基本數據庫連結:基本資料庫(數據庫(基本)_一定要有_自由取名.gsheet)試算表的共用連結。
- 成員名冊連結:成員名冊試算表(成員名冊_內含程式_自由取名.gsheet)的共用連結。
- 問題收集試算表連結:問題收集試算表(問題收集試算表_自由取名.gsheet)的共用連結。
- 幫助說明:
/幫助
指令的說明文字。 - 不會的問題如何回:未匹配問題的回應(每行一個)。
- 贊助廣告開關:設為「啟用」顯示廣告,留空關閉。
- 自訂版權宣告:自訂版權文字。
- 複製
-
成員名冊試算表:
- 複製
成員名冊_內含程式_自由取名.gsheet
到您的 Google 雲端硬碟。 - 重新命名(例如「成員名冊」)。
- 確認「成員名冊」工作表包含:
- 電子信箱:用戶電子郵件。
- 姓名:用戶姓名。
- 權限群組、組織單位、團體群組:權限設定。
- 複製
-
數據庫(基本):
- 複製
數據庫(基本)_一定要有_自由取名.gsheet
或新建試算表。 - 確認「數據庫」工作表,欄位如下:
- 關鍵字:用逗號分隔的關鍵字,匹配用戶輸入。
- 回應內容:回應內容(文字、圖片網址等)。
- 回應方式:回應類型(
一般
、亂數
、圖片
、圖片全
、外掛
)。 - 前綴詞:回應前綴(逗號分隔)。
- 後綴詞:回應後綴(逗號分隔)。
- 指令說明:指令說明(顯示於
/指令
)。 - 權限群組、組織單位、團體群組:權限設定。
- 將共用連結填入主試算表「設定」的「基本數據庫連結」。(不用開權限)
- 複製
-
數據庫(外掛):
- 複製
數據庫(外掛)_自由取名.gsheet
或新建試算表。 - 確認有「數據庫」工作表,結構與主試算表的「數據庫」相同。
- 複製
-
問題收集試算表:
- 複製
問題收集試算表_自由取名.gsheet
或新建試算表。 - 確認「數據庫」工作表,包含「問題」欄位及「提問者」欄位。
- 將共用連結填入主試算表「設定」的「問題收集試算表連結」。(不用開權限)
- 複製
- 開啟主聊天機器人試算表(例如「我的聊天機器人」)。
- 點擊 功能選單中的擴充功能 > Apps Script。
- 在程式碼編輯器中,點擊 部署 > 新增部署。
- 選擇 網頁應用程式。
- 設定部署:
- 描述:例如「聊天機器人」。
- 執行身分:選擇「我」(您的 Google 帳戶)。
- 存取權限:建議選「任何人」,讓外部用戶也可以使用。
- 點擊 部署,複製網頁應用程式 URL。
- 分享 URL 給用戶,或在瀏覽器中開啟使用。
- 建立自己的成員名冊,可以透過權限群組、組織單位、團體群組欄位來開放或不開放此為成員的查詢。
- 成員名冊試算表的功能選單會新增「進階功能」,用於讀取共用 Google 雲端硬碟資料夾中的所有檔案資訊,作為檔案管理小幫手。
- 將資訊、檔案連結、超連結等連結成員,提供成員查詢各項資訊或檔案。
- 在瀏覽器開啟網頁應用程式 URL。
- 介面包含:
- 主題切換(右上角):選擇淺色或深色主題。
- 機器人圖像與介紹:手機上點擊圖像顯示介紹。
- 輸入框:底部輸入訊息。
- 與機器人互動:
- 指令:/(或自訂符號)
使用指令格式(例如
/指令
)可精準觸發功能,避免關鍵字重複導致無法提供指定回應。/指令
:顯示所有指令。/幫助
:查看幫助說明。/贊助
:顯示贊助資訊。/帳號
:顯示您的電子郵件。/查詢 [項目]
:查詢個人資料(例如/查詢 姓名
)。/查詢 全
:列出所有個人資料。
- 關鍵字:輸入資料庫中的關鍵字(例如「你好」)獲取回應。
- 指令:/(或自訂符號)
使用指令格式(例如
- 在「數據庫」工作表中編輯關鍵字和回應。
- 在成員名冊試算表管理用戶權限和資料。
- 更改外觀:在「設定」工作表更新「機器人圖像連結」和「機器人介紹」。
- 修改回應:在「數據庫」工作表新增或編輯關鍵字與回應。
- 設定權限:在成員名冊試算表更新用戶權限。
- 調整介面:修改
style.html
(樣式)或index.html
(結構)。 - 回應方式:若想要新增回應方式,可以編輯
codeResponse.gs
。
- 網頁無法開啟:檢查部署的存取權限(建議選「任何人」)。
- 回應失敗或無回應:回應資料的排列順序會有影響,或關鍵字有錯誤,或設定不符合規則。
- 成員權限錯誤:確認成員名冊連結正確,且用戶電子郵件在「成員名冊」中。
- 資料庫問題:檢查資料庫試算表連結和「數據庫」工作表是否存在。
- 手機顯示問題:測試介面,必要時調整
style.html
的樣式。
- 確保所有試算表共用連結有效且可存取。
- 成員名冊的「進階功能」需搭配共用資料夾。
- 預設包含廣告(可透過「贊助廣告開關」關閉)。
- 進階自訂可參考
codeResponse.gs
(回應方式)和functions.html
(前端功能)。
本專案採用 MIT 授權,詳情請見 LICENSE。
歡迎參觀我的網站 Gas Station,裡頭也許會有一些能幫助您的工具、程式,甚至是提供您創意的靈感。如果您願意的話,也非常樂意接受您的打賞。❤️
Copyright (c) 2025 Chang, Chia-Cheng 張家誠
祝您輕鬆打造專屬聊天機器人!🚀
若您熟悉程式碼並想深入自訂,可參考以下檔案(已內嵌於主試算表的 Apps Script 中):
index.html
:網頁介面結構。style.html
:CSS 樣式設定。functions.html
:前端 JavaScript 功能。base.gs
:版權與廣告設定。code.gs
:核心後端邏輯。codeResponse.gs
:處理用戶輸入與回應。codeLanguage.gs
:中文文本預處理。
檢查方式:
- 開啟主試算表。
- 點擊 功能選單中的擴充功能 > Apps Script。
- 查看或編輯程式碼檔案。