mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-14 01:27:34 -05:00
P25 work in progress
This commit is contained in:
@@ -54,7 +54,7 @@ public class P25Message extends Message
|
||||
sb.append( "NAC:" );
|
||||
sb.append( getNAC() );
|
||||
sb.append( " " );
|
||||
sb.append( getDUID().name() );
|
||||
sb.append( getDUID().getLabel() );
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
@@ -74,7 +74,7 @@ public class P25Message extends Message
|
||||
@Override
|
||||
public String getEventType()
|
||||
{
|
||||
return mDUID.name();
|
||||
return "P25 " + mDUID.name();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -117,7 +117,7 @@ public class PDUMessage extends P25Message
|
||||
sb.append( "NAC:" );
|
||||
sb.append( getNAC() );
|
||||
sb.append( " " );
|
||||
sb.append( getDUID().name() );
|
||||
sb.append( getDUID().getLabel() );
|
||||
sb.append( " " );
|
||||
sb.append( getConfirmation() );
|
||||
sb.append( " " );
|
||||
|
||||
@@ -34,7 +34,7 @@ public abstract class GroupChannelGrant extends ChannelGrant
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
if( isEmergency() )
|
||||
{
|
||||
|
||||
@@ -26,7 +26,7 @@ public abstract class GroupChannelGrantExplicit extends ChannelGrant
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
if( isEmergency() )
|
||||
{
|
||||
|
||||
@@ -29,7 +29,7 @@ public abstract class GroupMultiChannelGrant extends ChannelGrant
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " CHAN1:" );
|
||||
sb.append( getChannelID1() + "/" + getChannelNumber1() );
|
||||
|
||||
@@ -60,25 +60,55 @@ public class TSBKMessage extends P25Message
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
Vendor vendor = getVendor();
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SYSTEM:" );
|
||||
sb.append( getNAC() ); /* NAC is the system id for TSBK messages */
|
||||
sb.append( " " );
|
||||
sb.append( getDUID().name() );
|
||||
sb.append( " VEND:" );
|
||||
sb.append( vendor.getLabel() );
|
||||
|
||||
if( isEncrypted() )
|
||||
{
|
||||
sb.append( " ENCRYPTED" );
|
||||
}
|
||||
|
||||
sb.append( " " + getMessageHex() );
|
||||
sb.append( " - " + getMessageHex() );
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
protected String getMessageStub()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
Vendor vendor = getVendor();
|
||||
|
||||
sb.append( "SYS:" );
|
||||
sb.append( getNAC() ); /* NAC is the system id for TSBK messages */
|
||||
sb.append( " " );
|
||||
sb.append( getDUID().getLabel() );
|
||||
|
||||
if( vendor == Vendor.STANDARD )
|
||||
{
|
||||
if( isEncrypted() )
|
||||
{
|
||||
sb.append( " ENCRYPTED" );
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.append( " " );
|
||||
sb.append( getOpcode().getLabel() );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.append( " " );
|
||||
sb.append( vendor.getLabel() );
|
||||
|
||||
if( isEncrypted() )
|
||||
{
|
||||
sb.append( " ENCRYPTED" );
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.append( " OPCD:" );
|
||||
sb.append( mMessage.getHex( OPCODE, 2 ) );
|
||||
}
|
||||
}
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
public String getMessageHex()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
@@ -47,7 +47,7 @@ public class TSBKMessageFactory
|
||||
DataUnitID duid,
|
||||
AliasList aliasList )
|
||||
{
|
||||
int opcode = message.getInt( TSBKMessage.OPCODE );
|
||||
Opcode opcode = Opcode.fromValue( message.getInt( TSBKMessage.OPCODE ) );
|
||||
|
||||
Vendor vendor = Vendor.fromValue(
|
||||
message.getInt( TSBKMessage.VENDOR_ID ) );
|
||||
@@ -55,7 +55,7 @@ public class TSBKMessageFactory
|
||||
switch( vendor )
|
||||
{
|
||||
case STANDARD:
|
||||
switch( Opcode.fromValue( opcode ) )
|
||||
switch( opcode )
|
||||
{
|
||||
case ACKNOWLEDGE_RESPONSE_FNE:
|
||||
return new AcknowledgeResponse( message, duid,
|
||||
@@ -98,6 +98,7 @@ public class TSBKMessageFactory
|
||||
return new GroupVoiceChannelGrantUpdateExplicit( message,
|
||||
duid, aliasList );
|
||||
case IDENTIFIER_UPDATE:
|
||||
case IDENTIFIER_UPDATE_VHF_UHF_BANDS:
|
||||
return new IdentifierUpdate( message, duid, aliasList );
|
||||
case INDIVIDUAL_DATA_CHANNEL_GRANT:
|
||||
return new IndividualDataChannelGrant( message, duid,
|
||||
|
||||
@@ -24,7 +24,7 @@ public abstract class UnitChannelGrant extends ChannelGrant
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
if( isEmergency() )
|
||||
{
|
||||
|
||||
@@ -37,7 +37,7 @@ public class AcknowledgeResponse extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SVC TYPE: " + getServiceType() );
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ public class AdjacentStatusBroadcast extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " LRA:" + getLocationRegistrationArea() );
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ public class AuthenticationCommand extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " WACN: " + getWACN() );
|
||||
sb.append( " SYS ID: " + getSystemID() );
|
||||
|
||||
@@ -30,7 +30,7 @@ public class CallAlert extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SRC ID: " + getSourceID() );
|
||||
sb.append( " TGT ADDR: " + getTargetAddress() );
|
||||
|
||||
@@ -35,7 +35,7 @@ public class DenyResponse extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " TGT ADDR: " + getTargetAddress() );
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ public class ExtendedFunctionCommand extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " EXTENDED FUNCTION:" + getExtendedFunction() );
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ public class GroupAffiliationQuery extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SRC ADDR: " + getSourceAddress() );
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ public class GroupAffiliationResponse extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " AFFILIATION:" + getResponse().name() );
|
||||
sb.append( " ANNOUNCE GROUP:" + getAnnouncementGroupAddress() );
|
||||
|
||||
@@ -26,8 +26,8 @@ public class IdentifierUpdate extends TSBKMessage
|
||||
137,138,139,140,141,142,143 };
|
||||
|
||||
public IdentifierUpdate( BitSetBuffer message,
|
||||
DataUnitID duid,
|
||||
AliasList aliasList )
|
||||
DataUnitID duid,
|
||||
AliasList aliasList )
|
||||
{
|
||||
super( message, duid, aliasList );
|
||||
}
|
||||
@@ -35,14 +35,14 @@ public class IdentifierUpdate extends TSBKMessage
|
||||
@Override
|
||||
public String getEventType()
|
||||
{
|
||||
return Opcode.IDENTIFIER_UPDATE.getDescription();
|
||||
return getOpcode().getDescription();
|
||||
}
|
||||
|
||||
public String getMessage()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " CHAN:" + getIdentifier() );
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ public class LocationRegistrationResponse extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " REGISTRATION:" + getResponse().name() );
|
||||
sb.append( " GROUP:" + getGroupAddress() );
|
||||
|
||||
@@ -32,7 +32,7 @@ public class MessageUpdate extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " MSG:" + getShortDataMessage() );
|
||||
sb.append( " SRC ADDR: " + getSourceAddress() );
|
||||
|
||||
@@ -36,7 +36,7 @@ public class NetworkStatusBroadcast extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " LRA:" + getLocationRegistrationArea() );
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ public class ProtectionParameterUpdate extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " TGT ADDR: " + getTargetAddress() );
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ public class QueuedResponse extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " TGT ADDR: " + getTargetAddress() );
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ public class RFSSStatusBroadcast extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " LRA:" + getLocationRegistrationArea() );
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ public class RadioUnitMonitorCommand extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " MULT:" + getTransmitMultiplier() );
|
||||
sb.append( " SRC ADDR: " + getSourceAddress() );
|
||||
|
||||
@@ -35,7 +35,7 @@ public class RoamingAddressCommand extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( getStackOperation().name() );
|
||||
sb.append( " WACN:" + getWACN() );
|
||||
|
||||
@@ -36,7 +36,7 @@ public class SecondaryControlChannelBroadcast extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " RFSS:" + getRFSS() );
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ public class StatusQuery extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SRC ADDR: " + getSourceAddress() );
|
||||
sb.append( " TGT ADDR: " + getTargetAddress() );
|
||||
|
||||
@@ -32,7 +32,7 @@ public class StatusUpdate extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " STATUS USER:" + getUserStatus() );
|
||||
sb.append( " UNIT:" + getUnitStatus() );
|
||||
|
||||
@@ -35,7 +35,7 @@ public class SystemServiceBroadcast extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SERVICES AVAILABLE " );
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ public class UnitDeregistrationAcknowledge extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " WACN:" + getWACN() );
|
||||
sb.append( " SYSTEM:" + getSystemID() );
|
||||
|
||||
@@ -30,7 +30,7 @@ public class UnitRegistrationCommand extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " SRC ADDR: " + getSourceAddress() );
|
||||
sb.append( " TGT ADDR: " + getTargetAddress() );
|
||||
|
||||
@@ -33,7 +33,7 @@ public class UnitRegistrationResponse extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " REGISTRATION:" + getResponse().name() );
|
||||
sb.append( " SYSTEM:" + getSystemID() );
|
||||
|
||||
@@ -38,7 +38,7 @@ public class TelephoneInterconnectAnswerRequest extends TSBKMessage
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
sb.append( " TO:" );
|
||||
sb.append( getTargetAddress() );
|
||||
|
||||
@@ -22,7 +22,7 @@ public class TelephoneInterconnectVoiceChannelGrant extends UnitChannelGrant
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( super.getMessage() );
|
||||
sb.append( getMessageStub() );
|
||||
|
||||
if( isEmergency() )
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user