本指南將說明如何使用
update()
Google Chat API 的 Message
資源方法,可更新文字或卡片
從聊天室中撰寫訊息更新訊息以變更訊息屬性,例如
或卡片內容您也可以在資訊卡訊息前方加上簡訊,或是在簡訊後方加上資訊卡。
在 Chat API 中,Chat 訊息會以 Message
資源表示。雖然 Chat 使用者只能傳送含有文字的訊息,但 Chat 應用程式可以使用許多其他訊息功能,包括顯示靜態或互動式使用者介面、向使用者收集資訊,以及私下傳送訊息。進一步瞭解訊息功能
如要瞭解 Chat API 可用的功能,請參閱
Google Chat 訊息總覽。
必要條件
Node.js
- 企業或企業 具有存取權的 Google Workspace 帳戶 Google Chat。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用並設定 Google Chat API。 圖示和說明
- 安裝 Node.js Cloud 用戶端程式庫。
- 根據您要在 Google Chat API 要求中驗證的方式,建立存取憑證:
- 如要以 Chat 使用者的身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存為名為
client_secrets.json
的 JSON 檔案,並儲存在本機目錄中。 - 如要以 Chat 應用程式的身分進行驗證,
建立服務帳戶
憑證,並將憑證儲存為 JSON 檔案
credentials.json
。
- 如要以 Chat 使用者的身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存為名為
- 根據你要以使用者或使用者身分驗證選擇授權範圍 Chat 應用程式。
Python
- 企業或企業 具有存取權的 Google Workspace 帳戶 Google Chat。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用並設定 Google Chat API,並為 Chat 應用程式提供名稱、圖示和說明。
- 安裝 Python Cloud 用戶端程式庫。
- 根據您要在 Google Chat API 中驗證的方式建立存取憑證
要求:
- 如要以 Chat 使用者的身分進行驗證,
建立 OAuth 用戶端 ID
憑證,並將憑證儲存為 JSON 檔案
client_secrets.json
至本機目錄。 - 如要以 Chat 應用程式進行驗證,請建立服務帳戶憑證,並將憑證儲存為名為
credentials.json
的 JSON 檔案。
- 如要以 Chat 使用者的身分進行驗證,
建立 OAuth 用戶端 ID
憑證,並將憑證儲存為 JSON 檔案
- 根據你要以使用者或使用者身分驗證選擇授權範圍 Chat 應用程式。
Java
- 具備 Google Chat 存取權的 Google Workspace 企業或進階版帳戶。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用並設定 Google Chat API,並為 Chat 應用程式提供名稱、圖示和說明。
- 安裝 Java Cloud 用戶端程式庫。
- 根據您要在 Google Chat API 中驗證的方式建立存取憑證
要求:
- 如要以 Chat 使用者的身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存為名為
client_secrets.json
的 JSON 檔案,並儲存在本機目錄中。 - 如要以 Chat 應用程式進行驗證,請建立服務帳戶憑證,並將憑證儲存為名為
credentials.json
的 JSON 檔案。
- 如要以 Chat 使用者的身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存為名為
- 根據您想以使用者或 Chat 應用程式身分進行驗證,選擇授權範圍。
Apps Script
- 企業或企業 具有存取權的 Google Workspace 帳戶 Google Chat。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用並設定 Google Chat API,並為 Chat 應用程式提供名稱、圖示和說明。
- 建立獨立的 Apps Script 專案,並啟用進階 Chat 服務。
- 在本指南中,您必須使用使用者或應用程式驗證。如要以 Chat 應用程式驗證,請建立服務帳戶憑證。如需詳細步驟,請參閱「以 Google Chat 應用程式身分驗證及授權」。
- 根據您想以使用者或 Chat 應用程式身分進行驗證,選擇授權範圍。
代表使用者更新訊息
透過使用者驗證 只能更新訊息的文字
如要更新包含使用者驗證訊息的訊息,請將下列程式碼傳入您的 要求:
- 指定
chat.messages
授權範圍。 - 呼叫
UpdateMessage()
方法。 - 將
message
做為Message
取代為:- 設為要更新訊息的
name
欄位,其中含有聊天室 ID 和郵件 ID text
欄位已設定新文字。
- 設為要更新訊息的
- 使用
text
值傳遞updateMask
。
如果更新的訊息是 資訊卡訊息 那麼資訊卡前面會加上文字 (持續顯示)。
以下說明如何更新訊息,或在資訊卡訊息前面加上簡訊 具有使用者驗證:
Node.js
Python
Java
Apps Script
如要執行這個範例,請取代下列項目:
SPACE_NAME
:聊天室name
的 ID。您可以呼叫ListSpaces()
方法,或是從空格網址複製。MESSAGE_NAME
:訊息的 IDname
。 建立完成後,您可從系統傳回的回應主體中取得 ID 或是以非同步方式傳送 自訂名稱 是在建立訊息時指派的
Chat API 會傳回 Message
的例項,詳細說明已更新的訊息。
以 Chat 應用程式的形式更新訊息
透過應用程式驗證, 訊息中的文字和資訊卡皆可更新。
如要更新使用應用程式驗證的訊息,請在要求中傳遞下列項目:
- 指定
chat.bot
授權範圍。 - 呼叫
UpdateMessage()
方法。 - 將
message
做為Message
取代為:- 設為要更新訊息的
name
欄位,其中含有聊天室 ID 和郵件 ID text
欄位設定為新文字 (如需更新)。- 需要更新的新卡片設定的
cardsV2
欄位。
- 設為要更新訊息的
- 將包含欄位清單的
updateMask
傳遞至更新,例如text
和cardsV2
。
如果更新的訊息是 資訊卡訊息和文字。 更新後的文字會加到資訊卡前面 (持續顯示)。 如果更新的訊息是 簡訊和資訊卡 更新後,更新後的資訊卡也會附加至文字 (持續在 螢幕)。
以下說明如何透過應用程式驗證更新訊息的文字和資訊卡:
Node.js
Python
Java
Apps Script
如要執行這個範例,請取代下列項目:
SPACE_NAME
:聊天室的 IDname
。 您可以呼叫ListSpaces()
方法,或是從空格網址複製。MESSAGE_NAME
:訊息name
中的 ID。您可以使用 Chat API 以非同步方式建立訊息,或在建立訊息時指派自訂名稱,然後從回應主體中取得 ID。
Chat API 會傳回
Message
詳細資料的更新訊息