Class: Google::Apis::ChatV1::Space

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/chat_v1/classes.rb,
lib/google/apis/chat_v1/representations.rb,
lib/google/apis/chat_v1/representations.rb

Overview

A space in Google Chat. Spaces are conversations between two or more users or 1:1 messages between a user and a Chat app.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Space

Returns a new instance of Space.



6978
6979
6980
# File 'lib/google/apis/chat_v1/classes.rb', line 6978

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#access_settingsGoogle::Apis::ChatV1::AccessSettings

Represents the access setting of the space. Corresponds to the JSON property accessSettings



6818
6819
6820
# File 'lib/google/apis/chat_v1/classes.rb', line 6818

def access_settings
  @access_settings
end

#admin_installedBoolean Also known as: admin_installed?

Output only. For direct message (DM) spaces with a Chat app, whether the space was created by a Google Workspace administrator. Administrators can install and set up a direct message with a Chat app on behalf of users in their organization. To support admin install, your Chat app must feature direct messaging. Corresponds to the JSON property adminInstalled

Returns:

  • (Boolean)


6827
6828
6829
# File 'lib/google/apis/chat_v1/classes.rb', line 6827

def admin_installed
  @admin_installed
end

#create_timeString

Optional. Immutable. For spaces created in Chat, the time the space was created. This field is output only, except when used in import mode spaces. For import mode spaces, set this field to the historical timestamp at which the space was created in the source in order to preserve the original creation time. Only populated in the output when spaceType is GROUP_CHAT or SPACE. Corresponds to the JSON property createTime

Returns:

  • (String)


6837
6838
6839
# File 'lib/google/apis/chat_v1/classes.rb', line 6837

def create_time
  @create_time
end

#customerString

Optional. Immutable. The customer id of the domain of the space. Required only when creating a space with app authentication and SpaceType is SPACE, otherwise should not be set. In the format customers/customer`, where customeris theidfrom the [Admin SDK customer resource](https:// developers.google.com/admin-sdk/directory/reference/rest/v1/customers). Private apps can also use thecustomers/my_customeralias to create the space in the same Google Workspace organization as the app. This field isn't populated for direct messages (DMs) or when the space is created by non-Google Workspace users. Corresponds to the JSON propertycustomer`

Returns:

  • (String)


6851
6852
6853
# File 'lib/google/apis/chat_v1/classes.rb', line 6851

def customer
  @customer
end

#display_nameString

Optional. The space's display name. Required when creating a space with a spaceType of SPACE. If you receive the error message ALREADY_EXISTS when creating a space or updating the displayName, try a different displayName. An existing space within the Google Workspace organization might already use this display name. For direct messages, this field might be empty. Supports up to 128 characters. Corresponds to the JSON property displayName

Returns:

  • (String)


6862
6863
6864
# File 'lib/google/apis/chat_v1/classes.rb', line 6862

def display_name
  @display_name
end

#external_user_allowedBoolean Also known as: external_user_allowed?

Optional. Immutable. Whether this space permits any Google Chat user as a member. Input when creating a space in a Google Workspace organization. Omit this field when creating spaces in the following conditions: * The authenticated user uses a consumer account (unmanaged user account). By default, a space created by a consumer account permits any Google Chat user. For existing spaces, this field is output only. Corresponds to the JSON property externalUserAllowed

Returns:

  • (Boolean)


6872
6873
6874
# File 'lib/google/apis/chat_v1/classes.rb', line 6872

def external_user_allowed
  @external_user_allowed
end

#import_modeBoolean Also known as: import_mode?

Optional. Whether this space is created in Import Mode as part of a data migration into Google Workspace. While spaces are being imported, they aren't visible to users until the import is complete. Creating a space in Import Moderequires user authentication. Corresponds to the JSON property importMode

Returns:

  • (Boolean)


6882
6883
6884
# File 'lib/google/apis/chat_v1/classes.rb', line 6882

def import_mode
  @import_mode
end

#import_mode_expire_timeString

Output only. The time when the space will be automatically deleted by the system if it remains in import mode. Each space created in import mode must exit this mode before this expire time using spaces.completeImport. This field is only populated for spaces that were created with import mode. Corresponds to the JSON property importModeExpireTime

Returns:

  • (String)


6891
6892
6893
# File 'lib/google/apis/chat_v1/classes.rb', line 6891

def import_mode_expire_time
  @import_mode_expire_time
end

#last_active_timeString

Output only. Timestamp of the last message in the space. Corresponds to the JSON property lastActiveTime

Returns:

  • (String)


6896
6897
6898
# File 'lib/google/apis/chat_v1/classes.rb', line 6896

def last_active_time
  @last_active_time
end

#membership_countGoogle::Apis::ChatV1::MembershipCount

Represents the count of memberships of a space, grouped into categories. Corresponds to the JSON property membershipCount



6901
6902
6903
# File 'lib/google/apis/chat_v1/classes.rb', line 6901

def membership_count
  @membership_count
end

#nameString

Identifier. Resource name of the space. Format: spaces/spaceWherespace represents the system-assigned ID for the space. You can obtain the space ID by calling the spaces.list() method or from the space URL. For example, if the space URL is https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA, the space ID is AAAAAAAAA. Corresponds to the JSON property name

