You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.5 KiB
2.5 KiB
Introduction
Purpose
This service is a DMR peer and bridge. It implements:
- HBP over UDP to MASTER and PEER systems (DMRD frames, authentication, pings).
- OpenBridge over UDP to other networks — DMRE v5 (embedded version 5, BLAKE2b, hops) is the recommended inter-server mode on ADN; DMRD v1 remains available for compatibility (see OpenBridge).
Configuration is YAML (adn-server.yaml), merged at runtime with optional voice settings (adn-voice.yaml). The shipped template is adn-server.example.yaml.
Design
Routing, timers, OpenBridge loop control, and protocol handling are implemented in application and infrastructure modules behind stable ports; the domain layer holds types and rules without I/O. This keeps the system easier to reason about and extend.
Major subsystems
| Subsystem | Role |
|---|---|
| Bridge router | BRIDGES table: which systems forward which TG on which slot; dynamic bridges; static/stat bridges. |
| HBP protocol | Authentication, DMRD ingress/egress, repeat to peers, TG filters. |
| OpenBridge | DMRE ingress, hop limit, loop control (min(1ST)), BCSQ/BCKA when enabled. |
| Voice | AMBE files, scheduled announcements, TTS pipeline, on-demand playback (TG 9991–9999). |
| Reporting | TCP netstring channel to adn-monitor (and compatible dashboards): config, bridge state, call events (report v2 JSON). |
| Hotspot proxy | Optional integrated UDP fan-in (PROXY in adn-server.yaml) plus MySQL self-service (SELF_SERVICE) for dashboard-driven hotspot options. |
Related programs
- Echo / playback —
adn-server.py --echowith minimaladn-echo.yaml; see Echo. - Integrated hotspot proxy —
PROXYinadn-server.yaml; see Hotspot proxy.
Next steps
- Configuration — files,
GLOBAL, MASTER / PEER / OPENBRIDGE, ACLs, reports,PROXY,SELF_SERVICE, aliases, voice merge. - Bridges and talkgroups — how
BRIDGESworks. - Special numbers — TG 4000, information services, echo.
- Hotspot proxy — integrated
PROXY/SELF_SERVICEinadn-server.yaml. - ADN Monitor — dashboard,
adn-monitor.yaml, self-service UI (separate repo, deployed with the server). - Credits & license — ADN → FreeDMR → hblink3, license.