Class: ConstantContact::Services::CampaignScheduleService
- Inherits:
-
BaseService
- Object
- BaseService
- ConstantContact::Services::CampaignScheduleService
- Defined in:
- lib/constantcontact/services/campaign_schedule_service.rb
Instance Attribute Summary
Attributes inherited from BaseService
Instance Method Summary collapse
-
#add_schedule(campaign_id, schedule) ⇒ Schedule
Create a new schedule for a campaign.
-
#delete_schedule(campaign_id, schedule_id) ⇒ Boolean
Delete a specific schedule for a campaign.
-
#get_schedule(campaign_id, schedule_id) ⇒ Schedule
Get a specific schedule for a campaign.
-
#get_schedules(campaign_id) ⇒ Array<Schedule>
Get a list of schedules for a campaign.
-
#send_test(campaign_id, test_send) ⇒ TestSend
Send a test send of a campaign.
-
#update_schedule(campaign_id, schedule) ⇒ Schedule
Update a specific schedule for a campaign.
Methods inherited from BaseService
Constructor Details
This class inherits a constructor from ConstantContact::Services::BaseService
Instance Method Details
#add_schedule(campaign_id, schedule) ⇒ Schedule
Create a new schedule for a campaign
15 16 17 18 19 20 21 22 |
# File 'lib/constantcontact/services/campaign_schedule_service.rb', line 15 def add_schedule(campaign_id, schedule) url = Util::Config.get('endpoints.base_url') + sprintf(Util::Config.get('endpoints.campaign_schedules'), campaign_id) url = build_url(url) payload = schedule.to_json response = RestClient.post(url, payload, get_headers()) Components::Schedule.create(JSON.parse(response.body)) end |
#delete_schedule(campaign_id, schedule_id) ⇒ Boolean
Delete a specific schedule for a campaign
61 62 63 64 65 66 67 |
# File 'lib/constantcontact/services/campaign_schedule_service.rb', line 61 def delete_schedule(campaign_id, schedule_id) url = Util::Config.get('endpoints.base_url') + sprintf(Util::Config.get('endpoints.campaign_schedule'), campaign_id, schedule_id) url = build_url(url) response = RestClient.delete(url, get_headers()) response.code == 204 end |
#get_schedule(campaign_id, schedule_id) ⇒ Schedule
Get a specific schedule for a campaign
48 49 50 51 52 53 54 |
# File 'lib/constantcontact/services/campaign_schedule_service.rb', line 48 def get_schedule(campaign_id, schedule_id) url = Util::Config.get('endpoints.base_url') + sprintf(Util::Config.get('endpoints.campaign_schedule'), campaign_id, schedule_id) url = build_url(url) response = RestClient.get(url, get_headers()) Components::Schedule.create(JSON.parse(response.body)) end |
#get_schedules(campaign_id) ⇒ Array<Schedule>
Get a list of schedules for a campaign
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/constantcontact/services/campaign_schedule_service.rb', line 28 def get_schedules(campaign_id) url = Util::Config.get('endpoints.base_url') + sprintf(Util::Config.get('endpoints.campaign_schedules'), campaign_id) url = build_url(url) response = RestClient.get(url, get_headers()) body = JSON.parse(response.body) schedules = [] body.each do |schedule| schedules << Components::Schedule.create(schedule) end schedules end |
#send_test(campaign_id, test_send) ⇒ TestSend
Send a test send of a campaign
88 89 90 91 92 93 94 95 |
# File 'lib/constantcontact/services/campaign_schedule_service.rb', line 88 def send_test(campaign_id, test_send) url = Util::Config.get('endpoints.base_url') + sprintf(Util::Config.get('endpoints.campaign_test_sends'), campaign_id) url = build_url(url) payload = test_send.to_json response = RestClient.post(url, payload, get_headers()) Components::TestSend.create(JSON.parse(response.body)) end |
#update_schedule(campaign_id, schedule) ⇒ Schedule
Update a specific schedule for a campaign
74 75 76 77 78 79 80 81 |
# File 'lib/constantcontact/services/campaign_schedule_service.rb', line 74 def update_schedule(campaign_id, schedule) url = Util::Config.get('endpoints.base_url') + sprintf(Util::Config.get('endpoints.campaign_schedule'), campaign_id, schedule.id) url = build_url(url) payload = schedule.to_json response = RestClient.put(url, payload, get_headers()) Components::Schedule.create(JSON.parse(response.body)) end |