Module: Facebook::Messenger::Incoming::Common
- Defined in:
- lib/facebook/messenger/incoming/common.rb
Overview
Common attributes for all incoming data from Facebook.
Instance Attribute Summary collapse
-
#messaging ⇒ Object
readonly
Returns the value of attribute messaging.
Instance Method Summary collapse
- #access_token ⇒ Object
- #initialize(messaging) ⇒ Object
- #mark_seen ⇒ Object
- #recipient ⇒ Object
- #reply(message) ⇒ Object
- #sender ⇒ Object
- #sent_at ⇒ Object
- #typing_off ⇒ Object
- #typing_on ⇒ Object
Instance Attribute Details
#messaging ⇒ Object (readonly)
Returns the value of attribute messaging.
6 7 8 |
# File 'lib/facebook/messenger/incoming/common.rb', line 6 def messaging @messaging end |
Instance Method Details
#access_token ⇒ Object
60 61 62 |
# File 'lib/facebook/messenger/incoming/common.rb', line 60 def access_token Facebook::Messenger.config.provider.access_token_for(recipient) end |
#initialize(messaging) ⇒ Object
8 9 10 |
# File 'lib/facebook/messenger/incoming/common.rb', line 8 def initialize(messaging) @messaging = messaging end |
#mark_seen ⇒ Object
42 43 44 45 46 47 48 49 |
# File 'lib/facebook/messenger/incoming/common.rb', line 42 def mark_seen payload = { recipient: sender, sender_action: 'mark_seen' } Facebook::Messenger::Bot.deliver(payload, access_token: access_token) end |
#recipient ⇒ Object
16 17 18 |
# File 'lib/facebook/messenger/incoming/common.rb', line 16 def recipient @messaging['recipient'] end |
#reply(message) ⇒ Object
51 52 53 54 55 56 57 58 |
# File 'lib/facebook/messenger/incoming/common.rb', line 51 def reply() payload = { recipient: sender, message: } Facebook::Messenger::Bot.deliver(payload, access_token: access_token) end |
#sender ⇒ Object
12 13 14 |
# File 'lib/facebook/messenger/incoming/common.rb', line 12 def sender @messaging['sender'] end |
#sent_at ⇒ Object
20 21 22 |
# File 'lib/facebook/messenger/incoming/common.rb', line 20 def sent_at Time.at(@messaging['timestamp'] / 1000) end |