allin-sdk-ruby 2.0.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -13
- data/Gemfile +1 -0
- data/Gemfile.lock +1 -3
- data/VERSION +1 -1
- data/allin-sdk-ruby.gemspec +9 -4
- data/lib/allin-sdk-ruby.rb +3 -0
- data/lib/allin-sdk-ruby/config/default.rb +5 -1
- data/lib/allin-sdk-ruby/json_api/facade.rb +29 -9
- data/lib/allin-sdk-ruby/json_api/list_email.rb +9 -3
- data/lib/allin-sdk-ruby/json_api/optout.rb +26 -0
- data/lib/allin-sdk-ruby/json_api/token.rb +26 -0
- metadata +41 -25
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
MTZlNzQ4NGYyNWIxZTM4NzRkODA1NDk4ZjNkNGZjMGJlYmI3ZGRlMQ==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: f9eb921da095233e16ab0ea28dbd9d9305cd9dab
|
4
|
+
data.tar.gz: c907cbe1453fabc69ae13e07e739d1968784f86f
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
YjEwMWQxOWIxNjNmNDBhMGEwNmFlODY4YzdmZmJkNGJhOTMyMzVmOWI4ZjQx
|
11
|
-
MWFiODA1ODk0MzIyYjczMGMwYTNkYzU2Y2Q3ZDI4NjlkMzQwMTg=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
YjdmNWM2NjI2ZDliMjMxYzc4MGVlYjI2YmY0MDE2ZWFhODkwZjQ0NzhkYjlk
|
14
|
-
OTAwNmZjMWVmMjE0MjEzOTRjYjAxOWM3N2I2YWE3N2EwMjM3MDJkZTgwMzk3
|
15
|
-
YzJiNmNlYjk5MDEyZWE0MDlhZGNlY2Y5ODFjZmU5ZDZiMDA5OWY=
|
6
|
+
metadata.gz: 685614b96eed1a501ea994d46fe6fe22e50b3a66f61443b794cbe78dc1f95b890b92b34634b961ab5985b709cd216328c2d80ba2739961144fac3de163bd0dae
|
7
|
+
data.tar.gz: 87f86c7b137eb26aed334499e7456897400c32b964be1765efeb1ae6f482b1f31c45c27f7e453b50c637f6b38075aa3a6974af6af970378bf6eba51e09c2a8f2
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
4.0.0
|
data/allin-sdk-ruby.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: allin-sdk-ruby
|
5
|
+
# stub: allin-sdk-ruby 4.0.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "allin-sdk-ruby"
|
9
|
-
s.version = "
|
9
|
+
s.version = "4.0.0"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
13
|
s.authors = ["Renato Alves"]
|
14
|
-
s.date = "2015-09-
|
14
|
+
s.date = "2015-09-30"
|
15
15
|
s.description = "Ruby SDK for Allin integration"
|
16
16
|
s.email = "renatodex@gmail.com"
|
17
17
|
s.extra_rdoc_files = [
|
@@ -33,12 +33,14 @@ Gem::Specification.new do |s|
|
|
33
33
|
"lib/allin-sdk-ruby/helpers/builder.rb",
|
34
34
|
"lib/allin-sdk-ruby/json_api/facade.rb",
|
35
35
|
"lib/allin-sdk-ruby/json_api/list_email.rb",
|
36
|
+
"lib/allin-sdk-ruby/json_api/optout.rb",
|
37
|
+
"lib/allin-sdk-ruby/json_api/token.rb",
|
36
38
|
"spec/allin-sdk-ruby_spec.rb",
|
37
39
|
"spec/spec_helper.rb"
|
38
40
|
]
|
39
41
|
s.homepage = "http://github.com/renatodex/allin-sdk-ruby"
|
40
42
|
s.licenses = ["MIT"]
|
41
|
-
s.rubygems_version = "2.4.
|
43
|
+
s.rubygems_version = "2.4.2"
|
42
44
|
s.summary = "Ruby SDK for Allin integration"
|
43
45
|
|
44
46
|
if s.respond_to? :specification_version then
|
@@ -49,6 +51,7 @@ Gem::Specification.new do |s|
|
|
49
51
|
s.add_runtime_dependency(%q<configatron>, [">= 0"])
|
50
52
|
s.add_runtime_dependency(%q<colorize>, [">= 0"])
|
51
53
|
s.add_runtime_dependency(%q<pry>, [">= 0"])
|
54
|
+
s.add_runtime_dependency(%q<addressable>, [">= 0"])
|
52
55
|
s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
|
53
56
|
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
54
57
|
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
|
@@ -59,6 +62,7 @@ Gem::Specification.new do |s|
|
|
59
62
|
s.add_dependency(%q<configatron>, [">= 0"])
|
60
63
|
s.add_dependency(%q<colorize>, [">= 0"])
|
61
64
|
s.add_dependency(%q<pry>, [">= 0"])
|
65
|
+
s.add_dependency(%q<addressable>, [">= 0"])
|
62
66
|
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
63
67
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
64
68
|
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
@@ -70,6 +74,7 @@ Gem::Specification.new do |s|
|
|
70
74
|
s.add_dependency(%q<configatron>, [">= 0"])
|
71
75
|
s.add_dependency(%q<colorize>, [">= 0"])
|
72
76
|
s.add_dependency(%q<pry>, [">= 0"])
|
77
|
+
s.add_dependency(%q<addressable>, [">= 0"])
|
73
78
|
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
74
79
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
75
80
|
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
data/lib/allin-sdk-ruby.rb
CHANGED
@@ -1,8 +1,11 @@
|
|
1
1
|
require 'httparty'
|
2
2
|
require 'configatron'
|
3
3
|
require 'colorize'
|
4
|
+
require 'addressable/uri'
|
4
5
|
|
5
6
|
require 'allin-sdk-ruby/helpers/builder'
|
6
7
|
require 'allin-sdk-ruby/config/default'
|
7
8
|
require "allin-sdk-ruby/json_api/facade"
|
9
|
+
require "allin-sdk-ruby/json_api/token"
|
8
10
|
require "allin-sdk-ruby/json_api/list_email"
|
11
|
+
require "allin-sdk-ruby/json_api/optout"
|
@@ -1,6 +1,10 @@
|
|
1
1
|
require 'configatron'
|
2
2
|
|
3
3
|
configatron.allinsdk_api_uri = "http://painel02.allinmail.com.br"
|
4
|
-
configatron.
|
4
|
+
configatron.allinsdk_api_login = "yourlogin"
|
5
|
+
configatron.allinsdk_api_password = "yourpassword"
|
5
6
|
configatron.allinsdk_api_list_email_insert_method = "inserir_email_base"
|
6
7
|
configatron.allinsdk_api_list_email_remove_method = "remover_email_base"
|
8
|
+
configatron.allinsdk_api_list_token_method = "get_token"
|
9
|
+
configatron.allinsdk_api_optout_insert_method = "inserir_email_optout"
|
10
|
+
configatron.allinsdk_api_optout_remove_method = "remover_email_optout"
|
@@ -4,7 +4,6 @@ module AllinSDK
|
|
4
4
|
include ::HTTParty
|
5
5
|
base_uri configatron.allinsdk_api_uri
|
6
6
|
default_params ({
|
7
|
-
:token => configatron.allinsdk_api_token,
|
8
7
|
:output => "json"
|
9
8
|
})
|
10
9
|
|
@@ -16,19 +15,40 @@ module AllinSDK
|
|
16
15
|
end
|
17
16
|
end
|
18
17
|
|
19
|
-
def self.api_get(method, params={})
|
20
|
-
|
21
|
-
|
22
|
-
|
18
|
+
def self.api_get(method, params={}, token_required=true)
|
19
|
+
query_values = params
|
20
|
+
if token_required
|
21
|
+
query_values.merge!({token: self.generate_token})
|
22
|
+
end
|
23
|
+
|
24
|
+
uri_params = ::Addressable::URI.new
|
25
|
+
uri_params.query_values = query_values
|
26
|
+
|
27
|
+
puts "[GET] <- starting request to Allin at \##{method} with params: #{params}".light_blue
|
28
|
+
result = self.send("get", "/allinapi/?method=#{method}&#{uri_params.query}", {})
|
29
|
+
puts "[GET] -> request response from backend: #{result}".green
|
23
30
|
self.parse_response result.body
|
24
31
|
end
|
25
32
|
|
26
|
-
def self.api_post(method,
|
27
|
-
|
28
|
-
|
29
|
-
|
33
|
+
def self.api_post(method, body_params={}, query_params={})
|
34
|
+
options = {
|
35
|
+
:body => body_params,
|
36
|
+
:query => {token: self.generate_token}.merge(query_params),
|
37
|
+
:headers => {
|
38
|
+
'Cache-Control' => 'no-cache'
|
39
|
+
}
|
40
|
+
}
|
41
|
+
|
42
|
+
puts "[POST] <- starting request to Allin at \##{method} with params: #{body_params}".light_blue
|
43
|
+
result = self.send("post", "/allinapi/?method=#{method}", options)
|
44
|
+
puts "[POST] -> request response from backend: #{result}".green
|
45
|
+
|
30
46
|
self.parse_response result.body
|
31
47
|
end
|
48
|
+
|
49
|
+
def self.generate_token
|
50
|
+
AllinSDK::JsonAPI::Token.retrieve
|
51
|
+
end
|
32
52
|
end
|
33
53
|
end
|
34
54
|
end
|
@@ -4,11 +4,17 @@ module AllinSDK
|
|
4
4
|
extend Helpers::Builder
|
5
5
|
|
6
6
|
def self.insert(list, email, merge_data)
|
7
|
+
fields = self.build_fields({nm_email: email}.merge(merge_data))
|
8
|
+
values = self.build_values({nm_email: email}.merge(merge_data))
|
9
|
+
|
7
10
|
AllinSDK::JsonAPI::Facade.api_post(self.insert_method_name, {
|
8
|
-
"
|
9
|
-
|
10
|
-
|
11
|
+
"dados_email" => {
|
12
|
+
"nm_lista" => list,
|
13
|
+
"campos" => fields,
|
14
|
+
"valor" => values
|
15
|
+
}.to_json
|
11
16
|
})
|
17
|
+
|
12
18
|
end
|
13
19
|
|
14
20
|
def self.remove(list, email)
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module AllinSDK
|
2
|
+
module JsonAPI
|
3
|
+
class Optout
|
4
|
+
def self.insert(email)
|
5
|
+
result = AllinSDK::JsonAPI::Facade.api_get(self.optout_insert_method_name, {
|
6
|
+
email: email
|
7
|
+
})
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.remove(email)
|
11
|
+
result = AllinSDK::JsonAPI::Facade.api_get(self.optout_remove_method_name, {
|
12
|
+
email: email
|
13
|
+
})
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
def self.optout_insert_method_name
|
18
|
+
configatron.allinsdk_api_optout_insert_method
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.optout_remove_method_name
|
22
|
+
configatron.allinsdk_api_optout_remove_method
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module AllinSDK
|
2
|
+
module JsonAPI
|
3
|
+
class Token
|
4
|
+
def self.retrieve
|
5
|
+
result = AllinSDK::JsonAPI::Facade.api_get(self.token_method_name, {
|
6
|
+
username: self.username,
|
7
|
+
password: self.password
|
8
|
+
}, false)
|
9
|
+
result["token"]
|
10
|
+
end
|
11
|
+
|
12
|
+
private
|
13
|
+
def self.token_method_name
|
14
|
+
configatron.allinsdk_api_list_token_method
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.username
|
18
|
+
configatron.allinsdk_api_login
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.password
|
22
|
+
configatron.allinsdk_api_password
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
metadata
CHANGED
@@ -1,139 +1,153 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: allin-sdk-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Renato Alves
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-09-
|
11
|
+
date: 2015-09-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: configatron
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: colorize
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
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
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: pry
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: addressable
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: rspec
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
|
-
- - ~>
|
87
|
+
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
89
|
version: 2.8.0
|
76
90
|
type: :development
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
|
-
- - ~>
|
94
|
+
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
96
|
version: 2.8.0
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rdoc
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
|
-
- - ~>
|
101
|
+
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
103
|
version: '3.12'
|
90
104
|
type: :development
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
|
-
- - ~>
|
108
|
+
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
110
|
version: '3.12'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: bundler
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
|
-
- - ~>
|
115
|
+
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
117
|
version: '1.0'
|
104
118
|
type: :development
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
107
121
|
requirements:
|
108
|
-
- - ~>
|
122
|
+
- - "~>"
|
109
123
|
- !ruby/object:Gem::Version
|
110
124
|
version: '1.0'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: jeweler
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
|
-
- - ~>
|
129
|
+
- - "~>"
|
116
130
|
- !ruby/object:Gem::Version
|
117
131
|
version: 2.0.1
|
118
132
|
type: :development
|
119
133
|
prerelease: false
|
120
134
|
version_requirements: !ruby/object:Gem::Requirement
|
121
135
|
requirements:
|
122
|
-
- - ~>
|
136
|
+
- - "~>"
|
123
137
|
- !ruby/object:Gem::Version
|
124
138
|
version: 2.0.1
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: simplecov
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
|
-
- -
|
143
|
+
- - ">="
|
130
144
|
- !ruby/object:Gem::Version
|
131
145
|
version: '0'
|
132
146
|
type: :development
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
|
-
- -
|
150
|
+
- - ">="
|
137
151
|
- !ruby/object:Gem::Version
|
138
152
|
version: '0'
|
139
153
|
description: Ruby SDK for Allin integration
|
@@ -144,8 +158,8 @@ extra_rdoc_files:
|
|
144
158
|
- LICENSE.txt
|
145
159
|
- README.rdoc
|
146
160
|
files:
|
147
|
-
- .document
|
148
|
-
- .rspec
|
161
|
+
- ".document"
|
162
|
+
- ".rspec"
|
149
163
|
- Gemfile
|
150
164
|
- Gemfile.lock
|
151
165
|
- LICENSE.txt
|
@@ -158,6 +172,8 @@ files:
|
|
158
172
|
- lib/allin-sdk-ruby/helpers/builder.rb
|
159
173
|
- lib/allin-sdk-ruby/json_api/facade.rb
|
160
174
|
- lib/allin-sdk-ruby/json_api/list_email.rb
|
175
|
+
- lib/allin-sdk-ruby/json_api/optout.rb
|
176
|
+
- lib/allin-sdk-ruby/json_api/token.rb
|
161
177
|
- spec/allin-sdk-ruby_spec.rb
|
162
178
|
- spec/spec_helper.rb
|
163
179
|
homepage: http://github.com/renatodex/allin-sdk-ruby
|
@@ -170,17 +186,17 @@ require_paths:
|
|
170
186
|
- lib
|
171
187
|
required_ruby_version: !ruby/object:Gem::Requirement
|
172
188
|
requirements:
|
173
|
-
- -
|
189
|
+
- - ">="
|
174
190
|
- !ruby/object:Gem::Version
|
175
191
|
version: '0'
|
176
192
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
193
|
requirements:
|
178
|
-
- -
|
194
|
+
- - ">="
|
179
195
|
- !ruby/object:Gem::Version
|
180
196
|
version: '0'
|
181
197
|
requirements: []
|
182
198
|
rubyforge_project:
|
183
|
-
rubygems_version: 2.4.
|
199
|
+
rubygems_version: 2.4.2
|
184
200
|
signing_key:
|
185
201
|
specification_version: 4
|
186
202
|
summary: Ruby SDK for Allin integration
|