mirror of
https://github.com/n0mjs710/HBlink4.git
synced 2026-11-08 12:26:31 +00:00
Integrate the unit (private) call routing feature and DMR data-call classification (v4.8.0) into the OpenBridge branch, which had diverged from main before that work landed. This resolves a production startup crash: configs written for v4.8.0 carry `default_unit_calls` in pattern configs, which the pre-v4.8.0 openbridge RepeaterConfig rejected. Conflicts (hblink4/hblink.py, in _forward_stream target loop): - Kept the OpenBridge egress `elif target[0] == 'openbridge'` branch. - Threaded unit-call metadata through the assumed-stream trackers: pass the generalized `source_disp_id` (identical to main's int.from_bytes(source_repeater_id) for repeater sources, and correct for OBP sources) plus `is_unit_call=source_stream.is_unit_call`. StreamState.is_unit_call defaults False, so OBP-sourced streams read as group calls, matching the TGID-trunk model. readme.md: keep both the OpenBridge-trunks and unit-call feature bullets and take main's v4.8.0 release-notes list. Tests: 94 passed (main's unit-call suites + openbridge's 10 OBP tests). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>