# ReaderManager

interface ReaderManager

Tracks changes to the set of available readers and their state; provides pairing and removal capabilities for card readers.

## Types

Companion
Link copied to clipboard
object Companion

Constants for the ReaderManager.

## Properties

isPairingInProgress
Link copied to clipboard
abstract val isPairingInProgress: Boolean

Returns `true` if a Reader pairing is in progress, `false` otherwise.

## Functions

blink
Link copied to clipboard
abstract fun blink(reader: ReaderInfo)

Flashes LEDs on this reader to assist in identifying it.

forget
Link copied to clipboard
abstract fun forget(reader: ReaderInfo)

Disconnects from the given ReaderInfo and "forgets" about it for future execution, returning it to a state before the reader was paired.

getReader
Link copied to clipboard
abstract fun getReader(id: String): ReaderInfo?

Gets a specific ReaderInfo by its id. Returns `null` if no such reader is found.

getReaders
Link copied to clipboard
abstract fun getReaders(): List<ReaderInfo>

Gets a snapshot of the current state of all known readers. The returned objects will not reflect changes to the readers' state after this method is called.

pairReader
Link copied to clipboard
abstract fun pairReader(callback: Callback<PairingResult>): PairingHandle

Begins scanning for a new Bluetooth reader. The scan will terminate after a timeout, or after one new reader is identified, whether that reader is paired successfully or not.

setReaderChangedCallback
Link copied to clipboard
abstract fun setReaderChangedCallback(callback: Callback<ReaderChangedEvent>): CallbackReference

Registers a callback to be called when a reader changes state. The supplied Callback will be called on the application UI thread at various perhaps-interesting moments, including when readers are discovered or lost, when cards are inserted or removed, etc.