Class: MessagebirdTexter::Request

Inherits:
ActionTexter::Request
  • Object
show all
Defined in:
lib/messagebird_texter/request.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(body) ⇒ Request

Returns a new instance of Request.



9
10
11
12
13
14
# File 'lib/messagebird_texter/request.rb', line 9

def initialize(body)
  @body     = body
  @endpoint = MessagebirdTexter.config.endpoint
  @path     = MessagebirdTexter.config.path
  @api_key  = MessagebirdTexter.config.product_token
end

Instance Attribute Details

#bodyObject

Returns the value of attribute body.



5
6
7
# File 'lib/messagebird_texter/request.rb', line 5

def body
  @body
end

#responseObject (readonly)

Returns the value of attribute response.



7
8
9
# File 'lib/messagebird_texter/request.rb', line 7

def response
  @response
end

Instance Method Details

#performObject



16
17
18
19
20
21
22
# File 'lib/messagebird_texter/request.rb', line 16

def perform
  uri = URI.parse(@endpoint)
  Net::HTTP.start(uri.host, uri.port, use_ssl: uri.scheme == 'https') do |http|
    @response = Response.new(http.post(@path, body, 'Authorization' => "AccessKey #{@api_key}", 'Content-Type' => 'application/json'))
  end
  response
end