Class: Telnyx::Campaign

Inherits:
APIResource show all
Extended by:
APIOperations::Create, APIOperations::List, APIOperations::NestedResource
Includes:
APIOperations::Delete, APIOperations::Save
Defined in:
lib/telnyx/campaign.rb

Constant Summary collapse

ACTIONS =
%w[mnoMetadata operationStatus].freeze
OBJECT_NAME =
"campaign".freeze

Instance Attribute Summary

Attributes inherited from APIResource

#save_with_parent

Class Method Summary collapse

Instance Method Summary collapse

Methods included from APIOperations::List

list

Methods included from APIOperations::Create

create

Methods included from APIOperations::NestedResource

nested_resource_class_methods

Methods included from APIOperations::Save

included, #save

Methods included from APIOperations::Delete

#delete

Methods inherited from APIResource

class_name, identified_resource_url, inherited, #refresh, #resource_url, save_nested_resource

Methods included from APIOperations::Request

included

Methods inherited from TelnyxObject

#==, #[], #[]=, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values

Constructor Details

This class inherits a constructor from Telnyx::TelnyxObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Telnyx::TelnyxObject

Class Method Details

.create(params = {}, opts = {}) ⇒ Object



18
19
20
21
# File 'lib/telnyx/campaign.rb', line 18

def self.create(params = {}, opts = {})
  resp, opts = request(:post, "/10dlc/campaignBuilder", params, opts)
  Util.convert_to_telnyx_object(resp.data, opts)
end

.resource_url(inner_id = nil) ⇒ Object



43
44
45
46
47
48
# File 'lib/telnyx/campaign.rb', line 43

def self.resource_url(inner_id = nil)
  path_prefix = "/10dlc"
  object_path = "campaign"

  inner_id.nil? ? "#{path_prefix}/#{object_path}" : "#{path_prefix}/#{object_path}/#{CGI.escape(inner_id)}"
end

.retrieve(id, opts = {}) ⇒ Object



38
39
40
41
# File 'lib/telnyx/campaign.rb', line 38

def self.retrieve(id, opts = {})
  resp, opts = request(:get, resource_url(id), {}, opts)
  Util.convert_to_telnyx_object(resp.data, opts)
end

Instance Method Details

#accept_sharing(params = {}, opts = {}) ⇒ Object



23
24
25
26
# File 'lib/telnyx/campaign.rb', line 23

def accept_sharing(params = {}, opts = {})
  resp, opts = request(:post, "/10dlc/campaign/acceptSharing/#{campaignId.gsub(/\s+/, '+')}", params, opts)
  Util.convert_to_telnyx_object(resp.data, opts)
end

#osr_attributes(params = {}, opts = {}) ⇒ Object



33
34
35
36
# File 'lib/telnyx/campaign.rb', line 33

def osr_attributes(params = {}, opts = {})
  resp, opts = request(:get, "/10dlc/campaign/#{campaignId.gsub(/\s+/, '+')}/osr/attributes", params, opts)
  Util.convert_to_telnyx_object(resp.data, opts)
end

#sharing(params = {}, opts = {}) ⇒ Object



28
29
30
31
# File 'lib/telnyx/campaign.rb', line 28

def sharing(params = {}, opts = {})
  resp, opts = request(:get, "/10dlc/campaign/#{campaignId.gsub(/\s+/, '+')}/sharing", params, opts)
  Util.convert_to_telnyx_object(resp.data, opts)
end