Options
All
  • Public
  • Public/Protected
  • All
Menu

Base class for connection methods to extend

Hierarchy

Index

Constructors

constructor

Events

Readonly onAdminPacketEvent

onAdminPacketEvent: Subject<AdminPacket> = ...

Fires when a new MeshPacket message containing a AndminMessage packet has been received from device

Readonly onDeviceStatusEvent

onDeviceStatusEvent: Subject<DeviceStatusEnum> = ...

Fires when the devices connection or configuration status changes

Readonly onFromRadioEvent

onFromRadioEvent: Subject<FromRadio> = ...

Fires when a new FromRadio message has been received from the device

Readonly onLogRecordEvent

onLogRecordEvent: Subject<LogRecord> = ...

Fires when a new FromRadio message containing a Text packet has been received from device

Readonly onMeshHeartbeat

onMeshHeartbeat: Subject<number> = ...

Fires when the device receives a meshPacket, returns a timestamp

Readonly onMeshPacketEvent

onMeshPacketEvent: Subject<MeshPacket> = ...

Fires when a new FromRadio message containing a Data packet has been received from the device

Readonly onNodeInfoPacketEvent

onNodeInfoPacketEvent: Subject<NodeInfoPacket> = ...

Fires when a new MeshPacket message containing a NodeInfo packet has been received from device

Readonly onPositionPacketEvent

onPositionPacketEvent: Subject<PositionPacket> = ...

Fires when a new MeshPacket message containing a Position packet has been received from device

Readonly onRoutingPacketEvent

onRoutingPacketEvent: Subject<RoutingPacket> = ...

Fires when a new MeshPacket message containing a Routing packet has been received from device

Readonly onTextPacketEvent

onTextPacketEvent: Subject<TextPacket> = ...

Fires when a new MeshPacket message containing a Text packet has been received from device

Properties

Private configId

configId: number

Randomly generated number to ensure confiuration lockstep

Protected deviceStatus

deviceStatus: DeviceStatusEnum

Describes the current state of the device

Protected isConfigured

isConfigured: boolean

Describes the current state of the device

Private myNodeInfo

myNodeInfo: MyNodeInfo

Device's node number

Readonly onMyNodeInfoEvent

onMyNodeInfoEvent: Subject<MyNodeInfo> = ...

Fires when a new MyNodeInfo message has been received from the device

Readonly onRadioConfigEvent

onRadioConfigEvent: Subject<RadioConfig> = ...

Fires when a new RadioConfig message has been received from the device

Methods

configure

  • configure(): Promise<void>
  • Triggers the device configure process

    Returns Promise<void>

Protected Abstract connect

  • Abstract method that connects to the radio

    Parameters

    Returns Promise<void>

Protected Abstract disconnect

  • disconnect(): void
  • Abstract method that disconnects from the radio

    Returns void

Private generateRandId

  • generateRandId(): number
  • Generates random packet identifier

    Returns number

Protected handleFromRadio

  • handleFromRadio(fromRadio: Uint8Array): Promise<void>
  • Gets called whenever a fromRadio message is received from device, returns fromRadio data

    Parameters

    • fromRadio: Uint8Array

      Uint8Array containing raw radio data

    Returns Promise<void>

Private handleMeshPacket

  • Gets called when a MeshPacket is received from device

    Parameters

    Returns void

Protected Abstract ping

  • ping(): Promise<boolean>
  • Abstract method that pings the radio

    Returns Promise<boolean>

sendPacket

  • sendPacket(byteData: Uint8Array, portNum: PortNum, destinationNum?: number, wantAck?: boolean, wantResponse?: boolean, echoResponse?: boolean): Promise<void>
  • Sends packet over the radio

    Parameters

    • byteData: Uint8Array
    • portNum: PortNum

      dataType Enum of protobuf data type

    • Optional destinationNum: number

      Node number of the destination node

    • wantAck: boolean = false

      Whether or not acknowledgement is wanted

    • wantResponse: boolean = false

      Used for testing, requests recpipient to respond in kind with the same type of request

    • echoResponse: boolean = false

      Sends event back to client

    Returns Promise<void>

sendText

  • sendText(text: string, destinationNum?: number, wantAck?: boolean): Promise<void>
  • Sends a text over the radio

    Parameters

    • text: string
    • Optional destinationNum: number

      Node number of the destination node

    • wantAck: boolean = false

      Whether or not acknowledgement is wanted

    Returns Promise<void>

setChannelSettings

  • setChannelSettings(channel: Channel): Promise<void>
  • Sets devices ChannelSettings

    todo

    what is confirmSetChannel?

    Parameters

    Returns Promise<void>

setOwner

  • setOwner(owner: User): Promise<void>
  • Sets devices owner data

    todo

    what is confirmSetOwner?

    Parameters

    Returns Promise<void>

setPreferences

  • Writes radio config to device

    Parameters

    Returns Promise<void>

Protected Abstract writeToRadio

  • writeToRadio(data: Uint8Array): Promise<void>
  • Abstract method that writes data to the radio

    Parameters

    • data: Uint8Array

    Returns Promise<void>

Generated using TypeDoc