Firebase Messaging
A library to subscribe to GCM/FCM and receive notifications within a python application.
When should I use firebase-messaging ?
I want to receive push notifications sent using Firebase Cloud Messaging in a python application.
When should I not use firebase-messaging ?
I want to send push notifications (use the firebase SDK instead)
My application is running on a FCM supported platform (Android, iOS, Web).
Install
PyPi:
$ pip install firebase-messaging
Requirements
Firebase configuration to receive notifications
Usage
Must be run inside an asyncio event loop.
python:
from firebase_messaging import FcmPushClient, FcmRegisterConfig
def on_notification(obj, notification, data_message):
# Do something with the notification
pass
credentials = None # Start off with none or load from previous save
def on_credentials_updated(creds):
# save the credentials to a file here for future use
fcm_config = FcmRegisterConfig(fcm-project-id, fcm-app-id, fcm-api-key, fcm-message-sender-id)
pc = FcmPushClient(on_notification, fcm_config, credentials, on_credentials_updated)
fcm_token = await pc.checkin_or_register()
await pc.start()
# Adapt the following for your usage
while some_condition_to_keep_listening:
asyncio.sleep(2)
Attribution
Code originally based on typescript/node implementation by Matthieu Lemoine. See this blog post for more details.
Converted to python by lolisamurai
http decryption logic in decrypt.py by Martin Thomson
Metadata
Release files for firebase-messaging-hawk 0.4.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| firebase_messaging_hawk-0.4.6.tar.gz | 37.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| firebase_messaging_hawk-0.4.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 72.6 kB
Release files / firebase_messaging_hawk-0.4.6.tar.gz
| Download URL | firebase_messaging_hawk-0.4.6.tar.gz |
|---|---|
| Size | 37.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f321710987c20303c948e9213ba594fd3425dc433f06dc00b9a870e6e83b5a8a
|
|
BLAKE2b-256 checksum How to use checksums |
31f4af201ccb4ff56f137ca40a88b7730f69c37c26988b9f3d0b142cef8fd7e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / firebase_messaging_hawk-0.4.6-py3-none-any.whl
| Download URL | firebase_messaging_hawk-0.4.6-py3-none-any.whl |
|---|---|
| Size | 34.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e0ee7da579cb3e1435a9833845fa0057bea3988a98cfe0a83290a06d6baccf4a
|
|
BLAKE2b-256 checksum How to use checksums |
e96bddb81f8c24fe20ae481c4ae7be68e11cd49167226936aaab0a7641c049e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|