Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.ka2ddo.aprs
Class TelemetryMessage

    java.lang.Object
      org.ka2ddo.ax25.AX25Message
          org.ka2ddo.aprs.Message
              org.ka2ddo.aprs.TelemetryMessage

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<AX25Message>, CommentedMessage

    public class TelemetryMessage

extends Message

This class contains a decoded APRS telemetry message (APRS protocol specification chapter 13).

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.ka2ddo.ax25.AX25Message
`AX25Message.Precedence`

Field Summary
`float[]` | `analogValues` A 5-element array of the 5 non-boolean analog values in the telemetry message.
`int` | `bitmask` A bitmask containing the 8 boolean digits from the telemetry message.
`static int` | `MIC` Constant representing the decoded representation of the "MIC" sequence "number".
`int` | `sequenceNum` The extracted sequence number of the telemetry data.

Fields inherited from class org.ka2ddo.aprs.Message
`comment, extensions, msgType, S_PERMANENT, S_PERMANENT_UC, symbolCode, symTableId, USASCII`

Fields inherited from class org.ka2ddo.ax25.AX25Message
`ax25Frame, invalid, ISO_8859_1, originatingCallsign, PERMANENT, rcptTime, thirdParty, timestamp, UTC, UTF8`

Constructor Summary
`TelemetryMessage(byte[] body, int offset, java.lang.String tp, long rcvTimestamp)` Constructor for a TelemetryMessage from an AX25Frame.
`TelemetryMessage(PositionMessage pm, int startPos, int endPos)` Construct a TelemetryMessage based on Base91 Telemetry data extracted from a PositionMessage's comment, per the proposed extension documented in http://he.fi/doc/aprs-base91-comment-telemetry.txt.

Method Summary
`boolean` | `bodyEquals(AX25Message o)` Compare the contents of the body of the message, reporting if they match.
`java.lang.String` | `getBase91Encoding()` Encode this telemetry data in the format for base-91 appending to the comment of an APRS PositionReport, per http://he.fi/doc/aprs-base91-comment-telemetry.txt.
`java.lang.String` | `paramString()` Descriptive text about this message, to be included in the toString() method's response.

Methods inherited from class org.ka2ddo.aprs.Message
`compareTo, decodeDatestamp, decodeHurricaneParams, decodeTimestamp, decodeWeatherParams, decodeWeatherParams, dup, encodeTimestamp, extractComment, extractComment, extractSymbol, formatBody, getComment, getExtension, getExtensionString, getMsgType, getReadOnlyExtensionMap, getSymbolCode, getSymTableId, hasWeather, inferSymbol, isSymbolInferred, looksLikeLongFormatLatitude, setComment, setSymbolCode, setSymTableId, storeExtension, toString`

Methods inherited from class org.ka2ddo.ax25.AX25Message
`equals, extractSource, getAx25Frame, getFirstDigipeat, getLastDigipeat, getOriginalDestination, getOriginalSource, getOriginatingCallsign, getPrecedence, getRcptTime, getTimestamp, hashCode, hasPosition, hasThisFirstDigi, indexOf, indexOf, isInvalid, onlyDigits, onlyDigits, onlyDigitsOrPeriod, onlyDigitsOrSpace, onlyDigitsPlus, onlyPeriods, setAx25Frame, setInvalid, setOriginatingCallsign, setRcptTime, setTimestamp, split`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### MIC

    public static final int MIC

  Constant representing the decoded representation of the "MIC" sequence "number".

  See Also:
    Constant Field Values

### sequenceNum

    public int sequenceNum

  The extracted sequence number of the telemetry data.

### analogValues

    public float[] analogValues

  A 5-element array of the 5 non-boolean analog values in the telemetry message.

### bitmask

    public int bitmask

  A bitmask containing the 8 boolean digits from the telemetry message.

Constructor Detail

### TelemetryMessage

    public TelemetryMessage(byte[] body,
                            int offset,
                            java.lang.String tp,
                            long rcvTimestamp)

  Constructor for a TelemetryMessage from an AX25Frame. The caller is responsible for ensuring the byte array contains a TelemetryMessage before using this class to decode it.

  Parameters:
    `body` - byte array containing the message
    `offset` - index into the byte array where the telemetry message text starts
    `tp` - String of third-party routing data (may be null)
    `rcvTimestamp` - time in Java milliseconds since Jan 1 1970 UTC when this message was received

### TelemetryMessage

    public TelemetryMessage(PositionMessage pm,
                            int startPos,
                            int endPos)

  Construct a TelemetryMessage based on Base91 Telemetry data extracted from a PositionMessage's comment, per the proposed extension documented in http://he.fi/doc/aprs-base91-comment-telemetry.txt.

  Parameters:
    `pm` - PositionMessage containing the base-91 telemetry data
    `startPos` - index into the PositionMessage's comment where the telemetry data starts (after the '|' character)
    `endPos` - index into the PositionMessage's comment where the telemetry data ends (the closing '|' character)

Method Detail

### paramString

    public java.lang.String paramString()

  Descriptive text about this message, to be included in the toString() method's response. This method may be overridden, and the override may concatenate the results of the superclass's paramString) method with additional text of its own.

  Overrides:
    `paramString` in class `Message`
  Returns:
    String describing the contents of this message
  See Also:
    `Message.toString()`, `Message.getComment()`

### getBase91Encoding

    public java.lang.String getBase91Encoding()
                                       throws java.lang.IllegalArgumentException

  Encode this telemetry data in the format for base-91 appending to the comment of an APRS PositionReport, per http://he.fi/doc/aprs-base91-comment-telemetry.txt.

  Returns:
    base-91 encoded telemetry String
  Throws:
    `java.lang.IllegalArgumentException` - if any value of telemetry message is out of range to fit in base-91 encoding

### bodyEquals

    public boolean bodyEquals(AX25Message o)

  Compare the contents of the body of the message, reporting if they match.

  Overrides:
    `bodyEquals` in class `Message`
  Parameters:
    `o` - another AX25Message to compare against
  Returns:
    boolean true if the body values are equivalent

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD