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.



367
368
369
# File 'lib/google/apis/fcm_v1/classes.rb', line 367

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)


154
155
156
# File 'lib/google/apis/fcm_v1/classes.rb', line 154

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>)


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

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)


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

def body_loc_key
  @body_loc_key
end

#bypass_proxy_notificationBoolean Also known as: bypass_proxy_notification?

Optional. 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)


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

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)


186
187
188
# File 'lib/google/apis/fcm_v1/classes.rb', line 186

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)


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

def click_action
  @click_action
end

#colorString

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

Returns:

  • (String)


198
199
200
# File 'lib/google/apis/fcm_v1/classes.rb', line 198

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)


207
208
209
# File 'lib/google/apis/fcm_v1/classes.rb', line 207

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)


215
216
217
# File 'lib/google/apis/fcm_v1/classes.rb', line 215

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)


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

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)


235
236
237
# File 'lib/google/apis/fcm_v1/classes.rb', line 235

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)


242
243
244
# File 'lib/google/apis/fcm_v1/classes.rb', line 242

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)


248
249
250
# File 'lib/google/apis/fcm_v1/classes.rb', line 248

def image
  @image
end

#light_settingsGoogle::Apis::FcmV1::LightSettings

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



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

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)


262
263
264
# File 'lib/google/apis/fcm_v1/classes.rb', line 262

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)


275
276
277
# File 'lib/google/apis/fcm_v1/classes.rb', line 275

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. This parameter affects notification priority only on devices running Android 7.1 ( API level 25) and lower. On Android 8.0 (API level 26) and higher, priority is ignored in favor of channel importance. 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)


291
292
293
# File 'lib/google/apis/fcm_v1/classes.rb', line 291

def notification_priority
  @notification_priority
end

#proxyString

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

Returns:

  • (String)


296
297
298
# File 'lib/google/apis/fcm_v1/classes.rb', line 296

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)


303
304
305
# File 'lib/google/apis/fcm_v1/classes.rb', line 303

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)


310
311
312
# File 'lib/google/apis/fcm_v1/classes.rb', line 310

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)


319
320
321
# File 'lib/google/apis/fcm_v1/classes.rb', line 319

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)


326
327
328
# File 'lib/google/apis/fcm_v1/classes.rb', line 326

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)


332
333
334
# File 'lib/google/apis/fcm_v1/classes.rb', line 332

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>)


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

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)


347
348
349
# File 'lib/google/apis/fcm_v1/classes.rb', line 347

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>)


359
360
361
# File 'lib/google/apis/fcm_v1/classes.rb', line 359

def vibrate_timings
  @vibrate_timings
end

#visibilityString

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

Returns:

  • (String)


365
366
367
# File 'lib/google/apis/fcm_v1/classes.rb', line 365

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
# File 'lib/google/apis/fcm_v1/classes.rb', line 372

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