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.
ADN-DMR-Peer-Server/docs/en/server/user-guide/introduction.md

2.1 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 for legacy interop (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, BRDG_EVENT call events.
  • Parrot / playback — separate entrypoint (adn-parrot.py) for record-and-playback; see Parrot.

Next steps

Powered by TurnKey Linux.