class Smtpcom::Sendapi::SendsReport

Attributes

campaign[R]
finish[R]
sender[R]
start[R]
total[R]

Public Class Methods

new(start, finish, sender = nil, campaign = nil) click to toggle source
# File lib/smtpcom/sendapi/sends_report.rb, line 6
def initialize(start, finish, sender = nil, campaign = nil)
  @start    = start
  @finish   = finish
  @sender   = sender
  @campaign = campaign
end

Public Instance Methods

all(count = 100, page = 1) click to toggle source
# File lib/smtpcom/sendapi/sends_report.rb, line 13
def all(count = 100, page = 1)
  response = _get('/sends/get', prepare_params(count, page))
  @total = response['Total']
  format_response response['Data']
end
failed(count = 100, page = 1) click to toggle source
# File lib/smtpcom/sendapi/sends_report.rb, line 19
def failed(count = 100, page = 1)
  response = _get('/sends/failed', prepare_params(count, page))
  @total = response['Total']
  format_response response['Data']
end
format_response(data) click to toggle source
# File lib/smtpcom/sendapi/sends_report.rb, line 37
def format_response(data)
  data.map do |row|
    Utils.format_response_row(row)
  end
end
prepare_params(count, page) click to toggle source
# File lib/smtpcom/sendapi/sends_report.rb, line 25
def prepare_params(count, page)
  attributes = {
    DateFrom: @start.strftime("%m/%d/%Y"),
    DateTo:   @finish.strftime("%m/%d/%Y"),
    Count:    count,
    Page:     page
  }
  attributes[:Sender]     = @sender    if @sender
  attributes[:CampaignID] = @campaign  if @campaign
  attributes
end