Class: Google::Apis::FcmV1::AndroidNotification

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

Overview

Notification to send to android devices.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AndroidNotification

Returns a new instance of AndroidNotification.



342
343
344
# File 'lib/google/apis/fcm_v1/classes.rb', line 342

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

Instance Attribute Details

#bodyString

The notification's body text. If present, it will override google.firebase.fcm. v1.Notification.body. Corresponds to the JSON property body

Returns:

  • (String)


131
132
133
# File 'lib/google/apis/fcm_v1/classes.rb', line 131

def body
  @body
end

#body_loc_argsArray<String>

Variable string values to be used in place of the format specifiers in body_loc_key to use to localize the body text to the user's current localization. See Formatting and Styling for more information. Corresponds to the JSON property bodyLocArgs

Returns:

  • (Array<String>)


139
140
141
# File 'lib/google/apis/fcm_v1/classes.rb', line 139

def body_loc_args
  @body_loc_args
end

#body_loc_keyString

The key to the body string in the app's string resources to use to localize the body text to the user's current localization. See String Resources for more information. Corresponds to the JSON property bodyLocKey

Returns:

  • (String)


146
147
148
# File 'lib/google/apis/fcm_v1/classes.rb', line 146

def body_loc_key
  @body_loc_key
end

#bypass_proxy_notificationBoolean Also known as: bypass_proxy_notification?

If set, display notifications delivered to the device will be handled by the app instead of the proxy. Corresponds to the JSON property bypassProxyNotification

Returns:

  • (Boolean)


152
153
154
# File 'lib/google/apis/fcm_v1/classes.rb', line 152

def bypass_proxy_notification
  @bypass_proxy_notification
end

#channel_idString

The notification's channel id (new in Android O). The app must create a channel with this channel ID before any notification with this channel ID is received. If you don't send this channel ID in the request, or if the channel ID provided has not yet been created by the app, FCM uses the channel ID specified in the app manifest. Corresponds to the JSON property channelId

Returns:

  • (String)


163
164
165
# File 'lib/google/apis/fcm_v1/classes.rb', line 163

def channel_id
  @channel_id
end

#click_actionString

The action associated with a user click on the notification. If specified, an activity with a matching intent filter is launched when a user clicks on the notification. Corresponds to the JSON property clickAction

Returns:

  • (String)


170
171
172
# File 'lib/google/apis/fcm_v1/classes.rb', line 170

def click_action
  @click_action
end

#colorString

The notification's icon color, expressed in #rrggbb format. Corresponds to the JSON property color

Returns:

  • (String)


175
176
177
# File 'lib/google/apis/fcm_v1/classes.rb', line 175

def color
  @color
end

#default_light_settingsBoolean Also known as: default_light_settings?

If set to true, use the Android framework's default LED light settings for the notification. Default values are specified in config.xml. If default_light_settings is set to true and light_settings is also set, the user-specified light_settings is used instead of the default value. Corresponds to the JSON property defaultLightSettings

Returns:

  • (Boolean)


184
185
186
# File 'lib/google/apis/fcm_v1/classes.rb', line 184

def default_light_settings
  @default_light_settings
end

#default_soundBoolean Also known as: default_sound?

If set to true, use the Android framework's default sound for the notification. Default values are specified in config.xml. Corresponds to the JSON property defaultSound

Returns:

  • (Boolean)


192
193
194
# File 'lib/google/apis/fcm_v1/classes.rb', line 192

def default_sound
  @default_sound
end

#default_vibrate_timingsBoolean Also known as: default_vibrate_timings?

If set to true, use the Android framework's default vibrate pattern for the notification. Default values are specified in config.xml. If default_vibrate_timings is set to true and vibrate_timings is also set, the default value is used instead of the user-specified vibrate_timings. Corresponds to the JSON property defaultVibrateTimings

Returns:

  • (Boolean)


203
204
205
# File 'lib/google/apis/fcm_v1/classes.rb', line 203

def default_vibrate_timings
  @default_vibrate_timings
end

#event_timeString

Set the time that the event in the notification occurred. Notifications in the panel are sorted by this time. A point in time is represented using protobuf. Timestamp. Corresponds to the JSON property eventTime

