Class: CampaignMonitor::Subscriber
- Inherits:
-
Object
- Object
- CampaignMonitor::Subscriber
- Includes:
- Helpers
- Defined in:
- lib/campaign_monitor/subscriber.rb
Overview
Provides the ability to add/remove subscribers from a list
Instance Attribute Summary collapse
-
#cm_client ⇒ Object
readonly
Returns the value of attribute cm_client.
-
#date_subscribed ⇒ Object
Returns the value of attribute date_subscribed.
-
#email_address ⇒ Object
Returns the value of attribute email_address.
-
#name ⇒ Object
Returns the value of attribute name.
Instance Method Summary collapse
-
#add(list_id) ⇒ Object
Example @subscriber = Subscriber.new(“[email protected]”) @subscriber.add(12345).
-
#add_and_resubscribe(list_id) ⇒ Object
Example @subscriber = Subscriber.new(“[email protected]”) @subscriber.add_and_resubscribe(12345).
-
#initialize(email_address, name = nil, date = nil) ⇒ Subscriber
constructor
A new instance of Subscriber.
- #is_subscribed?(list_id) ⇒ Boolean
-
#unsubscribe(list_id) ⇒ Object
Example @subscriber = Subscriber.new(“[email protected]”) @subscriber.unsubscribe(12345).
Methods included from Helpers
#formatted_timestamp, #handle_response, #timestamp_format
Constructor Details
#initialize(email_address, name = nil, date = nil) ⇒ Subscriber
Returns a new instance of Subscriber.
9 10 11 12 13 14 |
# File 'lib/campaign_monitor/subscriber.rb', line 9 def initialize(email_address, name=nil, date=nil) @email_address = email_address @name = name @date_subscribed = date_subscribed @cm_client = CampaignMonitor.new end |
Instance Attribute Details
#cm_client ⇒ Object (readonly)
Returns the value of attribute cm_client.
7 8 9 |
# File 'lib/campaign_monitor/subscriber.rb', line 7 def cm_client @cm_client end |
#date_subscribed ⇒ Object
Returns the value of attribute date_subscribed.
6 7 8 |
# File 'lib/campaign_monitor/subscriber.rb', line 6 def date_subscribed @date_subscribed end |
#email_address ⇒ Object
Returns the value of attribute email_address.
6 7 8 |
# File 'lib/campaign_monitor/subscriber.rb', line 6 def email_address @email_address end |
#name ⇒ Object
Returns the value of attribute name.
6 7 8 |
# File 'lib/campaign_monitor/subscriber.rb', line 6 def name @name end |
Instance Method Details
#add(list_id) ⇒ Object
Example
@subscriber = Subscriber.new("[email protected]")
@subscriber.add(12345)
19 20 21 |
# File 'lib/campaign_monitor/subscriber.rb', line 19 def add(list_id) Result.new(cm_client.Subscriber_Add("ListID" => list_id, "Email" => @email_address, "Name" => @name)) end |
#add_and_resubscribe(list_id) ⇒ Object
Example
@subscriber = Subscriber.new("[email protected]")
@subscriber.add_and_resubscribe(12345)
26 27 28 |
# File 'lib/campaign_monitor/subscriber.rb', line 26 def add_and_resubscribe(list_id) Result.new(cm_client.Subscriber_AddAndResubscribe("ListID" => list_id, "Email" => @email_address, "Name" => @name)) end |
#is_subscribed?(list_id) ⇒ Boolean
37 38 39 40 41 42 |
# File 'lib/campaign_monitor/subscriber.rb', line 37 def is_subscribed?(list_id) result = cm_client.Subscribers_GetIsSubscribed("ListID" => list_id, "Email" => @email_address) return true if result == 'True' return false if result == 'False' raise "Invalid value for is_subscribed?: #{result}" end |
#unsubscribe(list_id) ⇒ Object
Example
@subscriber = Subscriber.new("[email protected]")
@subscriber.unsubscribe(12345)
33 34 35 |
# File 'lib/campaign_monitor/subscriber.rb', line 33 def unsubscribe(list_id) Result.new(cm_client.Subscriber_Unsubscribe("ListID" => list_id, "Email" => @email_address)) end |