marchex 0.1.3 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0dd04c01da60af405506c24cc747523fdb9a8808
4
- data.tar.gz: 4fedaf92eb9ffa1a8db6fd9e063587d191e60030
3
+ metadata.gz: 9d8f6534c0873d81a815890a1bd5cd739c8a99fa
4
+ data.tar.gz: d589ec0ecd5f51b50c2b9973c55408321d3298ce
5
5
  SHA512:
6
- metadata.gz: 6ce053b434135452bbf8a474e9ae5d0d23ca53a3b1b8b85388892181cd6efa5ec86408c687907e3277d0b5d182cbffa76703db5619e30e4c845f74dc7cd6190c
7
- data.tar.gz: 54f5ac131288ea78fbca2b9251f027cf1bb99043ef722948fd7f3fa8c08b58a56cf5ec50c837d85bcf243dbe2876c81034c4c8936912b99d49cd64209e323685
6
+ metadata.gz: 607dff4dc79e1f0f9497d88c37bc0de99fbacf3c6e7edcc1af26c0b29afdd9074e6b4501d6eee0929de1f8e6117b0ee669ae5d8ba2c2df67bad14a433a1fdd49
7
+ data.tar.gz: 1d72909a0e9acb711285f01fa41b41464d1cd743559127e5df428e1d07b6573ea087da6b71a2717e0fcc8647bcb511a051f63fdfcb7d43ba53cac2b3bb6d90d4
data/README.md CHANGED
@@ -20,34 +20,43 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
  Create a connection using your Marchex account email address and password:
23
-
23
+ ```ruby
24
24
  @testcon = Marchex::Marchexapi.new("user@marchex.com", "password")
25
+ ```
26
+ ```@testcon.account_list ```
25
27
 
26
- # @testcon.account_list
27
28
  Retrieves all accounts
28
29
 
29
- # @testcon.client_ad_list(client_id, status)
30
+ ``` @testcon.client_ad_list(client_id, status) ```
31
+
30
32
  Retrieves all ad campaigns for a client account. If disabled or active is passed for the status, only those ads will be returned.
31
33
 
32
- # @testcon.ad_forward_list(campaign_id)
34
+ ``` @testcon.ad_forward_list(campaign_id) ```
35
+
33
36
  Retrieves all forwarding numbers for a single ad campaign
34
37
 
35
- # @testcon.ad_record_status(campaign_id)
38
+ ``` @testcon.ad_record_status(campaign_id) ```
39
+
36
40
  Checks if an ad campaign is set to record
37
41
 
38
- # @testcon.user_list(account_id)
42
+ ``` @testcon.user_list(account_id)```
43
+
39
44
  List all users in a client account
40
45
 
41
- # @testcon.user_permissions(user_id)
46
+ ``` @testcon.user_permissions(user_id) ```
47
+
42
48
  Grab permissions to see if a user is an admin
43
49
 
44
- # @testcon.ad_custom_define(acc_id,field_number, field_name, field_type, field_values)
50
+ ``` @testcon.ad_custom_define(acc_id,field_number, field_name, field_type, field_values) ```
51
+
45
52
  Define a custom field for an ad
46
53
 
47
- # @testcon.ad_custom_set(acc_id, campaign_id, field_name, field_value)
54
+ ``` @testcon.ad_custom_set(acc_id, campaign_id, field_name, field_value) ```
55
+
48
56
  Set the value of a custom field. For boolean, use yes/no
49
57
 
50
- # @testcon.call_search(search_options)
58
+ ``` @testcon.call_search(search_options) ```
59
+
51
60
  search_options = {}
52
61
  search_options[:acct_id] Required string. The unique, system-generated account ID of the specified account.
53
62
 
@@ -93,10 +102,12 @@ Create a connection using your Marchex account email address and password:
93
102
 
94
103
  search_options[:subacct] Optional boolean. true to search all calls in all client accounts of the specified parent account.
95
104
 
96
- # @testcon.get_call(call_id)
105
+ ``` @testcon.get_call(call_id) ```
106
+
97
107
  Return details for a single call
98
108
 
99
- # @testcon.get_call_audio(call_id, audio_format)
109
+ ``` @testcon.get_call_audio(call_id, audio_format) ```
110
+
100
111
  Gets a Base64-encoded string that contains the audio data of the specified call, in the specified format. (mp3 or wav)
101
112
 
102
113
  ## Development
@@ -11,21 +11,21 @@ require 'rest-client'
11
11
  module Marchex
12
12
  class Marchexapi
13
13
 
14
- #RestClient.log = 'stdout' #Debugging API calls
14
+ RestClient.log = 'stdout' #Debugging API calls
15
15
 
16
16
  def initialize(u, p)
17
17
  @url = 'https://userapi.voicestar.com/api/jsonrpc/1'
