Skip to main content

Python client for Firebase Cloud Messaging (FCM)

Project description

Python client for Firebase Cloud Messaging (FCM). Check documentation to learn how to use it.

The library was originally written by FCM client by Sardar Yumatov. It seems to have been abandoned around 2015 or 2016. When google announced the move to Firebase, there was a need for a updated version of this software.

Requirements

  • requests - HTTP request, handles proxies etc.

  • six for python 3 compatibility.

Alternatives

Th only alternative library known at the time of writing was pyfcm. This library differs in the following design decisions:

  • Predictable execution time. Do not automatically retry request on failure. According to Google’s recommendations, each retry has to wait exponential back-off delay. We use an async back-end like Celery, where the best way to retry after some delay will be scheduling the task with countdown=delay. Sleeping while in Celery worker hurts your concurrency.

  • Do not forget results if you need to retry. This sounds obvious, but pyfcm drops important results, such as canonical ID mapping if request needs to be (partially) retried.

  • Clean pythonic API. No need to borrow all Java like exceptions etc.

  • Do not hard-code validation, let FCM fail. This decision makes library a little bit more future proof.

Support

FCM client was created by John Loehrer, contact me if you find any bugs or need help. You can view outstanding issues on the FCM Github page.

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

fcm-client-0.2.1.tar.gz (12.4 kB view hashes)

Uploaded Source

Built Distributions

fcm_client-0.2.1-py3-none-any.whl (10.7 kB view hashes)

Uploaded Python 3

fcm_client-0.2.1-py2-none-any.whl (8.7 kB view hashes)

Uploaded Python 2

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