Class: CampaignMonitor::Subscriber

Inherits:
Object
  • Object
show all
Defined in:
lib/campaign_monitor.rb

Overview

Provides the ability to add/remove subscribers from a list

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(email_address, name = nil, date = nil) ⇒ Subscriber

Returns a new instance of Subscriber.



427
428
429
430
431
432
# File 'lib/campaign_monitor.rb', line 427

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

#date_subscribedObject

Returns the value of attribute date_subscribed.



425
426
427
# File 'lib/campaign_monitor.rb', line 425

def date_subscribed
  @date_subscribed
end

#email_addressObject

Returns the value of attribute email_address.



425
426
427
# File 'lib/campaign_monitor.rb', line 425

def email_address
  @email_address
end

#nameObject

Returns the value of attribute name.



425
426
427
# File 'lib/campaign_monitor.rb', line 425

def name
  @name
end

Instance Method Details

#add(list_id) ⇒ Object

Example

@subscriber = Subscriber.new("[email protected]")
@subscriber.add(12345)


437
438
439
440
# File 'lib/campaign_monitor.rb', line 437

def add(list_id)
  response = @cm_client.Subscriber_Add("ListID" => list_id, "Email" => @email_address, "Name" => @name)
  Result.new(response["Message"], response["Code"].to_i)
end

#unsubscribe(list_id) ⇒ Object

Example

@subscriber = Subscriber.new("[email protected]")
@subscriber.unsubscribe(12345)


445
446
447
448
# File 'lib/campaign_monitor.rb', line 445

def unsubscribe(list_id)
  response = @cm_client.Subscriber_Unsubscribe("ListID" => list_id, "Email" => @email_address)
  Result.new(response["Message"], response["Code"].to_i)
end