public class PositionlessWeatherReport extends Message implements SendableMessage
AX25Message.Precedence
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
MDHM
Date format String to parse 8-character date/time strings.
|
char |
softwareType
Code for type of software the sending weather station is using.
|
java.lang.String |
wsType
Weather station hardware type.
|
appendCR, APRS_AND_OPENTRAC_AND_RAW, APRS_AND_RAW, comment, msgType, S_PERMANENT, S_PERMANENT_UC, symbolCode, symTableId
APRS_AND_OPENTRAC, ax25Frame, extensions, invalid, originatingCallsign, originatingDest, PERMANENT, rcptTime, thirdParty, timestamp, UTC
Constructor and Description |
---|
PositionlessWeatherReport(byte[] body,
int offset,
java.lang.String tp,
AX25Callsign dst,
long rcvTimestamp)
Standard constructor for PositionlessWeatherReport, for decoding from an AX.25 frame (or equivalent).
|
PositionlessWeatherReport(long now)
Alternate constructor, used to create an empty message for population by local weather data.
|
PositionlessWeatherReport(java.lang.String body,
int offset)
Alternate constructor, used only to decode $PKWDWXI special message from Kenwood TH-D72
HT's built-in TNC when weather data is expected to be imported into the TNC from a local
weather station.
|
Modifier and Type | Method and Description |
---|---|
void |
disableForTransmit()
Specify that message should no longer be transmitted.
|
byte[] |
getBody(boolean countTransmission,
ProtocolFamily protocolId,
AX25Frame frame)
Get an instance of this message, suitable for transmitting.
|
java.util.Set<ProtocolFamily> |
getProtocols()
Get the protocol family or families that this message corresponds to, so
ports that don't support all protocols will not forward inappropriate packets.
|
boolean |
isEnabled()
Test if message should still be transmitted.
|
boolean |
isSymbolInferred()
Report whether the non-null APRS symbol reported by this message is explicit or
inferred from destination or source callsign.
|
java.lang.String |
paramString()
Descriptive text about this message, to be included in the toString() method's response.
|
bodyEquals, compareTo, decodeDatestamp, decodeHurricaneParams, decodeTimestamp, decodeWeatherParams, decodeWeatherParams, dup, encodeTimestamp, extractComment, extractComment, extractSymbol, formatBody, getComment, getExtensionString, getMsgType, getPrecedence, getSymbolCode, getSymTableId, hasWeather, inferSymbol, isAppendCR, looksLikeLongFormatLatitude, setAppendCR, setComment, setSymbolCode, setSymTableId, toString
equals, extractSource, getAx25Frame, getExtension, getFirstDigipeat, getLastDigipeat, getNthDigipeat, getOriginalDestination, getOriginalSource, getOriginatingCallsign, getOriginatingDest, getRcptTime, getReadOnlyExtensionMap, getTimestamp, hashCode, hasPosition, hasThisFirstDigi, indexOf, indexOf, isDirect, isInvalid, isRf, onlyDigits, onlyDigits, onlyDigitsOrMinus, onlyDigitsOrPeriod, onlyDigitsOrSpace, onlyDigitsPlus, onlyPeriods, setAx25Frame, setInvalid, setOriginatingCallsign, setRcptTime, setTimestamp, split, storeExtension
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
dup
protected static final java.lang.String MDHM
public char softwareType
public java.lang.String wsType
public PositionlessWeatherReport(byte[] body, int offset, java.lang.String tp, AX25Callsign dst, long rcvTimestamp)
body
- byte array of frame bodyoffset
- starting point in the array (in case of third-party header)tp
- extracted third-party header Stringdst
- destination AX25Callsign from framercvTimestamp
- timestamp at which message was receivedpublic PositionlessWeatherReport(java.lang.String body, int offset)
body
- String containing the $PKWDWXI messageoffset
- index of first byte after the message headerpublic PositionlessWeatherReport(long now)
now
- time of weather data, in Java milliseconds since Jan 1, 1970 UTCpublic java.lang.String paramString()
paramString
in class Message
Message.toString()
public byte[] getBody(boolean countTransmission, ProtocolFamily protocolId, AX25Frame frame)
getBody
in interface SendableMessage
countTransmission
- number of times the message has been transmitted.protocolId
- ProtocolFamily to generate the message in; currently,
only APRS and OPENTRAC are supported.frame
- AX25Frame into which the message will be placed; the decoded message (as opposed to the byte
array encoding) should be stored into the field frame.parsedAX25MsgAX25Frame.parsedAX25Msg
public boolean isEnabled()
isEnabled
in interface SendableMessage
public void disableForTransmit()
disableForTransmit
in interface SendableMessage
public boolean isSymbolInferred()
isSymbolInferred
in class Message
public java.util.Set<ProtocolFamily> getProtocols()
getProtocols
in class Message