7 Commits
Author SHA1 Message Date
cortandClaude Opus 5 512249c3ed Correct the integration guide and trim systemd doc
docs/integration.md still documented a Twisted application: reactor,
listenUDP, callLater, reactor.run, and "HBlink4 uses Twisted's event
loop". HBlink4 moved to asyncio in 4.7.0. Beyond the framework, the
examples referenced things that do not exist -- connection_state == 'yes'
(the real values are login/config/connected), and handle_repeater_connection
/ handle_dmr_data / datagramReceived, none of which are methods on
HBProtocol. Rewritten against the actual API: create_datagram_endpoint,
datagram_received, the _handle_* override points, and the real
RepeaterState fields, with asyncio-appropriate notes on threading and
not blocking the loop.

SYSTEMD.md's upgrade section narrated the recent changes; reduced to the
operational fact that there is no install step and old units pointing at
run.py need re-copying.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 21:03:57 -05:00
cort 355ed0433d Dashboard statistics redesign and documentation cleanup
- Dashboard: Redesigned statistics for operational clarity
  - 'Total Calls Today': RX streams only (actual RF traffic)
  - 'Retransmitted Calls Today': TX streams (server forwarding)
  - 'Active Streams': Current RX+TX activity
  - 'Total Traffic Today': Duration of RX streams only
  - Added is_assumed checks to differentiate RX from TX streams

- Documentation: Eliminated redundancy and historical content
  - Removed HBlink3->HBlink4 evolution story from README
  - Consolidated installation/configuration details to single sources
  - Removed redundant sections from dashboard and integration docs
  - Deleted implementation summaries with development history
  - Established single-source documentation pattern

- Updated dashboard README to reflect new statistics semantics
2025-10-30 08:03:03 -05:00
cort 31fe38b6dd Release v1.3: Documentation audit and config restructure
Major changes:
- Comprehensive documentation audit completed
- Config restructure: dashboard moved from global to top-level
- Dual-stack IPv6: bind_ipv4/bind_ipv6 with port_ipv4/port_ipv6
- Dashboard transport: host_ipv4/host_ipv6 with disable_ipv6 flag
- Fixed corrupted dashboard/server.py imports
- Updated all documentation to match actual implementation
- Removed duplication, established single source of truth

Documentation updates:
- docs/configuration.md: Complete overhaul with accurate field definitions
- docs/dashboard_transport.md: Updated transport configuration guide
- docs/integration.md: Dual-stack integration examples
- dashboard/README.md: Clarified dashboard configuration requirements
- DASHBOARD_INTEGRATION.md: Streamlined integration summary
- All config examples now use correct field names

Configuration changes:
- dashboard section moved to top-level (not nested under global)
- IPv6 settings: disable_ipv6 flag replaces ipv6 boolean
- Separate bind addresses and ports for IPv4 and IPv6
- Dashboard uses host_ipv4/host_ipv6 instead of single host field

Bug fixes:
- Fixed syntax error in dashboard/server.py (corrupted imports)
- All JSON configs validate successfully
- All 39 tests passing

See DOCUMENTATION_AUDIT.md for complete audit report.
2025-10-05 10:32:09 -05:00
Cort Buffington 6131bb52f3 cleaning up integration documentation 2025-09-01 10:32:51 -05:00
Cort Buffington 6ef0053610 change state names for more readability 2025-08-31 09:45:16 -05:00
Cort Buffington 8d9c53c7a7 more documentation on operating and managing a server 2025-08-30 16:51:34 -05:00
Cort Buffington 068c0ff24a add documentation 2025-08-30 16:45:50 -05:00