reduxionist / django_safari_notifications

Django app to handle Safari push notifications

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Django Safari Push Notifications

Latest PyPI version https://travis-ci.org/matiboy/django_safari_notifications.png?branch=master

Support for Safari Push Notifications from within Django. Note that this package helps registering notifications, not sending them. Safari Push works with APNs, so for sending, please use APNs Clerk.

Documentation

The full documentation will soon be at https://django-safari-notifications.readthedocs.io.

For the Safari Push documentations, refer to Apple Safari Push.

Quickstart

Install django_safari_notifications:

pip install django-safari-notifications

If you already have a valid pushPackage.zip, please serve it directly via your web server (Nginx/Apache) at the corresponding url: {webServiceUrl}/{version}/pushPackages/{websitePushID} (refer to Apple Safari Push)

Else, you must subclass django_safari_notifications.apps.DjangoSafariNotificationsConfig and set the cert and passphrase values.

from django_safari_notifications.apps import DjangoSafariNotificationsConfig

class MySafariNotificationsConfig(DjangoSafariNotificationsConfig):
    cert = '/path/to/cert.pem'
    passphrase = 'passphrase for key'

then add your config to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'my_safari_app.apps.MySafariNotificationsConfig', # if you need the pushPackage to be dynamically built
    ## OR ##
    'django_safari_notifications.apps.DjangoSafariNotificationsConfig', # If you are serving your own push package via Nginx
    ...
)

Add django_safari_notifications's URL patterns:

from django_safari_notifications import urls as django_safari_notifications_urls


urlpatterns = [
    ...
    url(r'^', include(django_safari_notifications_urls, namespace='safari_pn')),
    ...
]

Do not use any prefix for the urls, unless you are serving your own pushPackage.zip statically

Features

  • TODO

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Credits

Tools used in rendering this package:

About

Django app to handle Safari push notifications

License:MIT License


Languages

Language:Python 89.1%Language:Makefile 7.8%Language:HTML 3.1%