Closed ilyacodes closed 5 months ago
Please can you outline the changes you made to tk_p25.py. Thanks.
Please can you outline the changes you made to tk_p25.py. Thanks.
Absolutely. tk_p25.py
includes the following changes:
expired_patches
to expire_patches
to match the actual function name)Apologies again for the huge PR - I kept on adding things as I was still testing, so it added up. Future PRs will be much more manageable now that there's better parity between P25 and SmartNet in the code
Per request, I waited until I had substantial changes that were tested - sorry it's so big.
This first PR includes work done using OTA messages as well as confirmed messages RE-ed from other sources.
Add more OSWs
This PR adds many new OSWs, including support for voice call grants, OBT call grants including explicit tx frequencies, various extended function messages, denials, dynamic regrouping, date/time, patches/multiselects, AMSS, and various system/network status messages.
Note that future changes will add more OSWs after they have been confirmed.
Improve parsing reliability
Bad OSW queue reset
This PR adds logic to track when a
sync lost
orcrc fail
event occurs inrx_smartnet.cc
and uses that to reset the OSW queue intk_smartnet.py
. In addition to the reset, it properly handles parsing messages after a queue reset, fixing the issue of bad OSWs being transparent to Python and parsing skipping over them.System IDLE command reordering
We also add a lot of wonky logic to handle system
IDLE
commands, which are sometimes injected in the middle of other multi-OSW messages.Improve display
Display call options
This PR displays call options (analog/digital, emergency, patch, etc) on both the
ncurses
and web terminal interfaces.Track alternate CCs
This PR adds alternate CC tracking and displays them inline with the system frequencies on both the
ncurses
and web terminal interfaces.Track adjacent sites
This PR adds adjacent site tracking and display on the web terminal interface.
Track patches
This PR adds patch tracking and display on the web terminal interface.