Class: Peat::Client
- Inherits:
-
Object
- Object
- Peat::Client
- Defined in:
- lib/peat/client.rb
Class Method Summary collapse
Instance Method Summary collapse
- #connection ⇒ Object
- #deliver(trigger_name, params) ⇒ Object
- #deliver!(trigger_name, params) ⇒ Object
-
#initialize(middleware: [], adapter: Faraday.default_adapter) ⇒ Client
constructor
A new instance of Client.
Constructor Details
#initialize(middleware: [], adapter: Faraday.default_adapter) ⇒ Client
Returns a new instance of Client.
8 9 10 11 |
# File 'lib/peat/client.rb', line 8 def initialize(middleware: [], adapter: Faraday.default_adapter) @middleware = middleware @adapter = adapter end |
Class Method Details
.deliver(triggered_send, params) ⇒ Object
4 5 6 |
# File 'lib/peat/client.rb', line 4 def self.deliver(triggered_send, params) new.deliver(triggered_send, params) end |
Instance Method Details
#connection ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/peat/client.rb', line 13 def connection @connection ||= Faraday.new(url: "https://www.exacttargetapis.com/messaging/v1/") do |conn| conn.request :json @middleware.each { |m| conn.use m } conn.adapter @adapter end end |
#deliver(trigger_name, params) ⇒ Object
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/peat/client.rb', line 23 def deliver(trigger_name, params) resp = connection.post do |req| req.url "messageDefinitionSends/key:#{trigger_name}/send" req.headers['Content-Type'] = 'application/json' req.headers['Authorization'] = "Bearer #{Peat::TokenManager.token}" req.body = params.to_json end resp.success? end |
#deliver!(trigger_name, params) ⇒ Object
34 35 36 |
# File 'lib/peat/client.rb', line 34 def deliver!(trigger_name, params) deliver(trigger_name, params) or raise Peat::DeliveryFailed end |