Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pusher/push-notifications-python

Pusher Beams Python Server SDK
https://github.com/pusher/push-notifications-python

push-notifications pusher python python2 python3

Last synced: 3 days ago
JSON representation

Pusher Beams Python Server SDK

Awesome Lists containing this project

README

        

.. image:: https://github.com/pusher/push-notifications-python/workflows/CI/badge.svg
:target: https://github.com/pusher/push-notifications-python/actions?query=branch%3Amaster
.. image:: https://codecov.io/gh/pusher/push-notifications-python/branch/master/graph/badge.svg
:target: https://codecov.io/gh/pusher/push-notifications-python

Pusher Beams Python server SDK
==============================
Full documentation for this SDK can be found `here `__

Installation
------------
The Pusher Beams Python server SDK is available on PyPi
`here `__.

You can install this SDK by using
`pip `__:

.. code::

$ pip install pusher_push_notifications

Usage
-----

Configuring the SDK for Your Instance
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Use your instance id and secret (you can get these from the
`dashboard `__) to create a Beams PushNotifications instance:

.. code::

from pusher_push_notifications import PushNotifications

beams_client = PushNotifications(
instance_id='YOUR_INSTANCE_ID_HERE',
secret_key='YOUR_SECRET_KEY_HERE',
)

Publishing to Device Interests
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can broadcast notifications to groups of subscribed devices using `Device Interests `__:

.. code::

response = beams_client.publish_to_interests(
interests=['hello'],
publish_body={
'apns': {
'aps': {
'alert': 'Hello!'
}
},
'fcm': {
'notification': {
'title': 'Hello',
'body': 'Hello, World!'
}
}
}
)

print(response['publishId'])

Publishing to Authenticated Users
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Securely send notifications to individual users of your application using `Authenticated Users `__:

.. code::

response = beams_client.publish_to_users(
user_ids=['user-0001'],
publish_body={
'apns': {
'aps': {
'alert': 'Hello!'
}
},
'fcm': {
'notification': {
'title': 'Hello',
'body': 'Hello, World!'
}
}
}
)

print(response['publishId'])