any_sms-backend-aws 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7be15446e0d2c5cd620753c22b01227b1f646281
4
- data.tar.gz: 0c79db1f3be2aea33bb3503221c649743790e1f2
3
+ metadata.gz: bf86cb0b21991e0cec302537d019c38399003280
4
+ data.tar.gz: 47b22281f3743b2333ffb8c4f053f63512d3e44f
5
5
  SHA512:
6
- metadata.gz: 23c6c528880ced47660d8d65352a9e2ea1b6fc1c5bf24034b2de2551c069dfa007c5307f241acbab4d30fdc5ee92af4ae760b2f71dfd39585e902a79190e62ab
7
- data.tar.gz: 7743768d506202aa0079b486e7a40545ce1940a6efd5796c8930cc0bfc9447103dbae5eae3c58f804de4ef4a2041f08e6b1c97a0ec22124d202d38d355e85936
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` and `AWS_REGION`
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
 
@@ -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
@@ -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
- def initialize(access_key:, secret_access_key:, region: "us-east-1")
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
- Aws::SNS::Client.new(
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
@@ -1,5 +1,5 @@
1
1
  module AnySMS
2
2
  module Backend
3
- AWS_VERSION = "0.1.0".freeze
3
+ AWS_VERSION = "0.1.1".freeze
4
4
  end
5
5
  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.0
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.8
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