web_push 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: e36118da84646cf33221743efe9ea48146da3af4
4
- data.tar.gz: 0172ddbecfece1a9b5fa1f96e1d2215b49360593
3
+ metadata.gz: dc95f662554974084930ef130f7e498337e96d8f
4
+ data.tar.gz: a7f483340075328cf090bd1b3897de04ccee967f
5
5
  SHA512:
6
- metadata.gz: 81eefa2ac1f2f941caf17535f087a275de6e03da06dc96fdba72853c831cb9ad52cb550b861eecb83d74ecf51cd9c4253a8a27f3522da034914dd02fbc425afc
7
- data.tar.gz: b1c9318be0545037d38c99faa2168fb81640643e3755b6f2c1a20ef8ae5b7d6f54745eeb101b48e6694a27a30076db0096b0a2d65c0bb0d7b234fcd794a6774c
6
+ metadata.gz: a73661e6cff9d901fab755f7782488fc32ee993782abfd8d1c02e947941c66985677d9c4a095eced1f452a95035ebfcbcd90815e7c78d3f998ab8b3449bb23d0
7
+ data.tar.gz: a00ad294997af05c5965cdedd6c07d913f9f0e3579fc3a0bee3f0f96b5a2e1e73efccd7cd6ae56ad853d5f91207040f66e99ff220fb7c617c2603fc3b04654a0
data/README.md CHANGED
@@ -20,6 +20,21 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
 
23
+ ```ruby
24
+ pkey = WebPush::Utils.generate_vapid_pkey
25
+ vapid_private_key = Base64.urlsafe_encode64(pkey.private_key.to_bn.to_s(2)).delete('=')
26
+ vapid_public_key = Base64.urlsafe_encode64(pkey.public_key.to_bn.to_s(2)).delete('=')
27
+ ```
28
+
29
+ ```js
30
+ serviceWorker.pushManager.subscribe({
31
+ userVisibleOnly: true,
32
+ applicationServerKey: 'VAPID Public key(ArrayBuffer, Uint8Array or ...)',
33
+ }).then((subscription) => { ... })
34
+ ```
35
+
36
+ See https://developer.mozilla.org/en/docs/Web/API/PushManager/subscribe and https://github.com/miyucy/miyucy.github.io/blob/master/push.js
37
+
23
38
  ```ruby
24
39
  subscription = {
25
40
  endpoint: 'https://example.com/...',
@@ -1,3 +1,3 @@
1
1
  class WebPush
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
data/lib/web_push.rb CHANGED
@@ -58,8 +58,8 @@ class WebPush
58
58
  }.tap do |request|
59
59
  encrypted = encrypt(@p256dh, @auth, payload)
60
60
  request[:headers]['Content-Length'] = encrypted[:cipher].bytesize.to_s
61
- request[:headers]['Encryption'] = 'keyid=p256dh;salt=' + urlsafe_encode64(encrypted[:salt])
62
- request[:headers]['Crypto-Key'] = 'keyid=p256dh;dh=' + urlsafe_encode64(encrypted[:server_public_key])
61
+ request[:headers]['Encryption'] = 'salt=' + urlsafe_encode64(encrypted[:salt])
62
+ request[:headers]['Crypto-Key'] = 'dh=' + urlsafe_encode64(encrypted[:server_public_key])
63
63
  request[:body] = encrypted[:cipher]
64
64
 
65
65
  audience = request[:uri].scheme + "://" + request[:uri].host
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: web_push
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
  - miyucy
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-04 00:00:00.000000000 Z
11
+ date: 2016-10-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ece