Skip to main content

Flask extension for push notifications on APNS (iOS) and GCM (Android).

Project description

version travis coveralls license

Flask extension for push notifications on APNS (iOS) and GCM (Android).

Quickstart

Whether using APNS or GCM, Flask-Pushjack provides an API client for each.

APNS

from flask import Flask
from flask_pushjack import FlaskAPNS

config = {
    'APNS_CERTIFICATE': '<path/to/certificate.pem>'
}

app = Flask(__name__)
app.config.update(config)

client = FlaskAPNS()
client.init_app(app)

with app.app_context():
    token = '<device token>'

    # Send to single device.
    res = client.send(token, alert, **options)

    # List of all tokens sent.
    res.tokens

    # List of any subclassed APNSServerError objects.
    res.errors

    # Dict mapping token => APNSServerError.
    res.token_errors

    # Send to multiple devices.
    client.send([token], alert, **options)

    # Get expired tokens.
    expired_tokens = client.get_expired_tokens()

GCM

from flask import Flask
from flask_pushjack import FlaskGCM

config = {
    'GCM_API_KEY': '<api-key>'
}

app = Flask(__name__)
app.config.update(config)

client = FlaskGCM()
client.init_app(app)

with app.app_context():
    token = '<device token>'

    # Send to single device.
    res = client.send(token, alert, **options)

    # List of requests.Response objects from GCM Server.
    res.responses

    # List of messages sent.
    res.messages

    # List of registration ids sent.
    res.registration_ids

    # List of server response data from GCM.
    res.data

    # List of successful registration ids.
    res.successes

    # List of failed registration ids.
    res.failures

    # List of exceptions.
    res.errors

    # List of canonical ids (registration ids that have changed).
    res.canonical_ids


    # Send to multiple devices.
    client.send([token], alert, **options)

For more details, please see the documentation for pushjack at http://pushjack.readthedocs.org.

Configuration

APNS

APNS_CERTIFICATE

File path to certificate PEM file (must be set). Default: None

APNS_ENABLED

Whether to enable sending. Default True

APNS_SANDBOX

Whether to use sandbox server. Default: False

APNS_DEFAULT_ERROR_TIMEOUT

Timeout when polling APNS for error after sending. Default: 10

APNS_DEFAULT_EXPIRATION_OFFSET

Message expiration (secs) from now. Default: 2592000 (1 month)

APNS_DEFAULT_BATCH_SIZE

Number of notifications to group together when sending.

GCM

GCM_API_KEY

API key (must be set). Default: None

GCM_ENABLED

Whether to enable sending. Default True

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Flask-Pushjack-1.0.0.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

Flask_Pushjack-1.0.0-py2.py3-none-any.whl (6.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file Flask-Pushjack-1.0.0.tar.gz.

File metadata

File hashes

Hashes for Flask-Pushjack-1.0.0.tar.gz
Algorithm Hash digest
SHA256 86863dbab7367a8be81dab8804aaa8052e58602f5f57f3309341eec9dc9dcde0
MD5 e2a7e47039c6489de373d1aa8a9d5800
BLAKE2b-256 e7185867bb12f9357ed4988d8c7b09f8a2a5b5cdb68780cd3627649e361e9592

See more details on using hashes here.

File details

Details for the file Flask_Pushjack-1.0.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for Flask_Pushjack-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 78b0f3a36a3046c8b2e31d4b180867f4ee97adfb002c2ac887668c3f9bb8702a
MD5 50f14e9bfe9fc3d08c7607b57aee7209
BLAKE2b-256 94982f6ee064c05ca7be1d8b64d695ffd221b724d5dd9143178f9fafee55a796

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page