Skip to main content

FCM/GCM push notification client

Project description

PyPI Version Build Status Coverage Documentation Status Py Versions

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

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

firebase_messaging-0.4.1.tar.gz (39.0 kB view details)

Uploaded Source

Built Distribution

firebase_messaging-0.4.1-py3-none-any.whl (40.1 kB view details)

Uploaded Python 3

File details

Details for the file firebase_messaging-0.4.1.tar.gz.

File metadata

  • Download URL: firebase_messaging-0.4.1.tar.gz
  • Upload date:
  • Size: 39.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for firebase_messaging-0.4.1.tar.gz
Algorithm Hash digest
SHA256 f8eff17e424a075540a5e91d3097642aba43d860398f1d09767b7ec8c479b274
MD5 a6ca28d1d9556694b4184a4353a1d902
BLAKE2b-256 9c2bb823d8404261ac8f7fd8f93cacac30e747eaa45bfb1c605a7bc116dbe6bc

See more details on using hashes here.

File details

Details for the file firebase_messaging-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for firebase_messaging-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4346a7b1b9cf2c67ce531c5225605777c9355ac19bd11f5f0b7d6008f4f74542
MD5 d91c6cb4364c1a7784bae623f4f87efb
BLAKE2b-256 c674a1e94700348d6eaa78507eca2b881afe49cf1a72fb72a5ec69cde9bf55c6

See more details on using hashes here.

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