action_notifier 0.1.0 → 0.1.1.rc.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: af19d521073aeab2c5dea5e17414c7fdd9eeed9b
4
- data.tar.gz: c733f3726e5c8d68ebb9932bb4b5a9569c02041c
3
+ metadata.gz: 216eb56c96d8a01eb24630b8fdd9b16e16978dfb
4
+ data.tar.gz: 50d9531861ccc93cc300791b4797a19a4b50c508
5
5
  SHA512:
6
- metadata.gz: e98eeeb295ac3e624ee27d3f8f987039bef7ca6f5cf7d9c2755d6b9241a7bcb29dde720f49b9f006390e9d999c4ca600498eb1caa1c451c575b3245c2c2c79c7
7
- data.tar.gz: 460db4a0917fa92e0fd3b2152832ca7be26f280c24c7b14a62acbe22a4975981efda9ab984737fe0b25610b96d480b4c412327ebce6ad63d9b7312837d70bbef
6
+ metadata.gz: 0a1a8a63197767b8a578b0e6eb0d22976db774381e23bc1652d2ee522eeb25f01ecdef26ba368c9095104e52a4f9a15b6926520273d6a24719daf3d0d8ced6ac
7
+ data.tar.gz: d8798b55b42f11d8c25dc45be891b4f44d59f65a345b24f0b2f5099cad2aead221d344c3b1489a6241e05ecf6492c566192ff96b1242eb9b283966eb97e2b494
data/.gitignore CHANGED
@@ -7,3 +7,4 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+ *.gem
@@ -26,4 +26,5 @@ Gem::Specification.new do |spec|
26
26
  spec.add_dependency "actionpack", ">= 5.0"
27
27
  spec.add_dependency "httparty"
28
28
  spec.add_dependency "slack-notifier"
29
+ spec.add_dependency "fcm"
29
30
  end
data/bin/console CHANGED
@@ -1,14 +1,15 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ $LOAD_PATH.unshift File.expand_path('test')
3
4
  require "bundler/setup"
4
5
  require "action_notifier"
6
+ require "notifiers/base_notifier"
7
+ require "notifiers/fcm_notifier"
5
8
 
6
9
  # You can add fixtures and/or initialization code here to make experimenting
7
10
  # with your gem easier. You can also use a different console, if you like.
8
11
 
9
12
  # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
- # Pry.start
13
+ require "pry"
12
14
 
13
- require "irb"
14
- IRB.start
15
+ Pry.start
@@ -18,6 +18,9 @@ module ActionNotifier
18
18
  class_attribute :delivery_method
19
19
  self.delivery_method = :post_request_deliverer
20
20
 
21
+ class_attribute :fcm_api_key
22
+ self.fcm_api_key = ENV["FCM_API_KEY"]
23
+
21
24
  class << self
22
25
  def to(url)
23
26
  self.url = url
@@ -0,0 +1,18 @@
1
+ module ActionNotifier
2
+ module Deliverers
3
+ class FcmDeliverer < PostRequestDeliverer
4
+ FCM_URL = "https://fcm.googleapis.com/fcm/send"
5
+ def deliver
6
+ message.body.merge!(message.options)
7
+ params = {
8
+ body: message.body.to_json,
9
+ headers: {
10
+ "Authorization" => "key=#{ActionNotifier::Base.fcm_api_key}",
11
+ "Content-Type" => "application/json"
12
+ }
13
+ }
14
+ self.class.post(FCM_URL, params)
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,6 +1,7 @@
1
1
  require "action_notifier/deliverers/base_deliverer"
2
2
  require "action_notifier/deliverers/post_request_deliverer"
3
3
  require "action_notifier/deliverers/slack_webhook_deliverer"
4
+ require "action_notifier/deliverers/fcm_deliverer"
4
5
 
5
6
  module ActionNotifier
6
7
  module Deliverers
@@ -1,3 +1,3 @@
1
1
  module ActionNotifier
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1.rc.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: action_notifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1.rc.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stan Lo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-02-16 00:00:00.000000000 Z
11
+ date: 2017-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -108,6 +108,20 @@ dependencies:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: fcm
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
111
125
  description: An abstract layer for Rails app to send notifications.
112
126
  email:
113
127
  - stan001212@gmail.com
@@ -129,6 +143,7 @@ files:
129
143
  - lib/action_notifier/base.rb
130
144
  - lib/action_notifier/deliverers.rb
131
145
  - lib/action_notifier/deliverers/base_deliverer.rb
146
+ - lib/action_notifier/deliverers/fcm_deliverer.rb
132
147
  - lib/action_notifier/deliverers/post_request_deliverer.rb
133
148
  - lib/action_notifier/deliverers/slack_webhook_deliverer.rb
134
149
  - lib/action_notifier/exceptions.rb
@@ -153,9 +168,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
153
168
  version: '0'
154
169
  required_rubygems_version: !ruby/object:Gem::Requirement
155
170
  requirements:
156
- - - ">="
171
+ - - ">"
157
172
  - !ruby/object:Gem::Version
158
- version: '0'
173
+ version: 1.3.1
159
174
  requirements: []
160
175
  rubyforge_project:
161
176
  rubygems_version: 2.5.1