notifiable-apns-grocer 0.8.0 → 0.9.0

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: 8eced71a1be0d96642d5214b22f367c229695d1c
4
- data.tar.gz: 9c29a5fbbbfd2300fa3d1fb6a3c603c00b0ff9de
3
+ metadata.gz: f5537d92347ad5a37bc4ae04b6c7fc4c9bbca8c6
4
+ data.tar.gz: 93d2e11cb8211e4c5656956bddcb92edbd75b367
5
5
  SHA512:
6
- metadata.gz: b2b1ad57eeb6f398f9d5bbbed47b52bdcbac19793d4a8bdc02e51821db32470d6af7f4a3f7a3a5c76202c2983034337a730df6b5fb435f5df7361d129e1d92f5
7
- data.tar.gz: 0bee05c7f041c53750d4da439328fdb95c4821f6bce638953d7fee76b095984c1aaf62f956a5ac924d243ffbfb53718e5e375e947124535e1de82ff2f219f061
6
+ metadata.gz: 5655edb4828761e49684635d7e2efe7c2530deb789c6f866e5c2b41d24152f43fe529a8f3656b7b2b28094a8621fe04ee6735494f0e6d6c63d9232befdc2ea63
7
+ data.tar.gz: f8f643619041942c244fef93b762c3bd057778e2149eb245bd6a6fd7a8440ec34d1ffab5fc6e3e0dec7b4e38749a7272885bbcadd66e06ff79cd9deba4b5eb9f
@@ -75,8 +75,12 @@ module Notifiable
75
75
 
76
76
  def process_feedback
77
77
  grocer_feedback.each do |attempt|
78
- device_token = DeviceToken.find_by_token(attempt.device_token)
79
- device_token.destroy if device_token
78
+ token = attempt.device_token
79
+ device_token = DeviceToken.find_by_token(token)
80
+ if device_token
81
+ device_token.update_attribute("is_valid", false) if device_token.updated_at < attempt.timestamp
82
+ Rails.logger.info("Device #{token} (#{device_token.user_id}) failed at #{attempt.timestamp}")
83
+ end
80
84
  end
81
85
  end
82
86
  end
@@ -1,7 +1,7 @@
1
1
  module Notifiable
2
2
  module Apns
3
3
  module Grocer
4
- VERSION = "0.8.0"
4
+ VERSION = "0.9.0"
5
5
  end
6
6
  end
7
7
  end
@@ -18,8 +18,8 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "notifiable-rails", ">=0.18.0"
22
- spec.add_dependency "grocer"
21
+ spec.add_dependency "notifiable-rails", ">=0.19.0"
22
+ spec.add_dependency "grocer", '~> 0.5.0'
23
23
 
24
24
  spec.add_development_dependency "bundler", "~> 1.3"
25
25
  spec.add_development_dependency "rake"
@@ -4,15 +4,14 @@ class CreateNotifiableDeviceTokens < ActiveRecord::Migration
4
4
  create_table :notifiable_device_tokens do |t|
5
5
  t.string :token
6
6
  t.string :provider
7
- t.string :device_id
7
+ t.boolean :is_valid, :default => true
8
8
  t.integer :user_id
9
9
  t.references :app
10
10
 
11
11
  t.timestamps
12
12
  end
13
13
 
14
- add_index :notifiable_device_tokens, :device_id, :unique => true
15
- add_index :notifiable_device_tokens, :token, :unique => true
14
+ add_index :notifiable_device_tokens, :token
16
15
  add_index :notifiable_device_tokens, :user_id
17
16
  end
18
17
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: notifiable-apns-grocer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kamil Kocemba
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-05-07 00:00:00.000000000 Z
12
+ date: 2014-05-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: notifiable-rails
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - '>='
19
19
  - !ruby/object:Gem::Version
20
- version: 0.18.0
20
+ version: 0.19.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - '>='
26
26
  - !ruby/object:Gem::Version
27
- version: 0.18.0
27
+ version: 0.19.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: grocer
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - '>='
32
+ - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: '0'
34
+ version: 0.5.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - '>='
39
+ - - ~>
40
40
  - !ruby/object:Gem::Version
41
- version: '0'
41
+ version: 0.5.0
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: bundler
44
44
  requirement: !ruby/object:Gem::Requirement