Files
hblink3/const.py
T
Cort BuffingtonandClaude Opus 4.8 06c3207909 Fix latent bugs and remove dead code
Behavior-preserving cleanups across the three in-scope apps:

- bridge.py: fix NameError crash in the group-call de-activation trigger
  (_dst_group -> _dst_id); this reference is the lone surviving copy of a
  fix that never propagated through the duplicated routing code, and would
  stop the reactor via the looping-call errback when hit.
- bridge.py: fix send_bridgeEvent str guard (.decode/error= -> .encode/
  errors=); previously latent since callers pre-encode to bytes.
- hblink.py: drop a debug print() left in the DMRC login handler.
- bridge_all.py: fix 'RX:LOSS' -> 'RX_LOSS' key typo (slot 2) and remove
  unused/shadowed imports (bitarray, decode, bptc, dmr_utils3.const).
- config.py: remove unused PEER SOCK_ADDR value.
- const.py: remove duplicate RPTL definition.
- hblink-SAMPLE.cfg: remove orphaned EXPORT_AMBE keys (never parsed).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 09:41:26 -05:00

75 lines
2.1 KiB
Python
Executable File

#!/usr/bin/env python
#
###############################################################################
# Copyright (C) 2016-2018 Cortney T. Buffington, N0MJS <n0mjs@me.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
###############################################################################
'''
These are contants used by HBlink. Rather than stuff them into the main program
file, any new constants should be placed here. It makes them easier to keep track
of and keeps hblink.py shorter.
'''
__author__ = 'Cortney T. Buffington, N0MJS'
__copyright__ = 'Copyright (c) 2016 Cortney T. Buffington, N0MJS and the K0USY Group'
__credits__ = ''
__license__ = 'GNU GPLv3'
__maintainer__ = 'Cort Buffington, N0MJS'
__email__ = 'n0mjs@me.com'
# DMR Related constants
ID_MIN = 1
ID_MAX = 16776415
# Timers
STREAM_TO = .360
# Options from the LC - used for late entry
LC_OPT = b'\x00\x00\x20'
# HomeBrew Protocol Frame Types
HBPF_VOICE = 0x0
HBPF_VOICE_SYNC = 0x1
HBPF_DATA_SYNC = 0x2
HBPF_SLT_VHEAD = 0x1
HBPF_SLT_VTERM = 0x2
# HomeBrew Protocol Commands
DMRA = b'DMRA'
DMRC = b'DMRC'
DMRD = b'DMRD'
MSTCL = b'MSTCL'
MSTNAK = b'MSTNAK'
MSTPONG = b'MSTPONG'
MSTN = b'MSTN'
MSTP = b'MSTP'
MSTC = b'MSTC'
RPTL = b'RPTL'
RPTPING = b'RPTPING'
RPTCL = b'RPTCL'
RPTACK = b'RPTACK'
RPTK = b'RPTK'
RPTC = b'RPTC'
RPTP = b'RPTP'
RPTA = b'RPTA'
RPTO = b'RPTO'
# Higheset peer ID permitted by HBP
PEER_MAX = 4294967295