NiimBlueLib Docs
    Preparing search index...

    Class NiimbotAbstractClientAbstract

    Abstract class representing a client with common functionality for interacting with a printer. Hardware interface must be defined after extending this class.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    debug: boolean = false
    heartbeatData: HeartbeatData = {}
    mutex: Mutex = ...
    packetIntervalMs: number = NIIMBOT_CLIENT_DEFAULTS.packetIntervalMs
    printerInfo: PrinterInfo = ...
    protocol: NiimbotProtocol
    rfidInfo: CombinedRfidInfo = {}
    prefixed: string | boolean

    Methods

    • Type Parameters

      Parameters

      Returns this

    • Send "connect" packet and fetch the protocol version.

      Returns Promise<void>

    • Disconnect from printer port.

      Returns Promise<void>

    • Return an array listing the events for which the emitter has registered listeners.

      Returns (keyof ClientEventMap)[]

    • Fetch heartbeat information and store it. Emits heartbeat/heartbeatfailed event. Do not throws exceptions.

      Returns Promise<HeartbeatData | undefined>

    • Fetch printer information and store it

      Returns Promise<PrinterInfo>

    • Fetch label and ribbon RFID information and store it. Do not throws exceptions.

      Returns Promise<CombinedRfidInfo>

    • Returns boolean

    • Returns boolean

    • Returns number

    • Returns number

    • Get printer capabilities based on the printer model. Model library is hardcoded.

      Returns PrinterModelMeta | undefined

    • Returns number

    • Determine print task version if any.

      Returns "B1" | "B21_L2B" | "D110" | "H1S" | "D11_V1" | "B21_V1" | "D110M_V4" | undefined

    • Check if the client is connected.

      Returns boolean

    • Returns boolean

    • Checks if the heartbeat timer has been started.

      Returns boolean

    • Return the number of listeners listening to a given event.

      Parameters

      Returns number

    • Return the listeners registered for a given event.

      Type Parameters

      Parameters

      • event: T

      Returns (
          (
              ...args: ArgumentMap<ClientEventMap>[Extract<T, keyof ClientEventMap>],
          ) => void
      )[]

    • Calls connectNegotiate (exceptions are not ignored) then calls fetchPrinterInfo and fetchRfidInfo (exceptions ignored)

      Parameters

      • Optionalcleanup: () => void

        cleanup/disconnect function, called when initialNegotiate fails

      Returns Promise<void>

    • Type Parameters

      Parameters

      Returns this

    • Add a listener for a given event.

      Type Parameters

      Parameters

      Returns this

    • Add a one-time listener for a given event.

      Type Parameters

      Parameters

      Returns this

    • Convert raw bytes to packet objects and fire events. Defragmentation included.

      Parameters

      • data: Uint8Array<ArrayBufferLike> | DataView<ArrayBufferLike>

        Bytes to process.

      Returns void

    • Remove all listeners, or those of the specified event.

      Parameters

      • Optionalevent: keyof ClientEventMap

      Returns this

    • Remove the listeners of a given event.

      Type Parameters

      Parameters

      Returns this

    • Parameters

      Returns Promise<void>

    • Send raw bytes to the printer port.

      Parameters

      • data: Uint8Array

        Bytes to send.

      • Optionalforce: boolean

        Ignore mutex lock. It used internally and you should avoid using it.

      Returns Promise<void>

    • Enable some debug information logging.

      Parameters

      • value: boolean

      Returns void

    • Parameters

      • value: boolean

      Returns void

    • Parameters

      • value: boolean

      Returns void

    • Set interval for startHeartbeat.

      Parameters

      • intervalMs: number

        Heartbeat interval, default is 1000ms

      Returns void

    • Set max failed heartbeat attempts to disconnect. Use 0 to disable.

      Parameters

      • value: number

      Returns void

    • Set the interval between packets in milliseconds.

      Parameters

      • milliseconds: number

      Returns void

    • Starts the heartbeat timer, "heartbeat" is emitted after packet received.

      If you need to change interval, call setHeartbeatInterval before.

      Returns void

    • Stops the heartbeat by clearing the interval timer.

      Returns void