No description
- Python 89.7%
- Shell 9.5%
- Dockerfile 0.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
First explicit version of the component: the pre-repository production image carried no version label (see HISTORY-RECONSTRUCTION.md). VERSION is the property of the checkout (RCP source-only release pattern). README replaces the GitLab template and documents the runtime contract: AMI bridge, stdlib-only, host network, operator-owned environment. Assisted-by: Félin Capiteux <felin@lodlp.net> |
||
| .githooks | ||
| resources/git | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| AGENTS.md | ||
| bridge.py | ||
| Dockerfile | ||
| HISTORY-RECONSTRUCTION.md | ||
| LICENSE | ||
| README.md | ||
| VERSION | ||
PBX Metadata
Bridges Radio Craig Pelton now-playing metadata into the PBX (Asterisk Manager Interface): bridge.py polls the metadata daemon and pushes artist/title to AMI so PBX callers see the live station metadata; stream URLs are advertised from RADIO_STREAM_URLS.
Runtime
- Pure Python 3 standard library; no external dependencies.
- Runs on the shared RCP runtime image (rcp-runtime) with the source bind-mounted read-only from this checkout (git-bind pattern).
- network_mode: host is required to reach the local AMI endpoint.
- Hardening: read_only, tmpfs /tmp, cap_drop ALL, no-new-privileges.
Environment (operator-owned)
Provided via compose env_file (.env.pbx-metadata), never committed to Git (see HISTORY-RECONSTRUCTION.md):
AMI_HOST, AMI_PORT, AMI_USER (required), AMI_SECRET (required), METADATA_URL, RADIO_STREAM_URLS, POLL_SECONDS, LOG_LEVEL
Version
VERSION holds the component version (0.1.0), property of the checkout. The pre-repository production image carried no version label.
Release
Source-only: swap checkout + docker compose restart. Deploy/Restart buttons are available in the RCP console (rcp-console-jobs runner).