mirror of https://github.com/lwvmobile/dsd-fme.git
Add Per Call String For NXDN Conventional / Type-D;
This commit is contained in:
parent
28a6777d83
commit
5dbccaadf6
|
|
@ -2148,9 +2148,16 @@ ncursesPrinter (dsd_opts * opts, dsd_state * state)
|
||||||
//open wav file if enabled and both rd and tg are not 0
|
//open wav file if enabled and both rd and tg are not 0
|
||||||
if (opts->dmr_stereo_wav == 1 && src != 0 ) //&& tgn != 0, some TG can be 0 on NXDN
|
if (opts->dmr_stereo_wav == 1 && src != 0 ) //&& tgn != 0, some TG can be 0 on NXDN
|
||||||
{
|
{
|
||||||
|
//setup a call string for the per call (group/private and/or emergency)
|
||||||
|
//No Space Skips / Truncates Needed on NXDN string variant
|
||||||
|
char cs[200]; memcpy (cs, state->call_string[0], 200*sizeof(char));
|
||||||
|
|
||||||
//close old first, assign name based on time and radio, open wav file
|
//close old first, assign name based on time and radio, open wav file
|
||||||
closeWavOutFileL (opts, state);
|
closeWavOutFileL (opts, state);
|
||||||
sprintf (opts->wav_out_file, "%s/%s %s NXDN - RAN %d - TGT %d - SRC %d.wav", opts->wav_out_dir, datestr, timestr, rn, tgn, src);
|
|
||||||
|
// sprintf (opts->wav_out_file, "%s/%s %s NXDN - RAN %d - DST %d - SRC %d.wav", opts->wav_out_dir, datestr, timestr, rn, tgn, src); //original
|
||||||
|
sprintf (opts->wav_out_file, "%s/%s %s NXDN - RAN %d - %s - DST %d - SRC %d.wav", opts->wav_out_dir, datestr, timestr, rn, cs, tgn, src); //with call string
|
||||||
|
|
||||||
openWavOutFileL (opts, state); //testing for now, will want to move to per call later
|
openWavOutFileL (opts, state); //testing for now, will want to move to per call later
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -647,6 +647,10 @@ void NXDN_decode_VCALL_ASSGN(dsd_opts * opts, dsd_state * state, uint8_t * Messa
|
||||||
state->nxdn_last_tg = DestinationID;
|
state->nxdn_last_tg = DestinationID;
|
||||||
sprintf (state->nxdn_call_type, "%s", NXDN_Call_Type_To_Str(CallType));
|
sprintf (state->nxdn_call_type, "%s", NXDN_Call_Type_To_Str(CallType));
|
||||||
|
|
||||||
|
//Call String for Per Call WAV File
|
||||||
|
sprintf (state->call_string[0], "%s", NXDN_Call_Type_To_Str(CallType));
|
||||||
|
if (CCOption & 0x80) strcat (state->call_string[0], " Emergency");
|
||||||
|
|
||||||
//check the rkey array for a scrambler key value
|
//check the rkey array for a scrambler key value
|
||||||
//TGT ID and Key ID could clash though if csv or system has both with different keys
|
//TGT ID and Key ID could clash though if csv or system has both with different keys
|
||||||
if (state->rkey_array[DestinationID] != 0)
|
if (state->rkey_array[DestinationID] != 0)
|
||||||
|
|
@ -681,6 +685,10 @@ void NXDN_decode_VCALL_ASSGN(dsd_opts * opts, dsd_state * state, uint8_t * Messa
|
||||||
state->nxdn_last_tg = DestinationID;
|
state->nxdn_last_tg = DestinationID;
|
||||||
sprintf (state->nxdn_call_type, "%s", NXDN_Call_Type_To_Str(CallType));
|
sprintf (state->nxdn_call_type, "%s", NXDN_Call_Type_To_Str(CallType));
|
||||||
|
|
||||||
|
//Call String for Per Call WAV File
|
||||||
|
sprintf (state->call_string[0], "%s", NXDN_Call_Type_To_Str(CallType));
|
||||||
|
if (CCOption & 0x80) strcat (state->call_string[0], " Emergency");
|
||||||
|
|
||||||
//check the rkey array for a scrambler key value
|
//check the rkey array for a scrambler key value
|
||||||
//TGT ID and Key ID could clash though if csv or system has both with different keys
|
//TGT ID and Key ID could clash though if csv or system has both with different keys
|
||||||
if (state->rkey_array[DestinationID] != 0)
|
if (state->rkey_array[DestinationID] != 0)
|
||||||
|
|
@ -1215,6 +1223,11 @@ void NXDN_decode_VCALL(dsd_opts * opts, dsd_state * state, uint8_t * Message)
|
||||||
if(CCOption & 0x40) fprintf(stderr, "Visitor ");
|
if(CCOption & 0x40) fprintf(stderr, "Visitor ");
|
||||||
if(CCOption & 0x20) fprintf(stderr, "Priority Paging ");
|
if(CCOption & 0x20) fprintf(stderr, "Priority Paging ");
|
||||||
|
|
||||||
|
//Call String for Per Call WAV File
|
||||||
|
sprintf (state->call_string[0], "%s", NXDN_Call_Type_To_Str(CallType));
|
||||||
|
if (CCOption & 0x80) strcat (state->call_string[0], " Emergency");
|
||||||
|
if (CipherType) strcat (state->call_string[0], " Enc");
|
||||||
|
|
||||||
if((CipherType == 2) || (CipherType == 3))
|
if((CipherType == 2) || (CipherType == 3))
|
||||||
{
|
{
|
||||||
state->NxdnElementsContent.PartOfCurrentEncryptedFrame = 1;
|
state->NxdnElementsContent.PartOfCurrentEncryptedFrame = 1;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue