@bota-dev/react-native-sdk 0.0.12 → 0.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,6 +20,19 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
20
20
 
21
21
  const log = _logger.logger.tag('BleManager');
22
22
 
23
+ /** Extract a human-readable message from a BleError (message is often null) */
24
+ function describeBleError(err) {
25
+ if (!err) return 'Unknown error';
26
+ const ble = err;
27
+ if (ble.message) return ble.message;
28
+ if (ble.reason) return ble.reason;
29
+ const parts = [];
30
+ if (ble.errorCode !== undefined) parts.push(`errorCode=${ble.errorCode}`);
31
+ if (ble.iosErrorCode != null) parts.push(`ios=${ble.iosErrorCode}`);
32
+ if (ble.androidErrorCode != null) parts.push(`android=${ble.androidErrorCode}`);
33
+ return parts.length > 0 ? parts.join(', ') : 'Unknown BLE error';
34
+ }
35
+
23
36
  /**
24
37
  * Events emitted by BleManager
25
38
  */
@@ -32,6 +45,7 @@ class BleManager extends _eventemitter.default {
32
45
  disconnectSubscriptions = new Map();
33
46
  connectedDevices = new Map();
34
47
  discoveredDevices = new Map();
48
+ pendingConnects = new Map();
35
49
  isScanning = false;
36
50
  cachedState = _reactNativeBlePlx.State.Unknown;
37
51
  constructor() {
@@ -275,13 +289,11 @@ class BleManager extends _eventemitter.default {
275
289
  }
276
290
 
277
291
  /**
278
- * Connect to a device
292
+ * Connect to a device.
293
+ * Deduplicates concurrent calls — if a connect is already in progress
294
+ * for this device, callers share the same promise.
279
295
  */
280
296
  async connect(deviceId) {
281
- log.info('Connecting to device', {
282
- deviceId
283
- });
284
-
285
297
  // Check if already connected
286
298
  if (this.connectedDevices.has(deviceId)) {
287
299
  log.debug('Device already connected', {
@@ -289,6 +301,27 @@ class BleManager extends _eventemitter.default {
289
301
  });
290
302
  return this.connectedDevices.get(deviceId);
291
303
  }
304
+
305
+ // Deduplicate: if a connect is already in progress, return the same promise
306
+ const pending = this.pendingConnects.get(deviceId);
307
+ if (pending) {
308
+ log.debug('Connection already in progress, sharing promise', {
309
+ deviceId
310
+ });
311
+ return pending;
312
+ }
313
+ const connectPromise = this.doConnect(deviceId);
314
+ this.pendingConnects.set(deviceId, connectPromise);
315
+ try {
316
+ return await connectPromise;
317
+ } finally {
318
+ this.pendingConnects.delete(deviceId);
319
+ }
320
+ }
321
+ async doConnect(deviceId) {
322
+ log.info('Connecting to device', {
323
+ deviceId
324
+ });
292
325
  try {
293
326
  // Connect with timeout
294
327
  const device = await this.manager.connectToDevice(deviceId, {
@@ -307,21 +340,21 @@ class BleManager extends _eventemitter.default {
307
340
 
308
341
  // Set up disconnect listener
309
342
  const disconnectSub = device.onDisconnected((error, disconnectedDevice) => {
343
+ const errorMsg = error ? describeBleError(error) : undefined;
310
344
  log.info('Device disconnected', {
311
345
  deviceId: disconnectedDevice.id,
312
- error: error?.message
346
+ error: errorMsg
313
347
  });
314
348
  this.connectedDevices.delete(disconnectedDevice.id);
315
349
  this.disconnectSubscriptions.get(disconnectedDevice.id)?.remove();
316
350
  this.disconnectSubscriptions.delete(disconnectedDevice.id);
317
- this.emit('deviceDisconnected', disconnectedDevice.id, error ? new Error(error.message || 'Device disconnected') : undefined);
351
+ this.emit('deviceDisconnected', disconnectedDevice.id, error ? new Error(errorMsg || 'Device disconnected') : undefined);
318
352
  });
319
353
  this.disconnectSubscriptions.set(deviceId, disconnectSub);
320
354
  this.emit('deviceConnected', deviceId);
321
355
  return device;
322
356
  } catch (error) {
323
- const bleError = error;
324
- const msg = bleError.message || 'Connection failed';
357
+ const msg = describeBleError(error);
325
358
  log.error('Connection failed', new Error(msg), {
326
359
  deviceId
327
360
  });
@@ -346,9 +379,8 @@ class BleManager extends _eventemitter.default {
346
379
  try {
347
380
  await device.cancelConnection();
348
381
  } catch (error) {
349
- const bleError = error;
350
382
  log.warn('Disconnect error (may be expected)', {
351
- error: bleError.message
383
+ error: describeBleError(error)
352
384
  });
353
385
  }
354
386
  this.connectedDevices.delete(deviceId);
@@ -401,8 +433,7 @@ class BleManager extends _eventemitter.default {
401
433
  }
402
434
  return _buffer.Buffer.from(characteristic.value, 'base64');
403
435
  } catch (error) {
404
- const bleError = error;
405
- const msg = bleError.message || 'Unknown BLE error';
436
+ const msg = describeBleError(error);
406
437
  log.error('Read characteristic failed', new Error(msg), {
407
438
  deviceId,
408
439
  serviceUuid,
@@ -428,8 +459,7 @@ class BleManager extends _eventemitter.default {
428
459
  await device.writeCharacteristicWithoutResponseForService(serviceUuid, characteristicUuid, base64Data);
429
460
  }
430
461
  } catch (error) {
431
- const bleError = error;
432
- const msg = bleError.message || 'Unknown BLE error';
462
+ const msg = describeBleError(error);
433
463
  log.error('Write characteristic failed', new Error(msg), {
434
464
  deviceId,
435
465
  serviceUuid,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeBlePlx","require","_buffer","_eventemitter","_interopRequireDefault","_constants","_errors","_logger","_parsers","e","__esModule","default","log","logger","tag","BleManager","EventEmitter","stateSubscription","disconnectSubscriptions","Map","connectedDevices","discoveredDevices","isScanning","cachedState","State","Unknown","constructor","manager","RNBleManager","setupStateListener","onStateChange","state","debug","emit","getState","getCachedState","isReady","PoweredOn","waitForReady","timeoutMs","startTime","Date","now","Unsupported","BluetoothError","unavailable","Unauthorized","unauthorized","PoweredOff","poweredOff","Promise","resolve","setTimeout","startScan","options","warn","timeout","SCAN_TIMEOUT","deviceTypes","pairingState","minRssi","allowDuplicates","info","clear","scanTimeout","stopScan","startDeviceScan","error","device","clearTimeout","deviceName","localName","name","cachedName","id","rssi","discovered","parseDiscoveredDevice","includes","deviceType","undefined","existingDevice","get","set","type","stopDeviceScan","getDiscoveredDevices","Array","from","values","firmwareVersion","manufacturerData","Buffer","length","parseDeviceType","parseFirmwareVersion","parsePairingState","deviceId","discoveredAt","connect","has","connectToDevice","CONNECTION_TIMEOUT","requestMTU","MAX_MTU","discoverAllServicesAndCharacteristics","disconnectSub","onDisconnected","disconnectedDevice","message","delete","remove","Error","bleError","msg","DeviceError","connectionFailed","disconnect","cancelConnection","isConnected","getConnectedDevice","getMtu","DEFAULT_MTU","mtu","readCharacteristic","serviceUuid","characteristicUuid","notConnected","characteristic","readCharacteristicForService","value","alloc","writeCharacteristic","data","withResponse","base64Data","toString","writeCharacteristicWithResponseForService","writeCharacteristicWithoutResponseForService","subscribeToCharacteristic","onData","onError","monitorCharacteristicForService","errorMessage","isCancelled","errorCode","reason","destroy","sub","keys","catch","removeAllListeners","exports","instance","getBleManager","resetBleManager"],"sourceRoot":"../../../src","sources":["ble/BleManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeBlePlx","require","_buffer","_eventemitter","_interopRequireDefault","_constants","_errors","_logger","_parsers","e","__esModule","default","log","logger","tag","describeBleError","err","ble","message","reason","parts","errorCode","undefined","push","iosErrorCode","androidErrorCode","length","join","BleManager","EventEmitter","stateSubscription","disconnectSubscriptions","Map","connectedDevices","discoveredDevices","pendingConnects","isScanning","cachedState","State","Unknown","constructor","manager","RNBleManager","setupStateListener","onStateChange","state","debug","emit","getState","getCachedState","isReady","PoweredOn","waitForReady","timeoutMs","startTime","Date","now","Unsupported","BluetoothError","unavailable","Unauthorized","unauthorized","PoweredOff","poweredOff","Promise","resolve","setTimeout","startScan","options","warn","timeout","SCAN_TIMEOUT","deviceTypes","pairingState","minRssi","allowDuplicates","info","clear","scanTimeout","stopScan","startDeviceScan","error","device","clearTimeout","deviceName","localName","name","cachedName","id","rssi","discovered","parseDiscoveredDevice","includes","deviceType","existingDevice","get","set","type","stopDeviceScan","getDiscoveredDevices","Array","from","values","firmwareVersion","manufacturerData","Buffer","parseDeviceType","parseFirmwareVersion","parsePairingState","deviceId","discoveredAt","connect","has","pending","connectPromise","doConnect","delete","connectToDevice","CONNECTION_TIMEOUT","requestMTU","MAX_MTU","discoverAllServicesAndCharacteristics","disconnectSub","onDisconnected","disconnectedDevice","errorMsg","remove","Error","msg","DeviceError","connectionFailed","disconnect","cancelConnection","isConnected","getConnectedDevice","getMtu","DEFAULT_MTU","mtu","readCharacteristic","serviceUuid","characteristicUuid","notConnected","characteristic","readCharacteristicForService","value","alloc","writeCharacteristic","data","withResponse","base64Data","toString","writeCharacteristicWithResponseForService","writeCharacteristicWithoutResponseForService","subscribeToCharacteristic","onData","onError","monitorCharacteristicForService","errorMessage","isCancelled","destroy","sub","keys","catch","removeAllListeners","exports","instance","getBleManager","resetBleManager"],"sourceRoot":"../../../src","sources":["ble/BleManager.ts"],"mappings":"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","ignoreList":[]}
@@ -223,13 +223,14 @@ class DeviceManager extends _eventemitter.default {
223
223
  throw _errors.DeviceError.notConnected(device.id);
224
224
  }
225
225
 
226
- // Check current pairing state
226
+ // Check current pairing state — skip if already provisioned
227
227
  const pairingState = await this.readPairingState(device.id);
228
228
  if (pairingState === 'paired') {
229
- log.warn('Device is already provisioned', {
229
+ log.info('Device is already provisioned, skipping', {
230
230
  deviceId: device.id
231
231
  });
232
- throw _errors.ProvisioningError.alreadyProvisioned(device.id);
232
+ device.isProvisioned = true;
233
+ return;
233
234
  }
234
235
 
235
236
  // Set up provisioning result listener
@@ -1 +1 @@
1
- {"version":3,"names":["_buffer","require","_eventemitter","_interopRequireDefault","_BleManager","_constants","_parsers","_errors","_logger","_crypto","e","__esModule","default","log","logger","tag","DeviceManager","EventEmitter","connectedDevices","Map","statusSubscriptions","isInitialized","constructor","bleManager","getBleManager","setupBleListeners","initialize","info","on","device","emit","deviceId","get","error","connectionState","delete","remove","startScan","options","stopScan","getDiscoveredDevices","getConnectedDevices","Array","from","values","connect","id","name","existing","debug","serialNumber","readSerialNumber","firmwareVersion","readFirmwareVersion","hardwareRevision","readHardwareRevision","pairingState","readPairingState","mtu","getMtu","connectedDevice","deviceType","isProvisioned","set","disconnect","factoryReset","isConnected","DeviceError","notConnected","resultPromise","waitForProvisioningResult","writeCharacteristic","SERVICE_BOTA_CONTROL","CHAR_DEVICE_COMMAND","Buffer","DEVICE_CMD_FACTORY_RESET","warn","provision","deviceToken","environment","ProvisioningError","alreadyProvisioned","writeApiEndpoint","writeDeviceToken","result","success","invalidToken","storageError","chunkError","syncTime","getStatus","data","readCharacteristic","CHAR_DEVICE_STATUS","parseDeviceStatus","subscribeToStatus","callback","subscription","subscribeToCharacteristic","status","timeSyncData","createTimeSyncData","CHAR_TIME_SYNC","SERVICE_DEVICE_INFO","CHAR_SERIAL_NUMBER","toString","replace","CHAR_FIRMWARE_REVISION","CHAR_HARDWARE_REVISION","undefined","SERVICE_BOTA_PROVISIONING","CHAR_PAIRING_STATE","length","parsePairingState","endpointByte","API_ENDPOINT_PRODUCTION","API_ENDPOINT_SANDBOX","CHAR_API_ENDPOINT","token","maxChunkSize","tokenBuffer","totalChunks","Math","ceil","tokenLength","i","start","end","min","chunkData","slice","chunk","alloc","writeUInt8","copy","CHAR_DEVICE_TOKEN","total","Promise","resolve","reject","timeout","setTimeout","OPERATION_TIMEOUT","CHAR_PROVISIONING_RESULT","clearTimeout","resultCode","PROVISIONING_SUCCESS","PROVISIONING_INVALID_TOKEN","PROVISIONING_STORAGE_ERROR","PROVISIONING_CHUNK_ERROR","message","requestStartRecording","grantToken","_options","payload","RECORDING_CMD_GRANT_START","waitForRecordingResult","CHAR_RECORDING_CONTROL","requestStopRecording","RECORDING_CMD_GRANT_STOP","getRecordingState","CHAR_RECORDING_STATUS","parseRecordingState","subscribeToRecordingState","state","RECORDING_RESULT_SUCCESS","RECORDING_RESULT_ALREADY_RECORDING","RECORDING_RESULT_NOT_RECORDING","RECORDING_RESULT_INVALID_GRANT","RECORDING_RESULT_GRANT_EXPIRED","timestamp","readUInt32LE","source","active","startedAt","Date","initiatedBy","configureWiFi","credentials","grant","ssid","grantPacket","createWiFiGrantPacket","grantBlob","SERVICE_BOTA_WIFI_CONFIG","CHAR_WIFI_GRANT","sessionKey","deriveSessionKey","encrypted","encryptWiFiCredentials","password","credentialPacket","formatWiFiCredentialPacket","packetSize","CHAR_WIFI_CREDENTIAL","waitForWiFiConfigResult","Error","getWiFiStatus","CHAR_WIFI_STATUS","parseWiFiStatusInfo","subscribeToWiFiStatus","parseWiFiConfigResult","String","destroy","sub","clear","removeAllListeners","exports"],"sourceRoot":"../../../src","sources":["managers/DeviceManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_buffer","require","_eventemitter","_interopRequireDefault","_BleManager","_constants","_parsers","_errors","_logger","_crypto","e","__esModule","default","log","logger","tag","DeviceManager","EventEmitter","connectedDevices","Map","statusSubscriptions","isInitialized","constructor","bleManager","getBleManager","setupBleListeners","initialize","info","on","device","emit","deviceId","get","error","connectionState","delete","remove","startScan","options","stopScan","getDiscoveredDevices","getConnectedDevices","Array","from","values","connect","id","name","existing","debug","serialNumber","readSerialNumber","firmwareVersion","readFirmwareVersion","hardwareRevision","readHardwareRevision","pairingState","readPairingState","mtu","getMtu","connectedDevice","deviceType","isProvisioned","set","disconnect","factoryReset","isConnected","DeviceError","notConnected","resultPromise","waitForProvisioningResult","writeCharacteristic","SERVICE_BOTA_CONTROL","CHAR_DEVICE_COMMAND","Buffer","DEVICE_CMD_FACTORY_RESET","warn","provision","deviceToken","environment","writeApiEndpoint","writeDeviceToken","result","success","ProvisioningError","invalidToken","storageError","chunkError","syncTime","getStatus","data","readCharacteristic","CHAR_DEVICE_STATUS","parseDeviceStatus","subscribeToStatus","callback","subscription","subscribeToCharacteristic","status","timeSyncData","createTimeSyncData","CHAR_TIME_SYNC","SERVICE_DEVICE_INFO","CHAR_SERIAL_NUMBER","toString","replace","CHAR_FIRMWARE_REVISION","CHAR_HARDWARE_REVISION","undefined","SERVICE_BOTA_PROVISIONING","CHAR_PAIRING_STATE","length","parsePairingState","endpointByte","API_ENDPOINT_PRODUCTION","API_ENDPOINT_SANDBOX","CHAR_API_ENDPOINT","token","maxChunkSize","tokenBuffer","totalChunks","Math","ceil","tokenLength","i","start","end","min","chunkData","slice","chunk","alloc","writeUInt8","copy","CHAR_DEVICE_TOKEN","total","Promise","resolve","reject","timeout","setTimeout","OPERATION_TIMEOUT","CHAR_PROVISIONING_RESULT","clearTimeout","resultCode","PROVISIONING_SUCCESS","PROVISIONING_INVALID_TOKEN","PROVISIONING_STORAGE_ERROR","PROVISIONING_CHUNK_ERROR","message","requestStartRecording","grantToken","_options","payload","RECORDING_CMD_GRANT_START","waitForRecordingResult","CHAR_RECORDING_CONTROL","requestStopRecording","RECORDING_CMD_GRANT_STOP","getRecordingState","CHAR_RECORDING_STATUS","parseRecordingState","subscribeToRecordingState","state","RECORDING_RESULT_SUCCESS","RECORDING_RESULT_ALREADY_RECORDING","RECORDING_RESULT_NOT_RECORDING","RECORDING_RESULT_INVALID_GRANT","RECORDING_RESULT_GRANT_EXPIRED","timestamp","readUInt32LE","source","active","startedAt","Date","initiatedBy","configureWiFi","credentials","grant","ssid","grantPacket","createWiFiGrantPacket","grantBlob","SERVICE_BOTA_WIFI_CONFIG","CHAR_WIFI_GRANT","sessionKey","deriveSessionKey","encrypted","encryptWiFiCredentials","password","credentialPacket","formatWiFiCredentialPacket","packetSize","CHAR_WIFI_CREDENTIAL","waitForWiFiConfigResult","Error","getWiFiStatus","CHAR_WIFI_STATUS","parseWiFiStatusInfo","subscribeToWiFiStatus","parseWiFiConfigResult","String","destroy","sub","clear","removeAllListeners","exports"],"sourceRoot":"../../../src","sources":["managers/DeviceManager.ts"],"mappings":"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","ignoreList":[]}
@@ -13,6 +13,19 @@ import { logger } from '../utils/logger';
13
13
  import { parseDeviceType, parsePairingState, parseFirmwareVersion } from './parsers';
14
14
  const log = logger.tag('BleManager');
15
15
 
16
+ /** Extract a human-readable message from a BleError (message is often null) */
17
+ function describeBleError(err) {
18
+ if (!err) return 'Unknown error';
19
+ const ble = err;
20
+ if (ble.message) return ble.message;
21
+ if (ble.reason) return ble.reason;
22
+ const parts = [];
23
+ if (ble.errorCode !== undefined) parts.push(`errorCode=${ble.errorCode}`);
24
+ if (ble.iosErrorCode != null) parts.push(`ios=${ble.iosErrorCode}`);
25
+ if (ble.androidErrorCode != null) parts.push(`android=${ble.androidErrorCode}`);
26
+ return parts.length > 0 ? parts.join(', ') : 'Unknown BLE error';
27
+ }
28
+
16
29
  /**
17
30
  * Events emitted by BleManager
18
31
  */
@@ -25,6 +38,7 @@ export class BleManager extends EventEmitter {
25
38
  disconnectSubscriptions = new Map();
26
39
  connectedDevices = new Map();
27
40
  discoveredDevices = new Map();
41
+ pendingConnects = new Map();
28
42
  isScanning = false;
29
43
  cachedState = State.Unknown;
30
44
  constructor() {
@@ -268,13 +282,11 @@ export class BleManager extends EventEmitter {
268
282
  }
269
283
 
270
284
  /**
271
- * Connect to a device
285
+ * Connect to a device.
286
+ * Deduplicates concurrent calls — if a connect is already in progress
287
+ * for this device, callers share the same promise.
272
288
  */
273
289
  async connect(deviceId) {
274
- log.info('Connecting to device', {
275
- deviceId
276
- });
277
-
278
290
  // Check if already connected
279
291
  if (this.connectedDevices.has(deviceId)) {
280
292
  log.debug('Device already connected', {
@@ -282,6 +294,27 @@ export class BleManager extends EventEmitter {
282
294
  });
283
295
  return this.connectedDevices.get(deviceId);
284
296
  }
297
+
298
+ // Deduplicate: if a connect is already in progress, return the same promise
299
+ const pending = this.pendingConnects.get(deviceId);
300
+ if (pending) {
301
+ log.debug('Connection already in progress, sharing promise', {
302
+ deviceId
303
+ });
304
+ return pending;
305
+ }
306
+ const connectPromise = this.doConnect(deviceId);
307
+ this.pendingConnects.set(deviceId, connectPromise);
308
+ try {
309
+ return await connectPromise;
310
+ } finally {
311
+ this.pendingConnects.delete(deviceId);
312
+ }
313
+ }
314
+ async doConnect(deviceId) {
315
+ log.info('Connecting to device', {
316
+ deviceId
317
+ });
285
318
  try {
286
319
  // Connect with timeout
287
320
  const device = await this.manager.connectToDevice(deviceId, {
@@ -300,21 +333,21 @@ export class BleManager extends EventEmitter {
300
333
 
301
334
  // Set up disconnect listener
302
335
  const disconnectSub = device.onDisconnected((error, disconnectedDevice) => {
336
+ const errorMsg = error ? describeBleError(error) : undefined;
303
337
  log.info('Device disconnected', {
304
338
  deviceId: disconnectedDevice.id,
305
- error: error?.message
339
+ error: errorMsg
306
340
  });
307
341
  this.connectedDevices.delete(disconnectedDevice.id);
308
342
  this.disconnectSubscriptions.get(disconnectedDevice.id)?.remove();
309
343
  this.disconnectSubscriptions.delete(disconnectedDevice.id);
310
- this.emit('deviceDisconnected', disconnectedDevice.id, error ? new Error(error.message || 'Device disconnected') : undefined);
344
+ this.emit('deviceDisconnected', disconnectedDevice.id, error ? new Error(errorMsg || 'Device disconnected') : undefined);
311
345
  });
312
346
  this.disconnectSubscriptions.set(deviceId, disconnectSub);
313
347
  this.emit('deviceConnected', deviceId);
314
348
  return device;
315
349
  } catch (error) {
316
- const bleError = error;
317
- const msg = bleError.message || 'Connection failed';
350
+ const msg = describeBleError(error);
318
351
  log.error('Connection failed', new Error(msg), {
319
352
  deviceId
320
353
  });
@@ -339,9 +372,8 @@ export class BleManager extends EventEmitter {
339
372
  try {
340
373
  await device.cancelConnection();
341
374
  } catch (error) {
342
- const bleError = error;
343
375
  log.warn('Disconnect error (may be expected)', {
344
- error: bleError.message
376
+ error: describeBleError(error)
345
377
  });
346
378
  }
347
379
  this.connectedDevices.delete(deviceId);
@@ -394,8 +426,7 @@ export class BleManager extends EventEmitter {
394
426
  }
395
427
  return Buffer.from(characteristic.value, 'base64');
396
428
  } catch (error) {
397
- const bleError = error;
398
- const msg = bleError.message || 'Unknown BLE error';
429
+ const msg = describeBleError(error);
399
430
  log.error('Read characteristic failed', new Error(msg), {
400
431
  deviceId,
401
432
  serviceUuid,
@@ -421,8 +452,7 @@ export class BleManager extends EventEmitter {
421
452
  await device.writeCharacteristicWithoutResponseForService(serviceUuid, characteristicUuid, base64Data);
422
453
  }
423
454
  } catch (error) {
424
- const bleError = error;
425
- const msg = bleError.message || 'Unknown BLE error';
455
+ const msg = describeBleError(error);
426
456
  log.error('Write characteristic failed', new Error(msg), {
427
457
  deviceId,
428
458
  serviceUuid,
@@ -1 +1 @@
1
- {"version":3,"names":["BleManager","RNBleManager","State","Buffer","EventEmitter","DEFAULT_MTU","MAX_MTU","CONNECTION_TIMEOUT","SCAN_TIMEOUT","BluetoothError","DeviceError","logger","parseDeviceType","parsePairingState","parseFirmwareVersion","log","tag","stateSubscription","disconnectSubscriptions","Map","connectedDevices","discoveredDevices","isScanning","cachedState","Unknown","constructor","manager","setupStateListener","onStateChange","state","debug","emit","getState","getCachedState","isReady","PoweredOn","waitForReady","timeoutMs","startTime","Date","now","Unsupported","unavailable","Unauthorized","unauthorized","PoweredOff","poweredOff","Promise","resolve","setTimeout","startScan","options","warn","timeout","deviceTypes","pairingState","minRssi","allowDuplicates","info","clear","scanTimeout","stopScan","startDeviceScan","error","device","clearTimeout","deviceName","localName","name","cachedName","id","rssi","discovered","parseDiscoveredDevice","includes","deviceType","undefined","existingDevice","get","set","type","stopDeviceScan","getDiscoveredDevices","Array","from","values","firmwareVersion","manufacturerData","length","e","deviceId","discoveredAt","connect","has","connectToDevice","requestMTU","discoverAllServicesAndCharacteristics","disconnectSub","onDisconnected","disconnectedDevice","message","delete","remove","Error","bleError","msg","connectionFailed","disconnect","cancelConnection","isConnected","getConnectedDevice","getMtu","mtu","readCharacteristic","serviceUuid","characteristicUuid","notConnected","characteristic","readCharacteristicForService","value","alloc","writeCharacteristic","data","withResponse","base64Data","toString","writeCharacteristicWithResponseForService","writeCharacteristicWithoutResponseForService","subscribeToCharacteristic","onData","onError","monitorCharacteristicForService","errorMessage","isCancelled","errorCode","reason","destroy","sub","keys","catch","removeAllListeners","instance","getBleManager","resetBleManager"],"sourceRoot":"../../../src","sources":["ble/BleManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BleManager","RNBleManager","State","Buffer","EventEmitter","DEFAULT_MTU","MAX_MTU","CONNECTION_TIMEOUT","SCAN_TIMEOUT","BluetoothError","DeviceError","logger","parseDeviceType","parsePairingState","parseFirmwareVersion","log","tag","describeBleError","err","ble","message","reason","parts","errorCode","undefined","push","iosErrorCode","androidErrorCode","length","join","stateSubscription","disconnectSubscriptions","Map","connectedDevices","discoveredDevices","pendingConnects","isScanning","cachedState","Unknown","constructor","manager","setupStateListener","onStateChange","state","debug","emit","getState","getCachedState","isReady","PoweredOn","waitForReady","timeoutMs","startTime","Date","now","Unsupported","unavailable","Unauthorized","unauthorized","PoweredOff","poweredOff","Promise","resolve","setTimeout","startScan","options","warn","timeout","deviceTypes","pairingState","minRssi","allowDuplicates","info","clear","scanTimeout","stopScan","startDeviceScan","error","device","clearTimeout","deviceName","localName","name","cachedName","id","rssi","discovered","parseDiscoveredDevice","includes","deviceType","existingDevice","get","set","type","stopDeviceScan","getDiscoveredDevices","Array","from","values","firmwareVersion","manufacturerData","e","deviceId","discoveredAt","connect","has","pending","connectPromise","doConnect","delete","connectToDevice","requestMTU","discoverAllServicesAndCharacteristics","disconnectSub","onDisconnected","disconnectedDevice","errorMsg","remove","Error","msg","connectionFailed","disconnect","cancelConnection","isConnected","getConnectedDevice","getMtu","mtu","readCharacteristic","serviceUuid","characteristicUuid","notConnected","characteristic","readCharacteristicForService","value","alloc","writeCharacteristic","data","withResponse","base64Data","toString","writeCharacteristicWithResponseForService","writeCharacteristicWithoutResponseForService","subscribeToCharacteristic","onData","onError","monitorCharacteristicForService","errorMessage","isCancelled","destroy","sub","keys","catch","removeAllListeners","instance","getBleManager","resetBleManager"],"sourceRoot":"../../../src","sources":["ble/BleManager.ts"],"mappings":"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","ignoreList":[]}
@@ -216,13 +216,14 @@ export class DeviceManager extends EventEmitter {
216
216
  throw DeviceError.notConnected(device.id);
217
217
  }
218
218
 
219
- // Check current pairing state
219
+ // Check current pairing state — skip if already provisioned
220
220
  const pairingState = await this.readPairingState(device.id);
221
221
  if (pairingState === 'paired') {
222
- log.warn('Device is already provisioned', {
222
+ log.info('Device is already provisioned, skipping', {
223
223
  deviceId: device.id
224
224
  });
225
- throw ProvisioningError.alreadyProvisioned(device.id);
225
+ device.isProvisioned = true;
226
+ return;
226
227
  }
227
228
 
228
229
  // Set up provisioning result listener
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","EventEmitter","getBleManager","SERVICE_DEVICE_INFO","SERVICE_BOTA_PROVISIONING","SERVICE_BOTA_CONTROL","SERVICE_BOTA_WIFI_CONFIG","CHAR_SERIAL_NUMBER","CHAR_FIRMWARE_REVISION","CHAR_HARDWARE_REVISION","CHAR_PAIRING_STATE","CHAR_DEVICE_TOKEN","CHAR_API_ENDPOINT","CHAR_PROVISIONING_RESULT","CHAR_DEVICE_STATUS","CHAR_RECORDING_CONTROL","CHAR_RECORDING_STATUS","CHAR_TIME_SYNC","CHAR_WIFI_GRANT","CHAR_WIFI_CREDENTIAL","CHAR_WIFI_STATUS","API_ENDPOINT_PRODUCTION","API_ENDPOINT_SANDBOX","PROVISIONING_SUCCESS","PROVISIONING_INVALID_TOKEN","PROVISIONING_STORAGE_ERROR","PROVISIONING_CHUNK_ERROR","OPERATION_TIMEOUT","RECORDING_CMD_GRANT_START","RECORDING_CMD_GRANT_STOP","RECORDING_RESULT_SUCCESS","RECORDING_RESULT_ALREADY_RECORDING","RECORDING_RESULT_NOT_RECORDING","RECORDING_RESULT_INVALID_GRANT","RECORDING_RESULT_GRANT_EXPIRED","CHAR_DEVICE_COMMAND","DEVICE_CMD_FACTORY_RESET","parsePairingState","parseDeviceStatus","createTimeSyncData","parseWiFiStatusInfo","parseWiFiConfigResult","createWiFiGrantPacket","DeviceError","ProvisioningError","logger","deriveSessionKey","encryptWiFiCredentials","formatWiFiCredentialPacket","log","tag","DeviceManager","connectedDevices","Map","statusSubscriptions","isInitialized","constructor","bleManager","setupBleListeners","initialize","info","on","device","emit","deviceId","get","error","connectionState","delete","remove","startScan","options","stopScan","getDiscoveredDevices","getConnectedDevices","Array","from","values","connect","id","name","existing","debug","serialNumber","readSerialNumber","firmwareVersion","readFirmwareVersion","hardwareRevision","readHardwareRevision","pairingState","readPairingState","mtu","getMtu","connectedDevice","deviceType","isProvisioned","set","disconnect","factoryReset","isConnected","notConnected","resultPromise","waitForProvisioningResult","writeCharacteristic","warn","provision","deviceToken","environment","alreadyProvisioned","writeApiEndpoint","writeDeviceToken","result","success","invalidToken","storageError","chunkError","syncTime","getStatus","data","readCharacteristic","subscribeToStatus","callback","subscription","subscribeToCharacteristic","status","timeSyncData","toString","replace","undefined","length","endpointByte","token","maxChunkSize","tokenBuffer","totalChunks","Math","ceil","tokenLength","i","start","end","min","chunkData","slice","chunk","alloc","writeUInt8","copy","total","Promise","resolve","reject","timeout","setTimeout","clearTimeout","resultCode","message","requestStartRecording","grantToken","_options","payload","waitForRecordingResult","requestStopRecording","getRecordingState","parseRecordingState","subscribeToRecordingState","state","timestamp","readUInt32LE","source","active","startedAt","Date","initiatedBy","configureWiFi","credentials","grant","ssid","grantPacket","grantBlob","sessionKey","encrypted","password","credentialPacket","packetSize","waitForWiFiConfigResult","Error","getWiFiStatus","subscribeToWiFiStatus","String","destroy","sub","clear","removeAllListeners"],"sourceRoot":"../../../src","sources":["managers/DeviceManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","EventEmitter","getBleManager","SERVICE_DEVICE_INFO","SERVICE_BOTA_PROVISIONING","SERVICE_BOTA_CONTROL","SERVICE_BOTA_WIFI_CONFIG","CHAR_SERIAL_NUMBER","CHAR_FIRMWARE_REVISION","CHAR_HARDWARE_REVISION","CHAR_PAIRING_STATE","CHAR_DEVICE_TOKEN","CHAR_API_ENDPOINT","CHAR_PROVISIONING_RESULT","CHAR_DEVICE_STATUS","CHAR_RECORDING_CONTROL","CHAR_RECORDING_STATUS","CHAR_TIME_SYNC","CHAR_WIFI_GRANT","CHAR_WIFI_CREDENTIAL","CHAR_WIFI_STATUS","API_ENDPOINT_PRODUCTION","API_ENDPOINT_SANDBOX","PROVISIONING_SUCCESS","PROVISIONING_INVALID_TOKEN","PROVISIONING_STORAGE_ERROR","PROVISIONING_CHUNK_ERROR","OPERATION_TIMEOUT","RECORDING_CMD_GRANT_START","RECORDING_CMD_GRANT_STOP","RECORDING_RESULT_SUCCESS","RECORDING_RESULT_ALREADY_RECORDING","RECORDING_RESULT_NOT_RECORDING","RECORDING_RESULT_INVALID_GRANT","RECORDING_RESULT_GRANT_EXPIRED","CHAR_DEVICE_COMMAND","DEVICE_CMD_FACTORY_RESET","parsePairingState","parseDeviceStatus","createTimeSyncData","parseWiFiStatusInfo","parseWiFiConfigResult","createWiFiGrantPacket","DeviceError","ProvisioningError","logger","deriveSessionKey","encryptWiFiCredentials","formatWiFiCredentialPacket","log","tag","DeviceManager","connectedDevices","Map","statusSubscriptions","isInitialized","constructor","bleManager","setupBleListeners","initialize","info","on","device","emit","deviceId","get","error","connectionState","delete","remove","startScan","options","stopScan","getDiscoveredDevices","getConnectedDevices","Array","from","values","connect","id","name","existing","debug","serialNumber","readSerialNumber","firmwareVersion","readFirmwareVersion","hardwareRevision","readHardwareRevision","pairingState","readPairingState","mtu","getMtu","connectedDevice","deviceType","isProvisioned","set","disconnect","factoryReset","isConnected","notConnected","resultPromise","waitForProvisioningResult","writeCharacteristic","warn","provision","deviceToken","environment","writeApiEndpoint","writeDeviceToken","result","success","invalidToken","storageError","chunkError","syncTime","getStatus","data","readCharacteristic","subscribeToStatus","callback","subscription","subscribeToCharacteristic","status","timeSyncData","toString","replace","undefined","length","endpointByte","token","maxChunkSize","tokenBuffer","totalChunks","Math","ceil","tokenLength","i","start","end","min","chunkData","slice","chunk","alloc","writeUInt8","copy","total","Promise","resolve","reject","timeout","setTimeout","clearTimeout","resultCode","message","requestStartRecording","grantToken","_options","payload","waitForRecordingResult","requestStopRecording","getRecordingState","parseRecordingState","subscribeToRecordingState","state","timestamp","readUInt32LE","source","active","startedAt","Date","initiatedBy","configureWiFi","credentials","grant","ssid","grantPacket","grantBlob","sessionKey","encrypted","password","credentialPacket","packetSize","waitForWiFiConfigResult","Error","getWiFiStatus","subscribeToWiFiStatus","String","destroy","sub","clear","removeAllListeners"],"sourceRoot":"../../../src","sources":["managers/DeviceManager.ts"],"mappings":"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","ignoreList":[]}
@@ -23,6 +23,7 @@ export declare class BleManager extends EventEmitter<BleManagerEvents> {
23
23
  private disconnectSubscriptions;
24
24
  private connectedDevices;
25
25
  private discoveredDevices;
26
+ private pendingConnects;
26
27
  private isScanning;
27
28
  private cachedState;
28
29
  constructor();
@@ -63,9 +64,12 @@ export declare class BleManager extends EventEmitter<BleManagerEvents> {
63
64
  */
64
65
  private parseDiscoveredDevice;
65
66
  /**
66
- * Connect to a device
67
+ * Connect to a device.
68
+ * Deduplicates concurrent calls — if a connect is already in progress
69
+ * for this device, callers share the same promise.
67
70
  */
68
71
  connect(deviceId: string): Promise<Device>;
72
+ private doConnect;
69
73
  /**
70
74
  * Disconnect from a device
71
75
  */
@@ -1 +1 @@
1
- {"version":3,"file":"BleManager.d.ts","sourceRoot":"","sources":["../../../../src/ble/BleManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BleManager.d.ts","sourceRoot":"","sources":["../../../../src/ble/BleManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceManager.d.ts","sourceRoot":"","sources":["../../../../src/managers/DeviceManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceManager.d.ts","sourceRoot":"","sources":["../../../../src/managers/DeviceManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bota-dev/react-native-sdk",
3
- "version": "0.0.12",
3
+ "version": "0.0.14",
4
4
  "description": "Bota React Native SDK for BLE device communication",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -35,6 +35,19 @@ import {
35
35
 
36
36
  const log = logger.tag('BleManager');
37
37
 
38
+ /** Extract a human-readable message from a BleError (message is often null) */
39
+ function describeBleError(err: BleError | Error | null | undefined): string {
40
+ if (!err) return 'Unknown error';
41
+ const ble = err as BleError;
42
+ if (ble.message) return ble.message;
43
+ if (ble.reason) return ble.reason;
44
+ const parts: string[] = [];
45
+ if (ble.errorCode !== undefined) parts.push(`errorCode=${ble.errorCode}`);
46
+ if ((ble as any).iosErrorCode != null) parts.push(`ios=${(ble as any).iosErrorCode}`);
47
+ if ((ble as any).androidErrorCode != null) parts.push(`android=${(ble as any).androidErrorCode}`);
48
+ return parts.length > 0 ? parts.join(', ') : 'Unknown BLE error';
49
+ }
50
+
38
51
  /**
39
52
  * Events emitted by BleManager
40
53
  */
@@ -54,6 +67,7 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
54
67
  private disconnectSubscriptions: Map<string, Subscription> = new Map();
55
68
  private connectedDevices: Map<string, Device> = new Map();
56
69
  private discoveredDevices: Map<string, DiscoveredDevice> = new Map();
70
+ private pendingConnects: Map<string, Promise<Device>> = new Map();
57
71
  private isScanning = false;
58
72
  private cachedState: State = State.Unknown;
59
73
 
@@ -303,17 +317,37 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
303
317
  }
304
318
 
305
319
  /**
306
- * Connect to a device
320
+ * Connect to a device.
321
+ * Deduplicates concurrent calls — if a connect is already in progress
322
+ * for this device, callers share the same promise.
307
323
  */
308
324
  async connect(deviceId: string): Promise<Device> {
309
- log.info('Connecting to device', { deviceId });
310
-
311
325
  // Check if already connected
312
326
  if (this.connectedDevices.has(deviceId)) {
313
327
  log.debug('Device already connected', { deviceId });
314
328
  return this.connectedDevices.get(deviceId)!;
315
329
  }
316
330
 
331
+ // Deduplicate: if a connect is already in progress, return the same promise
332
+ const pending = this.pendingConnects.get(deviceId);
333
+ if (pending) {
334
+ log.debug('Connection already in progress, sharing promise', { deviceId });
335
+ return pending;
336
+ }
337
+
338
+ const connectPromise = this.doConnect(deviceId);
339
+ this.pendingConnects.set(deviceId, connectPromise);
340
+
341
+ try {
342
+ return await connectPromise;
343
+ } finally {
344
+ this.pendingConnects.delete(deviceId);
345
+ }
346
+ }
347
+
348
+ private async doConnect(deviceId: string): Promise<Device> {
349
+ log.info('Connecting to device', { deviceId });
350
+
317
351
  try {
318
352
  // Connect with timeout
319
353
  const device = await this.manager.connectToDevice(deviceId, {
@@ -331,9 +365,10 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
331
365
 
332
366
  // Set up disconnect listener
333
367
  const disconnectSub = device.onDisconnected((error, disconnectedDevice) => {
368
+ const errorMsg = error ? describeBleError(error) : undefined;
334
369
  log.info('Device disconnected', {
335
370
  deviceId: disconnectedDevice.id,
336
- error: error?.message,
371
+ error: errorMsg,
337
372
  });
338
373
  this.connectedDevices.delete(disconnectedDevice.id);
339
374
  this.disconnectSubscriptions.get(disconnectedDevice.id)?.remove();
@@ -341,7 +376,7 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
341
376
  this.emit(
342
377
  'deviceDisconnected',
343
378
  disconnectedDevice.id,
344
- error ? new Error(error.message || 'Device disconnected') : undefined
379
+ error ? new Error(errorMsg || 'Device disconnected') : undefined
345
380
  );
346
381
  });
347
382
  this.disconnectSubscriptions.set(deviceId, disconnectSub);
@@ -349,8 +384,7 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
349
384
  this.emit('deviceConnected', deviceId);
350
385
  return device;
351
386
  } catch (error) {
352
- const bleError = error as BleError;
353
- const msg = bleError.message || 'Connection failed';
387
+ const msg = describeBleError(error as BleError);
354
388
  log.error('Connection failed', new Error(msg), { deviceId });
355
389
  throw DeviceError.connectionFailed(deviceId, new Error(msg));
356
390
  }
@@ -371,8 +405,7 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
371
405
  try {
372
406
  await device.cancelConnection();
373
407
  } catch (error) {
374
- const bleError = error as BleError;
375
- log.warn('Disconnect error (may be expected)', { error: bleError.message });
408
+ log.warn('Disconnect error (may be expected)', { error: describeBleError(error as BleError) });
376
409
  }
377
410
 
378
411
  this.connectedDevices.delete(deviceId);
@@ -436,8 +469,7 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
436
469
 
437
470
  return Buffer.from(characteristic.value, 'base64');
438
471
  } catch (error) {
439
- const bleError = error as BleError;
440
- const msg = bleError.message || 'Unknown BLE error';
472
+ const msg = describeBleError(error as BleError);
441
473
  log.error('Read characteristic failed', new Error(msg), {
442
474
  deviceId,
443
475
  serviceUuid,
@@ -484,8 +516,7 @@ export class BleManager extends EventEmitter<BleManagerEvents> {
484
516
  );
485
517
  }
486
518
  } catch (error) {
487
- const bleError = error as BleError;
488
- const msg = bleError.message || 'Unknown BLE error';
519
+ const msg = describeBleError(error as BleError);
489
520
  log.error('Write characteristic failed', new Error(msg), {
490
521
  deviceId,
491
522
  serviceUuid,
@@ -304,11 +304,12 @@ export class DeviceManager extends EventEmitter<DeviceManagerEvents> {
304
304
  throw DeviceError.notConnected(device.id);
305
305
  }
306
306
 
307
- // Check current pairing state
307
+ // Check current pairing state — skip if already provisioned
308
308
  const pairingState = await this.readPairingState(device.id);
309
309
  if (pairingState === 'paired') {
310
- log.warn('Device is already provisioned', { deviceId: device.id });
311
- throw ProvisioningError.alreadyProvisioned(device.id);
310
+ log.info('Device is already provisioned, skipping', { deviceId: device.id });
311
+ device.isProvisioned = true;
312
+ return;
312
313
  }
313
314
 
314
315
  // Set up provisioning result listener