REST Resource: spaces

資源:聊天室

Google Chat 中的聊天室。聊天室是指兩名以上使用者之間的對話,或使用者和 Chat 應用程式之間的 1:1 訊息。

JSON 表示法
{
  "name": string,
  "type": enum (Type),
  "spaceType": enum (SpaceType),
  "singleUserBotDm": boolean,
  "threaded": boolean,
  "displayName": string,
  "externalUserAllowed": boolean,
  "spaceThreadingState": enum (SpaceThreadingState),
  "spaceDetails": {
    object (SpaceDetails)
  },
  "spaceHistoryState": enum (HistoryState),
  "importMode": boolean,
  "createTime": string,
  "lastActiveTime": string,
  "adminInstalled": boolean,
  "membershipCount": {
    object (MembershipCount)
  },
  "accessSettings": {
    object (AccessSettings)
  },
  "spaceUri": string,

  // Union field space_permission_settings can be only one of the following:
  "predefinedPermissionSettings": enum (PredefinedPermissionSettings),
  "permissionSettings": {
    object (PermissionSettings)
  }
  // End of list of possible types for union field space_permission_settings.
}
欄位
name

string

聊天室的資源名稱。

格式:spaces/{space}

type
(deprecated)

enum (Type)

僅供輸出。已淘汰:請改用 spaceType。聊天室的類型,

spaceType

enum (SpaceType)

聊天室類型。建立聊天室或更新聊天室類型時為必要項目。僅供其他用途輸出。

singleUserBotDm

boolean

選用設定。聊天室是否為 Chat 應用程式和單一真人之間的即時訊息。

threaded
(deprecated)

boolean

僅供輸出。已淘汰:請改用 spaceThreadingState。這個聊天室中的訊息是否為討論串形式。

displayName

string

聊天室的顯示名稱。建立聊天室時必填。如果在建立聊天室或更新displayName時收到 ALREADY_EXISTS 錯誤訊息,請嘗試其他 displayName。Google Workspace 機構中的某個聊天室可能已使用這個顯示名稱。

如果是即時訊息,這個欄位可能會留空。

最多可支援 128 個半形字元。

externalUserAllowed

boolean

不可變動。這個聊天室是否允許任何 Google Chat 使用者加入。在 Google Workspace 機構建立聊天室時輸入。於下列條件建立空格時,請略過這個欄位:

  • 已驗證的使用者使用個人帳戶 (非受管使用者帳戶)。根據預設,透過個人帳戶建立的聊天室可允許所有 Google Chat 使用者存取。

  • 系統會使用這個聊天室將資料匯入 Google Chat,因為匯入模式的聊天室僅允許來自同一個 Google Workspace 機構的成員。不過,由於參加 Google Workspace 開發人員預覽版計畫,匯入模式聊天室可允許任何 Google Chat 使用者使用,因此您可以為匯入模式聊天室設定這個欄位。

如為現有聊天室,這個欄位只會輸出。

spaceThreadingState

enum (SpaceThreadingState)

僅供輸出。Chat 聊天室的討論串狀態。

spaceDetails

object (SpaceDetails)

聊天室的詳細資料,包括說明和規則。

spaceHistoryState

enum (HistoryState)

這個聊天室中訊息和討論串的訊息記錄狀態。

importMode

boolean

選用設定。將資料遷移至 Google Workspace 時,系統是否在「Import Mode」建立這個聊天室。正在匯入聊天室時,使用者必須等到匯入完成後才會看到聊天室。

createTime

string (Timestamp format)

選用設定。不可變動。在 Chat 中建立的聊天室,是指聊天室的建立時間。這個欄位僅供輸出 (用於匯入模式空格時除外)。

如果是匯入模式聊天室,請將這個欄位設為在來源中建立聊天室的過往時間戳記,以便保留原始的建立時間。

只有在 spaceTypeGROUP_CHATSPACE 時,才會在輸出內容填入。

lastActiveTime

string (Timestamp format)

僅供輸出。聊天室中最後一則訊息的時間戳記。

