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.



6743
6744
6745
# File 'lib/google/apis/chat_v1/classes.rb', line 6743

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



6583
6584
6585
# File 'lib/google/apis/chat_v1/classes.rb', line 6583

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)


6592
6593
6594
# File 'lib/google/apis/chat_v1/classes.rb', line 6592

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)


6602
6603
6604
# File 'lib/google/apis/chat_v1/classes.rb', line 6602

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)


6616
6617
6618
# File 'lib/google/apis/chat_v1/classes.rb', line 6616

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)


6627
6628
6629
# File 'lib/google/apis/chat_v1/classes.rb', line 6627

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)


6637
6638
6639
# File 'lib/google/apis/chat_v1/classes.rb', line 6637

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)


6647
6648
6649
# File 'lib/google/apis/chat_v1/classes.rb', line 6647

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)


6656
6657
6658
# File 'lib/google/apis/chat_v1/classes.rb', line 6656

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)


6661
6662
6663
# File 'lib/google/apis/chat_v1/classes.rb', line 6661

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



6666
6667
6668
# File 'lib/google/apis/chat_v1/classes.rb', line 6666

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)


6676
6677
6678
# File 'lib/google/apis/chat_v1/classes.rb', line 6676

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



6684
6685
6686
# File 'lib/google/apis/chat_v1/classes.rb', line 6684

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)


6697
6698
6699
# File 'lib/google/apis/chat_v1/classes.rb', line 6697

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)


6702
6703
6704
# File 'lib/google/apis/chat_v1/classes.rb', line 6702

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



6708
6709
6710
# File 'lib/google/apis/chat_v1/classes.rb', line 6708

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)


6713
6714
6715
# File 'lib/google/apis/chat_v1/classes.rb', line 6713

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)


6718
6719
6720
# File 'lib/google/apis/chat_v1/classes.rb', line 6718

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)


6724
6725
6726
# File 'lib/google/apis/chat_v1/classes.rb', line 6724

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)


6729
6730
6731
# File 'lib/google/apis/chat_v1/classes.rb', line 6729

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)


6735
6736
6737
# File 'lib/google/apis/chat_v1/classes.rb', line 6735

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)


6741
6742
6743
# File 'lib/google/apis/chat_v1/classes.rb', line 6741

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
# File 'lib/google/apis/chat_v1/classes.rb', line 6748

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