any_sms-backend-aws 0.1.0 → 0.1.1
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/README.md +9 -2
- data/example/send.rb +2 -2
- data/lib/any_sms/backend/aws.rb +18 -3
- data/lib/any_sms/backend/aws/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bf86cb0b21991e0cec302537d019c38399003280
|
4
|
+
data.tar.gz: 47b22281f3743b2333ffb8c4f053f63512d3e44f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b7bdbce385ba879a4fb8b0ab20acc4507d8d7601f29572d388b6ef4de9be1157b57e51b2e2d11bf722f34fb757a3b2d13692078272473d6f72f8d7fd566562fa
|
7
|
+
data.tar.gz: d15dd26415ab2db4010832085818ed0945e1844e4b69763c23d7fa95bd572940ac3759d9e0798bc7b147c3d034a6caa6362d1adba548b6618f9a6e4a7b6ca0ff
|
data/README.md
CHANGED
@@ -46,16 +46,23 @@ AnySMS.configure do |c|
|
|
46
46
|
AnySMS::Backend::AWS,
|
47
47
|
access_key: ENV["AWS_ACCESS_KEY"],
|
48
48
|
secret_access_key: ENV["AWS_SECRET_ACCESS_KEY"],
|
49
|
-
region: ENV["AWS_REGION"] # Optional, default will be "us-east-1"
|
49
|
+
region: ENV["AWS_REGION"], # Optional, default will be "us-east-1"
|
50
|
+
default_sender_id: ENV["AWS_SNS_DEFAULT_SENDER_ID"] # Optional
|
50
51
|
)
|
51
52
|
|
52
53
|
c.default_backend = :my_aws_backend
|
53
54
|
end
|
54
55
|
```
|
56
|
+
|
55
57
|
This is an simple example configuration.
|
56
58
|
Before running application you should specify
|
57
|
-
`AWS_ACCESS_KEY`, `AWS_SECRET_ACCESS_KEY`
|
59
|
+
`AWS_ACCESS_KEY`, `AWS_SECRET_ACCESS_KEY`
|
58
60
|
environment variables.
|
61
|
+
Optionally you can specify `AWS_REGION`
|
62
|
+
and `AWS_SNS_DEFAULT_SENDER_ID` (sms sender as text instead of phone).
|
63
|
+
|
64
|
+
Keep in mind that `AWS_SNS_DEFAULT_SENDER_ID` is **changing ACCOUNT SETTINGS**,
|
65
|
+
and is NOT per request. In case you know how to set it per request - please open issue.
|
59
66
|
|
60
67
|
!!Make sure **you never commit credentials (secrets) to your repository**!!
|
61
68
|
|
data/example/send.rb
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
require "rubygems"
|
3
3
|
require "bundler/setup"
|
4
4
|
require "any_sms-backend-aws"
|
5
|
-
require "pry-byebug"
|
6
5
|
|
7
6
|
# Initializer code
|
8
7
|
AnySMS.configure do |c|
|
@@ -11,7 +10,8 @@ AnySMS.configure do |c|
|
|
11
10
|
AnySMS::Backend::AWS,
|
12
11
|
access_key: ENV["AWS_ACCESS_KEY"],
|
13
12
|
secret_access_key: ENV["AWS_SECRET_ACCESS_KEY"],
|
14
|
-
region: ENV["AWS_REGION"] # Optional, default will be "us-east-1"
|
13
|
+
region: ENV["AWS_REGION"], # Optional, default will be "us-east-1"
|
14
|
+
default_sender_id: ENV["AWS_SNS_DEFAULT_SENDER_ID"]
|
15
15
|
)
|
16
16
|
|
17
17
|
c.default_backend = :my_aws_backend
|
data/lib/any_sms/backend/aws.rb
CHANGED
@@ -10,10 +10,13 @@ class AnySMS::Backend::AWS < AnySMS::Backend::Base
|
|
10
10
|
# @param access_key [String] AWS access key
|
11
11
|
# @param secret_access_key [String] AWS secret access key
|
12
12
|
# @param region [String] AWS region. Full list: https://goo.gl/Ys5XMi
|
13
|
-
|
13
|
+
# @param default_sender_id [String] Default SenderID, !CHANGES account settings!
|
14
|
+
def initialize(access_key:, secret_access_key:, region: "us-east-1",
|
15
|
+
default_sender_id: nil)
|
14
16
|
@access_key = access_key
|
15
17
|
@secret_access_key = secret_access_key
|
16
18
|
@region = region
|
19
|
+
@default_sender_id = default_sender_id
|
17
20
|
end
|
18
21
|
|
19
22
|
# Sends sms using amazon web services
|
@@ -35,10 +38,22 @@ class AnySMS::Backend::AWS < AnySMS::Backend::Base
|
|
35
38
|
protected
|
36
39
|
|
37
40
|
def sns_client
|
38
|
-
|
41
|
+
@client ||= begin
|
42
|
+
client = Aws::SNS::Client.new(sns_options)
|
43
|
+
|
44
|
+
unless @default_sender_id.nil?
|
45
|
+
client.set_sms_attributes(attributes: { "DefaultSenderID" => @default_sender_id })
|
46
|
+
end
|
47
|
+
|
48
|
+
client
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
def sns_options
|
53
|
+
{
|
39
54
|
access_key_id: @access_key,
|
40
55
|
secret_access_key: @secret_access_key,
|
41
56
|
region: @region
|
42
|
-
|
57
|
+
}
|
43
58
|
end
|
44
59
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: any_sms-backend-aws
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fedcomp
|
@@ -218,7 +218,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
218
218
|
version: '0'
|
219
219
|
requirements: []
|
220
220
|
rubyforge_project:
|
221
|
-
rubygems_version: 2.6.
|
221
|
+
rubygems_version: 2.6.14
|
222
222
|
signing_key:
|
223
223
|
specification_version: 4
|
224
224
|
summary: AnySMS backend for using amazon web services sms delivery
|