Class: Warb::Client

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Includes:
DispatcherConcern
Defined in:
lib/warb/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from DispatcherConcern

#audio, #contact, #document, #flow, #image, #indicator, #interactive_call_to_action_url, #interactive_list, #interactive_reply_button, #location, #location_request, #message, #reaction, #sticker, #template, #video

Constructor Details

#initialize(configuration = nil, access_token: nil, sender_id: nil, business_id: nil, adapter: nil, logger: nil) ⇒ Client

rubocop:disable Metrics/ParameterLists



14
15
16
17
18
19
20
21
22
23
# File 'lib/warb/client.rb', line 14

def initialize(configuration = nil, access_token: nil, sender_id: nil, business_id: nil,
               adapter: nil, logger: nil)
  @configuration = (configuration || Warb.configuration).dup

  @configuration.access_token = access_token || @configuration.access_token
  @configuration.sender_id = sender_id || @configuration.sender_id
  @configuration.business_id = business_id || @configuration.business_id
  @configuration.adapter = adapter || @configuration.adapter
  @configuration.logger = logger || @configuration.logger
end

Instance Attribute Details

#access_tokenObject (readonly)

Returns the value of attribute access_token.



9
10
11
# File 'lib/warb/client.rb', line 9

def access_token
  @access_token
end

#adapterObject (readonly)

Returns the value of attribute adapter.



9
10
11
# File 'lib/warb/client.rb', line 9

def adapter
  @adapter
end

#business_idObject (readonly)

Returns the value of attribute business_id.



9
10
11
# File 'lib/warb/client.rb', line 9

def business_id
  @business_id
end

#loggerObject (readonly)

Returns the value of attribute logger.



9
10
11
# File 'lib/warb/client.rb', line 9

def logger
  @logger
end

#sender_idObject (readonly)

Returns the value of attribute sender_id.



9
10
11
# File 'lib/warb/client.rb', line 9

def sender_id
  @sender_id
end

Instance Method Details

#delete(endpoint, data = {}, **args) ⇒ Object



38
39
40
# File 'lib/warb/client.rb', line 38

def delete(endpoint, data = {}, **args)
  conn.send_request(http_method: 'delete', endpoint: endpoint, data: data, **args)
end

#get(endpoint, data = {}, **args) ⇒ Object

rubocop:enable Metrics/ParameterLists



26
27
28
# File 'lib/warb/client.rb', line 26

def get(endpoint, data = {}, **args)
  conn.send_request(http_method: 'get', endpoint: endpoint, data: data, **args)
end

#post(endpoint, data = {}, **args) ⇒ Object



30
31
32
# File 'lib/warb/client.rb', line 30

def post(endpoint, data = {}, **args)
  conn.send_request(http_method: 'post', endpoint: endpoint, data: data, **args)
end

#put(endpoint, data = {}, **args) ⇒ Object



34
35
36
# File 'lib/warb/client.rb', line 34

def put(endpoint, data = {}, **args)
  conn.send_request(http_method: 'put', endpoint: endpoint, data: data, **args)
end