Class: Google::Apis::ChatV1::GoogleAppsCardV1Card
- Inherits:
-
Object
- Object
- Google::Apis::ChatV1::GoogleAppsCardV1Card
- 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
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. In Google Chat,
cards appear in several places: - As stand-alone messages. - Accompanying a
text message, just beneath the text message. - As a dialog. The following example JSON
creates a "contact card" that features: - A header with the contact's name,
job title, avatar picture. - A section with the contact information, including
formatted text. - Buttons that users can click to share the contact or see
more or less info.
` "cardsV2": [ ` "cardId": "unique-card-id",
"card": ` "header": ` "title": "Sasha", "subtitle": "Software Engineer", "
imageUrl": "https://developers.google.com/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
-
#card_actions ⇒ Array<Google::Apis::ChatV1::GoogleAppsCardV1CardAction>
The card's actions.
-
#display_style ⇒ String
In Google Workspace add-ons, sets the display properties of the
peekCardHeader. -
#fixed_footer ⇒ Google::Apis::ChatV1::GoogleAppsCardV1CardFixedFooter
A persistent (sticky) footer that that appears at the bottom of the card.
-
#header ⇒ Google::Apis::ChatV1::GoogleAppsCardV1CardHeader
Represents a card header.
-
#name ⇒ String
Name of the card.
-
#peek_card_header ⇒ Google::Apis::ChatV1::GoogleAppsCardV1CardHeader
Represents a card header.
-
#sections ⇒ Array<Google::Apis::ChatV1::GoogleAppsCardV1Section>
Contains a collection of widgets.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleAppsCardV1Card
constructor
A new instance of GoogleAppsCardV1Card.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleAppsCardV1Card
Returns a new instance of GoogleAppsCardV1Card.
1290 1291 1292 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1290 def initialize(**args) update!(**args) end |
Instance Attribute Details
#card_actions ⇒ Array<Google::Apis::ChatV1::GoogleAppsCardV1CardAction>
The card's actions. Actions are added to the card's toolbar menu. Because Chat
app cards have no toolbar, cardActions[] is not supported by Chat apps. 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
1251 1252 1253 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1251 def card_actions @card_actions end |
#display_style ⇒ String
In Google Workspace add-ons, sets the display properties of the
peekCardHeader. Not supported by Chat apps.
Corresponds to the JSON property displayStyle
1257 1258 1259 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1257 def display_style @display_style end |
#fixed_footer ⇒ Google::Apis::ChatV1::GoogleAppsCardV1CardFixedFooter
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. Chat apps support fixedFooter in dialogs, but not in card messages.
Corresponds to the JSON property fixedFooter
1266 1267 1268 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1266 def @fixed_footer end |
#header ⇒ Google::Apis::ChatV1::GoogleAppsCardV1CardHeader
Represents a card header.
Corresponds to the JSON property header
1271 1272 1273 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1271 def header @header end |
#name ⇒ String
Name of the card. Used as a card identifier in card navigation. Because Chat
apps don't support card navigation, they ignore this field.
Corresponds to the JSON property name
1277 1278 1279 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1277 def name @name end |
#peek_card_header ⇒ Google::Apis::ChatV1::GoogleAppsCardV1CardHeader
Represents a card header.
Corresponds to the JSON property peekCardHeader
1282 1283 1284 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1282 def peek_card_header @peek_card_header end |
#sections ⇒ Array<Google::Apis::ChatV1::GoogleAppsCardV1Section>
Contains a collection of widgets. Each section has its own, optional header.
Sections are visually separated by a line divider.
Corresponds to the JSON property sections
1288 1289 1290 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1288 def sections @sections end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1295 1296 1297 1298 1299 1300 1301 1302 1303 |
# File 'lib/google/apis/chat_v1/classes.rb', line 1295 def update!(**args) @card_actions = args[:card_actions] if args.key?(:card_actions) @display_style = args[:display_style] if args.key?(:display_style) @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) @sections = args[:sections] if args.key?(:sections) end |