class Messenger::Parameters::Message

Attributes

app_id[RW]
attachments[RW]
is_echo[RW]
metadata[RW]
mid[RW]
quick_reply[RW]
seq[RW]
sticker_id[RW]
text[RW]

Public Class Methods

new(mid:, seq:, sticker_id: nil, text: nil, attachments: nil, quick_reply: nil, is_echo: nil, app_id: nil, metadata: nil) click to toggle source
# File lib/messenger/parameters/message.rb, line 8
def initialize(mid:, seq:, sticker_id: nil, text: nil, attachments: nil, quick_reply: nil, is_echo: nil, app_id: nil, metadata: nil)
  @mid         = mid
  @seq         = seq
  @sticker_id  = sticker_id if sticker_id.present?
  @text        = text if text.present?
  @attachments = build_attachments(attachments) if attachments.present?
  @quick_reply = build_quick_reply(quick_reply) if quick_reply.present?
  @is_echo     = is_echo
  @app_id      = app_id
  @metadata    = metadata
end

Public Instance Methods

build_attachments(attachments) click to toggle source
# File lib/messenger/parameters/message.rb, line 20
def build_attachments(attachments)
  attachments.map { |attachment| Attachment.new(attachment.transform_keys(&:to_sym).slice(:type, :payload)) }
end
build_quick_reply(quick_reply) click to toggle source
# File lib/messenger/parameters/message.rb, line 24
def build_quick_reply(quick_reply)
  QuickReply.new(quick_reply.transform_keys(&:to_sym))
end