Returns:

  • (String)


6911
6912
6913
# File 'lib/google/apis/chat_v1/classes.rb', line 6911

def name
  @name
end

#permission_settingsGoogle::Apis::ChatV1::PermissionSettings

Permission settings that you can specify when updating an existing named space. To set permission settings when creating a space, specify the PredefinedPermissionSettings field in your request. Corresponds to the JSON property permissionSettings



6919
6920
6921
# File 'lib/google/apis/chat_v1/classes.rb', line 6919

def permission_settings
  @permission_settings
end

#predefined_permission_settingsString

Optional. Input only. Predefined space permission settings, input only when creating a space. If the field is not set, a collaboration space is created. After you create the space, settings are populated in the PermissionSettings field. Setting predefined permission settings supports: - App authentication with administrator approval with the chat.app.spaces or chat.app.spaces.create scopes. - User authentication Corresponds to the JSON property predefinedPermissionSettings

Returns:

  • (String)


6932
6933
6934
# File 'lib/google/apis/chat_v1/classes.rb', line 6932

def predefined_permission_settings
  @predefined_permission_settings
end

#single_user_bot_dmBoolean Also known as: single_user_bot_dm?

Optional. Whether the space is a DM between a Chat app and a single human. Corresponds to the JSON property singleUserBotDm

Returns:

  • (Boolean)


6937
6938
6939
# File 'lib/google/apis/chat_v1/classes.rb', line 6937

def single_user_bot_dm
  @single_user_bot_dm
end

#space_detailsGoogle::Apis::ChatV1::SpaceDetails

Details about the space including description and rules. Corresponds to the JSON property spaceDetails



6943
6944
6945
# File 'lib/google/apis/chat_v1/classes.rb', line 6943

def space_details
  @space_details
end

#space_history_stateString

Optional. The message history state for messages and threads in this space. Corresponds to the JSON property spaceHistoryState

Returns:

  • (String)


6948
6949
6950
# File 'lib/google/apis/chat_v1/classes.rb', line 6948

def space_history_state
  @space_history_state
end

#space_threading_stateString

Output only. The threading state in the Chat space. Corresponds to the JSON property spaceThreadingState

Returns:

  • (String)


6953
6954
6955
# File 'lib/google/apis/chat_v1/classes.rb', line 6953

def space_threading_state
  @space_threading_state
end

#space_typeString

Optional. The type of space. Required when creating a space or updating the space type of a space. Output only for other usage. Corresponds to the JSON property spaceType

Returns:

  • (String)


6959
6960
6961
# File 'lib/google/apis/chat_v1/classes.rb', line 6959

def space_type
  @space_type
end

#space_uriString

Output only. The URI for a user to access the space. Corresponds to the JSON property spaceUri

Returns:

  • (String)


6964
6965
6966
# File 'lib/google/apis/chat_v1/classes.rb', line 6964

def space_uri
  @space_uri
end

#threadedBoolean Also known as: threaded?

Output only. Deprecated: Use spaceThreadingState instead. Whether messages are threaded in this space. Corresponds to the JSON property threaded

Returns:

  • (Boolean)


6970
6971
6972
# File 'lib/google/apis/chat_v1/classes.rb', line 6970

def threaded
  @threaded
end

#typeString

Output only. Deprecated: Use space_type instead. The type of a space. Corresponds to the JSON property type

Returns:

  • (String)


6976
6977
6978
# File 'lib/google/apis/chat_v1/classes.rb', line 6976

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
# File 'lib/google/apis/chat_v1/classes.rb', line 6983

def update!(**args)
  @access_settings = args[:access_settings] if args.key?(:access_settings)
  @admin_installed = args[:admin_installed] if args.key?(:admin_installed)
  @create_time = args[:create_time] if args.key?(:create_time)
  @customer = args[:customer] if args.key?(:customer)
  @display_name = args[:display_name] if args.key?(:display_name)
  @external_user_allowed = args[:external_user_allowed] if args.key?(:external_user_allowed)
  @import_mode = args[:import_mode] if args.key?(:import_mode)
  @import_mode_expire_time = args[:import_mode_expire_time] if args.key?(:import_mode_expire_time)
  @last_active_time = args[:last_active_time] if args.key?(:last_active_time)
  @membership_count = args[:membership_count] if args.key?(:membership_count)
  @name = args[:name] if args.key?(:name)
  @permission_settings = args[:permission_settings] if args.key?(:permission_settings)
  @predefined_permission_settings = args[:predefined_permission_settings] if args.key?(:predefined_permission_settings)
  @single_user_bot_dm = args[:single_user_bot_dm] if args.key?(:single_user_bot_dm)
  @space_details = args[:space_details] if args.key?(:space_details)
  @space_history_state = args[:space_history_state] if args.key?(:space_history_state)
  @space_threading_state = args[:space_threading_state] if args.key?(:space_threading_state)
  @space_type = args[:space_type] if args.key?(:space_type)
  @space_uri = args[:space_uri] if args.key?(:space_uri)
  @threaded = args[:threaded] if args.key?(:threaded)
  @type = args[:type] if args.key?(:type)
end