Metadata-Version: 1.1
Name: pushjack
Version: 0.0.1
Summary: Push notifications for APNS (iOS) and GCM (Android).
Home-page: https://github.com/dgilland/pushjack
Author: Derrick Gilland
Author-email: dgilland@gmail.com
License: MIT License
Description: ********
        pushjack
        ********
        
        |version| |travis| |coveralls| |license|
        
        Push notifications for APNS (iOS) and GCM (Android).
        
        
        Links
        =====
        
        - Project: https://github.com/dgilland/pushjack
        - Documentation: http://pushjack.readthedocs.org
        - PyPi: https://pypi.python.org/pypi/pushjack/
        - TravisCI: https://travis-ci.org/dgilland/pushjack
        
        
        Quickstart
        ==========
        
        Whether using ``APNS`` or ``GCM``, pushjack provides a common API interface for each.
        
        
        APNS
        ----
        
        .. code-block:: python
        
            from pushjack import APNSClient, create_apns_config
        
            settings = create_apns_config()
            settings['APNS_CERTIFICATE'] = '<path/to/certificate.pem>'
        
            client = APNSClient(settings)
        
            # Send to single device.
            client.send(token, alert, **options)
        
            # Sent to multiple devices.
            client.send_bulk(tokens, alert, **options)
        
            # Get expired tokens.
            expired = client.get_expired_tokens()
        
        
        GCM
        ---
        
        .. code-block:: python
        
            from pushjack import GCMClient, create_gcm_config
        
            settings = create_gcm_config()
            settings['GCM_API_KEY'] = '<api key>'
        
            client = GCMClient(settings)
        
            # Send to single device.
            client.send(token, alert, **options)
        
            # Sent to multiple devices.
            client.send_bulk(tokens, alert, **options)
        
        
        Settings
        --------
        
        The settings object for configuring a client is expected to be a ``dict`` or subclass of ``dict``:
        
        
        .. code-block:: python
        
            gcm_settings = {
                'GCM_API_KEY': '<api key>',
                'GCM_URL': 'https://android.googleapis.com/gcm/send',
                'GCM_MAX_RECIPIENTS': 1000
            }
        
            apns_settings = {
                'APNS_CERTIFICATE': '<path/to/certificate.pem>',
                'APNS_HOST': 'gateway.push.apple.com',
                'APNS_PORT': 2195,
                'APNS_FEEDBACK_HOST': 'feedback.push.apple.com',
                'APNS_FEEDBACK_PORT': 2196,
                'APNS_ERROR_TIMEOUT': 0.5,
                'APNS_DEFAULT_EXPIRATION_OFFSET': 60 * 60 * 24 * 30
                'APNS_MAX_NOTIFICATION_SIZE': 2048
            }
        
        
        For a class based approached, configuration classes are provided for subclassing:
        
        
        .. code-block:: python
        
            from pushjack import GCMConfig, APNSConfig, APNSSandboxConfig
        
            class MyGCMConfig(GCMConfig):
                GCM_API_KEY = '<api key>'
        
            class MyAPNSConfig(APNSConfig):
                APNS_CERTIFICATE = '<path/to/certificate.pem>'
        
            class MyAPNSSandboxConfig(APNSConfig):
                APNS_CERTIFICATE = '<path/to/certificate.pem>'
        
        
        By default, both ``GCMConfig``, ``APNSConfig``, and ``APNSSandboxConfig`` will set default values for the settings that shouldn't change. You will need to set ``GCM_API_KEY`` or ``APNS_CERTIFICATE`` appropriately though.
        
        
        
        For more details, please see the full documentation at http://pushjack.readthedocs.org.
        
        
        .. |version| image:: http://img.shields.io/pypi/v/pushjack.svg?style=flat-square
            :target: https://pypi.python.org/pypi/pushjack/
        
        .. |travis| image:: http://img.shields.io/travis/dgilland/pushjack/master.svg?style=flat-square
            :target: https://travis-ci.org/dgilland/pushjack
        
        .. |coveralls| image:: http://img.shields.io/coveralls/dgilland/pushjack/master.svg?style=flat-square
            :target: https://coveralls.io/r/dgilland/pushjack
        
        .. |license| image:: http://img.shields.io/pypi/l/pushjack.svg?style=flat-square
            :target: https://pypi.python.org/pypi/pushjack/
        
Keywords: apns ios gcm android push notifications
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Communications
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
