Python client for Google Cloud Messaging (GCM).
Check documentation to learn how to use it.
Check the client with similar interface for Apple Push Notification service.
- requests - HTTP request, handles proxies etc.
- omnijson if you use Python 2.5 or older.
Th only alternative library known at the time of writing was python-gcm. 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 Celery back-end, 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
python-gcm 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 GCM fail. This decision makes library
a little bit more future proof.
GCM client was created by Sardar Yumatov,
contact me if you find any bugs or need help. Contact Getlogic if you need a full-featured push notification service
for all popular platforms. You can view outstanding issues on the GCM
TODO: Brief introduction on what you do with files - including link to relevant help section.