# DeviceManagerCallback **DeviceManagerCallback** is a callback interface for receiving various events and information from the AsReader device. --- ## onConnect Receives the connection status of the USB port. This callback can detect connection or disconnection events when the AsReader is plugged in or removed. ```java void onConnect(boolean isConnect); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `isConnect` - `boolean` - true: Connected / false: Disconnected ``` ### Sample Code ```java @Override public void onConnect(boolean isConnect) { // Handle connection status } ``` --- ## onBatteryStateReceived Receives battery information. This callback is triggered when [getBattery](DeviceManager.md#getbattery) is called. ```java void onBatteryStateReceived(final int dest, final int charging); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `dest` - `int` - Battery level (%) * - `charging` - `int` - Charging status 0x00: Battery low 0x01: Charging 0xFF: Fully charged 0x10: Not supported ``` ### Sample Code ```java @Override public void onBatteryStateReceived(int dest, int charging) { // Handle battery information } ``` --- ## onReaderInfoReceived Receives reader parameter information. This callback is triggered when [getReaderInfo](DeviceManager.md#getreaderinfo) is called. ```java default void onReaderInfoReceived( int onTime, int offTime, int senseTime, int lbtLevel, int fhEnable, int lbtEnable, int cwEnable, int power, int minPower, int maxPower ); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `onTime` - `int` - Inventory time * - `offTime` - `int` - Idle time * - `senseTime` - `int` - Carrier sense time * - `lbtLevel` - `int` - Target frequency level * - `fhEnable` - `int` - On (>=0x01) / Off (0x00) * - `lbtEnable` - `int` - On (>=0x01) / Off (0x00) * - `cwEnable` - `int` - On (0x01) / Off (0x00) * - `power` - `int` - Current power * - `minPower` - `int` - Minimum power * - `maxPower` - `int` - Maximum power ``` ### Sample Code ```java @Override public void onReaderInfoReceived( int onTime, int offTime, int senseTime, int lbtLevel, int fhEnable, int lbtEnable, int cwEnable, int power, int minPower, int maxPower ) { // Handle parameters } ``` --- ## onReaderAboutInfo Receives the reader model, hardware, and firmware information. This callback can be triggered when [getReaderInfo](DeviceManager.md#getreaderinfo) is called. ```java default void onReaderAboutInfo(String model, String hwVersion, String fwVersion, byte region); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `model` - `String` - AsReader model number * - `hwVersion` - `String` - Hardware version * - `fwVersion` - `String` - Firmware version * - `region` - `byte` - Region code ``` ### Sample Code ```java @Override public void onReaderAboutInfo(String model, String hwVersion, String fwVersion, byte region) { // Handle information } ``` --- ## onReceivedRFIDModuleVersion Receives RF module version information. This callback can be triggered when [getReaderInfo](DeviceManager.md#getreaderinfo) is called. ```java default void onReceivedRFIDModuleVersion(final String versionInfo); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `versionInfo` - `String` - RF module version ``` ### Sample Code ```java @Override public void onReceivedRFIDModuleVersion(String versionInfo) { // Handle version information } ``` --- ## onCompletedPreparation Receives the status of power and settings preparation. This callback can be triggered when [setPowerWithOption](DeviceManager.md#setpowerwithoption) is called. ```java default void onCompletedPreparation(boolean isPowerOn); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `isPowerOn` - `boolean` - true: Power on / false: Power off ``` ### Sample Code ```java @Override public void onCompletedPreparation(boolean isPowerOn) { // Handle preparation result } ``` --- ## onSetReaderSettingSuccess Receives the result of applying AsReader Device settings. This callback can be triggered when [setReaderSettings](DeviceManager.md#setreadersettings) is called. ```java default void onSetReaderSettingSuccess(); ``` ### Sample Code ```java @Override public void onSetReaderSettingSuccess() { // Handle successful setting } ``` --- ## onDeviceManagerError Called when a configuration error occurs on the AsReader Device. ```java void onDeviceManagerError(String message); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Parameter - Type - Description * - `message` - `String` - Error message ``` ### Sample Code ```java @Override public void onDeviceManagerError(String message) { // Handle error } ```