Class: FaceB::Api

Inherits:
Object
  • Object
show all
Includes:
HTTParty
Defined in:
lib/faceb/api.rb

Overview

Api

Defined Under Namespace

Classes: Error, Response

Constant Summary collapse

API_SERVER_URL =
"http://api.facebook.com/restserver.php"

Instance Method Summary collapse

Constructor Details

#initialize(session) ⇒ Api

Returns a new instance of Api.



11
12
13
# File 'lib/faceb/api.rb', line 11

def initialize(session)
  @session  = session
end

Instance Method Details

#call(method, params = {}) ⇒ FaceB::Api::Response

Call a Facebook API method

Parameters:

  • method (String)

    The API method to call

  • params (Hash) (defaults to: {})

    Params to pass to API method call

Options Hash (params):

  • :session_key (Boolean, String)

    if true use the current Facebook session key else if string use this string as session key

Returns:



23
24
25
26
27
28
29
30
31
# File 'lib/faceb/api.rb', line 23

def call(method, params = {})
  params[:call_id] = Time.now.tv_sec.to_s if params.delete(:call_id)
  params[:session_key] = @session.session_key if params[:session_key] == true && !!@session.session_key
  
  p = Api.default_params.merge(:method => method, :api_key => @session.api_key)
  p.merge!(params)
  
  Response.new(Api.post(API_SERVER_URL, :body => generate_signature(p, @session.secret_key)))
end