這個教學課程會說明如何製作符合下列條件的 Google Chat 應用程式: 即時回應事件。回應事件時,應用程式 建立並填入 Chat 聊天室,促進事件 回應訊息、斜線指令和對話方塊,並使用 AI 生成摘要 擷取及回報事件
事件是指需要立即團隊處理的事件 解決問題事件示例包括:
- 在客戶關係管理 (CRM) 平台中建立了時間敏感的案件,需要服務團隊協同解決。
- 系統離線,提醒一群網站可靠性工程師 (SRE) ,這樣他們就能共同合作,讓網站再次上線
- 發生規模極大的地震,因此緊急工作人員必須 協調各方回應
為進行本教學課程,系統會在使用者 用來回報事件。網頁會模擬 要求使用者輸入基本事件資訊:標題、 作答者的電子郵件地址與電子郵件地址
瞭解事件管理 Chat 應用程式的實際運作情形:
-
圖 2. 通知事件 Chat 聊天室已建立。 -
圖 3.事件回應 Chat 聊天室。 -
圖 4.使用斜線指令解決事件。 -
圖 5.事件解決對話方塊。 -
圖 6. 在聊天室中共用的事件解決 Google 文件。 -
圖 7.AI 摘要事件解決方案 Google 文件。
必要條件
如果您需要為貴機構開啟下列任何必要條件,請請求 Google Workspace 管理員啟用這些條件:
- 具備 Google Chat 存取權的 Google Workspace 企業或進階版帳戶。
- 希望 目錄 已開啟 Google Workspace 的聯絡人 (聯絡人共用)。事件應用程式會使用 查詢事件回應者的聯絡資訊,例如姓名 以及電子郵件地址事件回應者必須是貴 Google Workspace 機構中的 Google Chat 帳戶使用者。
目標
- 建構可回應事件的 Chat 應用程式。
- 請採取下列行動,協助使用者回應事件:
- 建立事件回應空間。
- 發布事件和回應摘要訊息。
- 支援透過互動式 Chat 應用程式功能進行協作。
- 使用 Vertex AI 產生對話摘要和解決方案。
架構
下圖顯示 Google Workspace 和 事件回應使用的 Google Cloud 資源 Google Chat 應用程式。
架構說明事件回應方式 Google Chat 應用程式會處理事件並解決問題。
使用者從託管於 Apps Script。
網站會將非同步 HTTP 要求傳送至 Google Chat 應用程式,該應用程式也託管在 Apps Script 上。
事件回應 Google Chat 應用程式會處理要求:
Apps Script Admin SDK 服務會取得團隊成員的資訊,例如使用者 ID 和電子郵件地址。
使用 Apps Script Advanced Chat 服務, 事件回應 Google Chat 應用程式會建立事件即時通訊 加入團隊成員,並從聊天室傳送訊息至聊天室。
團隊成員在 Chat 聊天室中討論事件。
團隊成員使用斜線指令,表示事件已解決。
使用 Apps Script 進階 Chat 服務對 Chat API 發出 HTTP 呼叫,即可列出所有 Chat 聊天室的訊息。
Vertex AI 會接收列出的訊息,並產生摘要。
Apps Script
DocumentApp
服務會建立 Docs 文件,並將 Vertex AI 的摘要新增至文件。事件回應 Google Chat 應用程式會呼叫 Chat API,傳送訊息分享摘要 Google 文件文件的連結。
準備環境
本節說明如何建立及設定 Chat 應用程式。
建立 Google Cloud 專案
Google Cloud 控制台
- 在 Google Cloud 控制台中,前往「選單」圖示 > IAM 與管理員 > 建立專案。
-
在「Project Name」(專案名稱) 欄位,輸入專案的描述性名稱。
選用步驟:如要編輯「Project ID」,請按一下「Edit」。專案建立後就無法變更專案 ID,因此請選擇符合專案執行期間需求的 ID。
- 按一下「地區」欄位中的「瀏覽」,即可查看可能的地理位置 專案。然後按一下「選取」。
- 點選「Create」(建立),Google Cloud 控制台會前往「Dashboard」(資訊主頁) 頁面,並在幾分鐘內建立專案。
gcloud CLI
在下列任一開發環境中,存取 Google Cloud
CLI (gcloud
):
-
Cloud Shell:透過 gcloud CLI 使用線上終端機
設定完畢,請啟用 Cloud Shell
啟用 Cloud Shell -
本機 Shell:如要使用本機開發環境,請安裝並初始化 gcloud CLI。
如要建立 Cloud 專案,請使用gcloud projects create
指令: 將要建立的專案 ID 設為 PROJECT_ID。gcloud projects create PROJECT_ID
啟用 Cloud 專案的計費功能
Google Cloud 控制台
- 在 Google Cloud 控制台中,前往「帳單」。按一下 選單 > 帳單 >「我的專案」。
- 在「選取組織」中,選擇與 Google Cloud 專案相關聯的組織。
- 在專案列中,開啟「動作」選單 ( ), 按一下 [變更帳單],然後選擇 Cloud Billing 帳戶。
- 按一下 [設定帳戶]。
gcloud CLI
- 如要列出可用的帳單帳戶,請執行:
gcloud billing accounts list
- 將帳單帳戶連結至 Google Cloud 專案:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
更改下列內容:
PROJECT_ID
是以下項目的專案 ID: 您想啟用計費功能的 Cloud 專案。BILLING_ACCOUNT_ID
是要連結的帳單帳戶 ID 套用配額
啟用 API
Google Cloud 控制台
在 Google Cloud 控制台中啟用 Google Chat API、Google Docs API、Admin SDK API 和 Vertex AI API。
確認您是在正確的 Cloud 專案中啟用 API,然後按一下「下一步」。
確認您啟用的 API 正確無誤,然後按一下「啟用」。
gcloud CLI
如有必要,請將目前的 Cloud 專案設為您使用
gcloud config set project
指令建立的專案:gcloud config set project PROJECT_ID
將 PROJECT_ID 替換為您建立的 Cloud 專案的專案 ID。
使用
gcloud services enable
指令啟用 Google Chat API、Google Docs API、Admin SDK API 和 Vertex AI API:gcloud services enable chat.googleapis.com docs.googleapis.com admin.googleapis.com aiplatform.googleapis.com
設定驗證與授權
驗證及授權 Google Workspace 和 Google Workspace 中的 Chat 擴充應用程式存取資源 處理事件回應的 Google Cloud
在本教學課程中,您可以在內部發布應用程式,因此可以使用預留位置 可能不準確或不適當在對外發布應用程式之前,請將同意畫面的預留位置資訊替換為實際資訊。
前往 Google Cloud 控制台,前往 選單 > API 與服務 > OAuth 同意畫面。
在「使用者類型」下方選取「內部」,然後點選「建立」。
在「應用程式名稱」中輸入
Incident Management
。在「使用者支援電子郵件」部分,選取您的電子郵件地址或適當的電子郵件地址 Google 群組。
在「開發人員聯絡資訊」下方,輸入您的電子郵件地址。
按一下 [儲存並繼續]。
按一下「新增或移除範圍」。面板隨即會顯示您在 Cloud 專案中啟用的每個 API 的範圍清單。
在「手動新增範圍」下方,貼上下列範圍:
https://www.googleapis.com/auth/chat.spaces.create
https://www.googleapis.com/auth/chat.memberships
https://www.googleapis.com/auth/chat.memberships.app
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/admin.directory.user.readonly
https://www.googleapis.com/auth/script.external_request
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/cloud-platform
按一下「新增至資料表」。
按一下「更新」。
按一下 [儲存並繼續]。
查看應用程式註冊摘要,然後按一下「返回資訊主頁」。
建立及部署 Chat 應用程式
在下一個章節中,您將複製及更新整個 Apps Script 專案,其中包含 Chat 應用程式所需的所有應用程式程式碼,因此您不必逐一複製及貼上各個檔案。
有些函式的名稱結尾有底線,例如:
來自「ChatApp.gs
」的processSlashCommand_()
。在瀏覽器中開啟事件初始化網頁時,底線會將函式隱藏。如要
資訊,請參閱
私人函式。
Apps Script 支援兩種檔案類型:.gs
指令碼和 .html
檔案。為遵循這項支援功能,應用程式的用戶端 JavaScript 會包含在 <script />
標記中,而 CSS 則會包含在 HTML 檔案中的 <style />
標記中。
您也可以選擇在 GitHub 上查看整個專案。
以下簡要說明各檔案:
Consts.gs
定義由其他程式碼檔案參照的常數, 包括 Cloud 專案 ID、Vertex AI 位置 ID 斜線指令 ID 來關閉事件
查看
Consts.gs
程式碼ChatApp.gs
處理 Chat 互動事件,包括 訊息、資訊卡點擊、斜線指令和對話方塊回應
/closeIncident
斜線指令,開啟對話方塊收集事件解決詳細資料。呼叫 Chat API 中的spaces.messages.list
方法,讀取聊天室中的訊息。使用 Apps Script 中的 Admin SDK Directory 服務取得使用者 ID。查看
ChatApp.gs
程式碼ChatSpaceCreator.gs
接收使用者在事件初始化網頁上輸入的表單資料,並用於建立及填入 Chat 空間,然後發布有關事件的訊息。
查看
ChatSpaceCreator.gs
程式碼DocsApi.gs
呼叫 Google 文件 API,在使用者的 Google 雲端硬碟中建立 Google 文件,並將在
VertexAiApi.gs
中建立的事件資訊摘要寫入文件。查看
DocsApi.gs
程式碼VertexAiApi.gs
使用 Vertex AI 摘要聊天空間中的對話內容。此摘要張貼在特別建立的 「
DocsAPI.gs
」中的文件。查看
VertexAiApi.gs
程式碼WebController.gs
提供事件初始化網站。
查看
WebController.gs
程式碼Index.html
內含事件初始化網站的 HTML。
查看
Index.html
程式碼JavaScript.html
處理事件初始化網站的表單行為,包括提交、錯誤和清除。隨附於 透過
WebController.gs
中的自訂include
函式傳入Index.html
。查看
JavaScript.html
程式碼Stylesheet.html
事件初始化網站的 CSS。是 由自訂
include
函式包含在Index.html
中WebController.gs
。查看
Stylesheet.html
程式碼
尋找 Cloud 專案編號和 ID
在 Google Cloud 控制台中,前往 Cloud 專案。
依序按一下「設定和公用程式」>「專案設定」。
記下「專案編號」和「專案 ID」欄位中的值。您會在後續各節中使用這些值。
建立 Apps Script 專案
如要建立 Apps Script 專案並連結至 Cloud 專案,請按照下列步驟操作:
- 按一下下方按鈕,即可開啟「使用 Google Chat 回應事件」Apps Script 專案。
開啟專案 - 按一下 「總覽」。
- 在總覽頁面上,按一下「 建立副本」。
為 Apps 指令碼專案副本命名:
按一下「回覆事件 (使用 Google Chat)」的副本。
在「Project title」中輸入
Incident Management Chat app
。按一下 [重新命名]。
在 Apps Script 專案副本中,前往
Consts.gs
檔案,然後將YOUR_PROJECT_ID
替換為 Cloud 專案的 ID。
設定 Apps Script 專案的 Cloud 專案
- 在您的 Apps Script 專案中, 按一下 「Project Settings」。
- 在「Google Cloud Platform (GCP) 專案」下方,按一下「變更專案」。
- 在「GCP 專案編號」中,貼上 Cloud 專案的專案編號。
- 按一下「設定專案」。Cloud 專案和 Apps Script 專案現在已連結。
建立 Apps Script 部署作業
所有程式碼都已就定位後,請部署 Apps Script 專案。設定 Deployment ID 時 Google Cloud 中的即時通訊應用程式。
在 Apps Script 中,開啟事件回應應用程式的專案。
按一下「部署」>新增部署作業。
如果尚未選取「外掛程式」和「網頁應用程式」,請 選取類型,按一下部署類型 ,然後選取「外掛程式」和「網頁應用程式」。
在「說明」中輸入這個版本的說明,例如:
Complete version of incident management app
。在「執行為」中,選取「使用者存取網路應用程式」
在「擁有存取權的使用者」中,選取「< Workspace 機構中的所有人」, 「你的 Workspace 機構」就是你的 Google Workspace 機構
按一下「Deploy」。Apps Script 會回報成功部署,並提供事件初始網頁的部署 ID 和網址。
請記下網路應用程式網址,以便稍後啟動事件時使用。複製部署 ID。您可以在 Google Cloud 控制台中設定 Chat 應用程式時使用這個 ID。
按一下 [完成]。
在 Google Cloud 控制台中設定 Chat 應用程式
本節說明如何在 Google Cloud 控制台中設定 Google Chat API,並提供 Chat 應用程式相關資訊,包括您剛剛透過 Apps Script 專案建立的部署 ID。
在 Google Cloud 控制台中,依序點選「選單」 >「更多產品」 >「Google Workspace」 >「產品程式庫」 >「Google Chat API」 >「管理」 >「設定」。
在「應用程式名稱」中輸入
Incident Management
。在「顯示圖片」中輸入
https://developers.google.com/chat/images/quickstart-app-avatar.png
。在「說明」中輸入
Responds to incidents.
。將「啟用互動功能」切換鈕設為開啟。
在「功能」下方,選取「接收一對一訊息」、「加入聊天室和群組對話」。
在「連線設定」下方,選取「Apps Script」。
在「部署作業 ID」中,貼上 Apps Script 部署作業 ID 複製先前從 Apps Script 專案複製的程式碼 可能面臨擴充性、監控、持續整合 和部署等方面的挑戰
註冊完整實作的 Chat 應用程式使用的斜線指令:
在「斜線指令」下方,按一下「新增斜線指令」。
在「Name」(名稱) 中輸入
/closeIncident
。在「Command ID」中輸入
1
。在「說明」中輸入
Closes the incident being discussed in the space.
選取「開啟對話方塊」。
按一下「完成」,斜線指令已完成註冊並列在清單中。
在「Visibility」(顯示設定) 下方選取 將這個即時通訊應用程式提供給「您」中的特定使用者和群組 Workspace 網域並輸入您的電子郵件地址。
在「記錄」底下,選取 [將錯誤記錄至 Logging]。
按一下 [儲存]。系統會顯示「設定已儲存」訊息,表示應用程式已準備好進行測試。
測試 Chat 應用程式
如要測試事件管理 Chat 應用程式,請透過網頁發起事件,並確認 Chat 應用程式運作正常:
前往 Apps Script 部署作業網頁應用程式網址。
當 Apps Script 要求存取您的資料時, 請按一下「查看權限」,然後使用適當的 Google 帳戶登入 在 Google Workspace 網域中,然後按一下「Allow」。
事件初始化網頁隨即開啟。輸入測試資訊:
- 在「Incident title」中輸入
The First Incident
。 - (選用) 在「事件回應者」中,輸入 事件回應者。這些使用者必須是 您 Google Workspace 機構的 Google Chat 帳戶,或是 無法建立聊天室。請勿輸入自己的電子郵件地址,因為系統會自動納入。
- 在「初始訊息」中輸入
Testing the incident management Chat app.
- 在「Incident title」中輸入
按一下「建立聊天室」。系統隨即會顯示
creating space
訊息。建立聊天室後,系統會顯示
Space created!
訊息。按一下「開啟聊天室」,即可在新分頁中開啟 Chat 中的聊天室。您和其他事件回應者也可以選擇在聊天室中傳送訊息。應用程式使用 Vertex AI 總結這些訊息,並分享 回溯性文件
如要結束事件回應並開始解決問題,請在即時通訊聊天室中輸入
/closeIncident
。事件管理 對話方塊就會開啟。在「關閉事件」中輸入事件解決方式的說明。 就像
Test complete
。按一下「關閉事件」。
事件管理應用程式會列出聊天室中的訊息,並使用 Vertex AI 摘要,將摘要貼到 Google 文件文件中,然後在聊天室中分享該文件。
清除所用資源
如要避免系統向您的 Google Cloud 帳戶收取本教學課程中所用資源的相關費用,建議您刪除 Cloud 專案。
- 在 Google Cloud 控制台中,前往「管理資源」頁面。依序按一下「選單」圖示 >「IAM 與管理」 >「管理資源」。
- 在專案清單中選取要刪除的專案,然後按一下「刪除」圖示 。
- 在對話方塊中輸入專案 ID,然後按一下「Shut down」(關閉) 即可刪除 專案。
相關主題
- 透過 Gemini AI Chat 擴充應用程式,依據 Chat 對話回答問題
- 使用 Google Chat、Vertex AI 和 Firestore 管理專案
- 事件回應應用程式會使用使用者憑證進行驗證,以便呼叫 API 和啟動 Google Cloud 服務,例如 Chat API 和 Vertex AI API。這表示初始化事件的使用者必須具備這些權限
免費 Google Cloud 服務如要提高應用程式的安全性,請考慮呼叫 Vertex AI API
服務帳戶為服務帳戶,而非叫用使用者的使用者憑證
/closeIncident
斜線指令。如需設定服務帳戶的相關說明 請參閱 使用自訂服務帳戶。