Message handler for eoAPI components. A middleware tool that listens to sources for messages and forwards them to output receivers.
- Python 3.12 or higher
Install using uv
:
uv add eoapi-notifier
The notifier provides a CLI tool to run the message handler with a YAML configuration file.
Run the notifier with a configuration file:
eoapi-notifier config.yaml
Set logging level:
eoapi-notifier --log-level DEBUG config.yaml
Show help:
eoapi-notifier --help
Show version:
eoapi-notifier --version
Create a YAML configuration file to specify sources (where messages come from) and outputs (where messages are sent). Here's a basic example:
# Sources: Define where notifications come from
sources:
- type: pgstac
config:
host: localhost
port: 5432
database: postgis
username: username
password: password
# Outputs: Define where notifications are sent
outputs:
- type: mqtt
config:
broker_host: localhost
broker_port: 1883
See examples/config.yaml for a complete configuration example with all available options.
# Install with Helm
helm install eoapi-notifier oci://ghcr.io/developmentseed/charts/eoapi-notifier
# With custom values
helm install eoapi-notifier oci://ghcr.io/developmentseed/charts/eoapi-notifier -f values.yaml
See Helm Chart README for configuration options.
pgstac
: Monitor PostgreSQL/pgSTAC database changes
mqtt
: Publish events to MQTT broker
For development setup, testing, and creating new plugins, see the Development Guide.
We welcome contributions to eoAPI-notifier! Whether you want to fix a bug, add a new feature, or create a custom plugin, your contributions are appreciated.
- Found a bug or have a feature request? Open an issue.
- Have a fix, improvement, or you want to add a new plugin? Submit a pull request with your changes.
Please make sure to read the Development Guide for setup instructions and coding standards.
This project is licensed under the MIT License - see the LICENSE file for details.