class Facebook::Bot::Transmitter

Public Class Methods

new(sender) click to toggle source
# File lib/facebook/bot/transmitter.rb, line 4
def initialize(sender)
  @data = {
    recipient: { id: sender }
  }
end

Public Instance Methods

reply(data) click to toggle source
# File lib/facebook/bot/transmitter.rb, line 10
def reply(data)
  @data[:message] = data
  send_message(@data)
end

Private Instance Methods

send_message(data) click to toggle source
# File lib/facebook/bot/transmitter.rb, line 17
def send_message(data)
  url = URI.parse("https://graph.facebook.com/v2.6/me/messages?access_token=#{Facebook::Bot::Config.access_token}")
  http = Net::HTTP.new(url.host, 443)
  http.use_ssl = true
  begin
    request = Net::HTTP::Post.new(url.request_uri)
    request["Content-Type"] = "application/json"
    request.body = data.to_json
    response = http.request(request)
    body = JSON(response.body)
    return { ret: body["error"].nil?, body: body }
  rescue => e
    raise e 
  end
end