Class: Google::Apis::ChatV1::GoogleAppsCardV1Card

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 card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. Card builder To learn how to build cards, see the following documentation: * For Google Chat apps, see Design the components of a card or dialog. * For Google Workspace add-ons, see Card- based interfaces. Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. Example: Card message for a Google Chat app Example contact card To create the sample card message in Google Chat, use the following JSON: ` "cardsV2": [ ` "cardId": "unique-card-id", "card": ` "header": ` "title": "Sasha", "subtitle": " Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/ images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": " Avatar for Sasha" `, "sections": [ ` "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ ` "decoratedText": ` " startIcon": ` "knownIcon": "EMAIL" `, "text": "sasha@example.com" ` `, ` " decoratedText": ` "startIcon": ` "knownIcon": "PERSON" `, "text": "Online" ` `, ` "decoratedText": ` "startIcon": ` "knownIcon": "PHONE" `, "text": "+1 (555) 555-1234" ` `, ` "buttonList": ` "buttons": [ ` "text": "Share", "onClick": ` " openLink": ` "url": "https://example.com/share" ` ` `, ` "text": "Edit", " onClick": ` "action": ` "function": "goToView", "parameters": [ ` "key": " viewType", "value": "EDIT" ` ] ` ` ` ] ` ` ] ` ] ` ` ] `

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleAppsCardV1Card

Returns a new instance of GoogleAppsCardV1Card.



1988
1989
1990
# File 'lib/google/apis/chat_v1/classes.rb', line 1988

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

Instance Attribute Details

#card_actionsArray<Google::Apis::ChatV1::GoogleAppsCardV1CardAction>

The card's actions. Actions are added to the card's toolbar menu. Google Workspace add-ons: For example, the following JSON constructs a card action menu with Settings and Send Feedback options: "card_actions": [ ` "actionLabel": "Settings", " onClick": ` "action": ` "functionName": "goToView", "parameters": [ ` "key": " viewType", "value": "SETTING" ` ], "loadIndicator": "LoadIndicator.SPINNER" ` ` `, ` "actionLabel": "Send Feedback", "onClick": ` "openLink": ` "url": "https: //example.com/feedback" ` ` ` ] Corresponds to the JSON property cardActions



1925
1926
1927
# File 'lib/google/apis/chat_v1/classes.rb', line 1925

def card_actions
  @card_actions
end

#display_styleString

In Google Workspace add-ons, sets the display properties of the peekCardHeader. Google Workspace add-ons: Corresponds to the JSON property displayStyle

Returns:

  • (String)


1932
1933
1934
# File 'lib/google/apis/chat_v1/classes.rb', line 1932

def display_style
  @display_style
end

#expression_dataArray<Google::Apis::ChatV1::GoogleAppsCardV1ExpressionData>

The expression data for the card. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps. Corresponds to the JSON property expressionData



1938
1939
1940
# File 'lib/google/apis/chat_v1/classes.rb', line 1938

def expression_data
  @expression_data
end

A persistent (sticky) footer that that appears at the bottom of the card. Setting fixedFooter without specifying a primaryButton or a secondaryButton causes an error. For Chat apps, you can use fixed footers in dialogs, but not card messages. For an example in Google Chat apps, see Add a persistent footer. Google Workspace add-ons and Chat apps: Corresponds to the JSON property fixedFooter



1951
1952
1953
# File 'lib/google/apis/chat_v1/classes.rb', line 1951

def fixed_footer
  @fixed_footer
end

#headerGoogle::Apis::ChatV1::GoogleAppsCardV1CardHeader

Represents a card header. For an example in Google Chat apps, see Add a header. Google Workspace add-ons and Chat apps: Corresponds to the JSON property header



1959
1960
1961
# File 'lib/google/apis/chat_v1/classes.rb', line 1959

def header
  @header
end

#nameString

Name of the card. Used as a card identifier in card navigation. Google Workspace add-ons: Corresponds to the JSON property name

Returns:

  • (String)


1965
1966
1967
# File 'lib/google/apis/chat_v1/classes.rb', line 1965

def name
  @name
end

#peek_card_headerGoogle::Apis::ChatV1::GoogleAppsCardV1CardHeader

Represents a card header. For an example in Google Chat apps, see Add a header. Google Workspace add-ons and Chat apps: Corresponds to the JSON property peekCardHeader



1973
1974
1975
# File 'lib/google/apis/chat_v1/classes.rb', line 1973

def peek_card_header
  @peek_card_header
end

#section_divider_styleString

The divider style between the header, sections and footer. Corresponds to the JSON property sectionDividerStyle

Returns:

  • (String)


1978
1979
1980
# File 'lib/google/apis/chat_v1/classes.rb', line 1978

def section_divider_style
  @section_divider_style
end

#sectionsArray<Google::Apis::ChatV1::GoogleAppsCardV1Section>

Contains a collection of widgets. Each section has its own, optional header. Sections are visually separated by a line divider. For an example in Google Chat apps, see Define a section of a card. Corresponds to the JSON property sections



1986
1987
1988
# File 'lib/google/apis/chat_v1/classes.rb', line 1986

def sections
  @sections
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
# File 'lib/google/apis/chat_v1/classes.rb', line 1993

def update!(**args)
  @card_actions = args[:card_actions] if args.key?(:card_actions)
  @display_style = args[:display_style] if args.key?(:display_style)
  @expression_data = args[:expression_data] if args.key?(:expression_data)
  @fixed_footer = args[:fixed_footer] if args.key?(:fixed_footer)
  @header = args[:header] if args.key?(:header)
  @name = args[:name] if args.key?(:name)
  @peek_card_header = args[:peek_card_header] if args.key?(:peek_card_header)
  @section_divider_style = args[:section_divider_style] if args.key?(:section_divider_style)
  @sections = args[:sections] if args.key?(:sections)
end