Returns:

  • (String)


212
213
214
# File 'lib/google/apis/fcm_v1/classes.rb', line 212

def event_time
  @event_time
end

#iconString

The notification's icon. Sets the notification icon to myicon for drawable resource myicon. If you don't send this key in the request, FCM displays the launcher icon specified in your app manifest. Corresponds to the JSON property icon

Returns:

  • (String)


219
220
221
# File 'lib/google/apis/fcm_v1/classes.rb', line 219

def icon
  @icon
end

#imageString

Contains the URL of an image that is going to be displayed in a notification. If present, it will override google.firebase.fcm.v1.Notification.image. Corresponds to the JSON property image

Returns:

  • (String)


225
226
227
# File 'lib/google/apis/fcm_v1/classes.rb', line 225

def image
  @image
end

#light_settingsGoogle::Apis::FcmV1::LightSettings

Settings to control notification LED. Corresponds to the JSON property lightSettings



230
231
232
# File 'lib/google/apis/fcm_v1/classes.rb', line 230

def light_settings
  @light_settings
end

#local_onlyBoolean Also known as: local_only?

Set whether or not this notification is relevant only to the current device. Some notifications can be bridged to other devices for remote display, such as a Wear OS watch. This hint can be set to recommend this notification not be bridged. See Wear OS guides Corresponds to the JSON property localOnly

Returns:

  • (Boolean)


239
240
241
# File 'lib/google/apis/fcm_v1/classes.rb', line 239

def local_only
  @local_only
end

#notification_countFixnum

Sets the number of items this notification represents. May be displayed as a badge count for launchers that support badging.See Notification Badge. For example, this might be useful if you're using just one notification to represent multiple new messages but you want the count here to represent the number of total new messages. If zero or unspecified, systems that support badging use the default, which is to increment a number displayed on the long-press menu each time a new notification arrives. Corresponds to the JSON property notificationCount

Returns:

  • (Fixnum)


252
253
254
# File 'lib/google/apis/fcm_v1/classes.rb', line 252

def notification_count
  @notification_count
end

#notification_priorityString

Set the relative priority for this notification. Priority is an indication of how much of the user's attention should be consumed by this notification. Low- priority notifications may be hidden from the user in certain situations, while the user might be interrupted for a higher-priority notification. The effect of setting the same priorities may differ slightly on different platforms. Note this priority differs from AndroidMessagePriority. This priority is processed by the client after the message has been delivered, whereas AndroidMessagePriority is an FCM concept that controls when the message is delivered. Corresponds to the JSON property notificationPriority

Returns:

  • (String)


266
267
268
# File 'lib/google/apis/fcm_v1/classes.rb', line 266

def notification_priority
  @notification_priority
end

#proxyString

Setting to control when a notification may be proxied. Corresponds to the JSON property proxy

Returns:

  • (String)


271
272
273
# File 'lib/google/apis/fcm_v1/classes.rb', line 271

def proxy
  @proxy
end

#soundString

The sound to play when the device receives the notification. Supports "default" or the filename of a sound resource bundled in the app. Sound files must reside in /res/raw/. Corresponds to the JSON property sound

Returns:

  • (String)


278
279
280
# File 'lib/google/apis/fcm_v1/classes.rb', line 278

def sound
  @sound
end

#stickyBoolean Also known as: sticky?

When set to false or unset, the notification is automatically dismissed when the user clicks it in the panel. When set to true, the notification persists even when the user clicks it. Corresponds to the JSON property sticky

Returns:

  • (Boolean)


285
286
287
# File 'lib/google/apis/fcm_v1/classes.rb', line 285

def sticky
  @sticky
end

#tagString

Identifier used to replace existing notifications in the notification drawer. If not specified, each request creates a new notification. If specified and a notification with the same tag is already being shown, the new notification replaces the existing one in the notification drawer. Corresponds to the JSON property tag

Returns:

  • (String)


294
295
296
# File 'lib/google/apis/fcm_v1/classes.rb', line 294

def tag
  @tag
end

#tickerString

