Class: CampaignMonitor::Campaign
- Inherits:
-
Object
- Object
- CampaignMonitor::Campaign
- Includes:
- Helpers
- Defined in:
- lib/campaign_monitor/campaign.rb
Overview
Provides access to the information about a campaign
Instance Attribute Summary collapse
-
#cm_client ⇒ Object
readonly
Returns the value of attribute cm_client.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#sent_date ⇒ Object
readonly
Returns the value of attribute sent_date.
-
#subject ⇒ Object
readonly
Returns the value of attribute subject.
-
#total_recipients ⇒ Object
readonly
Returns the value of attribute total_recipients.
Instance Method Summary collapse
-
#bounces ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_bounces = @campaign.bounces.
-
#clicks ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_clicks = @campaign.clicks.
-
#initialize(id = nil, subject = nil, sent_date = nil, total_recipients = nil) ⇒ Campaign
constructor
A new instance of Campaign.
-
#number_bounced ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_bounced.
-
#number_clicks ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_clicks.
-
#number_opened ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_opened.
-
#number_recipients ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_recipients.
-
#number_unsubscribed ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_unsubscribed.
-
#opens ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_opens = @campaign.opens.
-
#unsubscribes ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_unsubscribes = @campaign.unsubscribes.
Methods included from Helpers
#formatted_timestamp, #handle_response, #timestamp_format
Constructor Details
#initialize(id = nil, subject = nil, sent_date = nil, total_recipients = nil) ⇒ Campaign
8 9 10 11 12 13 14 |
# File 'lib/campaign_monitor/campaign.rb', line 8 def initialize(id=nil, subject=nil, sent_date=nil, total_recipients=nil) @id = id @subject = subject @sent_date = sent_date @total_recipients = total_recipients @cm_client = CampaignMonitor.new end |
Instance Attribute Details
#cm_client ⇒ Object (readonly)
Returns the value of attribute cm_client.
6 7 8 |
# File 'lib/campaign_monitor/campaign.rb', line 6 def cm_client @cm_client end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
6 7 8 |
# File 'lib/campaign_monitor/campaign.rb', line 6 def id @id end |
#sent_date ⇒ Object (readonly)
Returns the value of attribute sent_date.
6 7 8 |
# File 'lib/campaign_monitor/campaign.rb', line 6 def sent_date @sent_date end |
#subject ⇒ Object (readonly)
Returns the value of attribute subject.
6 7 8 |
# File 'lib/campaign_monitor/campaign.rb', line 6 def subject @subject end |
#total_recipients ⇒ Object (readonly)
Returns the value of attribute total_recipients.
6 7 8 |
# File 'lib/campaign_monitor/campaign.rb', line 6 def total_recipients @total_recipients end |
Instance Method Details
#bounces ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_bounces = @campaign.bounces
for subscriber in @subscriber_bounces puts subscriber.email end
36 37 38 39 40 |
# File 'lib/campaign_monitor/campaign.rb', line 36 def bounces handle_response(cm_client.Campaign_GetBounces("CampaignID"=> self.id)) do |response| response["SubscriberBounce"].collect{|s| SubscriberBounce.new(s["EmailAddress"], s["ListID"], s["BounceType"])} end end |
#clicks ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_clicks = @campaign.clicks
for subscriber in @subscriber_clicks puts subscriber.email end
49 50 51 52 53 |
# File 'lib/campaign_monitor/campaign.rb', line 49 def clicks handle_response(cm_client.Campaign_GetSubscriberClicks("CampaignID" => self.id)) do |response| response["SubscriberClick"].collect{|s| SubscriberClick.new(s["EmailAddress"], s["ListID"], s["ClickedLinks"])} end end |
#number_bounced ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_bounced
99 100 101 |
# File 'lib/campaign_monitor/campaign.rb', line 99 def number_bounced @number_bounced ||= attributes[:number_bounced] end |
#number_clicks ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_clicks
85 86 87 |
# File 'lib/campaign_monitor/campaign.rb', line 85 def number_clicks @number_clicks ||= attributes[:number_clicks] end |
#number_opened ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_opened
78 79 80 |
# File 'lib/campaign_monitor/campaign.rb', line 78 def number_opened @number_opened ||= attributes[:number_opened] end |
#number_recipients ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_recipients
71 72 73 |
# File 'lib/campaign_monitor/campaign.rb', line 71 def number_recipients @number_recipients ||= attributes[:number_recipients] end |
#number_unsubscribed ⇒ Object
Example @campaign = Campaign.new(12345) puts @campaign.number_unsubscribed
92 93 94 |
# File 'lib/campaign_monitor/campaign.rb', line 92 def number_unsubscribed @number_unsubscribed ||= attributes[:number_unsubscribed] end |
#opens ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_opens = @campaign.opens
for subscriber in @subscriber_opens puts subscriber.email end
23 24 25 26 27 |
# File 'lib/campaign_monitor/campaign.rb', line 23 def opens handle_response(cm_client.Campaign_GetOpens("CampaignID" => self.id)) do |response| response["SubscriberOpen"].collect{|s| SubscriberOpen.new(s["EmailAddress"], s["ListID"], s["NumberOfOpens"])} end end |
#unsubscribes ⇒ Object
Example @campaign = Campaign.new(12345) @subscriber_unsubscribes = @campaign.unsubscribes
for subscriber in @subscriber_unsubscribes puts subscriber.email end
62 63 64 65 66 |
# File 'lib/campaign_monitor/campaign.rb', line 62 def unsubscribes handle_response(cm_client.Campaign_GetUnsubscribes("CampaignID" => self.id)) do |response| response["SubscriberUnsubscribe"].collect{|s| SubscriberUnsubscribe.new(s["EmailAddress"], s["ListID"])} end end |