2026年10月9日 星期五

【免寫程式的自動化革命】用 AI Studio 打造專屬 LINE 行事曆祕書:5 個極具啟發性的開發與防坑亮點

在步調緊湊的現代工作中,Google 日曆(Google Calendar)雖然具備內建提醒,卻需要使用者針對每個行程手動設定;一旦繁忙起來漏看系統通知,重要約會或待辦事項依舊面臨「被漏掉」的風險。試想一下:若能每天清晨打開 LINE,自動收到一份由專屬 AI 祕書梳理完畢的「今日與明日行程簡報」,將能為一天的時間規劃帶來多大的掌控感?
借助 Google AI Studio 生成 Google Apps Script(GAS)程式碼,並結合 LINE Messaging API,我們完全不需要手寫任何一行程式碼,也不需要支付伺服器或訂閱費用,就能在幾分鐘內打造出零成本、高實用的個人化自動通知服務。這不僅僅是一份實作指南,更是一次極具價值的 AI 協作開發實驗。本文將從本次實作中,提煉出關於 AI 提示工程(Prompt Engineering)、資安實踐、邏輯優化與系統維運的 5 大核心亮點,幫助你掌握與 AI 協作開發微型服務的精隨。

2. 核心精華亮點解析
2.1 亮點一:AI 協作的正確姿態——從「預設程式碼」到「資安最佳實踐」
在開發初始階段,AI Studio 所產生的 GAS 程式碼雖然能夠直接運行,但其預設邏輯是將敏感的存取金鑰(LINE Channel Access Token 與 User ID)以硬編碼(Hardcode)方式直接寫在主程式碼中。
從現代軟體工程與資安角度視之,這種寫法極具風險——一旦未來需要錄製教學影片、公開分享專案或進行螢幕分享,金鑰便會暴露無遺。頂尖的 AI 協作思維不應停留在「程式碼能跑就好」,而是必須主動進行二次提示(Re-prompting),指引 AI 遵循資安最佳實踐。本次實作中,作者要求 AI 改用 GAS 的「專案屬性(Script Properties / PropertiesService)」來隱藏與存取金鑰。將敏感資訊與商業邏輯解耦,既保障了金鑰安全性,也讓公開教學與程式碼分享變得坦然無虞。
「這種寫法不好,我就請它改……用專案設定的方式寫,指令屬性碼的方式填入,重新幫我寫過這種寫法……我在做教學的時候,那個碼就不會露出來。」
2.2 亮點二:拒絕訊息騷擾!加入「零行程即終止」的聰明邏輯
在未經優化的初始邏輯中,系統就算在今天與明天完全沒有任何行程的情況下,依然會恪盡職守地發送「今天與明天都沒有行程」的推播通知。
在推播架構(Push Architecture)的設計中,「主動通知」與「資訊噪音」往往只有一線之隔。天天接收無意義的空白訊息,不僅無法提升生產力,反而會造成使用者體驗的麻痺與干擾。為此,透過 Re-prompting 向 AI 提出關鍵的邏輯重構要求:若今日與明日的行程總數計算為零,程式即刻執行 Early Exit(早期終止),不發送任何推播。在自動化服務的 UX 設計中,這種「不打擾是種溫柔」的設計哲學,正是避免系統淪為垃圾訊息源頭的關鍵。
2.3 亮點三:告別繁瑣點擊,讓 AI 用程式碼「自動設定」排程觸發器(Triggers)
傳統在 GAS 設定每日定時執行(例如每天早上 8:00 - 9:00 自動推播)時,非技術使用者必須手動點擊後台的「鬧鐘圖示(觸發條件)」,經歷「新增觸發條件 $\rightarrow$ 選擇函式 $\rightarrow$ 設定時間驅動 $\rightarrow$ 選擇小時時間間隔」等繁瑣的選單點擊流程。
為徹底打破這層操作壁壘,AI Studio 在持續對話中提供了一個令人驚豔的解法:直接在程式碼中寫入一個名為 自動設定每天早上發送 的初始化函式。使用者只需在 GAS 編輯器中手動點擊執行該函式一次,程式碼便會利用 GAS 內建 API,自動在後台建立精確的時間排程觸發器。這種「以程式碼取代介面點擊」的設計,大幅降低了非技術人員的使用門檻,展現了極高的系統自動化巧思。
2.4 亮點四:精算 API 免費額度,打造 100% 零成本的個人助理
成本控制是評估個人微型自動化能否長期運作的生命線。根據 LINE 官方帳號(Messaging API)的現行費率,每個月提供 200 則免費推播訊息(Push Message)。
進行極致的成本效益算術:
  • 個人每日簡報需求:每天早晨發送 1 則行程摘要,一個月僅消耗約 30 則推播。
  • 免費額度餘裕:每月 200 則額度完全覆蓋 30 則的需求,使用率僅 15%,達到真正的 100% 零成本。