Sets the "ticker" text, which is sent to accessibility services. Prior to API level 21 (Lollipop), sets the text that is displayed in the status bar when the notification first arrives. Corresponds to the JSON property ticker

Returns:

  • (String)


301
302
303
# File 'lib/google/apis/fcm_v1/classes.rb', line 301

def ticker
  @ticker
end

#titleString

The notification's title. If present, it will override google.firebase.fcm.v1. Notification.title. Corresponds to the JSON property title

Returns:

  • (String)


307
308
309
# File 'lib/google/apis/fcm_v1/classes.rb', line 307

def title
  @title
end

#title_loc_argsArray<String>

Variable string values to be used in place of the format specifiers in title_loc_key to use to localize the title text to the user's current localization. See Formatting and Styling for more information. Corresponds to the JSON property titleLocArgs

Returns:

  • (Array<String>)


315
316
317
# File 'lib/google/apis/fcm_v1/classes.rb', line 315

def title_loc_args
  @title_loc_args
end

#title_loc_keyString

The key to the title string in the app's string resources to use to localize the title text to the user's current localization. See String Resources for more information. Corresponds to the JSON property titleLocKey

Returns:

  • (String)


322
323
324
# File 'lib/google/apis/fcm_v1/classes.rb', line 322

def title_loc_key
  @title_loc_key
end

#vibrate_timingsArray<String>

Set the vibration pattern to use. Pass in an array of protobuf.Duration to turn on or off the vibrator. The first value indicates the Duration to wait before turning the vibrator on. The next value indicates the Duration to keep the vibrator on. Subsequent values alternate between Duration to turn the vibrator off and to turn the vibrator on. If vibrate_timings is set and default_vibrate_timings is set to true, the default value is used instead of the user-specified vibrate_timings. Corresponds to the JSON property vibrateTimings

Returns:

  • (Array<String>)


334
335
336
# File 'lib/google/apis/fcm_v1/classes.rb', line 334

def vibrate_timings
  @vibrate_timings
end

#visibilityString

Set the Notification.visibility of the notification. Corresponds to the JSON property visibility

Returns:

  • (String)


340
341
342
# File 'lib/google/apis/fcm_v1/classes.rb', line 340

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
# File 'lib/google/apis/fcm_v1/classes.rb', line 347

def update!(**args)
  @body = args[:body] if args.key?(:body)
  @body_loc_args = args[:body_loc_args] if args.key?(:body_loc_args)
  @body_loc_key = args[:body_loc_key] if args.key?(:body_loc_key)
  @bypass_proxy_notification = args[:bypass_proxy_notification] if args.key?(:bypass_proxy_notification)
  @channel_id = args[:channel_id] if args.key?(:channel_id)
  @click_action = args[:click_action] if args.key?(:click_action)
  @color = args[:color] if args.key?(:color)
  @default_light_settings = args[:default_light_settings] if args.key?(:default_light_settings)
  @default_sound = args[:default_sound] if args.key?(:default_sound)
  @default_vibrate_timings = args[:default_vibrate_timings] if args.key?(:default_vibrate_timings)
  @event_time = args[:event_time] if args.key?(:event_time)
  @icon = args[:icon] if args.key?(:icon)
  @image = args[:image] if args.key?(:image)
  @light_settings = args[:light_settings] if args.key?(:light_settings)
  @local_only = args[:local_only] if args.key?(:local_only)
  @notification_count = args[:notification_count] if args.key?(:notification_count)
  @notification_priority = args[:notification_priority] if args.key?(:notification_priority)
  @proxy = args[:proxy] if args.key?(:proxy)
  @sound = args[:sound] if args.key?(:sound)
  @sticky = args[:sticky] if args.key?(:sticky)
  @tag = args[:tag] if args.key?(:tag)
  @ticker = args[:ticker] if args.key?(:ticker)
  @title = args[:title] if args.key?(:title)
  @title_loc_args = args[:title_loc_args] if args.key?(:title_loc_args)
  @title_loc_key = args[:title_loc_key] if args.key?(:title_loc_key)
  @vibrate_timings = args[:vibrate_timings] if args.key?(:vibrate_timings)
  @visibility = args[:visibility] if args.key?(:visibility)
end