actionmessage 0.0.2 → 0.0.3
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 +4 -4
- data/.gitignore +1 -0
- data/README.md +13 -15
- data/actionmessage.gemspec +2 -0
- data/lib/action_message/adapters.rb +1 -1
- data/lib/action_message/adapters/base.rb +1 -1
- data/lib/action_message/adapters/test.rb +2 -8
- data/lib/action_message/adapters/twilio.rb +0 -1
- data/lib/action_message/base.rb +9 -22
- data/lib/action_message/message.rb +5 -3
- data/lib/action_message/message_delivery.rb +1 -1
- data/lib/action_message/railtie.rb +0 -1
- data/lib/action_message/version.rb +1 -1
- metadata +30 -4
- data/app/messages/merchant_message.rb +0 -8
- data/app/views/merchant_message/send_welcome_sms.text.erb +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6a20899cfb228e2de0504bf9ecee99c606fdd2e7
|
4
|
+
data.tar.gz: fc4096a29713a90392fecf6a9c3f287f58ee4494
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c56cb488263cc97197279f195278577fbc416d1df8b29b5b01b186ebcf24a50688d546bb6ec1c24379c6f0ba4326d98514f681e8d14af97c7366cf6f74fa73d3
|
7
|
+
data.tar.gz: 9c2d038de96a0386a1aa12f41d3115399674a9533242cc7b5248349b44e670c623f425a7987da381c473205ea6ee21c66c08719e412786f33f1c95b90cc9ee7b
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -1,23 +1,23 @@
|
|
1
1
|
# ActionMessage
|
2
2
|
|
3
|
-
|
3
|
+
ActionMessage is heavily-inspired on ActionMailer.
|
4
|
+
It's a gem for sending SMS/Text messages like we do for sending e-mails on ActionMailer.
|
4
5
|
Pull requests are more than welcome!
|
5
6
|
|
7
|
+
[](https://badge.fury.io/rb/actionmessage)
|
8
|
+
[](https://travis-ci.org/dballona/actionmessage)
|
9
|
+
[](https://codecov.io/gh/dballona/actionmessage)
|
10
|
+
[](https://codeclimate.com/github/dballona/actionmessage)
|
11
|
+
|
6
12
|
## Usage
|
7
13
|
|
8
|
-
Install it using bundler
|
14
|
+
Install it using bundler:
|
9
15
|
|
10
|
-
```
|
16
|
+
```ruby
|
11
17
|
# Gemfile
|
12
18
|
gem 'actionmessage'
|
13
19
|
```
|
14
20
|
|
15
|
-
or just require it:
|
16
|
-
```sh
|
17
|
-
gem install actionmessage
|
18
|
-
require 'action_message'
|
19
|
-
```
|
20
|
-
|
21
21
|
If you're using Rails, place this on your environment file or application.rb
|
22
22
|
```ruby
|
23
23
|
require 'action_message/railtie'
|
@@ -46,15 +46,13 @@ end
|
|
46
46
|
|
47
47
|
Define your views under your view path, such as: app/views/merchant_message/send_welcome_sms.text.erb
|
48
48
|
```html
|
49
|
-
Welcome, <%= @name
|
49
|
+
Welcome, <%= @name %>!
|
50
50
|
```
|
51
51
|
|
52
|
-
|
52
|
+
Pending implementations:
|
53
53
|
|
54
|
-
- Add tests to what we've got already;
|
55
54
|
- Add background processing (deliver_later);
|
56
55
|
- Log instrumentation with ActiveSupport;
|
57
56
|
- Add generators;
|
58
|
-
- Add
|
59
|
-
- Add
|
60
|
-
- Add more adapters;
|
57
|
+
- Add test helpers for deliveries count, matching message.body, message.to, etc;
|
58
|
+
- Add more adapters such as Plivo;
|
data/actionmessage.gemspec
CHANGED
@@ -26,4 +26,6 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_development_dependency 'bundler', '~> 1.11'
|
27
27
|
spec.add_development_dependency 'rake', '~> 10.0'
|
28
28
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
29
|
+
spec.add_development_dependency 'webmock', '~> 2.1.0'
|
30
|
+
spec.add_development_dependency 'codecov', '~> 0.1.5'
|
29
31
|
end
|
@@ -5,15 +5,9 @@ module ActionMessage
|
|
5
5
|
super(params)
|
6
6
|
end
|
7
7
|
|
8
|
-
def client
|
9
|
-
@client ||= OpenStruct.new
|
10
|
-
end
|
11
|
-
|
12
8
|
def send_message(body, params={})
|
13
|
-
|
14
|
-
|
15
|
-
@to = params[:to]
|
16
|
-
puts "Sending message to #{@to}"
|
9
|
+
super(body, params)
|
10
|
+
puts "Sending message to #{params[:to]}"
|
17
11
|
end
|
18
12
|
end
|
19
13
|
end
|
data/lib/action_message/base.rb
CHANGED
@@ -19,32 +19,23 @@ module ActionMessage
|
|
19
19
|
adapter: {
|
20
20
|
name: :test,
|
21
21
|
credentials: {}
|
22
|
-
}
|
23
|
-
mime_version: "1.0",
|
24
|
-
charset: "UTF-8"
|
22
|
+
}
|
25
23
|
}
|
26
24
|
|
27
25
|
# Sets the defaults through app configuration:
|
28
|
-
#
|
29
|
-
# config.action_message.default(from: "+11231231234")
|
26
|
+
# config.action_message.default(from: "+11231231234")
|
30
27
|
#
|
31
28
|
# Aliased by ::default_options=
|
29
|
+
#
|
32
30
|
def default(value = nil)
|
33
31
|
self.default_params = default_params.merge(value).freeze if value
|
34
32
|
default_params
|
35
33
|
end
|
36
34
|
# Allows to set defaults through app configuration:
|
35
|
+
# config.action_message = { charset: 'ISO-8859-1' }
|
37
36
|
#
|
38
|
-
# config.action_mailer.default_options = { from: "no-reply@example.org" }
|
39
37
|
alias :default_options= :default
|
40
38
|
|
41
|
-
def mailer_name
|
42
|
-
@mailer_name ||= anonymous? ? 'anonymous' : name.underscore
|
43
|
-
end
|
44
|
-
# Allows to set the name of current mailer.
|
45
|
-
attr_writer :mailer_name
|
46
|
-
alias :controller_path :mailer_name
|
47
|
-
|
48
39
|
def base_paths
|
49
40
|
%w(
|
50
41
|
app/views
|
@@ -57,11 +48,7 @@ module ActionMessage
|
|
57
48
|
|
58
49
|
protected
|
59
50
|
def method_missing(method_name, *args) # :nodoc:
|
60
|
-
|
61
|
-
MessageDelivery.new(self, method_name, *args)
|
62
|
-
else
|
63
|
-
super
|
64
|
-
end
|
51
|
+
MessageDelivery.new(self, method_name, *args) rescue super
|
65
52
|
end
|
66
53
|
end
|
67
54
|
|
@@ -69,19 +56,19 @@ module ActionMessage
|
|
69
56
|
attr_accessor :template_name
|
70
57
|
|
71
58
|
def initialize
|
72
|
-
super
|
59
|
+
super
|
73
60
|
@_message_was_called = false
|
74
61
|
@_message = Message.new
|
75
62
|
end
|
76
63
|
|
77
64
|
def sms(params = {}, &block)
|
78
|
-
|
65
|
+
raise ArgumentError, 'You need to provide at least a receipient' if params[:to].blank?
|
66
|
+
return message if @_message_was_called && !block
|
79
67
|
|
80
68
|
@_message_was_called = true
|
81
69
|
|
82
|
-
lookup_context.view_paths = self.class.base_paths
|
70
|
+
lookup_context.view_paths = (lookup_context.view_paths.to_a + self.class.base_paths).uniq
|
83
71
|
|
84
|
-
message.headers = self.class.default_params.slice(:charset, :mime_version)
|
85
72
|
message.to = params[:to]
|
86
73
|
message.debug = params[:debug]
|
87
74
|
message.body = render(template_name)
|
@@ -2,7 +2,7 @@ module ActionMessage
|
|
2
2
|
include ActionMessage::Adapters
|
3
3
|
|
4
4
|
class Message
|
5
|
-
attr_accessor :
|
5
|
+
attr_accessor :action, :args, :body, :to, :debug
|
6
6
|
attr_reader :adapter
|
7
7
|
|
8
8
|
def initialize
|
@@ -14,8 +14,10 @@ module ActionMessage
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def deliver
|
17
|
-
|
18
|
-
|
17
|
+
unless debug?
|
18
|
+
# add logger 'Sendimg message from "number" to "number"'
|
19
|
+
adapter.send_message(body, to: to)
|
20
|
+
end
|
19
21
|
end
|
20
22
|
end
|
21
23
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionmessage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Diego Ballona
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-09-
|
11
|
+
date: 2016-09-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: actionpack
|
@@ -94,6 +94,34 @@ dependencies:
|
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '3.0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: webmock
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 2.1.0
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 2.1.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: codecov
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.1.5
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 0.1.5
|
97
125
|
description: ActionMailer heavily-inspired gem to handle SMS/Text Messages
|
98
126
|
email:
|
99
127
|
- root@dballona.com
|
@@ -109,8 +137,6 @@ files:
|
|
109
137
|
- README.md
|
110
138
|
- Rakefile
|
111
139
|
- actionmessage.gemspec
|
112
|
-
- app/messages/merchant_message.rb
|
113
|
-
- app/views/merchant_message/send_welcome_sms.text.erb
|
114
140
|
- bin/console
|
115
141
|
- bin/setup
|
116
142
|
- lib/action_message.rb
|
@@ -1 +0,0 @@
|
|
1
|
-
Yeah <%= @name %>!!!
|