bump version
This commit is contained in:
parent
248cd434ba
commit
b5991530cd
|
@ -1,5 +1,8 @@
|
||||||
# I am terrible at keeping this up-to-date.
|
# I am terrible at keeping this up-to-date.
|
||||||
|
|
||||||
|
## 1.14.0 (2021-07-28)
|
||||||
|
bug: accept all VAPID key instances (thanks @mthu)
|
||||||
|
|
||||||
## 1.13.0 (2021-03-15)
|
## 1.13.0 (2021-03-15)
|
||||||
Support requests_session param in webpush fn too
|
Support requests_session param in webpush fn too
|
||||||
|
|
||||||
|
|
53
README.md
53
README.md
|
@ -32,7 +32,10 @@ and push data.
|
||||||
As illustration, a `subscription_info` object may look like:
|
As illustration, a `subscription_info` object may look like:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{"endpoint": "https://updates.push.services.mozilla.com/push/v1/gAA...", "keys": {"auth": "k8J...", "p256dh": "BOr..."}}
|
{
|
||||||
|
"endpoint": "https://updates.push.services.mozilla.com/push/v1/gAA...",
|
||||||
|
"keys": { "auth": "k8J...", "p256dh": "BOr..." }
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
How you send the PushSubscription data to your backend, store it
|
How you send the PushSubscription data to your backend, store it
|
||||||
|
@ -60,19 +63,19 @@ in the `subscription_info` block.
|
||||||
|
|
||||||
**Parameters**
|
**Parameters**
|
||||||
|
|
||||||
*subscription_info* - The `dict` of the subscription info (described above).
|
_subscription_info_ - The `dict` of the subscription info (described above).
|
||||||
|
|
||||||
*data* - can be any serial content (string, bit array, serialized JSON, etc), but be sure that your receiving
|
_data_ - can be any serial content (string, bit array, serialized JSON, etc), but be sure that your receiving
|
||||||
application is able to parse and understand it. (e.g. `data = "Mary had a little lamb."`)
|
application is able to parse and understand it. (e.g. `data = "Mary had a little lamb."`)
|
||||||
|
|
||||||
*content_type* - specifies the form of Encryption to use, either `'aes128gcm'` or the deprecated `'aesgcm'`. NOTE that
|
_content_type_ - specifies the form of Encryption to use, either `'aes128gcm'` or the deprecated `'aesgcm'`. NOTE that
|
||||||
not all User Agents can decrypt `'aesgcm'`, so the library defaults to the RFC 8188 standard form.
|
not all User Agents can decrypt `'aesgcm'`, so the library defaults to the RFC 8188 standard form.
|
||||||
|
|
||||||
*vapid_claims* - a `dict` containing the VAPID claims required for authorization (See
|
_vapid_claims_ - a `dict` containing the VAPID claims required for authorization (See
|
||||||
[py_vapid](https://github.com/web-push-libs/vapid/tree/master/python) for more details). If `aud` is not specified,
|
[py_vapid](https://github.com/web-push-libs/vapid/tree/master/python) for more details). If `aud` is not specified,
|
||||||
pywebpush will attempt to auto-fill from the `endpoint`.
|
pywebpush will attempt to auto-fill from the `endpoint`.
|
||||||
|
|
||||||
*vapid_private_key* - Either a path to a VAPID EC2 private key PEM file, or a string containing the DER representation.
|
_vapid_private_key_ - Either a path to a VAPID EC2 private key PEM file, or a string containing the DER representation.
|
||||||
(See [py_vapid](https://github.com/web-push-libs/vapid/tree/master/python) for more details.) The `private_key` may be
|
(See [py_vapid](https://github.com/web-push-libs/vapid/tree/master/python) for more details.) The `private_key` may be
|
||||||
a base64 encoded DER formatted private key, or the path to an OpenSSL exported private key file.
|
a base64 encoded DER formatted private key, or the path to an OpenSSL exported private key file.
|
||||||
|
|
||||||
|
@ -126,23 +129,23 @@ Send the data using additional parameters. On error, returns a `WebPushException
|
||||||
|
|
||||||
**Parameters**
|
**Parameters**
|
||||||
|
|
||||||
*data* Binary string of data to send
|
_data_ Binary string of data to send
|
||||||
|
|
||||||
*headers* A `dict` containing any additional headers to send
|
_headers_ A `dict` containing any additional headers to send
|
||||||
|
|
||||||
*ttl* Message Time To Live on Push Server waiting for the client to reconnect (in seconds)
|
_ttl_ Message Time To Live on Push Server waiting for the client to reconnect (in seconds)
|
||||||
|
|
||||||
*gcm_key* Google Cloud Messaging key (if using the older GCM push system) This is the API key obtained from the Google
|
_gcm_key_ Google Cloud Messaging key (if using the older GCM push system) This is the API key obtained from the Google
|
||||||
Developer Console.
|
Developer Console.
|
||||||
|
|
||||||
*reg_id* Google Cloud Messaging registration ID (will be extracted from endpoint if not specified)
|
_reg_id_ Google Cloud Messaging registration ID (will be extracted from endpoint if not specified)
|
||||||
|
|
||||||
*content_encoding* ECE content encoding type (defaults to "aes128gcm")
|
_content_encoding_ ECE content encoding type (defaults to "aes128gcm")
|
||||||
|
|
||||||
*curl* Do not execute the POST, but return as a `curl` command. This will write the encrypted content to a local file
|
_curl_ Do not execute the POST, but return as a `curl` command. This will write the encrypted content to a local file
|
||||||
named `encrpypted.data`. This command is meant to be used for debugging purposes.
|
named `encrpypted.data`. This command is meant to be used for debugging purposes.
|
||||||
|
|
||||||
*timeout* timeout for requests POST query.
|
_timeout_ timeout for requests POST query.
|
||||||
See [requests documentation](http://docs.python-requests.org/en/master/user/quickstart/#timeouts).
|
See [requests documentation](http://docs.python-requests.org/en/master/user/quickstart/#timeouts).
|
||||||
|
|
||||||
**Example**
|
**Example**
|
||||||
|
@ -159,9 +162,9 @@ Encode the `data` for future use. On error, returns a `WebPushException`
|
||||||
|
|
||||||
**Parameters**
|
**Parameters**
|
||||||
|
|
||||||
*data* Binary string of data to send
|
_data_ Binary string of data to send
|
||||||
|
|
||||||
*content_encoding* ECE content encoding type (defaults to "aes128gcm")
|
_content_encoding_ ECE content encoding type (defaults to "aes128gcm")
|
||||||
|
|
||||||
**Example**
|
**Example**
|
||||||
|
|
||||||
|
@ -175,15 +178,18 @@ If you're not really into coding your own solution, there's also a "stand-alone"
|
||||||
./bin directory.
|
./bin directory.
|
||||||
|
|
||||||
This uses two files:
|
This uses two files:
|
||||||
* the *data* file, which contains the message to send, in whatever form you like.
|
|
||||||
* the *subscription info* file, which contains the subscription information as JSON encoded data. This is usually returned by the Push `subscribe` method and looks something like:
|
- the _data_ file, which contains the message to send, in whatever form you like.
|
||||||
|
- the _subscription info_ file, which contains the subscription information as JSON encoded data. This is usually returned by the Push `subscribe` method and looks something like:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{"endpoint": "https://push...",
|
{
|
||||||
"keys": {
|
"endpoint": "https://push...",
|
||||||
"auth": "ab01...",
|
"keys": {
|
||||||
"p256dh": "aa02..."
|
"auth": "ab01...",
|
||||||
}}
|
"p256dh": "aa02..."
|
||||||
|
}
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
If you're interested in just testing your applications WebPush interface, you could use the Command Line:
|
If you're interested in just testing your applications WebPush interface, you could use the Command Line:
|
||||||
|
@ -191,6 +197,7 @@ If you're interested in just testing your applications WebPush interface, you co
|
||||||
```bash
|
```bash
|
||||||
./bin/pywebpush --data stuff_to_send.data --info subscription.info
|
./bin/pywebpush --data stuff_to_send.data --info subscription.info
|
||||||
```
|
```
|
||||||
|
|
||||||
which will encrypt and send the contents of `stuff_to_send.data`.
|
which will encrypt and send the contents of `stuff_to_send.data`.
|
||||||
|
|
||||||
See `./bin/pywebpush --help` for available commands and options.
|
See `./bin/pywebpush --help` for available commands and options.
|
||||||
|
|
Loading…
Reference in New Issue