Skip to main content

Overview

Boomerang is an alerting engine built on Kontiki. Producers publish alerts; the core matches YAML subscriptions; notifiers deliver (email, Telegram, …).

1.0.0 freezes YAML targeting (app.subscriptions, notifier app.endpoints) and the bus contracts. Both ends speak shared contracts (boomerang-contracts):

Producers ──► NormalizedAlert ──► subscription + alert-engine ──► NotificationRequest ──► Notifiers
  • Upstream: add a producer that emits NormalizedAlert (AMQP alert.normalized or POST /alerts) — no change to the engine.
  • Downstream: add a notifier that consumes {channel}.alerting.notification.requested and exposes a channel catalogue — same targeting model.
  • Middle: who gets notified is declared in YAML (app.subscriptions + notifier app.endpoints).

More detail: docs/features.md · docs/contracts.md · docs/configuration.md.


Install

Run the platform (CLI entrypoints):

pip install kontiki-boomerang
# boomerang-subscription, boomerang-alert-engine,
# boomerang-email-notifier, boomerang-telegram-notifier, …

Extend Boomerang (producers / notifiers — contracts only):

pip install boomerang-contracts

The quickstart below uses Docker Compose instead of a local pip install.


Quickstart — earthquake → Telegram / MailHog

The demo stack polls USGS, normalizes quakes, and notifies Telegram plus email (MailHog). Targeting lives in stack/subscription.demo.yaml (magnitude >= 2 → telegram.alerts and email.inbox).

1. Bot token (once):

cp stack/notifiers/telegram_bot_token.yaml.example \
   stack/notifiers/telegram_bot_token.yaml
# set app.telegram.bot_token from BotFather

2. Telegram chat in stack/notifiers/telegram.yaml:

app:
  endpoints:
    alerts:
      chat_id: "YOUR_CHAT_ID"

3. Start the demo:

make stack-up-demo

Email copies land in MailHog (http://127.0.0.1:8025). When a matching quake arrives, Telegram looks like this:

Telegram notification from Boomerang earthquake demo

Stop the stack:

make stack-down

Details (pipeline, HTTP ingest, catalogues, contracts): docs/features.md.


Documentation

Service README
Subscription boomerang/services/subscription/README.md
Alert engine boomerang/services/alert_engine/README.md
Email notifier boomerang/services/notifiers/email/README.md
Telegram notifier boomerang/services/notifiers/telegram/README.md
Earthquake feed (demo) boomerang/services/alert_services/earthquake/README.md

Metadata

Release files for kontiki-boomerang 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kontiki-boomerang 1.0.0
File Size Uploaded
kontiki_boomerang-1.0.0.tar.gz 25.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kontiki-boomerang 1.0.0
File Interpreter ABI Platform
kontiki_boomerang-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 71.8 kB

Release files / kontiki_boomerang-1.0.0.tar.gz

Download URL kontiki_boomerang-1.0.0.tar.gz
Size 25.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4086befea5c526b838d3ec1c5660d03e46882ff4afcc49b0633b4d71c418e8c8
BLAKE2b-256 checksum
How to use checksums
e0d452be709f44c47547ae687e11403c8c724334cdc623083496520b4b0ff64c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.13.7 Linux/6.8.0-139-generic

Release files / kontiki_boomerang-1.0.0-py3-none-any.whl

Download URL kontiki_boomerang-1.0.0-py3-none-any.whl
Size 46.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
92fd78cc9bd0b2f908d55b915b1d25779b5fed860a5cbceaebc137a9698d3cc9
BLAKE2b-256 checksum
How to use checksums
8cbfbbd298669969cf7e7d6b3c645609ea4fb001ee52166f17207fa000c5fa7b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.13.7 Linux/6.8.0-139-generic

Release history Release notifications | RSS feed

2.1.1

2 release files

2.1.0

2 release files

2.0.0

2 release files

This release

1.0.0 This release

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page