react-native-gizwits-sdk-v5 1.5.0-beta.16 → 1.5.0-beta.2
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.
package/android/src/main/java/com/gizwits/reactnativegizwitssdkv5/RNGizDeviceManagerModule.kt
CHANGED
|
@@ -8,7 +8,6 @@ import com.facebook.react.bridge.ReadableMap
|
|
|
8
8
|
import com.facebook.react.bridge.WritableMap
|
|
9
9
|
import com.facebook.react.modules.core.DeviceEventManagerModule
|
|
10
10
|
import com.gizwits.smart.sdk.GizDevice
|
|
11
|
-
import com.gizwits.smart.sdk.esptouch.GizESPTouchSmartConfig
|
|
12
11
|
import com.gizwits.smart.sdk.GizSDKManager
|
|
13
12
|
import com.gizwits.smart.sdk.bluetooth.bleCapability
|
|
14
13
|
import com.gizwits.smart.sdk.common.GizConfiguration
|
|
@@ -27,7 +26,6 @@ import com.google.gson.JsonObject
|
|
|
27
26
|
import com.google.gson.annotations.SerializedName
|
|
28
27
|
import kotlinx.coroutines.CoroutineScope
|
|
29
28
|
import kotlinx.coroutines.Dispatchers
|
|
30
|
-
import kotlinx.coroutines.SupervisorJob
|
|
31
29
|
import kotlinx.coroutines.launch
|
|
32
30
|
import org.json.JSONArray
|
|
33
31
|
import org.json.JSONObject
|
|
@@ -119,18 +117,6 @@ data class GizProvideWiFiCredentialsParams(
|
|
|
119
117
|
@SerializedName("timeout")
|
|
120
118
|
val timeout: Long,
|
|
121
119
|
): DeviceParams
|
|
122
|
-
|
|
123
|
-
data class GizProvideWiFiCredentialsWithAirLinkParams(
|
|
124
|
-
@SerializedName("ssid")
|
|
125
|
-
val ssid: String,
|
|
126
|
-
@SerializedName("password")
|
|
127
|
-
val password: String,
|
|
128
|
-
@SerializedName("timeout")
|
|
129
|
-
val timeout: Long,
|
|
130
|
-
@SerializedName("productKeys")
|
|
131
|
-
val productKeys: List<String>,
|
|
132
|
-
): DeviceParams
|
|
133
|
-
|
|
134
120
|
data class GizStopProvideWiFiCredentialsParams(
|
|
135
121
|
@SerializedName("id")
|
|
136
122
|
override val id: String,
|
|
@@ -161,8 +147,6 @@ data class StopUpgradeParams(
|
|
|
161
147
|
|
|
162
148
|
|
|
163
149
|
class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaModule(reactContext) {
|
|
164
|
-
private val moduleScope = CoroutineScope(SupervisorJob() + Dispatchers.IO)
|
|
165
|
-
|
|
166
150
|
enum class EventName(val value: String) {
|
|
167
151
|
GizOTAProgressEvent("GizOTAProgressEvent"),
|
|
168
152
|
GizProvideWiFiCredentialsEvent("GizProvideWiFiCredentialsEvent"),
|
|
@@ -179,17 +163,11 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
179
163
|
}
|
|
180
164
|
|
|
181
165
|
override fun getName() = "RNGizDeviceManagerModule"
|
|
182
|
-
|
|
183
|
-
override fun onCatalystInstanceDestroy() {
|
|
184
|
-
super.onCatalystInstanceDestroy()
|
|
185
|
-
moduleScope.cancel() // 取消所有协程
|
|
186
|
-
}
|
|
187
|
-
|
|
188
166
|
@ReactMethod
|
|
189
167
|
fun sendDp(options: ReadableMap, result: Callback) {
|
|
190
168
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizSendDPParams::class.java)
|
|
191
169
|
if (config !=null && device !=null) {
|
|
192
|
-
|
|
170
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
193
171
|
try {
|
|
194
172
|
val gson = Gson()
|
|
195
173
|
val jsonObject = gson.fromJson(config.data, JsonObject::class.java)
|
|
@@ -210,7 +188,7 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
210
188
|
fun getDp(options: ReadableMap, result: Callback) {
|
|
211
189
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizGetDPParams::class.java)
|
|
212
190
|
if (config !=null && device !=null) {
|
|
213
|
-
|
|
191
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
214
192
|
var res = when(config.type) {
|
|
215
193
|
CapacityTypes.BLE -> device.bleCapability.getDp(config.attrs)
|
|
216
194
|
CapacityTypes.LAN -> device.lanCapability.getDp(config.attrs)
|
|
@@ -232,7 +210,7 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
232
210
|
fun getDeviceInfo(options: ReadableMap, result: Callback) {
|
|
233
211
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizGetDeviceInfoParams::class.java)
|
|
234
212
|
if (config !=null && device !=null) {
|
|
235
|
-
|
|
213
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
236
214
|
val res = when(config.type) {
|
|
237
215
|
CapacityTypes.BLE -> device.bleCapability.getDeviceInfo()
|
|
238
216
|
CapacityTypes.LAN -> device.lanCapability.getDeviceInfo()
|
|
@@ -247,7 +225,7 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
247
225
|
fun updateDeviceInfo(options: ReadableMap, result: Callback) {
|
|
248
226
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, UpdateDeviceInfoParams::class.java)
|
|
249
227
|
if (config !=null && device !=null) {
|
|
250
|
-
|
|
228
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
251
229
|
val res = device.updateDeviceInfo(config.alias, config.remark)
|
|
252
230
|
GizRNCallbackManager.callbackWithResult(callback = result, result = res)
|
|
253
231
|
// if (res.isSuccess) {
|
|
@@ -261,7 +239,7 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
261
239
|
fun bind(options: ReadableMap, result: Callback) {
|
|
262
240
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizBindParams::class.java)
|
|
263
241
|
if (config !=null && device !=null) {
|
|
264
|
-
|
|
242
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
265
243
|
val res = device.bind(config.alias, config.remark)
|
|
266
244
|
GizRNCallbackManager.callbackWithResult(callback = result, result = res)
|
|
267
245
|
// if (res.isSuccess) {
|
|
@@ -275,7 +253,7 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
275
253
|
fun unBind(options: ReadableMap, result: Callback) {
|
|
276
254
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizUnBindParams::class.java)
|
|
277
255
|
if (config !=null && device !=null) {
|
|
278
|
-
|
|
256
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
279
257
|
val res = device.unBind()
|
|
280
258
|
GizRNCallbackManager.callbackWithResult(callback = result, result = res)
|
|
281
259
|
if (res.isSuccess) {
|
|
@@ -288,7 +266,7 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
288
266
|
fun stopProvideWiFiCredentials(options: ReadableMap, result: Callback) {
|
|
289
267
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizStopProvideWiFiCredentialsParams::class.java)
|
|
290
268
|
if (config !=null && device !=null) {
|
|
291
|
-
|
|
269
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
292
270
|
val res = when(config.type) {
|
|
293
271
|
CapacityTypes.BLE -> device.bleCapability.stopProvideWiFiCredentials()
|
|
294
272
|
CapacityTypes.LAN -> device.lanCapability.stopProvideWiFiCredentials()
|
|
@@ -299,14 +277,6 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
299
277
|
}
|
|
300
278
|
}
|
|
301
279
|
|
|
302
|
-
@ReactMethod
|
|
303
|
-
fun stopProvideWiFiCredentialsWithAirLink(options: ReadableMap, result: Callback) {
|
|
304
|
-
moduleScope.launch {
|
|
305
|
-
val res = GizESPTouchSmartConfig.stopProvideWiFiCredentialsWithAirLink()
|
|
306
|
-
GizRNCallbackManager.callbackWithResult(callback = result, result = res)
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
|
|
310
280
|
fun wiFiCredentialsEventHandler(event: GizWiFiActivatorEvent, device: GizDevice) {
|
|
311
281
|
val jsonObject = JSONObject()
|
|
312
282
|
jsonObject.put("data", event.toString())
|
|
@@ -316,21 +286,11 @@ class RNGizDeviceManagerModule(reactContext: ReactApplicationContext) : ReactCon
|
|
|
316
286
|
GizRNCallbackManager.jsonObject2WriteableMap(jsonObject)
|
|
317
287
|
)
|
|
318
288
|
}
|
|
319
|
-
|
|
320
|
-
fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
321
|
-
val jsonObject = JSONObject()
|
|
322
|
-
jsonObject.put("data", event.toString())
|
|
323
|
-
sendEvent(
|
|
324
|
-
EventName.GizProvideWiFiCredentialsEvent.name,
|
|
325
|
-
GizRNCallbackManager.jsonObject2WriteableMap(jsonObject)
|
|
326
|
-
)
|
|
327
|
-
}
|
|
328
|
-
|
|
329
289
|
@ReactMethod
|
|
330
290
|
fun provideWiFiCredentials(options: ReadableMap, result: Callback) {
|
|
331
291
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizProvideWiFiCredentialsParams::class.java)
|
|
332
292
|
if (config !=null && device !=null) {
|
|
333
|
-
|
|
293
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
334
294
|
val res = when(config.type) {
|
|
335
295
|
CapacityTypes.BLE -> device.bleCapability.provideWiFiCredentials(
|
|
336
296
|
config.ssid,
|
|
@@ -362,31 +322,11 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
362
322
|
}
|
|
363
323
|
}
|
|
364
324
|
|
|
365
|
-
@ReactMethod
|
|
366
|
-
fun provideWiFiCredentialsWithAirLink(options: ReadableMap, result: Callback) {
|
|
367
|
-
val config = RNGizParamsChecker.check(options, result, GizProvideWiFiCredentialsWithAirLinkParams::class.java)
|
|
368
|
-
config?.let {
|
|
369
|
-
moduleScope.launch {
|
|
370
|
-
val res = GizESPTouchSmartConfig.provideWiFiCredentialsWithAirLink(
|
|
371
|
-
reactApplicationContext,
|
|
372
|
-
config.ssid,
|
|
373
|
-
config.password,
|
|
374
|
-
config.timeout,
|
|
375
|
-
config.productKeys,
|
|
376
|
-
processHandler = {
|
|
377
|
-
wiFiCredentialsWithAirLinkEventHandler(it)
|
|
378
|
-
}
|
|
379
|
-
)
|
|
380
|
-
GizRNCallbackManager.callbackWithResult(callback = result, result = res)
|
|
381
|
-
}
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
|
-
|
|
385
325
|
@ReactMethod
|
|
386
326
|
fun register(options: ReadableMap, result: Callback) {
|
|
387
327
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizRegisterDeviceParams::class.java)
|
|
388
328
|
if (config !=null && device !=null) {
|
|
389
|
-
|
|
329
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
390
330
|
val res = device.register()
|
|
391
331
|
GizRNCallbackManager.callbackWithResult(callback = result, result = res)
|
|
392
332
|
}
|
|
@@ -397,7 +337,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
397
337
|
fun connect(options: ReadableMap, result: Callback) {
|
|
398
338
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizConnectParams::class.java)
|
|
399
339
|
if (config !=null && device !=null) {
|
|
400
|
-
|
|
340
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
401
341
|
val res = when(config.type) {
|
|
402
342
|
CapacityTypes.BLE -> device.bleCapability.connect()
|
|
403
343
|
CapacityTypes.LAN -> device.lanCapability.connect()
|
|
@@ -411,7 +351,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
411
351
|
fun disConnect(options: ReadableMap, result: Callback) {
|
|
412
352
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizDisConnectParams::class.java)
|
|
413
353
|
if (config !=null && device !=null) {
|
|
414
|
-
|
|
354
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
415
355
|
val res = when(config.type) {
|
|
416
356
|
CapacityTypes.BLE -> device.bleCapability.disConnect()
|
|
417
357
|
CapacityTypes.LAN -> device.lanCapability.disConnect()
|
|
@@ -426,7 +366,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
426
366
|
fun checkUpdate(options: ReadableMap, result: Callback) {
|
|
427
367
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizCheckUpdateParams::class.java)
|
|
428
368
|
if (config !=null && device !=null) {
|
|
429
|
-
|
|
369
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
430
370
|
val res = when(config.type) {
|
|
431
371
|
CapacityTypes.BLE -> device.bleCapability.checkUpdate(config.firmwareType)
|
|
432
372
|
CapacityTypes.LAN -> device.lanCapability.checkUpdate(config.firmwareType)
|
|
@@ -453,7 +393,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
453
393
|
fun startUpgrade(options: ReadableMap, result: Callback) {
|
|
454
394
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, GizCheckUpdateParams::class.java)
|
|
455
395
|
if (config !=null && device !=null) {
|
|
456
|
-
|
|
396
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
457
397
|
val res = when(config.type) {
|
|
458
398
|
CapacityTypes.BLE -> {
|
|
459
399
|
device.bleCapability.startUpgrade(config.firmwareType, processHandler = {
|
|
@@ -475,7 +415,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
475
415
|
fun cancelUpgrade(options: ReadableMap, result: Callback) {
|
|
476
416
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, StopUpgradeParams::class.java)
|
|
477
417
|
if (config !=null && device !=null) {
|
|
478
|
-
|
|
418
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
479
419
|
val res = when(config.type) {
|
|
480
420
|
CapacityTypes.BLE -> device.bleCapability.cancelUpgrade()
|
|
481
421
|
CapacityTypes.LAN -> device.lanCapability.cancelUpgrade()
|
|
@@ -490,7 +430,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
490
430
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, StartMusicalRhythmParams::class.java)
|
|
491
431
|
print("startMusicalRhythm ${config}")
|
|
492
432
|
if (config !=null && device !=null) {
|
|
493
|
-
|
|
433
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
494
434
|
val res = device.startMusicalRhythm(config.sensitivity, config.mode) { data ->
|
|
495
435
|
if (config.needMonitor) {
|
|
496
436
|
val jsonObject = JSONObject()
|
|
@@ -525,7 +465,7 @@ fun wiFiCredentialsWithAirLinkEventHandler(event: GizWiFiActivatorEvent) {
|
|
|
525
465
|
fun stopMusicalRhythm(options: ReadableMap, result: Callback) {
|
|
526
466
|
val (config, device) = RNGizParamsChecker.checkDeviceAndParams(options, result, StopMusicalRhythmParams::class.java)
|
|
527
467
|
if (config !=null && device !=null) {
|
|
528
|
-
|
|
468
|
+
CoroutineScope(Dispatchers.IO).launch {
|
|
529
469
|
val res = device.stopMusicalRhythm();
|
|
530
470
|
GizRNCallbackManager.callbackWithResult(callback = result, result = Result.success(Unit))
|
|
531
471
|
}
|
|
@@ -23,8 +23,6 @@ RCT_EXTERN_METHOD(updateDeviceInfo:(NSDictionary *)options result:(RCTResponseSe
|
|
|
23
23
|
RCT_EXTERN_METHOD(unBind:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
24
24
|
RCT_EXTERN_METHOD(stopProvideWiFiCredentials:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
25
25
|
RCT_EXTERN_METHOD(provideWiFiCredentials:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
26
|
-
RCT_EXTERN_METHOD(provideWiFiCredentialsWithAirLink:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
27
|
-
RCT_EXTERN_METHOD(stopProvideWiFiCredentialsWithAirLink:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
28
26
|
|
|
29
27
|
RCT_EXTERN_METHOD(startMusicalRhythm:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
30
28
|
RCT_EXTERN_METHOD(stopMusicalRhythm:(NSDictionary *)options result:(RCTResponseSenderBlock)result)
|
|
@@ -80,12 +80,6 @@ struct ProvideWiFiCredentialsParams: Decodable {
|
|
|
80
80
|
var password: String
|
|
81
81
|
var timeout: Int
|
|
82
82
|
}
|
|
83
|
-
struct ProvideWiFiCredentialsWithAirLinkParams: Decodable {
|
|
84
|
-
var ssid: String
|
|
85
|
-
var password: String
|
|
86
|
-
var timeout: Int
|
|
87
|
-
var productKeys: [String]
|
|
88
|
-
}
|
|
89
83
|
struct StopProvideWiFiCredentialsParams: Decodable {
|
|
90
84
|
var type: GizwitsiOSSDK.GizCapability
|
|
91
85
|
var id: String
|
|
@@ -442,7 +436,9 @@ class RNGizDeviceManagerModule: RCTEventEmitter {
|
|
|
442
436
|
case .GizMQTTCapability:
|
|
443
437
|
data = await device.mqttCapability.provideWiFiCredentials(ssid: params.ssid, password: params.password, timeout: params.timeout, processHandler: progressHandler)
|
|
444
438
|
break
|
|
445
|
-
|
|
439
|
+
case .GizAirLinkCapability:
|
|
440
|
+
data = await device.baseCapability.provideWiFiCredentials(ssid: params.ssid, password: params.password, timeout: params.timeout, processHandler: progressHandler, isAirLink: true)
|
|
441
|
+
break
|
|
446
442
|
GizRNCallbackManager.callbackWithResult(callback: result, result:data)
|
|
447
443
|
}
|
|
448
444
|
} else {
|
|
@@ -452,33 +448,6 @@ class RNGizDeviceManagerModule: RCTEventEmitter {
|
|
|
452
448
|
|
|
453
449
|
}
|
|
454
450
|
}
|
|
455
|
-
|
|
456
|
-
@objc
|
|
457
|
-
public func provideWiFiCredentialsWithAirLink(_ options: NSDictionary, result: @escaping RCTResponseSenderBlock) {
|
|
458
|
-
if let params = RNGizParamsChecker.check(options: options, result: result, paramsType: ProvideWiFiCredentialsWithAirLinkParams.self) {
|
|
459
|
-
@Sendable func progressHandler(event: GizWiFiActivatorEvent) {
|
|
460
|
-
// 推送数据到 GizOTAProgressEvent
|
|
461
|
-
let data = [
|
|
462
|
-
"data": event.rawValue
|
|
463
|
-
] as [String : Any]
|
|
464
|
-
sendEvent(withName: "GizProvideWiFiCredentialsEvent", body: data)
|
|
465
|
-
}
|
|
466
|
-
Task {
|
|
467
|
-
var data: GizResult<GizBaseProfile?, GizActivatorException?>
|
|
468
|
-
data = await ESPTouchSmartConfig.sharedInstance.provideWiFiCredentialsWithAirLink(ssid: params.ssid, password: params.password, timeout: params.timeout, productKeys: params.productKeys, processHandler: progressHandler)
|
|
469
|
-
GizRNCallbackManager.callbackWithResult(callback: result, result:data)
|
|
470
|
-
}
|
|
471
|
-
}
|
|
472
|
-
}
|
|
473
|
-
|
|
474
|
-
@objc
|
|
475
|
-
public func stopProvideWiFiCredentialsWithAirLink(_ options: NSDictionary, result: @escaping RCTResponseSenderBlock) {
|
|
476
|
-
Task {
|
|
477
|
-
var data: GizResult<Int?, GizActivatorException?>
|
|
478
|
-
data = await ESPTouchSmartConfig.sharedInstance.stopProvideWiFiCredentialsWithAirLink()
|
|
479
|
-
GizRNCallbackManager.callbackWithResult(callback: result, result:data)
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
451
|
|
|
483
452
|
@objc
|
|
484
453
|
public func stopProvideWiFiCredentials(_ options: NSDictionary, result: @escaping RCTResponseSenderBlock) {
|
package/package.json
CHANGED