更關鍵的是,本方案採用的是純單向主動推播(Push Message)機制,完全不需要設定複雜的 Webhook 接收伺服器,亦無需架設架外 Server 或公網 IP 節點。這種零基礎設施(Zero-Infrastructure)的極簡架構,正是實現長期穩定且無負擔運作的最佳解。
2.5 亮點五:防範「覆蓋悲劇」!即使輕量自動化也必須做好的版本控管
在 GAS 開發環境中,直接修改並儲存程式碼會直接覆蓋現有版本。一旦未來嘗試優化邏輯(例如調整日曆擷取方式或多日曆合併)卻意外寫壞程式,且沒有留存歷史備份時,程式碼將陷入無法復原的絕境。
作者在實作中特別分享了過去因檔案被覆蓋而導致專案心血全毀的血痛教訓。因此,即便本專案僅為個人使用的輕量自動化、不需要正式將 Web App 對外發布,依然強烈建議運用 GAS 的「管理部署(Manage Deployments)」功能,在每次邏輯重大修正後建立新的部署版本(如:版本 1、修改日曆擷取方式版本 2)。養成良好的版本控管習慣,是確保任何自動化專案皆具備「可還原性」的最終防禦底線。

3. 結語與思索
AI Studio 與 Google Apps Script (GAS) 的強強聯手,正式宣告了「免程式碼自動化」時代的成熟。過去需要掌握 API 認證、排程管理與 JSON 處理等門檻的開發工程,如今一般數位工作者只需透過準確的對話引導與 Re-prompting 迭代,就能在數分鐘內建立出專屬且穩健運作的微型服務。
這不只是一次 LINE 行事曆祕書的實作示範,更留給每位渴望提升生產力的數位工作者一個值得深思的問題:在你的日常工作與生活中,還有哪些重複、繁瑣且耗費心智的流程,是只要問對 AI,就能在今天完成自動化的?

檔案下載:
自動將所有行事曆當天或隔天事項用linebot通知

 



2026年10月3日 星期六

【實作教學】打造專屬 LINE × Gemini AI 智慧待辦小幫手!自動記錄、日曆檢視與每日晨間提醒

你是否常有靈光一閃要記下的瑣事,或是臨時被交辦的工作,卻總是忘記?今天這篇教學要帶大家實作一個**結合 LINE 官方帳號、Google Gemini AI 與 Google 試算表(Google Apps Script, GAS)**的「智慧待辦小幫手」。

只要用日常口語傳訊息(例如:「明天下午去夜市」、「後天去新竹」),AI 就會自動解析時間與內容並寫入試算表,每天早上還會定時主動發送通知,提醒你今天與明天的待辦行程!


🛠️ 事前準備清單

  1. Google 帳號(用於 Google 試算表、Apps Script 及 Google AI Studio)。

  2. LINE 帳號(用於建立 LINE 官方帳號機器人)。

  3. 專案範本試算表(建立副本後即可開始設定)。


📖 完整實作步驟

第一步:建立試算表副本並初次部署 GAS

  1. 開啟範本試算表,點選 「檔案」 > 「建立副本」。

  2. 在新試算表上方選單點選 「擴充功能」 > 「Apps Script」。

  3. 進入 Apps Script 編輯器後,點擊右上角 「部署」 > 「管理部署」(或是初次點「新增部署」)。

  4. 點選 「建立部署」:

    • 種類:網頁應用程式

    • 誰可以存取:務必選擇 「所有人 (Anyone)」

  5. 點擊「部署」並完成 Google 帳號授權(若出現「Google 尚未驗證這個應用程式」,點擊「進階 (Advanced)」 > 前往專案 > 勾選所有存取權限並「繼續」)。

  6. 複製產生的「網頁應用程式網址」,先貼在記事本備用。


第二步:設定 Apps Script「指令碼屬性」

為了安全起見,API 金鑰與 ID 不要寫死在程式碼中,而是存放在屬性中。點選左側齒輪圖示 「專案設定」,滑到最下方的 「指令碼屬性」,依序新增以下三個屬性:

屬性名稱 (Property)說明與取得方式
SPREADSHEET_ID試算表網址中 /d/ 與 /edit 之間的那串字元代碼。
GEMINI_API_KEY前往 Google AI Studio 取得(見下方說明)。
LINE_ACCESS_TOKENLINE Messaging API 的長期存取權杖(見第三步說明)。

💡 如何取得 Gemini API Key:

  1. 前往 Google AI Studio,點擊左側「Get API key」。

  2. 點擊「Create API key」,自訂名稱後建立。

  3. 複製產生的金鑰,填入 GAS 的 GEMINI_API_KEY 欄位並儲存。


