Class: Google::Apis::FcmV1::AndroidConfig

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

Android specific options for messages sent through FCM connection server.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AndroidConfig

Returns a new instance of AndroidConfig.



87
88
89
# File 'lib/google/apis/fcm_v1/classes.rb', line 87

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

Instance Attribute Details

#collapse_keyString

An identifier of a group of messages that can be collapsed, so that only the last message gets sent when delivery can be resumed. A maximum of 4 different collapse keys is allowed at any given time. Corresponds to the JSON property collapseKey

Returns:

  • (String)


35
36
37
# File 'lib/google/apis/fcm_v1/classes.rb', line 35

def collapse_key
  @collapse_key
end

#dataHash<String,String>

Arbitrary key/value payload. If present, it will override google.firebase.fcm. v1.Message.data. Corresponds to the JSON property data

Returns:

  • (Hash<String,String>)


41
42
43
# File 'lib/google/apis/fcm_v1/classes.rb', line 41

def data
  @data
end

#direct_boot_okBoolean Also known as: direct_boot_ok?

If set to true, messages will be allowed to be delivered to the app while the device is in direct boot mode. See Support Direct Boot mode. Corresponds to the JSON property directBootOk

Returns:

  • (Boolean)


48
49
50
# File 'lib/google/apis/fcm_v1/classes.rb', line 48

def direct_boot_ok
  @direct_boot_ok
end

#fcm_optionsGoogle::Apis::FcmV1::AndroidFcmOptions

Options for features provided by the FCM SDK for Android. Corresponds to the JSON property fcmOptions



54
55
56
# File 'lib/google/apis/fcm_v1/classes.rb', line 54

def fcm_options
  @fcm_options
end

#notificationGoogle::Apis::FcmV1::AndroidNotification

Notification to send to android devices. Corresponds to the JSON property notification



59
60
61
# File 'lib/google/apis/fcm_v1/classes.rb', line 59

def notification
  @notification
end

#priorityString

Message priority. Can take "normal" and "high" values. For more information, see Setting the priority of a message. Corresponds to the JSON property priority

Returns:

  • (String)


65
66
67
# File 'lib/google/apis/fcm_v1/classes.rb', line 65

def priority
  @priority
end

#restricted_package_nameString

Package name of the application where the registration token must match in order to receive the message. Corresponds to the JSON property restrictedPackageName

Returns:

  • (String)


71
72
73
# File 'lib/google/apis/fcm_v1/classes.rb', line 71

def restricted_package_name
  @restricted_package_name
end

#ttlString

How long (in seconds) the message should be kept in FCM storage if the device is offline. The maximum time to live supported is 4 weeks, and the default value is 4 weeks if not set. Set it to 0 if want to send the message immediately. In JSON format, the Duration type is encoded as a string rather than an object, where the string ends in the suffix "s" (indicating seconds) and is preceded by the number of seconds, with nanoseconds expressed as fractional seconds. For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3.000000001s". The ttl will be rounded down to the nearest second. Corresponds to the JSON property ttl

Returns:

  • (String)


85
86
87
# File 'lib/google/apis/fcm_v1/classes.rb', line 85

def ttl
  @ttl
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



92
93
94
95
96
97
98
99
100
101
# File 'lib/google/apis/fcm_v1/classes.rb', line 92

def update!(**args)
  @collapse_key = args[:collapse_key] if args.key?(:collapse_key)
  @data = args[:data] if args.key?(:data)
  @direct_boot_ok = args[:direct_boot_ok] if args.key?(:direct_boot_ok)
  @fcm_options = args[:fcm_options] if args.key?(:fcm_options)
  @notification = args[:notification] if args.key?(:notification)
  @priority = args[:priority] if args.key?(:priority)
  @restricted_package_name = args[:restricted_package_name] if args.key?(:restricted_package_name)
  @ttl = args[:ttl] if args.key?(:ttl)
end