frm_mercury 0.1.2 → 0.1.7

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
  SHA256:
3
- metadata.gz: 3e4a6696fc9f11af09268780eed3915d26c3543e7a981f9664f5bb120b82c7c7
4
- data.tar.gz: ee1fe83b2de4844422c8ba21c42974244480adef49a152929b8c5754394314e6
3
+ metadata.gz: 24454b09f562dfa99e2932abc8dd4f3511eba228f495d3cbfdf0d777acba2e56
4
+ data.tar.gz: fa99a897712400b7243f199c712fa579213795cda0c632f8a1b69fea6de61b9b
5
5
  SHA512:
6
- metadata.gz: 4c66d7a89ea8b0d7269c7aa02ffecba5a39a920f0d9e5f1b19d1bc6c8cffa09df0f9ca9b735abaedf01704f9b5b74367b0a99b921350657449048b32d5573925
7
- data.tar.gz: 438a80ef55d3270af19ba777c6ed909a8b15ecb4c1b185ceea6306912542e4e7865489e940543a13c56b65811a59fac501c4bb00d9a3336f45fe4a0f20887a47
6
+ metadata.gz: d2e7d5a12f0be4762705b92d367deb3594780e184249f015941e7c8696ae4a161921bb33bd10a90d25c4b4c73315c75153990be958704432b8d7f80c801947bb
7
+ data.tar.gz: 483c17f1cc5fa6eb5433779d50bf6019f6261d3f5f1a20b01085f19302fb2efabfa99c95d12938e9ba635ecccd7eb3b6895117a72be3a597ff00e57861cecfc7
@@ -0,0 +1,20 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ frm_mercury (0.1.3)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ rake (10.4.2)
10
+
11
+ PLATFORMS
12
+ ruby
13
+
14
+ DEPENDENCIES
15
+ bundler (~> 2.0)
16
+ frm_mercury!
17
+ rake (~> 10.0)
18
+
19
+ BUNDLED WITH
20
+ 2.0.1
data/README.md CHANGED
@@ -22,7 +22,19 @@ Or install it yourself as:
22
22
 
23
23
  ## Usage
24
24
 
25
- TODO: Write usage instructions here
25
+ First create an frm_mercury.rb in yours config/initializers
26
+
27
+ ```ruby
28
+ require 'frm_mercury'
29
+ FrmMercury.configure do |config|
30
+ config.api_key = "Your Api Key From Firebase console"
31
+ end
32
+ ```
33
+
34
+ Then to send a message...
35
+ ```ruby
36
+ FrmMercury::Sender.send("Device FCM token as String or many tokens as Array", "Some title", "Some body message", "sound.mp3 (Leave empty for default)", "Hash in case you want to send extra info (optional)")
37
+ ```
26
38
 
27
39
  ## Development
28
40
 
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
  end
21
21
  spec.bindir = "exe"
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
- spec.require_paths = ["lib/**/*"]
23
+ spec.require_paths = ["lib"]
24
24
 
25
25
  spec.add_development_dependency "bundler", "~> 2.0"
26
26
  spec.add_development_dependency "rake", "~> 10.0"
@@ -0,0 +1,14 @@
1
+ module FrmMercury
2
+ class Configuration
3
+ attr_accessor :api_key
4
+
5
+ def initialize
6
+ # For production
7
+ @api_key = nil
8
+ end
9
+
10
+ def get_api_key
11
+ @api_key
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,40 @@
1
+ module FrmMercury
2
+ class Sender
3
+ def self.send(to=nil, title=nil, body=nil, sound=nil, data=nil)
4
+ config = FrmMercury.configuration
5
+
6
+ require 'uri'
7
+ require 'net/http'
8
+ require 'net/https'
9
+ require 'json'
10
+
11
+ key = to.kind_of?(Array) ? "registration_ids" : "to"
12
+
13
+ params = {
14
+ "#{key}": to,
15
+ "notification": {
16
+ "title": title.nil? ? "Testing notification" : title,
17
+ "body": body.nil? ? "This is a test push notification, liking it?" : body,
18
+ "mutable_content": true,
19
+ "sound": sound.nil? ? "enabled" : sound
20
+ },
21
+ "android":{
22
+ "ttl":"86400s",
23
+ "notification"{
24
+ "click_action":"MAIN_ACTIVITY"
25
+ }
26
+ },
27
+ "data": data
28
+ }.to_json
29
+
30
+ uri = URI.parse("https://fcm.googleapis.com/fcm/send")
31
+ https = Net::HTTP.new(uri.host,uri.port)
32
+ https.use_ssl = true
33
+ req = Net::HTTP::Post.new(uri.path, initheader = {"Content-Type" => "application/json", "Authorization" => "key=#{config.get_api_key}"})
34
+ req.body = params
35
+ res = https.request(req)
36
+ puts "Response #{res.code} #{res.message}: #{res.body}"
37
+ return "Response #{res.code} #{res.message}: #{res.body}"
38
+ end
39
+ end
40
+ end
@@ -1,3 +1,3 @@
1
1
  module FrmMercury
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: frm_mercury
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - DEVPENGUIN
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-08-23 00:00:00.000000000 Z
11
+ date: 2020-12-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -48,6 +48,7 @@ files:
48
48
  - ".gitignore"
49
49
  - CODE_OF_CONDUCT.md
50
50
  - Gemfile
51
+ - Gemfile.lock
51
52
  - LICENSE.txt
52
53
  - README.md
53
54
  - Rakefile
@@ -55,6 +56,8 @@ files:
55
56
  - bin/setup
56
57
  - frm_mercury.gemspec
57
58
  - lib/frm_mercury.rb
59
+ - lib/frm_mercury/Configuration.rb
60
+ - lib/frm_mercury/sender.rb
58
61
  - lib/frm_mercury/version.rb
59
62
  homepage: https://github.com/simoncorreaocampo/FrmMercury
60
63
  licenses:
@@ -63,7 +66,7 @@ metadata: {}
63
66
  post_install_message:
64
67
  rdoc_options: []
65
68
  require_paths:
66
- - lib/**/*
69
+ - lib
67
70
  required_ruby_version: !ruby/object:Gem::Requirement
68
71
  requirements:
69
72
  - - ">="