lib/constantcontact/services/campaign_tracking_service.rb in constantcontact-1.0.0 vs lib/constantcontact/services/campaign_tracking_service.rb in constantcontact-1.0.1

- old
+ new

@@ -3,157 +3,157 @@ # ConstantContact # # Copyright (c) 2013 Constant Contact. All rights reserved. module ConstantContact - module Services - class CampaignTrackingService < BaseService - class << self + module Services + class CampaignTrackingService < BaseService + class << self - # Get a result set of bounces for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [String] campaign_id - Campaign id - # @param [Hash] param - query parameters to be appended to request - # @return [ResultSet<BounceActivity>] - Containing a results array of BounceActivity - def get_bounces(access_token, campaign_id, param = nil) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_bounces'), campaign_id) - url = build_url(url, param) + # Get a result set of bounces for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [String] campaign_id - Campaign id + # @param [Hash] param - query parameters to be appended to request + # @return [ResultSet<BounceActivity>] - Containing a results array of BounceActivity + def get_bounces(access_token, campaign_id, param = nil) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_bounces'), campaign_id) + url = build_url(url, param) - response = RestClient.get(url, get_headers(access_token)) - body = JSON.parse(response.body) + response = RestClient.get(url, get_headers(access_token)) + body = JSON.parse(response.body) - bounces = [] - body['results'].each do |bounce_activity| - bounces << Components::BounceActivity.create(bounce_activity) - end + bounces = [] + body['results'].each do |bounce_activity| + bounces << Components::BounceActivity.create(bounce_activity) + end - Components::ResultSet.new(bounces, body['meta']) - end + Components::ResultSet.new(bounces, body['meta']) + end - # Get clicks for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [String] campaign_id - Campaign id - # @param [Hash] param - query parameters to be appended to request - # @return [ResultSet<ClickActivity>] - Containing a results array of ClickActivity - def get_clicks(access_token, campaign_id, param = nil) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_clicks'), campaign_id) - url = build_url(url, param) + # Get clicks for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [String] campaign_id - Campaign id + # @param [Hash] param - query parameters to be appended to request + # @return [ResultSet<ClickActivity>] - Containing a results array of ClickActivity + def get_clicks(access_token, campaign_id, param = nil) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_clicks'), campaign_id) + url = build_url(url, param) - response = RestClient.get(url, get_headers(access_token)) - body = JSON.parse(response.body) + response = RestClient.get(url, get_headers(access_token)) + body = JSON.parse(response.body) - clicks = [] - body['results'].each do |click_activity| - clicks << Components::ClickActivity.create(click_activity) - end + clicks = [] + body['results'].each do |click_activity| + clicks << Components::ClickActivity.create(click_activity) + end - Components::ResultSet.new(clicks, body['meta']) - end + Components::ResultSet.new(clicks, body['meta']) + end - # Get forwards for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [String] campaign_id - Campaign id - # @param [Hash] param - query parameters to be appended to request - # @return [ResultSet<ForwardActivity>] - Containing a results array of ForwardActivity - def get_forwards(access_token, campaign_id, param = nil) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_forwards'), campaign_id) - url = build_url(url, param) + # Get forwards for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [String] campaign_id - Campaign id + # @param [Hash] param - query parameters to be appended to request + # @return [ResultSet<ForwardActivity>] - Containing a results array of ForwardActivity + def get_forwards(access_token, campaign_id, param = nil) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_forwards'), campaign_id) + url = build_url(url, param) - response = RestClient.get(url, get_headers(access_token)) - body = JSON.parse(response.body) + response = RestClient.get(url, get_headers(access_token)) + body = JSON.parse(response.body) - forwards = [] - body['results'].each do |forward_activity| - forwards << Components::ForwardActivity.create(forward_activity) - end + forwards = [] + body['results'].each do |forward_activity| + forwards << Components::ForwardActivity.create(forward_activity) + end - Components::ResultSet.new(forwards, body['meta']) - end + Components::ResultSet.new(forwards, body['meta']) + end - # Get opens for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [String] campaign_id - Campaign id - # @param [Hash] param - query parameters to be appended to request - # @return [ResultSet<OpenActivity>] - Containing a results array of OpenActivity - def get_opens(access_token, campaign_id, param = nil) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_opens'), campaign_id) - url = build_url(url, param) + # Get opens for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [String] campaign_id - Campaign id + # @param [Hash] param - query parameters to be appended to request + # @return [ResultSet<OpenActivity>] - Containing a results array of OpenActivity + def get_opens(access_token, campaign_id, param = nil) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_opens'), campaign_id) + url = build_url(url, param) - response = RestClient.get(url, get_headers(access_token)) - body = JSON.parse(response.body) + response = RestClient.get(url, get_headers(access_token)) + body = JSON.parse(response.body) - opens = [] - body['results'].each do |open_activity| - opens << Components::OpenActivity.create(open_activity) - end + opens = [] + body['results'].each do |open_activity| + opens << Components::OpenActivity.create(open_activity) + end - Components::ResultSet.new(opens, body['meta']) - end + Components::ResultSet.new(opens, body['meta']) + end - # Get sends for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [String] campaign_id - Campaign id - # @param [Hash] param - query parameters to be appended to request - # @return [ResultSet<SendActivity>] - Containing a results array of SendActivity - def get_sends(access_token, campaign_id, param = nil) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_sends'), campaign_id) - url = build_url(url, param) + # Get sends for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [String] campaign_id - Campaign id + # @param [Hash] param - query parameters to be appended to request + # @return [ResultSet<SendActivity>] - Containing a results array of SendActivity + def get_sends(access_token, campaign_id, param = nil) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_sends'), campaign_id) + url = build_url(url, param) - response = RestClient.get(url, get_headers(access_token)) - body = JSON.parse(response.body) + response = RestClient.get(url, get_headers(access_token)) + body = JSON.parse(response.body) - sends = [] - body['results'].each do |send_activity| - sends << Components::SendActivity.create(send_activity) - end + sends = [] + body['results'].each do |send_activity| + sends << Components::SendActivity.create(send_activity) + end - Components::ResultSet.new(sends, body['meta']) - end + Components::ResultSet.new(sends, body['meta']) + end - # Get unsubscribes for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [String] campaign_id - Campaign id - # @param [Hash] param - query params to be appended to request - # @return [ResultSet<UnsubscribeActivity>] - Containing a results array of UnsubscribeActivity - def get_unsubscribes(access_token, campaign_id, param = nil) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_unsubscribes'), campaign_id) - url = build_url(url, param) + # Get unsubscribes for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [String] campaign_id - Campaign id + # @param [Hash] param - query params to be appended to request + # @return [ResultSet<UnsubscribeActivity>] - Containing a results array of UnsubscribeActivity + def get_unsubscribes(access_token, campaign_id, param = nil) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_unsubscribes'), campaign_id) + url = build_url(url, param) - response = RestClient.get(url, get_headers(access_token)) - body = JSON.parse(response.body) + response = RestClient.get(url, get_headers(access_token)) + body = JSON.parse(response.body) - unsubscribes = [] - body['results'].each do |unsubscribe_activity| - unsubscribes[] = Components::UnsubscribeActivity.create(unsubscribe_activity) - end + unsubscribes = [] + body['results'].each do |unsubscribe_activity| + unsubscribes[] = Components::UnsubscribeActivity.create(unsubscribe_activity) + end - Components::ResultSet.new(unsubscribes, body['meta']) - end + Components::ResultSet.new(unsubscribes, body['meta']) + end - # Get a summary of reporting data for a given campaign - # @param [String] access_token - Constant Contact OAuth2 access token - # @param [Integer] campaign_id - Campaign id - # @return [TrackingSummary] - def get_summary(access_token, campaign_id) - url = Util::Config.get('endpoints.base_url') + - sprintf(Util::Config.get('endpoints.campaign_tracking_summary'), campaign_id) - url = build_url(url) - response = RestClient.get(url, get_headers(access_token)) - Components::TrackingSummary.create(JSON.parse(response.body)) - end + # Get a summary of reporting data for a given campaign + # @param [String] access_token - Constant Contact OAuth2 access token + # @param [Integer] campaign_id - Campaign id + # @return [TrackingSummary] + def get_summary(access_token, campaign_id) + url = Util::Config.get('endpoints.base_url') + + sprintf(Util::Config.get('endpoints.campaign_tracking_summary'), campaign_id) + url = build_url(url) + response = RestClient.get(url, get_headers(access_token)) + Components::TrackingSummary.create(JSON.parse(response.body)) + end - end - end - end + end + end + end end \ No newline at end of file