疑難排解並修正 Google Chat 應用程式錯誤

本節說明建構及測試 Chat 應用程式時可能會遇到的常見問題。

資訊卡訊息、對話方塊或連結預覽無法正常顯示或運作

如需疑難排解卡片錯誤的相關說明,請參閱疑難排解及修正卡片

應用程式沒有回應

如果您向 Chat 應用程式傳送訊息,並回應「應用程式無回應」,請確認 Chat 應用程式設定:

  1. 在 Google Cloud 控制台中,依序點選「選單」圖示 >「更多產品」 >「Google Workspace」 >「產品資料庫」 >Google Chat API>「管理」 >「設定」

    前往 Chat API

  2. 在「應用程式狀態」下方,確認您已選取「可對使用者開放」

  3. 在「互動功能」下方,確認設定適用於應用程式功能。如果您的 Chat 應用程式會與使用者互動,請確認您已開啟「啟用互動式功能」

    1. 如果您的應用程式會回覆訊息,請務必選取「接收 1:1 訊息」
    2. 在「連線設定」下方,確認「應用程式網址」、Apps Script 專案的「部署 ID」、Cloud Pub/Sub「主題名稱」或 Dialogflow 代理程式已正確設定且已完成部署。
    3. 在「瀏覽權限」下方,確認適當的使用者能夠以電子郵件地址或 Google Workspace 網域中的群組存取應用程式。如果應用程式是透過 Google Workspace Marketplace SDK 部署,則不必調整瀏覽權限設定,因為系統會優先採用 Google Workspace Marketplace 設定。
  4. 如果應用程式是透過 Google Workspace Marketplace SDK 發布,請檢查 Google Workspace Marketplace 設定。

  5. 點按「儲存」

  6. 請再次嘗試傳送訊息給應用程式。

Google Chat API 僅適用於 Google Workspace 使用者

設定 Chat 應用程式時,您可能會收到 Google Chat API is only available to Google Workspace users 錯誤訊息。這則訊息表示您用於設定 Chat API 的 Google 帳戶不屬於 Google Workspace 機構。如要建構 Chat 應用程式或使用 Chat API,您必須使用 Google Workspace 帳戶

請注意,Google Chat 使用者不需要 Google Workspace 帳戶即可使用 Chat 應用程式。如要進一步瞭解使用者如何探索及安裝 Chat 應用程式,請參閱「發布 Google Chat 應用程式」。

使用者可能無法加入聊天室或被移出聊天室

如果 Google Workspace 管理員禁止使用者開啟或關閉 Chat 記錄,有時使用者可能會因為強制開啟或關閉即時通訊記錄的設定,而與沿用機構層級強制設定設定的聊天室發生衝突,導致使用者無法加入或留在聊天室。

舉例來說,如果使用者的 Chat 記錄設定強制「開啟」,而聊天室的 Chat 記錄設定強制「關閉」,該使用者可能無法加入該聊天室。此外,如果使用者在衝突前加入聊天室,系統可能會在衝突後在聊天室中張貼訊息,而該使用者在衝突後在聊天室中張貼訊息。

在這個情況,以及其他記錄設定發生衝突的情況下,Chat API 可能無法建立成員資格,或者建立含有使用者驗證的訊息,可能會將 Chat 記錄設定與 Chat 記錄設定衝突的使用者從聊天室中移除。

如需瞭解詳情,請前往 Google Workspace 管理員說明中心,參閱「使用者無法加入聊天室」一文。

排解 Google Apps Script 中的進階即時通訊服務問題

請參閱 Apps Script 頁面,瞭解進階 Chat 服務

使用者無法將 Chat 應用程式新增至聊天室

如果使用者嘗試將 Chat 應用程式新增至聊天室時看到錯誤訊息 This organization's administrator must allow users to install this Chat app,可能是下列其中一個原因導致這項錯誤:

  • 機構已停用 Chat 擴充應用程式。
  • 機構尚未將這個 Chat 應用程式新增至機構的許可清單。

如果使用者在嘗試與 Chat 應用程式互動時收到這則錯誤訊息,可能是因為機構將存取權授予子機構單位,但並未對上層機構單位啟用這項功能。

如要進一步瞭解如何解決這個問題,請參閱「允許使用者安裝即時通訊應用程式」。

排解 Cloud 函式錯誤

如果 Chat 應用程式是透過 Cloud Functions 實作,但無法正常運作,以下各節將協助您排解及修正問題。

查看 Cloud 函式記錄檔

首先,請檢查 Cloud Functions 記錄檔是否有錯誤。

  1. 前往 Google Cloud 控制台中的「Cloud Functions」頁面:

    前往 Cloud Functions 頁面

  2. 如要開啟記錄,請找出 Chat 應用程式的 Cloud 函式,然後依序按一下「Show actions」(顯示動作) >「View logs」(查看記錄)

記錄檔探索工具會開啟並執行一項查詢,其中會顯示 Cloud 函式記錄檔,包括錯誤。

如果記錄的預設資訊不足以對應用程式進行偵錯,您可以透過 Cloud 函式程式碼新增其他記錄。請參閱檢視及寫入 Cloud 函式記錄

檢查 Cloud 函式錯誤

除了記錄以外,Cloud 函式可能也會回報執行期間發生的錯誤。

  1. 前往 Google Cloud 控制台中的「Cloud Functions」頁面:

    前往 Cloud Functions 頁面

  2. 按一下 Chat 應用程式的 Cloud 函式。

  3. 在「函式詳細資料」頁面的「錯誤」下方,會列出錯誤。

  4. 如要進一步排解任何錯誤,請按一下該錯誤。

修正常見的 Cloud 函式錯誤

使用 Cloud Functions 建構 Chat 應用程式時,有時會遇到下列錯誤。

專案「PROJECT_NAME」中「REGION_NAME」區域的 ChatApp 函式已存在

部署 Cloud 函式時,您可能會收到 Function ChatApp in region REGION_NAME in project PROJECT_NAME already exists 錯誤。此訊息表示另一個 Cloud 函式的名稱與您要部署的名稱相同。請變更名稱,然後再次部署函式。確認 Chat 應用程式使用 Cloud 函式的觸發網址,而不是既有 Cloud 函式的觸發網址。

這項政策指定的一或多位使用者不屬於獲得許可的客戶

部署 Cloud 函式時,您可能會收到以下錯誤訊息:The operation cannot be completed on the function: "One or more users named in the policy do not belong to a permitted customer."。如果您收到這個錯誤,然後傳送訊息給 Chat 應用程式,您會收到應用程式沒有回應的錯誤訊息,因為 Google Chat 無法連上託管 Cloud 函式的伺服器。這則訊息表示名為「allUsers」的使用者沒有呼叫 Cloud 函式的權限。將「Cloud Functions 叫用者」角色指派給「allUsers」表示支援應用程式的 Cloud 函式會公開取用,不需驗證。如要瞭解如何指派角色,請參閱「授予單一角色」一文。

這個錯誤可能表示 Google Cloud 專案受網域限制。如要進一步瞭解網域限制限制,請參閱依照網域設定身分限制

如要解決這個問題,請確認您的 Cloud 函式允許未經驗證的叫用。如要瞭解如何允許在未經驗證的情況下叫用現有的 Cloud 函式,請參閱允許公開 (未經驗證) 存取