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.0.tar.gz (38.0 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for firebase_messaging-0.4.0.tar.gz
Algorithm Hash digest
SHA256 592daccfbc6093b181c9df8462b0850c770f85c7dddd98639e8eb57523a27958
MD5 0e803906faa4785282b78680a512a539
BLAKE2b-256 2549855781bf9eb919cfcc3a7b8165994aea44dfb02c40287b0285dc7de498b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for firebase_messaging-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ac37996aa3c2c5c25eadd5f604946dfcf45a202ae402196207370cc8b9f9dc8
MD5 8f6645306f5607c94ef3f21a8ff68bc5
BLAKE2b-256 a35d1caaede99df3caa9de9772bc31720264ae4e80c1eb18113c7796ff92216a

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