EDACS: Differentiate test call from individual call on standard

This commit is contained in:
ilyacodes 2024-04-13 10:27:37 -04:00
parent c073bc49c1
commit 09b181449f
1 changed files with 21 additions and 6 deletions

View File

@ -1632,12 +1632,27 @@ void edacs(dsd_opts * opts, dsd_state * state)
int target = (msg_1 & 0x3FFF); int target = (msg_1 & 0x3FFF);
int source = (msg_2 & 0x3FFF); int source = (msg_2 & 0x3FFF);
fprintf (stderr, "%s", KCYN); if (target == 0 && source == 0)
fprintf (stderr, " Individual Call Channel Assignment ::"); {
if (is_digital == 0) fprintf (stderr, " Analog"); fprintf (stderr, "%s", KYEL);
else fprintf (stderr, " Digital"); fprintf (stderr, " Test Call Channel Assignment ::");
fprintf (stderr, " Callee [%05d] Caller [%05d] LCN [%02d]%s", target, source, lcn, get_lcn_status_string(lcn)); fprintf (stderr, " LCN [%02d]%s", lcn, get_lcn_status_string(lcn));
if (is_tx_trunk == 0) fprintf (stderr, " [Message Trunking]");
state->edacs_vc_lcn = lcn;
//assign bogus values so that this will show up in ncurses terminal and overwrite current values in the matrix
state->lasttg = 999999999;
state->lastsrc = 999999999;
state->edacs_vc_call_type = EDACS_IS_TEST_CALL | EDACS_IS_VOICE; //manually set to trigger voice call in ncurses, but no other flags
lcn = 0; //set to zero here, because this is not an actual call, so don't tune to it
}
else {
fprintf (stderr, "%s", KCYN);
fprintf (stderr, " Voice Individual Channel Assignment ::");
if (is_digital == 0) fprintf (stderr, " Analog");
else fprintf (stderr, " Digital");
fprintf (stderr, " Callee [%05d] Caller [%05d] LCN [%02d]%s", target, source, lcn, get_lcn_status_string(lcn));
if (is_tx_trunk == 0) fprintf (stderr, " [Message Trunking]");
}
fprintf (stderr, "%s", KNRM); fprintf (stderr, "%s", KNRM);
//LCNs >= 26 are reserved to indicate status (queued, busy, denied, etc) //LCNs >= 26 are reserved to indicate status (queued, busy, denied, etc)