第三步:建立 LINE 官方帳號與設定 Webhook

  1. 建立官方帳號:

    • 前往 LINE 官方帳號管理頁面 並登入。

    • 點選「建立帳號」,填寫帳號名稱(例如:教學待辦小幫手)、業種後完成建立。

    • 選擇「稍後進行認證」,直接進入「前往管理介面」。

  2. 啟用 Messaging API:

    • 點擊右上角「設定」 > 左側選單「Messaging API」。

    • 點選「啟用 Messaging API」,選擇或建立服務提供者 (Provider)。

    • 在 Webhook 網址 欄位貼上 第一步複製的 GAS 網頁應用程式網址,並儲存。

    • 將 「使用 Webhook」 開關開啟。

  3. 關閉官方預設自動回覆(重要!):

    • 點選左側「回應設定」。

    • 將 「自動回應訊息」 設為 「停用」(避免官方預設罐頭訊息干擾 AI 機器人)。

  4. 取得 LINE Channel Access Token:

    • 在 Messaging API 設定頁面下方點擊 「LINE Developers」 連結進入開發者後台。

    • 點進剛建立的 Channel,切換到 「Messaging API」 分頁。

    • 滑到最下方找到 「Channel access token (long-lived)」,點擊 「Issue」 產生權杖。

    • 複製這串 Token,回到 GAS 的專案設定貼入 LINE_ACCESS_TOKEN 屬性並儲存。


第四步:重新部署 GAS 專案

⚠️ 重要觀念:每次修改了 GAS 程式碼或新增屬性後,必須重新發布版本才會生效!

  1. 回到 GAS 編輯器,點擊右上角 「部署」 > 「管理部署」。

  2. 點選右上角的 鉛筆(編輯) 圖示。

  3. 版本下拉選單選擇 「建立新版本」(可備註例如:更新 Key)。

  4. 點擊 「部署」 完成更新。


第五步:製作手機端「圖文選單 (Rich Menu)」

為了讓手機端操作更直覺,可以替機器人加上「待辦清單」、「月曆檢視」、「雲端試算表」三個快捷按鈕:

  1. 發布試算表到網路:

    • 回到試算表,點選 「檔案」 > 「共用」 > 「發布到網路」,點選發布並複製網址。

  2. 建立圖文選單:

    • 在 LINE 官方帳號後台,點選左側 「聊天室相關設定」 > 「圖文選單」 > 「建立圖文選單」。

    • 設定使用期間:建議設長一點(例如設到幾年後)。

    • 版型選擇:選擇底部「三格小按鈕」版型。

    • 上傳背景圖:上傳設計好的三格選單圖片。

    • 動作設定:

      • 區塊 A:動作選「文字」,輸入 清單。

      • 區塊 B:動作選「文字」,輸入 日曆。

      • 區塊 C:動作選「連結」,貼上剛才 試算表發布到網路的網址。

    • 點擊儲存,手機開啟對話框即會顯示圖文選單!


第六步:設定每日自動排程提醒(GAS 觸發條件)

想要小幫手每天早晨主動通知當日待辦事項,只要設定定時觸發條件:

  1. 回到 GAS 頁面,點選左側時鐘圖示 「觸發條件」。

  2. 點擊右下角 「+ 新增觸發條件」:

    • 要執行的功能:選擇 checkAndSendReminders

    • 活動來源:選擇 「時間驅動」

    • 時間型觸發條件類型:選擇 「日計時器」

    • 選取當天時間:選擇想要收到提醒的時段(例如:上午 7 點到 8 點)

  3. 點擊「儲存」即可完成設定。


🎯 成果測試與指令展示

  • 自然語言交辦:

    • 輸入:「明天買雞精」 ➜ AI 自動辨識明天日期並寫入試算表。

    • 輸入:「今天下午去夜市,後天去新竹」 ➜ 一次輸入多筆,AI 也能同時拆解解析!

  • 查詢待辦:

    • 點擊選單或輸入「清單」:列出近期的待辦卡片,可直接點按「完成」或「刪除」。

    • 點擊選單或輸入「日曆」:以當月月曆呈現,有事項的日期會標記紅點,點擊該日期即可展開當天行程。


結語

透過 Google Apps Script 串接 Gemini AI,不僅免去繁瑣的伺服器架設成本,更能運用大型語言模型的強大語意解析能力,讓原本死板的表單系統搖身一變成為高智慧的「隨身秘書」!大家趕緊跟著步驟動手做做看吧! 

檔案下載:

彰化一整天_LINE結合Gemini_AI待辦事項小幫手

https://imingho.nekoweb.org/file.htm?pid=191



相關教學:

【教學】如何取得 LINE User ID 並透過 Google 試算表自動發送訊息

https://www.youtube.com/watch?v=waTwmM8LfVM





【免寫程式的自動化革命】用 AI Studio 打造專屬 LINE 行事曆祕書:5 個極具啟發性的開發與防坑亮點

在步調緊湊的現代工作中,Google 日曆(Google Calendar)雖然具備內建提醒,卻需要使用者針對每個行程手動設定;一旦繁忙起來漏看系統通知,重要約會或待辦事項依舊面臨「被漏掉」的風險。試想一下:若能每天清晨打開 LINE,自動收到一份由專屬 AI 祕書梳理完畢的「今...