urbanairship 9.0.0 → 9.1.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
  SHA256:
3
- metadata.gz: 5417adc316435f2d47f4962983571399b1bf4dea0015cd126ea12077260e50eb
4
- data.tar.gz: ccbaafa7f7f6bb5820c3a9e1834c23b5a8972debc6b964a204a73cb7630dc2b8
3
+ metadata.gz: 4271dd0c7f5cc4da7c6438cfec017d10be9ddb8c28145f541cf026ec1c179258
4
+ data.tar.gz: 609aa096ad24c679a32ab69fca8487ebe7e939150505d9f91c506937ce8e8ac0
5
5
  SHA512:
6
- metadata.gz: 36063a93db8505fa64180ef1980068112d3e14b6b0330e97fa772bd7081c25ab0500aaa7db442ba086a7b12ae8e2c588bbdce7f34144998287a242e401c49c6c
7
- data.tar.gz: d0cccf9b2713aa344d268c8a997a549525166f88e98e78d63b2a16a12e4123ce999e9be430c0c63a167cf5ff09505cc846755fc02ec822504b898146389aa799
6
+ metadata.gz: d743974f8312e3d42f890873a3bd78f44483be14a4593c169f6587be560358771667127b1dabc30286cf3577161f573f9f73a13a9b6eb25840a686bf7d917e4f
7
+ data.tar.gz: 1abaa92b5fa0fea9afd3274ffac2bcc44a91280c514e05e11aab3612d0b886bfa11d4a9c1fa42ea887dd3638cdf6d336c187f6e8518f2618175e6b59f46fd3c2
data/CHANGELOG CHANGED
@@ -1,8 +1,20 @@
1
+ --------------------
2
+ 9.1.0
3
+ --------------------
4
+ - All requests will now automatically attempt to authenticate with bearer token auth if a
5
+ token is included in the instantiation of the client. Previously, only custom events requests
6
+ could use bearer token auth in this library. You can find more information about how to use
7
+ bearer token auth in the README.
8
+ - Also fixes an issue where a secret was required even when bearer token auth was being used
9
+ (it is no longer required).
10
+
11
+ --------------------
1
12
  9.0.0
2
13
  --------------------
3
14
  - Adds Tag List API Support
4
15
  - Removes location lookup endpoints
5
16
  - Removes location-based audience selectors
17
+
6
18
  --------------------
7
19
  8.0.1
8
20
  --------------------
data/README.rst CHANGED
@@ -175,6 +175,22 @@ Finally, you can change the targeted server on a request basis:
175
175
  # The Urbanairship configuration is overridden by the client and the
176
176
  # request will be sent to the 'go.urbanairship.com' server
177
177
 
178
+ Using Bearer Token Auth
179
+ -----------------------
180
+
181
+ .. code-block:: ruby
182
+
183
+ require 'urbanairship'
184
+
185
+ UA = Urbanairship
186
+ airship = UA::Client.new(key:'application_key', token:'token')
187
+ # Then continue as you would otherwise
188
+
189
+ **Note**: If you include a token in your instantiation, the request
190
+ will use bearer token auth. Bearer token auth is required for some
191
+ endpoints, but not supported by others. Please check `the Airship
192
+ docs site <https://docs.airship.com/>`_ to see where it is supported.
193
+
178
194
  Contributing
179
195
  ============
180
196
 
data/docs/index.rst CHANGED
@@ -1,9 +1,8 @@
1
1
  Airship Ruby Library
2
- ==========================
2
+ ====================
3
3
 
4
4
  ``urbanairship`` is a Ruby library for using the `Airship
5
- <http://airship.com/>`_ web service API for push notifications and
6
- rich app pages.
5
+ <http://airship.com/>`_ web service API for messaging.
7
6
 
8
7
 
9
8
  Installation
@@ -29,8 +28,7 @@ The library is intended to be used with the small footprint of a single
29
28
  import. To get started, import the package, and create an
