Class: Sinbotra::Messenger::Platform

Inherits:
Object
  • Object
show all
Defined in:
lib/sinbotra/messenger/platform.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(recipient_id) ⇒ Platform

Returns a new instance of Platform.



11
12
13
14
# File 'lib/sinbotra/messenger/platform.rb', line 11

def initialize(recipient_id)
  @recipient_id = recipient_id
  @client = MessengerClient::Client.new(ENV.fetch("FACEBOOK_PAGE_TOKEN"))
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



4
5
6
# File 'lib/sinbotra/messenger/platform.rb', line 4

def client
  @client
end

#recipient_idObject (readonly)

Returns the value of attribute recipient_id.



3
4
5
# File 'lib/sinbotra/messenger/platform.rb', line 3

def recipient_id
  @recipient_id
end

Class Method Details

.get_started(postback_id) ⇒ Object



6
7
8
9
# File 'lib/sinbotra/messenger/platform.rb', line 6

def self.get_started(postback_id)
  client = MessengerClient::Client.new(ENV.fetch("FACEBOOK_PAGE_TOKEN"))
  client.get_started(postback_id)
end

Instance Method Details

#generic_template(title, subtitle, image, link, buttons) ⇒ Object



48
49
# File 'lib/sinbotra/messenger/platform.rb', line 48

def generic_template(title, subtitle, image, link, buttons)
end

#image(url) ⇒ Object



63
64
65
# File 'lib/sinbotra/messenger/platform.rb', line 63

def image(url)
  client.image(recipient_id: recipient_id, url: url)
end

#locationObject



67
68
69
# File 'lib/sinbotra/messenger/platform.rb', line 67

def location
  client.location(recipient_id: recipient_id)
end

#payload_button(text, payload) ⇒ Object



40
41
42
# File 'lib/sinbotra/messenger/platform.rb', line 40

def payload_button(text, payload)
  MessengerClient::PayloadButton.new(text, payload)
end

#qr(text, postback = nil) ⇒ Object



36
37
38
# File 'lib/sinbotra/messenger/platform.rb', line 36

def qr(text, postback=nil)
  MessengerClient::QuickReply.new(text, postback)
end

#quick_replies(text, replies) ⇒ Object



24
25
26
27
28
29
30
# File 'lib/sinbotra/messenger/platform.rb', line 24

def quick_replies(text, replies)
  client.qr(
    recipient_id: recipient_id,
    text:         text,
    replies:      replies
  )
end

#say(text) ⇒ Object Also known as: text



16
17
18
19
20
21
# File 'lib/sinbotra/messenger/platform.rb', line 16

def say(text)
  client.text(
    recipient_id: recipient_id,
    text: text
  )
end

#text_with_buttons(text, buttons) ⇒ Object



51
52
53
54
55
56
57
# File 'lib/sinbotra/messenger/platform.rb', line 51

def text_with_buttons(text, buttons)
  client.button_template(
    recipient_id: recipient_id,
    text:         text,
    buttons:      buttons
  )
end

#typing(seconds = 0, &blk) ⇒ Object



32
33
34
# File 'lib/sinbotra/messenger/platform.rb', line 32

def typing(seconds=0, &blk)
  client.typing(recipient_id: recipient_id, seconds: seconds, &blk)
end

#url_button(text, url) ⇒ Object



44
45
46
# File 'lib/sinbotra/messenger/platform.rb', line 44

def url_button(text, url)
  MessengerClient::URLButton.new(text, url)
end

#video(url) ⇒ Object



59
60
61
# File 'lib/sinbotra/messenger/platform.rb', line 59

def video(url)
  client.video(recipient_id: recipient_id, url: url)
end