版本:v3.0|平台:Google Apps Script + Microsoft Power Automate
- 系統簡介
- 建立平台前的準備工作
- 初始設定步驟(首次使用)
- 部署 Web App(控制面板)
- 存取控制設定(Google 登入驗證)
- 控制面板功能說明
- 班別及學生管理
- 課業類別管理
- 課業設置(佈置作業)
- 學生如何提交功課(學生入口)
- 老師如何批改及發還課業
- 繳交紀錄查閱
- Microsoft Teams 自動追收功課設定
- 系統日誌及錯誤排查
- 常見問題
帙雲是一套以 Google Drive 為基礎的課業管理平台,主要功能包括:
| 功能 | 說明 |
|---|---|
| 📥 學生自助上傳 | 學生使用學校 Google 帳號登入,直接在瀏覽器上傳課業,無需重新命名檔案 |
| 📊 個人繳交狀態 | 學生可即時查看自己每份課業的繳交狀態(已繳交 / 未繳交 / 遲交) |
| 🔗 批改課業連結 | 學生輸入學校電郵,系統自動共用批改課業文件夾並提供連結 |
| 📤 自動發還批改 | 老師上傳批改後,系統自動分發至學生專屬文件夾 |
| 📊 繳交紀錄追蹤 | 即時顯示每位學生的繳交狀態 |
| 🔔 自動追收提醒 | 未繳學生每日透過 Microsoft Teams 收到提醒 |
| 🔐 Google 登入驗證 | 教師面板需在白名單內;學生入口需使用學校電郵 |
| 📁 動態課業類別 | 教師可透過面板自行新增/刪除課業類別,無需修改程式碼 |
| 📎 所有檔案格式 | 接受 PDF、Office 文件、圖片、純文字、程式碼等所有格式 |
- Google 帳號(須有 Google Drive 及 Google Apps Script 存取權限)
- Microsoft 帳號(用於設置 Power Automate 流程)
- 前往 Google Apps Script,點擊「新增專案」,命名為「帙雲」
- 將以下各
.gs檔案逐一貼入:Shared.gs(必須第一個建立)ErrorLogger.gsSetup.gsCollectHomework.gsAutoReturn.gsAutoShare.gsSubmissionRecord.gsWebInterface.gs
- 將以下 HTML 檔案也貼入(點擊「+」→「HTML」):
Index.html、record.html、homework.html、setup.html、student.html
完成下方「部署 Web App」後,前往控制面板 → 班別及學生管理 → 系統設定分頁操作。
- 建立 Google Drive 根文件夾並複製 ID
- 在
Shared.gs替換ROOT_FOLDER_ID及SCHOOL_EMAIL_DOMAIN - 執行
setup()函數 - 執行
createCollectTrigger()、createSubmissionTrigger()、createReturnTrigger()
- 點擊「部署」→「新增部署」→「Web 應用程式」
- 填寫設定:
- 以下列身份執行:我(即你的 Google 帳號)
- 誰可以存取:擁有 Google 帳號的所有人(此選項為啟用登入驗證所必需)
- 點擊「部署」,複製 Web App 網址
- 首次開啟控制面板後,立即前往 存取控制 分頁新增你的電郵至教師白名單
⚠️ 重要:必須選擇「擁有 Google 帳號的所有人」而非「所有人(包括匿名用戶)」, 否則系統無法取得用戶電郵,存取控制將失效。
在控制面板 → 班別及學生管理 → 存取控制 分頁,可管理兩類存取權限:
只有白名單內的 Google 帳號可以存取教師面板的所有頁面。
初始狀態:白名單為空時,所有登入用戶均可存取(方便初始設置)。 強烈建議:完成設置後立即加入你的電郵,啟動白名單保護。
操作步驟:
- 在「新增教師電郵」欄輸入電郵地址(如
teacher@ccckyc.edu.hk) - 點擊「新增」
- 白名單中的電郵以標籤顯示,點擊「✕」可移除
透過 Google Sheets 管理(進階):
你也可以直接在 Script Properties 中修改 TEACHER_WHITELIST(JSON 陣列格式)。
學生入口(?page=student)的存取規則:
| 條件 | 說明 |
|---|---|
| 電郵域名符合 | 電郵域名在「允許的學生域名」清單中(如 ccckyc.edu.hk) |
| 特殊電郵 | 電郵在「特殊電郵」清單中(個別開放,如訪客帳號) |
操作步驟:
- 在「允許的學生電郵域名」文字框輸入域名(每行一個)
- 如需個別開放特定電郵,在「特殊電郵」文字框輸入(每行一個完整電郵)
- 點擊「儲存學生存取設定」
為了更高安全隔離,可將學生入口部署為獨立的 GAS 專案:
- 建立新 GAS 專案,命名為「帙雲_學生入口」
- 加入:
StudentPortal.gs、Shared.gs、ErrorLogger.gs、student.html - 在 Script Properties 中設定與主項目相同的
SUBMISSION_SHEET_ID、RETURNED_FOLDER_ID等 - 部署 Web App:以我執行 / 擁有 Google 帳號的所有人
- 將學生入口 URL 分發給學生;教師面板 URL 保持私密
| 按鈕 | 說明 |
|---|---|
| 📤 學生上傳區 | Google Drive 文件夾連結(舊有方式,仍可使用) |
| 📋 待批改課業 | 已整理好的課業,按班別→課業類別→課業名稱存放 |
| 💬 老師回饋區 | 老師上傳批改後課業至此 |
| ✅ 已發還課業 | 學生專屬文件夾 |
| 🎓 學生課業入口 | 學生自助上傳及查看狀態的頁面(新功能) |
| 📚 繳交紀錄 | 查看各班別學生的繳交狀態表 |
| ⚙️ 課業設置 | 新增課業並設定截止日期 |
| ⚙️ 班別及學生管理 | 新增班別、管理學生名單、存取控制、課業類別等 |
在控制面板點擊「班別及學生管理」,共有六個分頁:
- 新增班別、管理學生姓名清單(每行一個姓名)
- 設定學生學號及姓名,支援:
- 逐行輸入:每行填寫學號和姓名
- 純文字批量輸入:貼上整份名單(格式:
學號 姓名,每行一位)
- 新增/刪除課業類別(見下方「課業類別管理」)
- 管理教師白名單及學生存取設定(見上方「存取控制設定」)
- 初始設置、系統資源狀態、觸發器管理
- 查看最近 100 筆系統記錄
在「班別及學生管理」→「課業類別」分頁:
- 預設類別:閱讀、寫作(長文)、寫作(實用文)
- 新增類別:輸入類別名稱,點擊「新增類別」
- 刪除類別:點擊類別標籤的「✕」
⚠️ 刪除類別不會刪除 Google Drive 中已建立的文件夾
新增的類別將即時反映在「佈置課業」頁面的類別選單,以及新建立的 Google Drive 文件夾結構中。
- 選擇班別
- 選擇課業類別(由課業類別管理中的清單動態載入)
- 輸入課業名稱及關鍵詞
- 設定截止日期
- 點擊「提交」
學生入口網址:[Web App URL]?page=student
- 開啟學生入口連結
- 以學校 Google 帳號登入(如系統不允許登入,請聯絡老師)
- 選擇班別和姓名
- 查看課業清單及每份課業的繳交狀態
- 點擊「上傳課業」選擇檔案後提交
上傳注意事項:
- 無需重新命名檔案,系統自動以「班別_姓名_關鍵詞.副檔名」命名
- 支援所有檔案格式(PDF、Word、Excel、PowerPoint、圖片、純文字、程式碼等)
- 單次上傳上限 20 MB
- 可重新上傳(舊檔案會移至垃圾桶)
在學生入口的「查看已批改課業」區域:
- 輸入學校電郵地址
- 點擊「取得批改課業連結」
- 系統自動將你的「已發還課業」文件夾共用給你,並提供連結
直接上傳至「學生上傳區」,檔案命名格式:
班別_姓名_關鍵詞.副檔名
例如:1C_陳大文_寶物.pdf
- 前往「待批改課業」文件夾,下載課業檔案
- 完成批改後,將批改好的檔案上傳至「老師回饋區」文件夾
- 系統每 15 分鐘自動將檔案移動至對應學生文件夾
提示:
AutoReturn.gs現在會搜尋所有課業類別的子文件夾(不再限於單一類別),確保準確分發。
在控制面板點擊「繳交紀錄」,查看各班別的課業繳交狀態表。
| 顏色 | 狀態 | 說明 |
|---|---|---|
| 🟢 綠色 | 已繳交 | 在截止日期前提交 |
| 🟡 黃色 | 遲交 | 超過截止日期後才提交 |
| 🔴 紅色 | 未繳交 | 尚未提交 |
(此部分與 v2.0 相同,詳見舊版 GUIDE 或 README)
在控制面板 → 班別及學生管理 → 系統日誌 分頁查看最近 100 筆記錄。
| 錯誤訊息 | 解決方法 |
|---|---|
存取被拒絕(教師) |
前往存取控制,確認你的電郵在教師白名單中 |
存取被拒絕(學生) |
前往存取控制,確認學生域名或特殊電郵已加入 |
電郵不符合允許的學生域名 |
確認學生使用正確的學校電郵登入 |
找不到班別文件夾 |
點擊「批量建立資料夾」 |
共用失敗 |
確認電郵地址正確且有 Google 帳號 |
無法匹配班別 |
上傳的檔案名稱不含班別代碼(學生入口上傳不受此限制) |
Q:為什麼開啟控制面板時顯示「存取被拒絕」? A:教師白名單已啟用,你的電郵不在名單中。請使用有存取權的帳號,前往存取控制新增你的電郵。
Q:學生看到「存取被拒絕」怎麼辦? A:確認學生使用學校 Google 帳號登入。若使用其他帳號,可在存取控制的「特殊電郵」清單中個別新增。
Q:部署設定選了「所有人(包括匿名用戶)」,存取控制無效? A:是的。需改為「擁有 Google 帳號的所有人」才能取得用戶電郵。請重新部署(選「新版本」)。
Q:學生可以上傳什麼格式的檔案? A:現在支援所有格式,包括 PDF、Word/Excel/PowerPoint、圖片(JPEG/PNG/GIF/BMP/WEBP)、純文字、程式碼(.py/.js/.c 等)、ZIP 等。
Q:如何新增課業類別(如「聆聽」)? A:前往「班別及學生管理」→「課業類別」,輸入類別名稱後點擊「新增類別」。不再需要修改程式碼。
Q:如何讓學生入口與教師面板完全分開?
A:建立第二個 GAS 專案,加入 StudentPortal.gs、Shared.gs、ErrorLogger.gs、student.html,設定相同的 Script Properties,單獨部署為 Web App。
Q:學生上傳後多久才能看到狀態更新? A:最多約 6 分鐘(收集觸發器每 1 分鐘,狀態更新觸發器每 5 分鐘)。
Q:白名單設定後,如何讓其他老師也能進入? A:在存取控制面板新增其他老師的 Google 電郵地址。
如有其他問題,請查看系統日誌或聯絡技術支援。