30
29
  :rb:class:`Airship` object representing a single Airship project.
31
30
 
32
- Note that channels are preferred over ``device_token`` and ``apid``. See:
33
- `documentation on channels <channels>`_.
31
+ The library uses `rest-client <https://github.com/rest-client/rest-client>`_ for communication with the Airship API.
34
32
 
35
33
  .. code-block:: ruby
36
34
 
@@ -43,15 +41,20 @@ Note that channels are preferred over ``device_token`` and ``apid``. See:
43
41
  p.device_types = UA.device_types(['ios','android'])
44
42
  p.send_push
45
43
 
46
- The library uses `unirest`_ for communication with the UA API.
44
+ We in the process of migrating code examples away from these docs and into the
45
+ regular `Airship API reference <https://docs.airship.com/api/ua/>`_
46
+ (select "Ruby Library"), so please check there for more examples.
47
+
48
+ Please also see `the README <https://github.com/urbanairship/ruby-library/blob/main/README.rst>`_
49
+ for detailed instructions on how to use bearer token auth and alternative servers.
47
50
 
48
51
 
49
52
  Development
50
53
  -----------
51
54
 
52
- The library source code is `available on GitHub <github>`_.
55
+ The library source code is `available on GitHub <https://github.com/urbanairship/ruby-library>`_.
53
56
 
54
- Tests can be run with rspec_:
57
+ Tests can be run with `rspec <https://rspec.info/>`_.
55
58
 
56
59
  Contents:
57
60
 
@@ -84,9 +87,3 @@ Indices and tables
84
87
  * :ref:`genindex`
85
88
  * :ref:`modindex`
86
89
  * :ref:`search`
87
-
88
-
89
- .. _channels: http://docs.airship.com/topic-guides/channels.html
90
- .. _unirest: http://unirest.io/ruby.html
91
- .. _github: https://github.com/urbanairship/ruby-library
92
- .. _rspec: https://nose.readthedocs.org/en/latest/
@@ -15,10 +15,9 @@ module Urbanairship
15
15
  # @param [Object] secret Application Secret
16
16
  # @param [String] server Airship server to use ("go.airship.eu" or "go.urbanairship.com").
17
17
  # Used only when the request is sent with a "path", not an "url".
18
- # @param [String] token Application Auth Token (for custom events endpoint)
18
+ # @param [String] token Application Auth Token
19
19
  # @return [Object] Client
20
- def initialize(key: required('key'), secret: required('secret'),
21
- server: Urbanairship.configuration.server, token: nil)
20
+ def initialize(key: required('key'), secret: nil, server: Urbanairship.configuration.server, token: nil)
22
21
  @key = key
23
22
  @secret = secret
24
23
  @server = server
@@ -57,6 +56,10 @@ module Urbanairship
57
56
  headers['Content-Type'] = content_type unless content_type.nil?
58
57
  headers['Content-Encoding'] = encoding unless encoding.nil?
59
58
 
59
+ if @token != nil
60
+ auth_type = :bearer
61
+ end
62
+
60
63
  if auth_type == :bearer
61
64
  raise ArgumentError.new('token must be provided as argument if auth_type=bearer') if @token.nil?
62
65
  headers['X-UA-Appkey'] = @key
@@ -82,6 +85,7 @@ module Urbanairship
82
85
  }
83
86
 
84
87
  if auth_type == :basic
88
+ raise ArgumentError.new('secret must be provided as argument if auth_type=basic') if @secret.nil?
85
89
  params[:user] = @key
86
90
  params[:password] = @secret
87
91
  end
@@ -1,3 +1,3 @@
1
1
  module Urbanairship
2
- VERSION = '9.0.0'
2
+ VERSION = '9.1.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: urbanairship
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.0.0
4
+ version: 9.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Airship
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-03-04 00:00:00.000000000 Z
11
+ date: 2022-06-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client