| .. | ||
| src | ||
| Cargo.toml | ||
| module.nix | ||
| README.md | ||
Zulip Bridge
Receives webhooks from the cache service and posts door status updates into a Zulip stream.
Validates inbound webhooks with a Bearer token, then sends a stream message through the Zulip API using a bot email and API key.
API
| Method | Path | Auth | Description |
|---|---|---|---|
POST |
/webhook |
Bearer | Status update from the cache service |
GET |
/health |
- | Health check |
Configuration
NixOS options under services.noisebell-zulip:
| Option | Default | Description |
|---|---|---|
domain |
required | Caddy virtual host domain |
zulipUrl |
required | Base URL of the Zulip server |
botEmail |
required | Zulip bot email address |
apiKeyFile |
required | Zulip bot API key file |
stream |
required | Zulip stream for updates |
topic |
noisebell |
Zulip topic for updates |
imageBaseUrl |
https://noisebell.extremist.software/image |
Base URL for status image links |
webhookSecretFile |
required | Shared secret with the cache service |
port |
3003 |
Listen port |