adminInstalled

boolean

僅供輸出。針對採用 Chat 應用程式的即時訊息 (DM) 聊天室,無論聊天室是否由 Google Workspace 管理員建立,管理員可以代表機構使用者安裝及設定 Chat 應用程式的即時訊息。

如要支援管理員安裝功能,您的 Chat 應用程式必須提供即時訊息。

membershipCount

object (MembershipCount)

僅供輸出。會員人數按成員類型分組。在 spaceTypeSPACEDIRECT_MESSAGEGROUP_CHAT 時填入。

accessSettings

object (AccessSettings)

選用設定。指定聊天室的存取權設定。只有在 spaceTypeSPACE 時才會填入。

spaceUri

string

僅供輸出。供使用者存取聊天室的 URI。

聯集欄位 space_permission_settings。代表聊天室的權限設定。只有在 space_typeSPACE 時才會填入。space_permission_settings 只能採用下列其中一種設定:
predefinedPermissionSettings

enum (PredefinedPermissionSettings)

選用設定。僅限輸入。聊天室權限設定。用於建立聊天室的輸入內容。如未設定這個欄位,系統就會建立協作聊天室。建立聊天室後,PermissionSettings 欄位中會填入設定。

permissionSettings

object (PermissionSettings)

選用設定。可調整聊天室的確切權限設定。更新聊天室的輸入內容。否則只會輸出。如要建立聊天室,請改用 predefinedPermissionSettings

類型

已淘汰:請改用 SpaceType

列舉
TYPE_UNSPECIFIED 預留。
ROOM 兩人之間的對話。
DM 1:1 即時訊息和 Chat 應用程式,而且所有訊息都是平坦的。請注意,不包括兩人之間的即時訊息。

SpaceType

聊天室類型。建立或更新聊天室時必填。僅供其他用途輸出。

列舉
SPACE_TYPE_UNSPECIFIED 預留。
SPACE 使用者傳送訊息、共用檔案及協同合作的地方。SPACE 可包含 Chat 擴充應用程式。
GROUP_CHAT 3 人以上進行的群組對話。GROUP_CHAT 可包含 Chat 擴充應用程式。
DIRECT_MESSAGE 雙方的 1:1 訊息,或真人與 Chat 應用程式。

SpaceThreadingState

指定 Chat 聊天室中的執行緒狀態類型。

列舉
SPACE_THREADING_STATE_UNSPECIFIED 預留。
THREADED_MESSAGES 支援訊息串的具名聊天室。使用者回覆訊息時,可以在討論串中回覆,讓系統根據原始訊息的文字內容提供回覆。
GROUPED_MESSAGES 依主題分類對話的已命名聊天室。主題及其回覆會歸為一組。
UNTHREADED_MESSAGES 兩人之間的即時訊息 (DM),以及 3 人以上群組對話之間的即時訊息。

SpaceDetails

聊天室的詳細資料,包括說明和規則。

JSON 表示法
{
  "description": string,
  "guidelines": string
}
欄位
description

string

選用設定。聊天室的說明。例如說明聊天室的討論主題、功能目的或參與者。

最多可支援 150 個半形字元。

guidelines

string

選用設定。聊天室的規則、期望和禮儀。

最多可支援 5,000 個半形字元。

HistoryState

訊息和聊天室的記錄狀態。指定訊息和對話串建立後保留的時間長度。

列舉
HISTORY_STATE_UNSPECIFIED 預設值。請勿使用。
HISTORY_OFF 記錄功能已關閉。訊息和討論串會保留 24 小時
HISTORY_ON 開啟記錄功能。機構的保管箱資料保留規則指定郵件和討論串的保留時間長度。

MembershipCount

代表依類別分組的聊天室成員數量。

JSON 表示法
{
  "joinedDirectHumanUserCount": integer,
  "joinedGroupCount": integer
}
欄位
joinedDirectHumanUserCount

integer

直接加入聊天室的真人使用者人數 (不計入在加入群組的情況下加入的使用者數)。

