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 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