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.
yo
ecddd1191d
feat(plugins): group voice from plugins, routed like announcements
...
First step to move scheduled announcements, TTS and voice beacons out of
the core into a plugin: a plugin granted `group_voice_tgs` in
PLUGINS.send can send group voice on those talkgroups.
- PluginIngress (application layer) enters plugin frames on the
announcement MASTER. Group voice goes through dmrd_received with
synthetic_announcement=True, exactly the path announcements use (the
TG's bridges, OpenBridge included), then to that MASTER's hotspots.
- While a plugin stream plays it holds the MASTER slot (TX_TYPE=VHEAD,
TX_STREAM_ID, TX_RFS, TX_TGID), so routed voice finds it busy; a radio
or another stream on the slot fails the frame; VTERM frees it.
- send_dmrd called on the reactor thread returns the routing result, so
a plugin knows when to stop; from a worker thread it is queued.
- Private voice stays refused. Unit data is unchanged (local only).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
4 days ago
..
test_announcement_ptt_inject.py
fix: don't attribute synthetic announcement PTT to a real connected peer
2 months ago
test_config_reload.py
Merge pull request #50 from ce5rpy/feat/obp-proxy-fan-in
3 months ago
test_crc_dedup.py
chore: add full GPL license headers across server and tests
4 months ago
test_echo_bootstrap_seed.py
fix: audit refactors, report contract, and concurrent OBP downlink ( #36 )
3 months ago
test_echo_subscription_reset.py
fix: audit refactors, report contract, and concurrent OBP downlink ( #36 )
3 months ago
test_forward_plan_cache.py
refactor(routing): address review on the forward plan cache
4 days ago
test_obp_announcement_contention.py
fix: inject scheduled voice via routing and restore monitor TX events
3 months ago
test_obp_concurrent_streams_downlink.py
fix: audit refactors, report contract, and concurrent OBP downlink ( #36 )
3 months ago
test_obp_hbp_target_slot_dedup.py
fix: forward OBP group voice to an HBP target only once per TG
2 months ago
test_obp_reused_stream_id.py
fix(obp): let a reused stream_id start a new call instead of dropping it
6 days ago
test_options_config_loop.py
chore: add full GPL license headers across server and tests
4 months ago
test_peer_downlink_index.py
fix(routing): match legacy cross-slot TG downlink for hotspots
3 months ago
test_peer_options_cache.py
perf(hbp): parse a peer's OPTIONS and RF mode when they change, not per frame
5 days ago
test_peer_options_override.py
fix: align test suite and release infra with develop for 2.2.0
3 months ago
test_plugin_send_routing.py
feat(plugins): group voice from plugins, routed like announcements
4 days ago
test_private_voice.py
Merge pull request #50 from ce5rpy/feat/obp-proxy-fan-in
3 months ago
test_report_peer_id.py
chore: add full GPL license headers across server and tests
4 months ago
test_rule_timer_stops_source.py
fix(subscription): unindex a leg by where it was indexed, not by its state now
5 days ago
test_rule_timer_timeout.py
chore: add full GPL license headers across server and tests
4 months ago
test_startup_subscriptions.py
chore: add full GPL license headers across server and tests
4 months ago
test_static_tg_options.py
chore: add full GPL license headers across server and tests
4 months ago
test_subscription_router_dmrd.py
fix: align test suite and release infra with develop for 2.2.0
3 months ago
test_unit_data_ingress.py
feat(plugins): add drop-in plugin framework for voice and unit-data
1 week ago
test_unit_data_routing.py
fix(routing): don't fan out unit data to OBPs for a fresh local subscriber
1 week ago
unit_data_helpers.py
chore: add full GPL license headers across server and tests
4 months ago