joinedGroupCount

integer

直接加入聊天室的所有群組數量。

AccessSettings

代表聊天室的存取權設定

JSON 表示法
{
  "accessState": enum (AccessState),
  "audience": string
}
欄位
accessState

enum (AccessState)

僅供輸出。指出聊天室的存取權狀態。

audience

string

選用設定。這是目標對象的資源名稱,可以探索聊天室、加入聊天室及預覽聊天室中的訊息。如未設定,則只有受到個別邀請或新增至聊天室的使用者或 Google 群組才能存取聊天室。詳情請參閱「允許目標對象搜尋聊天室」。

格式:audiences/{audience}

如要使用 Google Workspace 機構的預設目標對象,請設為 audiences/default

AccessState

代表聊天室的存取狀態。

列舉
ACCESS_STATE_UNSPECIFIED 存取狀態不明,或不支援這個 API。
PRIVATE 只有其他使用者或 Google Workspace 管理員獨自新增或邀請的使用者或 Google 群組,才能找到及存取聊天室。
DISCOVERABLE 聊天室管理員已將目標對象存取權授予聊天室。個別加入或受邀加入聊天室的使用者或 Google 群組,也能探索及存取聊天室。詳情請參閱「將聊天室設為開放特定使用者搜尋」。

PredefinedPermissionSettings

建立具名聊天室時可指定的聊天室權限設定。日後可能會有更多設定加入。如要進一步瞭解具名聊天室的權限設定,請參閱「瞭解聊天室」。

列舉
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED 未指定。請勿使用。
COLLABORATION_SPACE 將聊天室設為可供所有成員張貼訊息的協作聊天室。
ANNOUNCEMENT_SPACE 將聊天室設為公告聊天室,但只有聊天室管理員可以張貼訊息。

PermissionSettings

命名聊天室的權限設定。如要在建立聊天室時設定權限,請在要求中指定 PredefinedPermissionSettings 欄位。

JSON 表示法
{
  "manageMembersAndGroups": {
    object (PermissionSetting)
  },
  "modifySpaceDetails": {
    object (PermissionSetting)
  },
  "toggleHistory": {
    object (PermissionSetting)
  },
  "useAtMentionAll": {
    object (PermissionSetting)
  },
  "manageApps": {
    object (PermissionSetting)
  },
  "manageWebhooks": {
    object (PermissionSetting)
  },
  "postMessages": {
    object (PermissionSetting)
  },
  "replyMessages": {
    object (PermissionSetting)
  }
}
欄位
manageMembersAndGroups

object (PermissionSetting)

管理聊天室成員和群組的設定。

modifySpaceDetails

object (PermissionSetting)

這項設定代表的是更新聊天室名稱、顯示圖片、說明和規範。

toggleHistory

object (PermissionSetting)

這項設定用於開啟或關閉聊天室記錄。

useAtMentionAll

object (PermissionSetting)

這項設定代表要在聊天室中使用「@all」符號。

manageApps

object (PermissionSetting)

管理聊天室應用程式的設定。

manageWebhooks

object (PermissionSetting)

管理聊天室 Webhook 的設定。

postMessages

object (PermissionSetting)

僅供輸出。這項設定適用於在聊天室中張貼訊息的設定。

replyMessages

object (PermissionSetting)

回覆聊天室訊息的設定。

PermissionSetting

代表聊天室權限設定。

JSON 表示法
{
  "managersAllowed": boolean,
  "membersAllowed": boolean
}
欄位
managersAllowed

boolean

聊天室管理員是否具備這項權限。

membersAllowed

boolean

非管理員成員是否擁有這項權限。

方法

completeImport

完成指定聊天室的匯入程序,並向使用者顯示。

create

建立具名聊天室。

delete

刪除已命名的聊天室。

findDirectMessage

傳回含有指定使用者的現有即時訊息。

get

傳回聊天室的詳細資料。

list

列出呼叫端所屬的聊天室。

patch

更新聊天室。

setup

建立聊天室並將指定的使用者新增至聊天室。