pushbots 0.4.0 → 0.5.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 +4 -4
- data/README.md +21 -1
- data/lib/pushbots.rb +1 -0
- data/lib/pushbots/devices.rb +20 -0
- data/lib/pushbots/request.rb +6 -0
- data/lib/pushbots/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9a70f662bdddb8da1d0eeae97de09d2db4632f4a
|
4
|
+
data.tar.gz: 0f0048266baac821779b8afa47f50adb88ccf4e5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: acd6f809ab13f15929229deb0d4ef8d0b2f1f4cdf030dc87e818fdc067addd5c8124e4cb81b0593e0a709ac439f29c3708da50b7065fa5cc5480c76bad442349
|
7
|
+
data.tar.gz: 1b22944ba80950c5e1d3c03a2aac5df6487b6f87fb3ad3d2b408bd27c3a390d493144fc274cc5d2cdd3ae3adb411dfd0d6e174583693063d2bc3c7876b91c7c3
|
data/README.md
CHANGED
@@ -12,6 +12,7 @@ this gem on your favorite Ruby on Rails Projects.
|
|
12
12
|
- [How to use](#how-to-use)
|
13
13
|
- [Device management](#device-management)
|
14
14
|
- [Register a device](#register-a-device)
|
15
|
+
- [Register multiple devices](#register-multiple-devices)
|
15
16
|
- [Delete a device](#delete-a-device)
|
16
17
|
- [Device information](#device-information)
|
17
18
|
|
@@ -59,8 +60,25 @@ device = Pushbots::Device.new(token, platform)
|
|
59
60
|
device.register
|
60
61
|
```
|
61
62
|
|
63
|
+
#### Register multiple devices
|
64
|
+
```ruby
|
65
|
+
tokens = ['8js62lsod8',
|
66
|
+
'71882jksu2']
|
67
|
+
platform = :ios
|
68
|
+
tags = ['vip', 'cool_people']
|
69
|
+
# tokens and platform are required to add multiple devices
|
70
|
+
# tags is an optional parameter
|
71
|
+
devices = Pushbots::Devices.new(tokens, platform, tags)
|
72
|
+
# register the devices to pushbots returns true/false
|
73
|
+
# an attempt to register a device
|
74
|
+
# that has been already registered returns false
|
75
|
+
devices.register
|
76
|
+
```
|
77
|
+
|
62
78
|
#### Delete a device
|
63
79
|
```ruby
|
80
|
+
token = 'k2iwp29271'
|
81
|
+
platform = :ios
|
64
82
|
# token and platform are required to delete a device
|
65
83
|
device = Pushbots::Device.new(token, platform)
|
66
84
|
# remove the device from pushbots
|
@@ -71,9 +89,11 @@ device.delete
|
|
71
89
|
#### Device information
|
72
90
|
```ruby
|
73
91
|
# token is required to get device information
|
92
|
+
token = '182ksiwl29'
|
74
93
|
# platform is an optional parameter
|
75
94
|
device = Pushbots::Device.new(token)
|
76
95
|
# Get device information
|
96
|
+
device.info
|
77
97
|
# Device token
|
78
98
|
device.token
|
79
99
|
# Device status
|
@@ -86,7 +106,7 @@ device.tags
|
|
86
106
|
#### Single device notification
|
87
107
|
```ruby
|
88
108
|
# Device token
|
89
|
-
token = '
|
109
|
+
token = '82ksh62j1a'
|
90
110
|
# platform is :ios or :android
|
91
111
|
# (Any other value will return a RuntimeError)
|
92
112
|
platform = :ios
|
data/lib/pushbots.rb
CHANGED
@@ -0,0 +1,20 @@
|
|
1
|
+
module Pushbots
|
2
|
+
# Devices class
|
3
|
+
class Devices
|
4
|
+
attr_accessor :tokens, :platform, :tags
|
5
|
+
PLATFORM_TYPE = { ios: 0, android: 1 }.freeze
|
6
|
+
|
7
|
+
def initialize(tokens, platform, tags = nil)
|
8
|
+
self.tokens = tokens
|
9
|
+
self.platform = platform
|
10
|
+
self.tags = tags if tags
|
11
|
+
end
|
12
|
+
|
13
|
+
def register
|
14
|
+
body = { tokens: tokens, platform: PLATFORM_TYPE[platform] }
|
15
|
+
body[:tags] = tags if tags
|
16
|
+
response = Request.register_batch(body)
|
17
|
+
response.code == 201
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/pushbots/request.rb
CHANGED
@@ -26,6 +26,12 @@ module Pushbots
|
|
26
26
|
HTTP.headers(header_base).put(url, json: body)
|
27
27
|
end
|
28
28
|
|
29
|
+
def self.register_batch(body)
|
30
|
+
url = 'https://api.pushbots.com/deviceToken/batch'
|
31
|
+
header = header_base.merge(header_push)
|
32
|
+
HTTP.headers(header).put(url, json: body)
|
33
|
+
end
|
34
|
+
|
29
35
|
def self.header_base
|
30
36
|
{
|
31
37
|
:'X-PushBots-AppID' => Config.config.application_id,
|
data/lib/pushbots/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pushbots
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carlos Omana
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-03-
|
12
|
+
date: 2016-03-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -110,6 +110,7 @@ files:
|
|
110
110
|
- lib/pushbots/all.rb
|
111
111
|
- lib/pushbots/config.rb
|
112
112
|
- lib/pushbots/device.rb
|
113
|
+
- lib/pushbots/devices.rb
|
113
114
|
- lib/pushbots/one.rb
|
114
115
|
- lib/pushbots/push.rb
|
115
116
|
- lib/pushbots/request.rb
|