emailvision 2.1.1 → 2.1.2
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/lib/emailvision.rb +1 -0
- data/lib/emailvision/notification.rb +37 -0
- data/lib/emailvision/tools.rb +8 -10
- metadata +6 -5
data/lib/emailvision.rb
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
module Emailvision
|
2
|
+
class Notification
|
3
|
+
include HTTParty
|
4
|
+
default_timeout 30
|
5
|
+
format :xml
|
6
|
+
headers 'Content-Type' => 'application/xml;charset=utf-8', 'encoding' => 'UTF-8', 'Accept' => '*/*'
|
7
|
+
|
8
|
+
def send(body)
|
9
|
+
# == Processing body ==
|
10
|
+
body_xml = Emailvision::Tools.to_xml_as_is body
|
11
|
+
|
12
|
+
# == Send request ==
|
13
|
+
logger.send "#{base_uri} with body : #{body_xml}"
|
14
|
+
response = self.class.send :post, base_uri, :body => body_xml
|
15
|
+
logger.receive "#{base_uri} with status : #{response.header.inspect}"
|
16
|
+
|
17
|
+
# == Check result ==
|
18
|
+
response.header.code == '200'
|
19
|
+
end
|
20
|
+
|
21
|
+
# Base uri
|
22
|
+
def base_uri
|
23
|
+
'http://api.notificationmessaging.com/NMSXML'
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def logger
|
29
|
+
if @logger.nil?
|
30
|
+
@logger = Emailvision::Logger.new(STDOUT)
|
31
|
+
@logger.level = Logger::DEBUG
|
32
|
+
end
|
33
|
+
@logger
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
data/lib/emailvision/tools.rb
CHANGED
@@ -34,24 +34,22 @@ module Emailvision
|
|
34
34
|
def self.tag_obj(xml, obj)
|
35
35
|
if obj.is_a? Hash
|
36
36
|
obj.each do |key, value|
|
37
|
-
if value.is_a?(Hash)
|
38
|
-
eval
|
37
|
+
if value.is_a?(Hash)
|
38
|
+
eval(%{
|
39
39
|
xml.#{key} do
|
40
|
-
tag_obj
|
40
|
+
tag_obj(xml, value)
|
41
41
|
end
|
42
|
-
|
42
|
+
})
|
43
43
|
elsif value.is_a?(Array)
|
44
44
|
value.each do |item|
|
45
|
-
eval
|
45
|
+
eval(%{
|
46
46
|
xml.#{key} do
|
47
|
-
tag_obj
|
47
|
+
tag_obj(xml, item)
|
48
48
|
end
|
49
|
-
|
49
|
+
})
|
50
50
|
end
|
51
51
|
else
|
52
|
-
eval
|
53
|
-
xml.#{key} '#{value}'
|
54
|
-
EOS
|
52
|
+
eval %{xml.#{key}(%{#{value}})}
|
55
53
|
end
|
56
54
|
end
|
57
55
|
else
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: emailvision
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.
|
4
|
+
version: 2.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-09-26 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
16
|
-
requirement: &
|
16
|
+
requirement: &2155021500 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.8.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2155021500
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: crack
|
27
|
-
requirement: &
|
27
|
+
requirement: &2155021000 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: 0.3.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2155021000
|
36
36
|
description: REST API wrapper interacting with Emailvision
|
37
37
|
email: basgys@gmail.com
|
38
38
|
executables: []
|
@@ -42,6 +42,7 @@ files:
|
|
42
42
|
- lib/emailvision/api.rb
|
43
43
|
- lib/emailvision/exception.rb
|
44
44
|
- lib/emailvision/logger.rb
|
45
|
+
- lib/emailvision/notification.rb
|
45
46
|
- lib/emailvision/railtie.rb
|
46
47
|
- lib/emailvision/relation.rb
|
47
48
|
- lib/emailvision/tools.rb
|