florian 8b4accfee4
All checks were successful
Build & Publish to GHCR / build (push) Successful in 56s
Merge pull request 'Github Actions: Publish first docker image' (#2) from feature/build-first-docker-image into main
Reviewed-on: #2
2025-10-17 16:37:00 +02:00
2025-10-17 14:24:46 +02:00
2025-10-13 17:48:28 +02:00
2025-10-13 17:48:28 +02:00
2025-10-17 10:58:37 +02:00

Backend Push Notifications

Overview

This part of the backend handles device push notifications for registered users. It consumes messages from RabbitMQ, looks up user device tokens from a MySQL database, and sends notifications via Expo's API. Failed deliveries are retried or sent to a dead-letter queue.

Requirements

  • Python 3.12+
  • MySQL database
  • RabbitMQ
  • Python packages from requirements.txt

Configuration

Environment variables:

  • LOG_LEVEL (DEBUG, INFO, WARNING, ERROR, CRITICAL)

  • RABBITMQ_URL

  • MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD, MYSQL_DATABASE

  • API_ENDPOINT (Expo push API)

Metrics

Metrics are exposed on port 9000 for Prometheus, including:

  • MSG_PUBLISHED

  • MSG_FAILED

  • MSG_RETRY

  • Queue sizes

Description
No description provided
Readme 127 KiB
Languages
Python 98.2%
Dockerfile 1.8%