18
- $auth = 'Basic ' + Base64.encode64(u + ':' + p).chomp
18
+ @auth = 'Basic ' + Base64.encode64(u + ':' + p).chomp
19
19
  end
20
20
 
21
21
 
22
22
  def account_list()
23
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'acct.list', 'params' => [] }.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
23
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'acct.list', 'params' => [] }.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
24
24
 
25
25
  end
26
26
 
27
27
  def client_ad_list(client_id, status ='')
28
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.list.all', 'params' => [client_id, {'status' => status.downcase}]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
28
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.list.all', 'params' => [client_id, {'status' => status.downcase}]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
29
29
 
30
30
  end
31
31
 
@@ -35,31 +35,31 @@ module Marchex
35
35
  end
36
36
 
37
37
  def ad_forward_list(campaign_id)
38
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.forw.list', 'params' => [campaign_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
38
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.forw.list', 'params' => [campaign_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
39
39
  end
40
40
 
41
41
  def ad_record_status(campaign_id)
42
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.recordcall.get', 'params' => [campaign_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
42
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.recordcall.get', 'params' => [campaign_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
43
43
  return response.body["result"]
44
44
  end
45
45
 
46
46
  def user_list(account_id)
47
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'user.list', 'params' => [account_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
47
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'user.list', 'params' => [account_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
48
48
  return response.body["result"]
49
49
  end
50
50
 
51
51
  def user_permissions(user_id)
52
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'user.permissions.get', 'params' => [user_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
52
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'user.permissions.get', 'params' => [user_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
53
53
  return response.body["result"]
54
54
  end
55
55
 
56
56
  def ad_custom_define(acc_id,field_number, field_name, field_type, field_values)
57
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.custom.define', 'params' => [acc_id,field_number, field_name, field_type, field_values]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
57
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.custom.define', 'params' => [acc_id,field_number, field_name, field_type, field_values]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
58
58
  return response.body["result"]
59
59
  end
60
60
 
61
61
  def ad_custom_set(acc_id, campaign_id, field_name, field_value)
62
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.custom.set', 'params' => [acc_id,campaign_id, field_name, field_value]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
62
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'ad.custom.set', 'params' => [acc_id,campaign_id, field_name, field_value]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
63
63
  return response.body["result"]
64
64
  end
65
65
 
@@ -84,17 +84,17 @@ module Marchex
84
84
  search_options[:status] = opts[:status] if opts[:status]
85
85
  search_options[:spotted_keywords] = opts[:spotted_keywords] if opts[:spotted_keywords]
86
86
  search_options[:subacct] = opts[:subacct] if opts[:subacct]
87
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'call.search', 'params' => [opts[:acct_id], search_options ]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
87
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'call.search', 'params' => [opts[:acct_id], search_options ]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
88
88
  return response.body["result"]
89
89
  end
90
90
 
91
91
  def get_call (call_id)
92
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'call.get', 'params' => [call_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
92
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'call.get', 'params' => [call_id]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
93
93
  return response.body["result"]
94
94
  end
95
95
 
96
96
  def get_call_audio(call_id, audio_format)
97
- response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'call.audio', 'params' => [call_id, audio_format]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => $auth))
97
+ response = parse_json(RestClient.post(@url, {'jsonrpc' => '2.0', 'id' => '1', 'method' => 'call.audio', 'params' => [call_id, audio_format]}.to_json, :content_type => 'application/json', :accept => 'application/json', :Authorization => @auth))
98
98
  return response.body["result"]
99
99
  end
100
100
 
@@ -1,3 +1,3 @@
1
1
  module Marchex
2
- VERSION = "0.1.3"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.add_development_dependency "bundler", "~> 1.10"
31
31
  spec.add_development_dependency "rake", "~> 10.0"
32
32
 
33
- spec.add_dependency "rest-client", "~> 1.8.0"
34
- spec.add_dependency "json", "~> 1.8.1"
33
+ spec.add_dependency "rest-client", "~> 2.0.2"
34
+ spec.add_dependency "json", "~> 2.1.0"
35
35
 
36
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: marchex
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Hoskison
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-06 00:00:00.000000000 Z
11
+ date: 2017-12-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.8.0
47
+ version: 2.0.2
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.8.0
54
+ version: 2.0.2
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: json
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 1.8.1
61
+ version: 2.1.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 1.8.1
68
+ version: 2.1.0
69
69
  description: Marchex JSON API
70
70
  email:
71
71
  - mhoskison@etnainteractive.com
@@ -105,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
105
  version: '0'
106
106
  requirements: []
107
107
  rubyforge_project:
108
- rubygems_version: 2.5.1
108
+ rubygems_version: 2.6.8
109
109
  signing_key:
110
110
  specification_version: 4
111
111
  summary: Used to work with the Marchex API