action_notifier 0.1.0 → 0.1.1.rc.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: 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