webhookr-mailchimp 0.0.1 → 0.1.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.
- data/.travis.yml +9 -0
- data/Gemfile +10 -13
- data/Guardfile +4 -0
- data/README.md +20 -10
- data/lib/generators/webhookr/mailchimp/templates/mail_chimp_hooks.rb +50 -50
- data/lib/webhookr-mailchimp/version.rb +1 -1
- data/test/test_helper.rb +6 -0
- data/webhookr-mailchimp.gemspec +1 -1
- metadata +7 -6
data/.travis.yml
ADDED
data/Gemfile
CHANGED
@@ -2,19 +2,16 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
gemspec
|
4
4
|
|
5
|
-
|
6
|
-
gem "
|
7
|
-
gem "minitest
|
8
|
-
gem "
|
9
|
-
gem "
|
10
|
-
gem "guard
|
11
|
-
gem "guard-
|
12
|
-
gem "guard-
|
13
|
-
gem "
|
14
|
-
|
15
|
-
if RbConfig::CONFIG['host_os'] =~ /^darwin/
|
16
|
-
gem "rb-fsevent"
|
17
|
-
gem "growl"
|
5
|
+
group :development, :test do
|
6
|
+
gem "rake", "~> 10.0"
|
7
|
+
gem "minitest"
|
8
|
+
gem "minitest-reporters"
|
9
|
+
gem "em-websocket"
|
10
|
+
gem "guard"
|
11
|
+
gem "guard-minitest"
|
12
|
+
gem "guard-markdown"
|
13
|
+
gem "guard-livereload"
|
14
|
+
gem "simplecov", :require => false
|
18
15
|
end
|
19
16
|
|
20
17
|
if File.exists?('Gemfile.local')
|
data/Guardfile
CHANGED
@@ -16,6 +16,10 @@ guard 'markdown', :convert_on_start => true do
|
|
16
16
|
watch ('README.md') { "./README.md|./README.html" }
|
17
17
|
end
|
18
18
|
|
19
|
+
guard 'livereload' do
|
20
|
+
watch('README.html')
|
21
|
+
end
|
22
|
+
|
19
23
|
if File.exists?('Guardfile.local')
|
20
24
|
instance_eval File.read('Guardfile.local')
|
21
25
|
end
|
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# Webhookr::Mailchimp
|
2
|
-
[](https://travis-ci.org/zoocasa/webhookr-mailchimp)
|
3
|
+
[](https://gemnasium.com/zoocasa/webhookr-mailchimp)
|
4
|
+
[](https://codeclimate.com/github/zoocasa/webhookr-mailchimp)
|
3
5
|
|
4
6
|
This gem is a plugin for [Webhookr](https://github.com/zoocasa/webhookr) that enables
|
5
7
|
your application to accept [webhooks from Mailchimp](http://apidocs.mailchimp.com/webhooks/).
|
@@ -135,19 +137,27 @@ for ease of access. Examples for the method call unsubscribe:
|
|
135
137
|
|
136
138
|
## <a name="works_with"></a>Works with:
|
137
139
|
|
138
|
-
webhookr-mailchimp works with Rails 3.1 and
|
140
|
+
webhookr-mailchimp works with Rails 3.1, 3.2 and 4.0, and has been tested on the following Ruby
|
139
141
|
implementations:
|
140
142
|
|
141
|
-
*
|
142
|
-
*
|
143
|
-
*
|
144
|
-
* MRI 1.9.3
|
145
|
-
* Rubinius 1.2.4
|
146
|
-
* Ruby EE 1.8.7
|
143
|
+
* 1.9.3
|
144
|
+
* 2.0.0
|
145
|
+
* jruby-19mode
|
147
146
|
|
148
|
-
|
147
|
+
### Versioning
|
148
|
+
This library aims to adhere to [Semantic Versioning 2.0.0](http://semver.org/). Violations of this scheme should be reported as
|
149
|
+
bugs. Specifically, if a minor or patch version is released that breaks backward compatibility, that
|
150
|
+
version should be immediately yanked and/or a new version should be immediately released that restores
|
151
|
+
compatibility. Breaking changes to the public API will only be introduced with new major versions. As a
|
152
|
+
result of this policy, once this gem reaches a 1.0 release, you can (and should) specify a dependency on
|
153
|
+
this gem using the [Pessimistic Version Constraint](http://docs.rubygems.org/read/chapter/16#page74) with
|
154
|
+
two digits of precision. For example:
|
149
155
|
|
150
|
-
|
156
|
+
spec.add_dependency 'webhookr-mailchimp', '~> 1.0'
|
157
|
+
|
158
|
+
While this gem is currently a 0.x release, suggestion is to require the exact version that works for your code:
|
159
|
+
|
160
|
+
spec.add_dependency 'webhookr-mailchimp', '0.0.1'
|
151
161
|
|
152
162
|
## License
|
153
163
|
|
@@ -3,78 +3,78 @@ class MailChimpHooks
|
|
3
3
|
# All 'on_' handlers are optional. Omit any you do not require.
|
4
4
|
|
5
5
|
def on_subscribe(incoming)
|
6
|
-
payload = payload
|
7
|
-
puts payload.fired_at
|
8
|
-
puts payload.data.id
|
9
|
-
puts payload.data.list_id
|
6
|
+
payload = incoming.payload
|
7
|
+
# puts payload.fired_at
|
8
|
+
# puts payload.data.id
|
9
|
+
# puts payload.data.list_id
|
10
10
|
puts payload.data.email
|
11
|
-
puts payload.data.email_type
|
12
|
-
puts payload.data.merges.EMAIL
|
13
|
-
puts payload.data.merges.FNAME
|
14
|
-
puts payload.data.merges.LNAME
|
15
|
-
puts payload.data.merges.INTERESTS
|
16
|
-
puts payload.data.ip_opt
|
17
|
-
puts payload.data.ip_signup
|
11
|
+
# puts payload.data.email_type
|
12
|
+
# puts payload.data.merges.EMAIL
|
13
|
+
# puts payload.data.merges.FNAME
|
14
|
+
# puts payload.data.merges.LNAME
|
15
|
+
# puts payload.data.merges.INTERESTS
|
16
|
+
# puts payload.data.ip_opt
|
17
|
+
# puts payload.data.ip_signup
|
18
18
|
end
|
19
19
|
|
20
20
|
def on_unsubscribe(incoming)
|
21
|
-
payload = payload
|
22
|
-
puts payload.fired_at
|
23
|
-
puts payload.data.action
|
24
|
-
puts payload.data.reason
|
25
|
-
puts payload.data.id
|
26
|
-
puts payload.data.list_id
|
27
|
-
puts payload.data.email
|
28
|
-
puts payload.data.email_type
|
29
|
-
puts payload.data.merges.EMAIL
|
30
|
-
puts payload.data.merges.FNAME
|
31
|
-
puts payload.data.merges.LNAME
|
32
|
-
puts payload.data.merges.INTERESTS
|
33
|
-
puts payload.data.ip_opt
|
34
|
-
puts payload.data.campaign_id
|
21
|
+
payload = incoming.payload
|
22
|
+
# puts payload.fired_at
|
23
|
+
# puts payload.data.action
|
24
|
+
# puts payload.data.reason
|
25
|
+
# puts payload.data.id
|
26
|
+
# puts payload.data.list_id
|
27
|
+
# puts payload.data.email
|
28
|
+
# puts payload.data.email_type
|
29
|
+
# puts payload.data.merges.EMAIL
|
30
|
+
# puts payload.data.merges.FNAME
|
31
|
+
# puts payload.data.merges.LNAME
|
32
|
+
# puts payload.data.merges.INTERESTS
|
33
|
+
# puts payload.data.ip_opt
|
34
|
+
# puts payload.data.campaign_id
|
35
35
|
puts payload.data.reason
|
36
36
|
end
|
37
37
|
|
38
38
|
def on_profile(incoming)
|
39
|
-
payload = payload
|
39
|
+
payload = incoming.payload
|
40
40
|
puts payload.fired_at
|
41
|
-
puts payload.data.id
|
42
|
-
puts payload.data.list_id
|
43
|
-
puts payload.data.email
|
44
|
-
puts payload.data.email_type
|
45
|
-
puts payload.data.merges.EMAIL
|
46
|
-
puts payload.data.merges.FNAME
|
47
|
-
puts payload.data.merges.LNAME
|
48
|
-
puts payload.data.merges.INTERESTS
|
49
|
-
puts payload.data.ip_opt
|
41
|
+
# puts payload.data.id
|
42
|
+
# puts payload.data.list_id
|
43
|
+
# puts payload.data.email
|
44
|
+
# puts payload.data.email_type
|
45
|
+
# puts payload.data.merges.EMAIL
|
46
|
+
# puts payload.data.merges.FNAME
|
47
|
+
# puts payload.data.merges.LNAME
|
48
|
+
# puts payload.data.merges.INTERESTS
|
49
|
+
# puts payload.data.ip_opt
|
50
50
|
end
|
51
51
|
|
52
52
|
def on_upemail(incoming)
|
53
|
-
payload = payload
|
54
|
-
puts payload.fired_at
|
55
|
-
puts payload.data.list_id
|
56
|
-
puts payload.data.new_id
|
53
|
+
payload = incoming.payload
|
54
|
+
# puts payload.fired_at
|
55
|
+
# puts payload.data.list_id
|
56
|
+
# puts payload.data.new_id
|
57
57
|
puts payload.data.new_email
|
58
58
|
puts payload.data.old_email
|
59
59
|
end
|
60
60
|
|
61
61
|
def on_cleaned(incoming)
|
62
|
-
payload = payload
|
63
|
-
puts payload.fired_at
|
64
|
-
puts payload.data.list_id
|
62
|
+
payload = incoming.payload
|
63
|
+
# puts payload.fired_at
|
64
|
+
# puts payload.data.list_id
|
65
65
|
puts payload.data.campaign_id
|
66
|
-
puts payload.data.reason
|
67
|
-
puts payload.data.email
|
66
|
+
# puts payload.data.reason
|
67
|
+
# puts payload.data.email
|
68
68
|
end
|
69
69
|
|
70
70
|
def on_campaign(incoming)
|
71
|
-
payload = payload
|
72
|
-
puts payload.fired_at
|
73
|
-
puts payload.data.id
|
71
|
+
payload = incoming.payload
|
72
|
+
# puts payload.fired_at
|
73
|
+
# puts payload.data.id
|
74
74
|
puts payload.data.subject
|
75
|
-
puts payload.data.status
|
76
|
-
puts payload.data.reason
|
77
|
-
puts payload.data.list_id
|
75
|
+
# puts payload.data.status
|
76
|
+
# puts payload.data.reason
|
77
|
+
# puts payload.data.list_id
|
78
78
|
end
|
79
79
|
|
80
80
|
end
|
data/test/test_helper.rb
CHANGED
@@ -10,3 +10,9 @@ require File.expand_path('../../lib/webhookr-mailchimp.rb', __FILE__)
|
|
10
10
|
if RUBY_VERSION >= "1.9"
|
11
11
|
MiniTest::Reporters.use!(MiniTest::Reporters::SpecReporter.new)
|
12
12
|
end
|
13
|
+
|
14
|
+
puts "Webhookr #{Webhookr::VERSION}"
|
15
|
+
puts "Webhookr::Mailchimp #{Webhookr::Mailchimp::VERSION}"
|
16
|
+
puts "Rails #{Rails::VERSION::STRING}"
|
17
|
+
puts "Ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} - #{RbConfig::CONFIG['RUBY_INSTALL_NAME']}"
|
18
|
+
|
data/webhookr-mailchimp.gemspec
CHANGED
metadata
CHANGED
@@ -1,25 +1,25 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: webhookr-mailchimp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1
|
5
4
|
prerelease:
|
5
|
+
version: 0.1.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Gerry Power
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-07-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: webhookr
|
16
|
+
type: :runtime
|
16
17
|
requirement: !ruby/object:Gem::Requirement
|
17
18
|
none: false
|
18
19
|
requirements:
|
19
20
|
- - ! '>='
|
20
21
|
- !ruby/object:Gem::Version
|
21
22
|
version: '0'
|
22
|
-
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
none: false
|
@@ -29,18 +29,18 @@ dependencies:
|
|
29
29
|
version: '0'
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: activesupport
|
32
|
+
type: :runtime
|
32
33
|
requirement: !ruby/object:Gem::Requirement
|
33
34
|
none: false
|
34
35
|
requirements:
|
35
|
-
- -
|
36
|
+
- - ! '>='
|
36
37
|
- !ruby/object:Gem::Version
|
37
38
|
version: '3.1'
|
38
|
-
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
|
-
- -
|
43
|
+
- - ! '>='
|
44
44
|
- !ruby/object:Gem::Version
|
45
45
|
version: '3.1'
|
46
46
|
description: A webhookr extension to support Mailchimp webhooks.
|
@@ -51,6 +51,7 @@ extensions: []
|
|
51
51
|
extra_rdoc_files: []
|
52
52
|
files:
|
53
53
|
- .gitignore
|
54
|
+
- .travis.yml
|
54
55
|
- Gemfile
|
55
56
|
- Guardfile
|
56
57
|
- LICENSE.txt
|