Class: Google::Apis::FcmV1::Message

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

Message to send by Firebase Cloud Messaging Service.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Message

Returns a new instance of Message.



692
693
694
# File 'lib/google/apis/fcm_v1/classes.rb', line 692

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

Instance Attribute Details

#androidGoogle::Apis::FcmV1::AndroidConfig

Android specific options for messages sent through FCM connection server. Corresponds to the JSON property android



639
640
641
# File 'lib/google/apis/fcm_v1/classes.rb', line 639

def android
  @android
end

#apnsGoogle::Apis::FcmV1::ApnsConfig

Apple Push Notification Service specific options. Corresponds to the JSON property apns



644
645
646
# File 'lib/google/apis/fcm_v1/classes.rb', line 644

def apns
  @apns
end

#conditionString

Condition to send a message to, e.g. "'foo' in topics && 'bar' in topics". Corresponds to the JSON property condition

Returns:

  • (String)


649
650
651
# File 'lib/google/apis/fcm_v1/classes.rb', line 649

def condition
  @condition
end

#dataHash<String,String>

Input only. Arbitrary key/value payload, which must be UTF-8 encoded. The key should not be a reserved word ("from", "message_type", or any word starting with "google" or "gcm"). When sending payloads containing only data fields to iOS devices, only normal priority ("apns-priority": "5") is allowed in ApnsConfig. Corresponds to the JSON property data

Returns:

  • (Hash<String,String>)


658
659
660
# File 'lib/google/apis/fcm_v1/classes.rb', line 658

def data
  @data
end

#fcm_optionsGoogle::Apis::FcmV1::FcmOptions

Platform independent options for features provided by the FCM SDKs. Corresponds to the JSON property fcmOptions



663
664
665
# File 'lib/google/apis/fcm_v1/classes.rb', line 663

def fcm_options
  @fcm_options
end

#nameString

Output Only. The identifier of the message sent, in the format of projects/*/ messages/message_id`. Corresponds to the JSON propertyname`

Returns:

  • (String)


669
670
671
# File 'lib/google/apis/fcm_v1/classes.rb', line 669

def name
  @name
end

#notificationGoogle::Apis::FcmV1::Notification

Basic notification template to use across all platforms. Corresponds to the JSON property notification



674
675
676
# File 'lib/google/apis/fcm_v1/classes.rb', line 674

def notification
  @notification
end

#tokenString

Registration token to send a message to. Corresponds to the JSON property token

Returns:

  • (String)


679
680
681
# File 'lib/google/apis/fcm_v1/classes.rb', line 679

def token
  @token
end

#topicString

Topic name to send a message to, e.g. "weather". Note: "/topics/" prefix should not be provided. Corresponds to the JSON property topic

Returns:

  • (String)


685
686
687
# File 'lib/google/apis/fcm_v1/classes.rb', line 685

def topic
  @topic
end

#webpushGoogle::Apis::FcmV1::WebpushConfig

Webpush protocol options. Corresponds to the JSON property webpush



690
691
692
# File 'lib/google/apis/fcm_v1/classes.rb', line 690

def webpush
  @webpush
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



697
698
699
700
701
702
703
704
705
706
707
708
# File 'lib/google/apis/fcm_v1/classes.rb', line 697

def update!(**args)
  @android = args[:android] if args.key?(:android)
  @apns = args[:apns] if args.key?(:apns)
  @condition = args[:condition] if args.key?(:condition)
  @data = args[:data] if args.key?(:data)
  @fcm_options = args[:fcm_options] if args.key?(:fcm_options)
  @name = args[:name] if args.key?(:name)
  @notification = args[:notification] if args.key?(:notification)
  @token = args[:token] if args.key?(:token)
  @topic = args[:topic] if args.key?(:topic)
  @webpush = args[:webpush] if args.key?(:webpush)
end