Skip to main content

A Push Notification Service, written in Python, handling Apple APNS, and Google GCM.

Installation

Pulsus configuration file over at /home/example/etc/pulsus/pulsus.conf:

[server]
address = 127.0.0.1
port = 8321

[apns:sandbox]
cert_file_pem = /home/example/etc/pulsus/apns-dev.pem

[apns]
cert_file_pem = /home/example/etc/pulsus/apns.pem

[gcm]
api_key=AIzaSyATHISISSECRET

A logging.conf file is required to be present in the same directory. Then, start as follows:

/home/example/virtualenv/bin/python -m pulsus.server.serve /home/example/etc/pulsus/

Certificates

Export your certificate from Keychain in .p12 format. Then:

openssl pkcs12 -in certificate.p12 -out apns.pem -nodes

Usage

Client:

from pulsus.client import Client
from pulsus.services.apns import APNSNotification
from pulsus.services.gcm import GCMJSONMessage

android_message = GCMJSONMessage(
    registration_ids=['APA91bF....zLnytKBQ'],
    data={'message': 'Hello World!'})

ios_message = APNSNotification(
    token='676be1c77...',
    sandbox=True,
    alert='Helo World!')])

client = Client('127.0.0.1', 8321)
client.push([android_message, ios_message])

Frequently Asked Questions

What is the status of this project?

Even while this project may seem a bit inactive when looking at public repository, do note that this project has been (and still is) running rock solid in production for several years now.

Metadata

Release files for pulsus 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pulsus 1.1.0
File Size Uploaded
pulsus-1.1.0.tar.gz 10.4 kB Details

Release files / pulsus-1.1.0.tar.gz

Download URL pulsus-1.1.0.tar.gz
Size 10.4 kB
Tags Source
SHA-256 checksum
How to use checksums
d82eb61282545de778624e28b5e7821e372fda9468498e8265fb7ca0961c1e56
BLAKE2b-256 checksum
How to use checksums
6ba8a91b1723a8fdc08ed771dbea2b068b9fb876d817871b050bf723d0a94a7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/2.7

Release history Release notifications | RSS feed

This release

1.1.0 This release

1 release file

1.0.0

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page