messagebus_ruby_api 1.0.1 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +18 -9
- data/lib/messagebus_ruby_api/errors.rb +11 -5
- data/lib/messagebus_ruby_api/messagebus.rb +44 -25
- data/lib/messagebus_ruby_api/version.rb +11 -5
- data/lib/messagebus_ruby_api.rb +11 -5
- data/spec/messagebus_ruby_api/messagebus_spec.rb +65 -25
- data/spec/spec_core_extensions.rb +11 -5
- data/spec/spec_helper.rb +10 -4
- metadata +5 -5
data/README.rdoc
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
=
|
1
|
+
= Message Bus Ruby API
|
2
2
|
|
3
3
|
== Installation
|
4
4
|
|
@@ -24,8 +24,8 @@
|
|
24
24
|
:fromName => 'API',
|
25
25
|
:subject => 'Unit Test Message',
|
26
26
|
:customHeaders => ["sender"=>"apitest1@messagebus.com"],
|
27
|
-
:plaintextBody => 'This message is only a test sent by the Ruby
|
28
|
-
:htmlBody => "<html><body>This message is only a test sent by the Ruby
|
27
|
+
:plaintextBody => 'This message is only a test sent by the Ruby Message Bus client library.',
|
28
|
+
:htmlBody => "<html><body>This message is only a test sent by the Ruby Message Bus client library.</body></html>",
|
29
29
|
:tags => ['RUBY']
|
30
30
|
}
|
31
31
|
|
@@ -53,13 +53,22 @@
|
|
53
53
|
|
54
54
|
http://curl.haxx.se/ca/cacert.pem
|
55
55
|
|
56
|
-
== Older Versions
|
57
|
-
|
58
|
-
If you are using the old api with the text OK:<UUID> responses, please be sure to get the 'v1' branch
|
59
|
-
If you are using the old api with the 'body' parameter (instead of the new 'plaintextBody' and 'htmlBody' parameters), please be sure to get the 'v0' branch
|
60
|
-
|
61
56
|
== Tests
|
62
57
|
To run the tests, issue the following command from the root of the project:
|
63
58
|
bundle exec rspec spec/messagebus_ruby_api/client_spec.rb
|
59
|
+
|
60
|
+
== License
|
61
|
+
Copyright 2012 Mail Bypass, Inc.
|
62
|
+
|
63
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
|
64
|
+
except in compliance with the License. You may obtain a copy of the License at
|
65
|
+
|
66
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
67
|
+
|
68
|
+
Unless required by applicable law or agreed to in writing, software distributed under the
|
69
|
+
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
70
|
+
either express or implied. See the License for the specific language governing permissions
|
71
|
+
and limitations under the License.
|
72
|
+
|
64
73
|
== More info
|
65
|
-
Contact
|
74
|
+
Contact Message Bus if you have questions or problems (https://www.messagebus.com/contact)
|
@@ -1,10 +1,16 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
module MessagebusApi
|
10
16
|
|
@@ -28,4 +34,4 @@ module MessagebusApi
|
|
28
34
|
end
|
29
35
|
end
|
30
36
|
|
31
|
-
end
|
37
|
+
end
|
@@ -1,14 +1,19 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
module MessagebusApi
|
10
16
|
DEFAULT_API_ENDPOINT_STRING = 'https://api.messagebus.com'
|
11
|
-
|
12
17
|
class Messagebus
|
13
18
|
TEMPLATE = 'template'
|
14
19
|
EMAIL= 'email'
|
@@ -17,8 +22,7 @@ module MessagebusApi
|
|
17
22
|
|
18
23
|
def initialize(api_key)
|
19
24
|
@api_key = api_key
|
20
|
-
|
21
|
-
@http = http_connection(DEFAULT_API_ENDPOINT_STRING)
|
25
|
+
init_http_connection
|
22
26
|
@user_agent = "MessagebusAPI:#{MessagebusApi::VERSION}-Ruby:#{RUBY_VERSION}"
|
23
27
|
|
24
28
|
@msg_buffer_size = 20
|
@@ -78,6 +82,9 @@ module MessagebusApi
|
|
78
82
|
end
|
79
83
|
|
80
84
|
json = json_message_from_list(@msg_buffer)
|
85
|
+
if (@last_init_time < Time.now.utc - 60)
|
86
|
+
init_http_connection
|
87
|
+
end
|
81
88
|
@results=make_api_post_call(endpoint, json)
|
82
89
|
@msg_buffer.clear
|
83
90
|
@msg_buffer_flushed = true
|
@@ -108,25 +115,19 @@ module MessagebusApi
|
|
108
115
|
end
|
109
116
|
|
110
117
|
def unsubscribes(start_date = '', end_date = '')
|
111
|
-
end_date = set_date(end_date, 0)
|
112
|
-
start_date = set_date(start_date, 7)
|
113
118
|
path = "#{@rest_endpoints[:unsubscribes]}?#{date_range(start_date, end_date)}"
|
114
119
|
@results = make_api_get_call(path)
|
115
120
|
@results
|
116
121
|
end
|
117
122
|
|
118
|
-
def delivery_errors(start_date = '', end_date = '')
|
119
|
-
|
120
|
-
start_date = set_date(start_date, 1)
|
121
|
-
path = "#{@rest_endpoints[:delivery_errors]}?#{date_range(start_date, end_date)}"
|
123
|
+
def delivery_errors(start_date = '', end_date = '', tag='')
|
124
|
+
path = "#{@rest_endpoints[:delivery_errors]}?#{date_range(start_date, end_date)}&tag=#{URI.escape(tag)}"
|
122
125
|
@results = make_api_get_call(path)
|
123
126
|
@results
|
124
127
|
end
|
125
128
|
|
126
129
|
def stats(start_date = '', end_date = '', tag = '')
|
127
|
-
|
128
|
-
start_date = set_date(start_date, 30)
|
129
|
-
path = "#{@rest_endpoints[:stats]}?#{date_range(start_date, end_date)}&tag=#{tag}"
|
130
|
+
path = "#{@rest_endpoints[:stats]}?#{date_range(start_date, end_date)}&tag=#{URI.escape(tag)}"
|
130
131
|
@results = make_api_get_call(path)
|
131
132
|
@results
|
132
133
|
end
|
@@ -139,13 +140,21 @@ module MessagebusApi
|
|
139
140
|
@http.ca_file = File.join(cert_file)
|
140
141
|
end
|
141
142
|
|
143
|
+
def format_iso_time(time)
|
144
|
+
time.strftime("%Y-%m-%dT%H:%M:%SZ")
|
145
|
+
end
|
146
|
+
|
142
147
|
private
|
143
148
|
|
144
|
-
def
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
+
def init_http_connection(target_server=DEFAULT_API_ENDPOINT_STRING)
|
150
|
+
if (@http and @http.started?)
|
151
|
+
@http.finish
|
152
|
+
end
|
153
|
+
@last_init_time = Time.now.utc
|
154
|
+
endpoint_url = URI.parse(target_server)
|
155
|
+
@http = Net::HTTP.new(endpoint_url.host, endpoint_url.port)
|
156
|
+
@http.use_ssl = true
|
157
|
+
@http
|
149
158
|
end
|
150
159
|
|
151
160
|
def common_http_headers
|
@@ -168,7 +177,17 @@ module MessagebusApi
|
|
168
177
|
end
|
169
178
|
|
170
179
|
def date_range(start_date, end_date)
|
171
|
-
"
|
180
|
+
date_range_str=""
|
181
|
+
if (start_date!="")
|
182
|
+
date_range_str+="startDate=#{start_date}"
|
183
|
+
end
|
184
|
+
if (end_date!="")
|
185
|
+
if (date_range_str!="")
|
186
|
+
date_range_str+="&"
|
187
|
+
end
|
188
|
+
date_range_str+="endDate=#{end_date}"
|
189
|
+
end
|
190
|
+
date_range_str
|
172
191
|
end
|
173
192
|
|
174
193
|
def set_date(date_string, days_ago)
|
@@ -179,7 +198,7 @@ module MessagebusApi
|
|
179
198
|
end
|
180
199
|
|
181
200
|
def date_str_for_time_range(days_ago)
|
182
|
-
(Time.now.utc - (days_ago*86400))
|
201
|
+
format_iso_time(Time.now.utc - (days_ago*86400))
|
183
202
|
end
|
184
203
|
|
185
204
|
def json_message_from_list(messages)
|
@@ -289,7 +308,7 @@ module MessagebusApi
|
|
289
308
|
:plaintextBody => '',
|
290
309
|
:htmlBody => '',
|
291
310
|
:customHeaders => {},
|
292
|
-
:tags => []
|
311
|
+
:tags => []}
|
293
312
|
end
|
294
313
|
|
295
314
|
def base_template_params
|
@@ -297,7 +316,7 @@ module MessagebusApi
|
|
297
316
|
:toName => '',
|
298
317
|
:templateKey => '',
|
299
318
|
:mergeFields => {},
|
300
|
-
:customHeaders => {}
|
319
|
+
:customHeaders => {}}
|
301
320
|
end
|
302
321
|
|
303
322
|
end
|
@@ -1,11 +1,17 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
module MessagebusApi
|
10
|
-
VERSION = "1.0.
|
16
|
+
VERSION = "1.0.3"
|
11
17
|
end
|
data/lib/messagebus_ruby_api.rb
CHANGED
@@ -1,10 +1,16 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
dir = File.dirname(__FILE__)
|
10
16
|
|
@@ -14,4 +20,4 @@ require 'cgi'
|
|
14
20
|
|
15
21
|
require "#{dir}/messagebus_ruby_api/errors"
|
16
22
|
require "#{dir}/messagebus_ruby_api/messagebus"
|
17
|
-
require "#{dir}/messagebus_ruby_api/version"
|
23
|
+
require "#{dir}/messagebus_ruby_api/version"
|
@@ -1,36 +1,46 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
dir = File.dirname(__FILE__)
|
10
16
|
require "#{dir}/../spec_helper"
|
11
17
|
|
18
|
+
class MessagebusTest < MessagebusApi::Messagebus
|
19
|
+
attr_accessor :last_init_time
|
20
|
+
end
|
21
|
+
|
12
22
|
describe MessagebusApi::Messagebus do
|
13
23
|
attr_reader :client, :api_key, :required_params
|
14
24
|
|
15
25
|
def default_message_params
|
16
|
-
{
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
26
|
+
{:toEmail => 'apitest1@messagebus.com',
|
27
|
+
:toName => 'EmailUser',
|
28
|
+
:fromEmail => 'api@messagebus.com',
|
29
|
+
:fromName => 'API',
|
30
|
+
:subject => 'Unit Test Message',
|
31
|
+
:customHeaders => ["sender"=>"apitest1@messagebus.com"],
|
32
|
+
:plaintextBody => 'This message is only a test sent by the Ruby Message Bus client library.',
|
33
|
+
:htmlBody => "<html><body>This message is only a test sent by the Ruby Message Bus client library.</body></html>",
|
34
|
+
:tags => ['RUBY', 'Unit Test Ruby']
|
25
35
|
}
|
26
36
|
end
|
27
37
|
|
28
38
|
def default_template_message_params
|
29
|
-
{
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
39
|
+
{:toEmail => 'apitest1@messagebus.com',
|
40
|
+
:toName => 'John Smith',
|
41
|
+
:templateKey => '66f6181bcb4cff4cd38fbc804a036db6',
|
42
|
+
:customHeaders => ["reply-to"=>"apitest1@messagebus.com"],
|
43
|
+
:mergeFields => ["%NAME%" => "John"]
|
34
44
|
}
|
35
45
|
end
|
36
46
|
|
@@ -39,7 +49,7 @@ describe MessagebusApi::Messagebus do
|
|
39
49
|
num_result.times do
|
40
50
|
list << @success_message
|
41
51
|
end
|
42
|
-
|
52
|
+
|
43
53
|
success_result = {
|
44
54
|
"statusMessage" => "OK",
|
45
55
|
"successCount" => num_result,
|
@@ -51,21 +61,21 @@ describe MessagebusApi::Messagebus do
|
|
51
61
|
|
52
62
|
def create_results_array
|
53
63
|
results = {
|
54
|
-
|
55
|
-
|
64
|
+
"statusMessage" => "OK",
|
65
|
+
"results" => []
|
56
66
|
}
|
57
67
|
results
|
58
68
|
end
|
59
69
|
|
60
70
|
def json_parse(data)
|
61
|
-
|
71
|
+
JSON.parse(data, :symbolize_names => true)
|
62
72
|
end
|
63
73
|
|
64
74
|
before do
|
65
75
|
FakeWeb.allow_net_connect = false
|
66
76
|
|
67
77
|
@api_key = "7215ee9c7d9dc229d2921a40e899ec5f"
|
68
|
-
@client =
|
78
|
+
@client = MessagebusTest.new(@api_key)
|
69
79
|
@success_message={
|
70
80
|
"status" => 200,
|
71
81
|
"messageId" => "abcdefghijklmnopqrstuvwxyz012345"
|
@@ -159,6 +169,29 @@ describe MessagebusApi::Messagebus do
|
|
159
169
|
client.flushed?.should be_true
|
160
170
|
client.results[:results].size.should == message_count
|
161
171
|
end
|
172
|
+
|
173
|
+
it "doesnt reset connection if under a minute old" do
|
174
|
+
current_init_time=client.last_init_time
|
175
|
+
current_init_time.should be > Time.now.utc-5
|
176
|
+
FakeWeb.register_uri(:post, "https://api.messagebus.com/api/v3/emails/send", :body => create_success_result(1).to_json)
|
177
|
+
client.add_message(default_message_params)
|
178
|
+
client.flush
|
179
|
+
client.flushed?.should be_true
|
180
|
+
client.results[:results].size.should == 1
|
181
|
+
client.last_init_time.should == current_init_time
|
182
|
+
end
|
183
|
+
|
184
|
+
it "resets connection if over a minute old" do
|
185
|
+
client.last_init_time=Time.now.utc-60
|
186
|
+
current_init_time=client.last_init_time
|
187
|
+
current_init_time.should be < Time.now.utc-59
|
188
|
+
FakeWeb.register_uri(:post, "https://api.messagebus.com/api/v3/emails/send", :body => create_success_result(1).to_json)
|
189
|
+
client.add_message(default_message_params)
|
190
|
+
client.flush
|
191
|
+
client.flushed?.should be_true
|
192
|
+
client.results[:results].size.should == 1
|
193
|
+
client.last_init_time.should be > current_init_time
|
194
|
+
end
|
162
195
|
end
|
163
196
|
|
164
197
|
describe "#message_buffer_size=" do
|
@@ -192,7 +225,7 @@ describe MessagebusApi::Messagebus do
|
|
192
225
|
start_date_str="2011-01-01"
|
193
226
|
end_date_str="2011-01-02"
|
194
227
|
|
195
|
-
FakeWeb.register_uri(:get, "https://api.messagebus.com/api/v3/delivery_errors?startDate=#{start_date_str}&endDate=#{end_date_str}", :body => json_delivery_errors)
|
228
|
+
FakeWeb.register_uri(:get, "https://api.messagebus.com/api/v3/delivery_errors?startDate=#{start_date_str}&endDate=#{end_date_str}&tag=", :body => json_delivery_errors)
|
196
229
|
expect do
|
197
230
|
response = client.delivery_errors(start_date_str, end_date_str)
|
198
231
|
FakeWeb.last_request.body.should be_nil
|
@@ -269,7 +302,7 @@ describe MessagebusApi::Messagebus do
|
|
269
302
|
|
270
303
|
FakeWeb.register_uri(:post, expected_request, :body => json_mailing_list_create)
|
271
304
|
expect do
|
272
|
-
response = client.create_mailing_lists("Test List", ["%EMAIL%","%SOME_TOKEN%"])
|
305
|
+
response = client.create_mailing_lists("Test List", ["%EMAIL%", "%SOME_TOKEN%"])
|
273
306
|
response.should == json_parse(json_mailing_list_create)
|
274
307
|
end.should_not raise_error
|
275
308
|
end
|
@@ -290,5 +323,12 @@ describe MessagebusApi::Messagebus do
|
|
290
323
|
end
|
291
324
|
end
|
292
325
|
|
326
|
+
describe "#format_iso_time" do
|
327
|
+
it "formats ISO time in format YYYY-MM-DDTHH:mm:ssZ" do
|
328
|
+
client.format_iso_time(Time.now).should =~ /2\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\dZ/
|
329
|
+
end
|
330
|
+
end
|
331
|
+
|
332
|
+
|
293
333
|
end
|
294
334
|
|
@@ -1,13 +1,19 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
class Hash
|
10
16
|
def without(key)
|
11
17
|
self.dup.tap{|hash| hash.delete(key)}
|
12
18
|
end
|
13
|
-
end
|
19
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,10 +1,16 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2012 Mail Bypass, Inc.
|
2
2
|
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
4
|
+
# not use this file except in compliance with the License. You may obtain
|
5
|
+
# a copy of the License at
|
4
6
|
#
|
5
|
-
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
6
8
|
#
|
7
|
-
# Unless required by applicable law or agreed to in writing, software
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
11
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
12
|
+
# License for the specific language governing permissions and limitations
|
13
|
+
# under the License.
|
8
14
|
|
9
15
|
dir = File.dirname(__FILE__)
|
10
16
|
|
metadata
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: messagebus_ruby_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
-
|
8
|
+
- Message Bus dev team
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2012-01-20 00:00:00.000000000Z
|
13
13
|
dependencies: []
|
14
|
-
description: ! 'Allows you to use the
|
14
|
+
description: ! 'Allows you to use the Message Bus API '
|
15
15
|
email:
|
16
16
|
- messagebus@googlegroups.com
|
17
17
|
executables: []
|
@@ -54,7 +54,7 @@ rubyforge_project: messagebus_ruby_api
|
|
54
54
|
rubygems_version: 1.8.10
|
55
55
|
signing_key:
|
56
56
|
specification_version: 3
|
57
|
-
summary: Send email through
|
57
|
+
summary: Send email through the Message Bus service
|
58
58
|
test_files:
|
59
59
|
- spec/messagebus_ruby_api/cacert.pem
|
60
60
|
- spec/messagebus_ruby_api/messagebus_spec.rb
|