Class: Google::Apis::FcmdataV1beta1::GoogleFirebaseFcmDataV1beta1MessageOutcomePercents

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

Overview

Percentage breakdown of message delivery outcomes. These categories are mutually exclusive. All percentages are calculated with countMessagesAccepted as the denominator. These categories may not account for all message outcomes.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleFirebaseFcmDataV1beta1MessageOutcomePercents

Returns a new instance of GoogleFirebaseFcmDataV1beta1MessageOutcomePercents.



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

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

Instance Attribute Details

#deliveredFloat

The percentage of all accepted messages that were successfully delivered to the device. Corresponds to the JSON property delivered

Returns:

  • (Float)


234
235
236
# File 'lib/google/apis/fcmdata_v1beta1/classes.rb', line 234

def delivered
  @delivered
end

#dropped_app_force_stoppedFloat

The percentage of accepted messages that were dropped because the application was force stopped on the device at the time of delivery and retries were unsuccessful. Corresponds to the JSON property droppedAppForceStopped

Returns:

  • (Float)


241
242
243
# File 'lib/google/apis/fcmdata_v1beta1/classes.rb', line 241

def dropped_app_force_stopped
  @dropped_app_force_stopped
end

#dropped_device_inactiveFloat

The percentage of accepted messages that were dropped because the target device is inactive. FCM will drop messages if the target device is deemed inactive by our servers. If a device does reconnect, we call OnDeletedMessages() in our SDK instead of delivering the messages. Corresponds to the JSON property droppedDeviceInactive

Returns:

  • (Float)


251
252
253
# File 'lib/google/apis/fcmdata_v1beta1/classes.rb', line 251

def dropped_device_inactive
  @dropped_device_inactive
end

#dropped_too_many_pending_messagesFloat

The percentage of accepted messages that were dropped due to too many undelivered non-collapsible messages. Specifically, each app instance can only have 100 pending messages stored on our servers for a device which is disconnected. When that device reconnects, those messages are delivered. When there are more than the maximum pending messages, we call OnDeletedMessages() in our SDK instead of delivering the messages. Corresponds to the JSON property droppedTooManyPendingMessages

Returns:

  • (Float)


264
265
266
# File 'lib/google/apis/fcmdata_v1beta1/classes.rb', line 264

def dropped_too_many_pending_messages
  @dropped_too_many_pending_messages
end

#pendingFloat

The percentage of messages accepted on this day that were not dropped and not delivered, due to the device being disconnected (as of the end of the America/ Los_Angeles day when the message was sent to FCM). A portion of these messages will be delivered the next day when the device connects but others may be destined to devices that ultimately never reconnect. Corresponds to the JSON property pending

Returns:

  • (Float)


273
274
275
# File 'lib/google/apis/fcmdata_v1beta1/classes.rb', line 273

def pending
  @pending
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



280
281
282
283
284
285
286
# File 'lib/google/apis/fcmdata_v1beta1/classes.rb', line 280

def update!(**args)
  @delivered = args[:delivered] if args.key?(:delivered)
  @dropped_app_force_stopped = args[:dropped_app_force_stopped] if args.key?(:dropped_app_force_stopped)
  @dropped_device_inactive = args[:dropped_device_inactive] if args.key?(:dropped_device_inactive)
  @dropped_too_many_pending_messages = args[:dropped_too_many_pending_messages] if args.key?(:dropped_too_many_pending_messages)
  @pending = args[:pending] if args.key?(:pending)
end