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/special-numbers.md

7.9 KiB

Special numbers (TG / IDs)

Several destination IDs are reserved for control or services. They are handled in protocol layers and/or the bridge router, not as normal group traffic.

ID 5000 — server voice source (not “announcement TG”)

Important: 5000 is the RF source ID the server uses when it transmits automated voice. Radios and dashboards show caller ID 5000 for that traffic.

Traffic Destination in the DMR packet Notes
Scheduled AMBE (ANNOUNCEMENTS) Whatever TG you set in adn-voice.yaml Source ID 5000.
TTS (TTS_ANNOUNCEMENTS) Same — configured TG Source ID 5000.
On-demand (TG 9991–9999) TG 9 Short info clips; source 5000 (see Voice, announcements, and TTS).
Disconnected / reflector prompts TG 9 Source 5000.
Voice ident All-call (16777215) or OVERRIDE_IDENT_TG if set Source 5000.

You do not “monitor TG 5000” to hear scheduled announcements: you monitor the configured announcement TG (e.g. 2, 9, 26811). 5000 appears as the transmitter ID on those calls.

Destination TG 5000 (inbound group)

If a group call arrives with destination TG 5000 and there is no existing BRIDGES entry, the server does not auto-create a user-activated bridge for that TG (same class as IDs 0–4, 9, 4000). To carry traffic to TG 5000 you need an explicit bridge row.

TG 9 — local service lane (prompts and bridge plumbing)

TG 9 is used in two different ways: what operators hear from short server prompts, and how internal bridge rows are wired.

What you hear (outbound server voice)

For on-demand playback (after you key 9991–9999) and for disconnected / reflector voice lines, the server transmits group packets with:

  • Source ID 5000
  • Destination TG 9
  • Timeslot 2 (the code drives the TS2 slot for that hotspot)

That follows a common HomeBrew / conference convention: keep short local service audio on TG 9 / TS2 so it stays separate from normal QSO traffic on your main TG (often on TS1). Hotspots must pass TS2 and be on a configuration where TG 9 is not blocked, or those prompts will not be heard.

Red vs local: On OpenBridge, inbound group traffic to TG 9 is in the ≤ 79 “local / repeater” range and is not brought into the bridge from the IP mesh (it is dropped at ingress). Server prompts use the local HBP path to the hotspot/repeater, not a wide-area bridged TG. Exception: only if you explicitly add BRIDGES rows that forward TG 9 could that traffic be sent elsewhere — not the default.

Scheduled announcements and TTS use the TG you set in adn-voice.yaml — they are not forced to TG 9 unless you configure that TG yourself.

Router behaviour (reserved TG)

  • No automatic user-activated bridge if someone transmits to TG 9 and no BRIDGES row exists (same class as 0–4, 4000, 5000, etc.).
  • With GEN_STAT_BRIDGES, automatic STAT bridge creation from OpenBridge does not apply to destination TG 9 (it is excluded on purpose).
  • The bridge debug loop removes invalid conference bridges keyed 9 (and 0–8) so single-digit stray bridges do not accumulate.

Bridge table (advanced)

Many reflector / dial rows store TGID = 9 on TS2 as the leg destination used internally to attach the dynamic path to the real talkgroup — that is wiring inside BRIDGES, not something you “call” like a normal national TG.

In-band VTERM rules that affect TG 9 / reflector behavior

In-band bridge activation/deactivation is applied on voice terminator (VTERM) with this scope:

  • It runs only for call types group and vcsbk (not for unit/private VTERM).
  • For reflector bridges (#...), in-band handling is evaluated only when the destination is TG 9.
  • This is why reflector prompts and dial wiring are tied to TG 9 while private calls do not trigger that bridge-timer logic.

TG / ID 4000 — deactivate dynamic bridges

Purpose: Clear user-activated (dynamic) bridges for the system that receives the call.

Behaviour:

  • Implemented for group traffic to destination 4000 (and related checks in the router).
  • Runs before normal TG ACL in the OpenBridge path so the command is not blocked by allow lists.
  • Invokes deactivate_all_dynamic_bridges: deactivates non-stat, non-reflector dynamic bridge rows.

Use this when operators need to reset dynamic routing without restarting the server.

SINGLE_MODE impact on deactivation logic

When in-band rules evaluate deactivation on a MASTER slot:

  • SINGLE_MODE: true: deactivation is aggressive. A bridge leg can be turned off by OFF/RESET triggers, TG 4000, or traffic that does not match the leg TG.
  • SINGLE_MODE: false: deactivation is conservative. TG 4000 is the primary forced-deactivate trigger; static TG rows and reflector rows are preserved according to current bridge checks.

Operationally: if users report “bridges drop too easily” after OPTIONS updates, verify the current SINGLE_MODE value and hotspot OPTIONS payload.

TG 9991–9999 — information / on-demand audio

Purpose: Play back pre-generated AMBE (“ondemand”) files (e.g. station info, help).

Behaviour:

  • Triggers playFileOnRequest-style handling: maps the last digits to a file name under the configured audio tree.
  • Trigger path is private VTERM for destination 9991–9999, then async playback generation.
  • Works from MASTER and PEER paths.

The audio is sent with source ID 5000 and destination TG 9 in the generated stream. File layout: Voice, announcements, and TTS.

TG 9990 — echo (in-band)

Purpose: Bridge rows for echo often use 9990 with the ECHO system (see BRIDGES and options in your YAML).

Note: A standalone echo is also available as a separate process — Echo.

Private call to ID 4000

A unit call to 4000 is treated as disconnect dynamics only; it is not routed as a normal private call.

OpenBridge ingress — group TG filters

On OpenBridge (DMRD v1 and DMRE), non-unit group traffic to certain TGs may be dropped before bridging (with BCSQ where applicable). Rules differ slightly between DMRD and DMRE; they include low-number TGs (e.g. ≤ 79), 9990–9999, 900999, ranges 92–199 (vs source server), and MCC-related ranges (80–89, 800–899). Details: OpenBridge protocol.

Prohibited / reserved TGs (bridge creation)

Many small IDs (0–5, 9, etc.) and the 999x service range are excluded from certain automatic bridge-creation paths; 5000 and 4000 are in the “no auto UA bridge” set when no row exists. Exact sets are defined in the bridge router and options handling in source.

Summary table

ID / range Role
5000 (source) Server-generated voice (announcements, TTS, prompts, ident) — caller ID on receivers
5000 (destination) No auto user-activated bridge if missing from BRIDGES
4000 (group) Deactivate dynamic bridges
4000 (unit) Disconnect dynamics; not routed as PC
9991–9999 On-demand / information audio (trigger TG); playback uses src 5000 → TG 9 (TS2)
9 Service/prompt lane (short server audio); reserved for auto-bridges; internal TGID on TS2 legs
9990 Echo bridge TG (with ECHO system)
16777215 All-call (default voice-ident destination unless overridden)

Powered by TurnKey Linux.