@quec/rn-device-module 1.9.13 → 2.16.1

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.
Files changed (80) hide show
  1. package/.vscode/settings.json +3 -0
  2. package/QuecRNDeviceModule.podspec +54 -0
  3. package/README.md +1535 -1043
  4. package/android/build.gradle +119 -0
  5. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  6. package/android/gradle/wrapper/gradle-wrapper.properties +5 -0
  7. package/android/gradle.properties +23 -0
  8. package/android/gradlew +185 -0
  9. package/android/gradlew.bat +89 -0
  10. package/android/old-info.properties +2 -0
  11. package/android/proguard-rules.pro +21 -0
  12. package/android/publishInfo.properties +4 -0
  13. package/android/settings.gradle +3 -0
  14. package/android/src/main/AndroidManifest.xml +6 -0
  15. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/IQuecRNDeviceModuleSpec.java +1352 -0
  16. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/QuecRNDeviceModule.java +2423 -0
  17. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/QuecRNDeviceModulePackage.java +23 -0
  18. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/DataInfo.java +25 -0
  19. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/DataRes.java +31 -0
  20. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/DeviceDpsUpdateModel.java +18 -0
  21. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/ModelBridgeBasic.java +86 -0
  22. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/OtaUpgradePlanModel.java +292 -0
  23. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/ShareInfo.java +166 -0
  24. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/UserInfo.java +137 -0
  25. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/bean/WriteCmdWithId.java +10 -0
  26. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/AnalysisChannelDataUtils.java +82 -0
  27. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/DataConvertUtils.kt +130 -0
  28. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/ErrorCode.java +26 -0
  29. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/ErrorUtils.java +11 -0
  30. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/IpcUtil.java +75 -0
  31. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/NetUtils.java +85 -0
  32. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/OnConnectListener.java +22 -0
  33. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/ParamsValueUtils.java +79 -0
  34. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/QuecIotChannelMode.java +8 -0
  35. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/ReactNativeJson.java +199 -0
  36. package/android/src/main/java/com/quectel/smart/rnplugin/quecrndevicemodule/utils/ResponseUtils.java +156 -0
  37. package/android/src/main/res/values/strings.xml +4 -0
  38. package/android/src/main/res/values-en/strings.xml +4 -0
  39. package/android/src/main/res/values-zh/strings.xml +4 -0
  40. package/android/src/test/java/com/quectel/smart/template/ExampleUnitTest.java +17 -0
  41. package/build.gradle +1 -0
  42. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  43. package/gradle/wrapper/gradle-wrapper.properties +6 -0
  44. package/ios/Example/Podfile +17 -0
  45. package/ios/Example/QuecRNDeviceModule/AppDelegate.h +13 -0
  46. package/ios/Example/QuecRNDeviceModule/AppDelegate.m +46 -0
  47. package/ios/Example/QuecRNDeviceModule/Base.lproj/LaunchScreen.storyboard +31 -0
  48. package/ios/Example/QuecRNDeviceModule/Base.lproj/Main.storyboard +31 -0
  49. package/ios/Example/QuecRNDeviceModule/Images.xcassets/AppIcon.appiconset/Contents.json +98 -0
  50. package/ios/Example/QuecRNDeviceModule/QuecRNDeviceModule-Info.plist +40 -0
  51. package/ios/Example/QuecRNDeviceModule/QuecRNDeviceModule-Prefix.pch +16 -0
  52. package/ios/Example/QuecRNDeviceModule/ViewController.h +12 -0
  53. package/ios/Example/QuecRNDeviceModule/ViewController.m +29 -0
  54. package/ios/Example/QuecRNDeviceModule/en.lproj/InfoPlist.strings +2 -0
  55. package/ios/Example/QuecRNDeviceModule/main.m +15 -0
  56. package/ios/Example/QuecRNDeviceModule.xcodeproj/project.pbxproj +583 -0
  57. package/ios/Example/QuecRNDeviceModule.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  58. package/ios/Example/QuecRNDeviceModule.xcodeproj/xcshareddata/xcschemes/QuecRNDeviceModule-Example.xcscheme +101 -0
  59. package/ios/Example/QuecRNDeviceModule.xcworkspace/contents.xcworkspacedata +10 -0
  60. package/ios/Example/QuecRNDeviceModule.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  61. package/ios/LICENSE +4 -0
  62. package/ios/QuecRNDeviceModule/Assets/.gitkeep +0 -0
  63. package/ios/QuecRNDeviceModule/Classes/QuecRNDeviceModule+Ext.h +27 -0
  64. package/ios/QuecRNDeviceModule/Classes/QuecRNDeviceModule+Impl.h +1137 -0
  65. package/ios/QuecRNDeviceModule/Classes/QuecRNDeviceModule+Impl.m +1524 -0
  66. package/ios/QuecRNDeviceModule/Classes/QuecRNDeviceModule.h +157 -0
  67. package/ios/QuecRNDeviceModule/Classes/QuecRNDeviceModule.m +721 -0
  68. package/ios/README.md +20 -0
  69. package/{.prettierrc.js → js/.prettierrc.js} +11 -11
  70. package/js/README.md +1535 -0
  71. package/js/package.json +25 -0
  72. package/{src → js/src}/index.ts +12 -12
  73. package/{src → js/src}/module.ts +1332 -939
  74. package/{src → js/src}/viewCommon.ts +3 -3
  75. package/js/tsconfig.json +26 -0
  76. package/js/yarn.lock +4 -0
  77. package/package.json +10 -26
  78. package/plugin.ts +1180 -0
  79. package/settings.gradle +2 -0
  80. package/tsconfig.json +9 -0
@@ -0,0 +1,1137 @@
1
+ //
2
+ // QuecRNDeviceModule+Impl.h
3
+ //
4
+ // Auto-Created on 2026/01/28.
5
+ // Copyright © 2026年 quectel. All rights reserved.
6
+ //
7
+
8
+
9
+ #import <Foundation/Foundation.h>
10
+ #import "QuecRNDeviceModule.h"
11
+ #import <QuecPanelContext/QuecPanelContext.h>
12
+
13
+
14
+ /**
15
+ 设备桥组件
16
+
17
+ @version: 3.2.0
18
+ @owner: vic.huang@quectel.com
19
+ @platform: all
20
+ */
21
+ @interface QuecRNDeviceModule (Impl) <QuecPanelContextDidLoadProtocol>
22
+
23
+
24
+ // quectel Module Methods
25
+
26
+ /**
27
+ 获取当前设备WS订阅通道状态,订阅状态为true,不代表设备在线,只代表app和云端对当前设备进行了订阅
28
+
29
+ @available 1.8.0
30
+ @param resolve 回调 callback {"subscribe": true/false }
31
+ @param reject 回调 callback {"subscribe": true/false }
32
+ */
33
+ - (void)impl_isWebSocketSubscribe:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
34
+
35
+ /**
36
+ 获取设备通道连接中状态
37
+
38
+ @available 1.8.0
39
+ @param resolve 回调 callback {"connectingState": 0/1/2/3/4/5/6/7}
40
+ onlineStateMaskWS = 1 << 0,
41
+ onlineStateMaskWifi = 1 << 1,
42
+ onlineStateMaskBle = 1 << 2,
43
+ (0: all offline, 1: websocket online, 2 : wifi online, 3: wifi + websocket online, 4: ble online, 5: websocket + ble online, 6: ble + wifi online , 7: wifi + ble + ws online)
44
+ @param reject 回调 callback {"connectingState": 0/1/2/3/4/5/6/7}
45
+ onlineStateMaskWS = 1 << 0,
46
+ onlineStateMaskWifi = 1 << 1,
47
+ onlineStateMaskBle = 1 << 2,
48
+ (0: all offline, 1: websocket online, 2 : wifi online, 3: wifi + websocket online, 4: ble online, 5: websocket + ble online, 6: ble + wifi online , 7: wifi + ble + ws online)
49
+ */
50
+ - (void)impl_getDeviceConnectingState:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
51
+
52
+ /**
53
+ writeDpsByHttp
54
+
55
+ @available 1.8.0
56
+ @param dps – dps 确保code和value不为空 [ {id:0, code:"electric" type:BOOL, value:false} ,{id:1, code:"electric2", type:INT, value:2}]
57
+ @param deviceList – deviceList 设备列表 [{"deviceKey":"", "productKey":""}]
58
+ @param type - 类型 1:透传 2:属性 3:服务
59
+ @param extraData – {
60
+ dataFormat 数据类型 1:Hex 2:Text(当type为透传时,需要指定 dataFormat)
61
+ cacheTime 缓存时间,单位为秒,缓存时间范围 1-7776000 秒,启用缓存时必须设置缓存时间
62
+ isCache 是否启用缓存 1:启用 2:不启用,默认不启用
63
+ isCover 是否覆盖之前发送的相同的命令 1:覆盖 2:不覆盖,默认不覆盖,启用缓存时此参数有效
64
+
65
+ 查看接口定义
66
+ }
67
+ @param resolve 回调 callback
68
+ @param reject 回调 callback
69
+ */
70
+ - (void)impl_writeDpsByHttp:(NSArray*)dps deviceList:(NSArray*)deviceList type:(NSInteger)type extraData:(NSDictionary*)extraData resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
71
+
72
+ /**
73
+ read data points
74
+
75
+ @available 1.6.8
76
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
77
+ @param extraData – map
78
+ cacheTime number 指令缓存时间,ws通道有效,单位是s
79
+ msgId number 消息Id,ws通道有效
80
+ @param resolve 回调 callback
81
+ @param reject 回调 callback
82
+ */
83
+ - (void)impl_readDpsWithExtraData:(NSArray*)dps extraData:(NSDictionary*)extraData resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
84
+
85
+ /**
86
+ read data points
87
+
88
+ @available 1.6.8
89
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
90
+ @param extraData – map
91
+ cacheTime number 指令缓存时间,ws通道有效,单位是s
92
+ msgId number 消息Id,ws通道有效
93
+ @param mode – mode 下发模式: 0 auto,1: websocket 2:wifi 3:ble
94
+ @param resolve 回调 callback
95
+ @param reject 回调 callback
96
+ */
97
+ - (void)impl_readDpsWithExtraDataAndMode:(NSArray*)dps extraData:(NSDictionary*)extraData mode:(NSInteger)mode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
98
+
99
+ /**
100
+ write data points
101
+
102
+ @available 1.6.8
103
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
104
+ @param extraData – map
105
+ cacheTime number 指令缓存时间,ws通道有效,单位是s
106
+ msgId number 消息Id,ws通道有效
107
+ @param resolve 回调 callback
108
+ @param reject 回调 callback
109
+ */
110
+ - (void)impl_writeDpsWithExtraData:(NSArray*)dps extraData:(NSDictionary*)extraData resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
111
+
112
+ /**
113
+ write data points
114
+
115
+ @available 1.6.8
116
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
117
+ @param extraData – map
118
+ cacheTime number 指令缓存时间,ws通道有效,单位是s
119
+ msgId number 消息Id,ws通道有效
120
+ @param mode – mode 下发模式: 0 auto,1: websocket 2:wifi 3:ble
121
+ @param resolve 回调 callback
122
+ @param reject 回调 callback
123
+ */
124
+ - (void)impl_writeDpsWithExtraDataAndMode:(NSArray*)dps extraData:(NSDictionary*)extraData mode:(NSInteger)mode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
125
+
126
+ /**
127
+ 获取设备通道状态
128
+
129
+ @available 1.4.0
130
+ @param resolve 回调 callback {"state": 0/1/2}
131
+ (0: 未开启, 1: 未授权, 2 : 可用)
132
+ @param reject 回调 callback {"state": 0/1/2}
133
+ (0: 未开启, 1: 未授权, 2 : 可用)
134
+ */
135
+ - (void)impl_getBleState:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
136
+
137
+ /**
138
+ 获取物模型以及属性值
139
+
140
+ @available 2.16.0
141
+ @param params map
142
+ productKey string 产品key
143
+ deviceKey string 设备key
144
+ codeList string 非必填 查询的属性标识符
145
+ gatewayDk string 网关设备的 Device Key
146
+ gatewayPk string 网关设备的 Product Key
147
+ 和查询类型配合使用,如果查询多个属性,使用英文逗号分隔
148
+
149
+ type string 非必填 查询类型
150
+ 1 查询设备基础属性
151
+ 2 查询物模型属性
152
+ 3 查询定位信息
153
+ 查询类型可以单选和多选,如果需要查询多个类型的属性值,使用英文逗号分隔
154
+
155
+ filterType 过滤类型
156
+ 0: 仅获取属性定义(默认行为)
157
+ 1: 获取属性和事件定义
158
+ 2: 获取属性,事件和服务定义 (为后续预留)
159
+ @param resolve promise 执行回调
160
+ @param reject promise 执行回调
161
+ */
162
+ - (void)impl_getTslAndAttrs:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
163
+
164
+ /**
165
+ read data points
166
+
167
+ @available 1.4.0
168
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
169
+ @param resolve 回调 callback
170
+ @param reject 回调 callback
171
+ */
172
+ - (void)impl_readDps:(NSArray*)dps resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
173
+
174
+ /**
175
+ write data points
176
+
177
+ @available 1.4.0
178
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
179
+ @param resolve 回调 callback
180
+ @param reject 回调 callback
181
+ */
182
+ - (void)impl_writeDps:(NSArray*)dps resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
183
+
184
+ /**
185
+ write transparent data
186
+
187
+ @available 1.7.0
188
+ @param data 透传数据, 二进制base64转换的字符串
189
+ @param mode 发送模式
190
+ @param extraData 额外参数(预留)
191
+ @param resolve 回调callback
192
+ @param reject 回调callback
193
+ */
194
+ - (void)impl_writeTransparent:(NSString*)data mode:(NSInteger)mode extraData:(NSDictionary*)extraData resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
195
+
196
+ /**
197
+ read data points
198
+
199
+ @available 1.4.0
200
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
201
+ @param mode – mode 下发模式: 0 auto,1: websocket 2:wifi 3:ble
202
+ @param resolve 回调 callback
203
+ @param reject 回调 callback
204
+ */
205
+ - (void)impl_readDpsWithMode:(NSArray*)dps mode:(NSInteger)mode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
206
+
207
+ /**
208
+ write data points
209
+
210
+ @available 1.4.0
211
+ @param dps – dps [ {id:0, type:BOOL, value:false} ,{id:1, type:INT, value:2}]
212
+ @param mode – mode 下发模式: 0 auto,1: websocket 2:wifi 3:ble
213
+ @param resolve 回调 callback
214
+ @param reject 回调 callback
215
+ */
216
+ - (void)impl_writeDpsWithMode:(NSArray*)dps mode:(NSInteger)mode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
217
+
218
+ /**
219
+ 获取设备通道状态
220
+
221
+ @available 1.4.0
222
+ @param resolve 回调 callback {"onlineState": 0/1/2/3/4/5/6/7}
223
+ onlineStateMaskWS = 1 << 0,
224
+ onlineStateMaskWifi = 1 << 1,
225
+ onlineStateMaskBle = 1 << 2,
226
+ (0: all offline, 1: websocket online, 2 : wifi online, 3: wifi + websocket online, 4: ble online, 5: websocket + ble online, 6: ble + wifi online , 7: wifi + ble + ws online)
227
+ @param reject 回调 callback {"onlineState": 0/1/2/3/4/5/6/7}
228
+ onlineStateMaskWS = 1 << 0,
229
+ onlineStateMaskWifi = 1 << 1,
230
+ onlineStateMaskBle = 1 << 2,
231
+ (0: all offline, 1: websocket online, 2 : wifi online, 3: wifi + websocket online, 4: ble online, 5: websocket + ble online, 6: ble + wifi online , 7: wifi + ble + ws online)
232
+ */
233
+ - (void)impl_getOnlineState:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
234
+
235
+ /**
236
+ 建立通道,(设备会自动根据设备通道能力capabilitiesBitmask建立通道,此API用于手动切换指定通道)
237
+
238
+ @available 1.4.0
239
+ @param mode – mode 建立通道模式: 0 auto,1: websocket 2:wifi 3:ble
240
+ 注意:1,建立的通通与已连接通道不同时,已连接通道会断开。
241
+ 2,当设备不具备相应通道,建立其不具备的通道会失败。不会再自动建立其他通道
242
+ */
243
+ - (void)impl_connectChannel:(NSInteger)mode ;
244
+
245
+ /**
246
+ 断开通道,(
247
+
248
+ @available 1.4.0
249
+ @param type – type 通道类型,0: 关闭所有通道(关闭wifi和ble), 2:wifi 3:ble
250
+ */
251
+ - (void)impl_disconnectChannel:(NSInteger)type ;
252
+
253
+ /**
254
+ 获取websocket是否登录成功
255
+
256
+ @available 1.0.0
257
+ @param isLoginCallback Func 接受是否登录websocket回调 已登录成功 true 登录失败 false
258
+ */
259
+ - (void)impl_isWebSocketLoginCallback:(RCTResponseSenderBlock)isLoginCallback __deprecated_msg("event has been Deprecatedd, will be removed lately.");
260
+
261
+ /**
262
+ 订阅设备
263
+
264
+ @available 1.0.0
265
+ @param list 订阅设备列表,订阅结果QuecDeviceServiceWebSocketDelegate返回
266
+ [
267
+ {
268
+ "deviceKey": "1234567890",
269
+ "messageType": [
270
+ "ONLINE"
271
+ ],
272
+ "productKey": "p12345"
273
+ },
274
+ {
275
+ "deviceKey": "1234567890",
276
+ "messageType": [
277
+ "ONLINE",
278
+ "STATUS"
279
+ ],
280
+ "productKey": "p12345"
281
+ }
282
+ ]
283
+ */
284
+ - (void)impl_subscribeDevicesWithList:(NSArray*)list __deprecated_msg("event has been Deprecatedd, will be removed lately.");
285
+
286
+ /**
287
+ 取消订阅设备
288
+
289
+ @available 1.0.0
290
+ @param list 取消订阅设备列表,取消订阅结果QuecDeviceServiceWebSocketDelegate返回
291
+ [
292
+ {
293
+ "deviceKey": "1234567890",
294
+ "productKey": "p12345"
295
+ },
296
+ {
297
+ "deviceKey": "1234567890",
298
+ "productKey": "p12345"
299
+ }
300
+ ]
301
+ */
302
+ - (void)impl_unSubscribeDevicesWithList:(NSArray*)list __deprecated_msg("event has been Deprecatedd, will be removed lately.");
303
+
304
+ /**
305
+ 获取设备业务属性值
306
+
307
+ @available 1.0.0
308
+ @param params 发送数据,需要在delegate的websocketDidOpen回调之后才能调用
309
+ 透传
310
+ {
311
+ "cmd": "send",
312
+ "data": {
313
+ "cacheTime": 3600,
314
+ "dataFormat": "Text",
315
+ "deviceKey": "866123456789015",
316
+ "isCache": true,
317
+ "productKey": "p12345",
318
+ "raw": "123456",
319
+ "type": "RAW"
320
+ }
321
+ }
322
+ 物模型
323
+ {
324
+ "cmd": "send",
325
+ "data": {
326
+ "deviceKey": "1234567890",
327
+ "kv": "[{\"id\":5,\"name\":\"openapi\",\"type\":\"BOOL\",\"value\":\"true\"}]",
328
+ "productKey": "p12345",
329
+ "type": "WRITE-ATTR"
330
+ }
331
+ }
332
+ */
333
+ - (void)impl_sendDataToDeviceByWebSocketWithDataDict:(NSDictionary*)params __deprecated_msg("event has been Deprecatedd, will be removed lately.");
334
+
335
+ /**
336
+ 获取设备列表
337
+
338
+ @available 1.0.0
339
+ @param pageNumber number 页码
340
+ @param pageSize number 页大小
341
+ @param resolve promise 执行回调
342
+ callback {"data": {"list" : [], "total" : 12}}
343
+ @param reject promise 执行回调
344
+ callback {"data": {"list" : [], "total" : 12}}
345
+ */
346
+ - (void)impl_getDeviceListWithPageNumber:(NSInteger)pageNumber pageSize:(NSInteger)pageSize resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
347
+
348
+ /**
349
+ 获取设备业务物模型属性值
350
+
351
+ @available 1.0.0
352
+ @param params map
353
+ productKey string 产品key
354
+ deviceKey string 设备key
355
+ codeList string 非必填 查询的属性标识符
356
+ gatewayDk string 网关设备的 Device Key
357
+ gatewayPk string 网关设备的 Product Key
358
+ 和查询类型配合使用,如果查询多个属性,使用英文逗号分隔
359
+ type string 非必填 查询类型
360
+ 1 查询设备基础属性
361
+ 2 查询物模型属性
362
+ 3 查询定位信息
363
+ 查询类型可以单选和多选,如果需要查询多个类型的属性值,使用英文逗号分隔
364
+ @param resolve promise 执行回调
365
+ @param reject promise 执行回调
366
+ */
367
+ - (void)impl_getProductTSLWithProductKey:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
368
+
369
+ /**
370
+ 获取设备业务属性值
371
+
372
+ @available 1.0.0
373
+ @param params map
374
+ productKey string 产品key
375
+ deviceKey string 设备key
376
+ codeList string 非必填 查询的属性标识符
377
+ 和查询类型配合使用,如果查询多个属性,使用英文逗号分隔
378
+ type string 非必填 查询类型
379
+ 1 查询设备基础属性
380
+ 2 查询物模型属性
381
+ 3 查询定位信息
382
+ 查询类型可以单选和多选,如果需要查询多个类型的属性值,使用英文逗号分隔
383
+ @param resolve promise 执行回调
384
+ @param reject promise 执行回调
385
+ */
386
+ - (void)impl_getDeviceBusinessAttributesWithProductKey:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
387
+
388
+ /**
389
+ 更改分享设备名称
390
+
391
+ @available 1.0.0
392
+ @param deviceName string 设备名称
393
+ @param shareCode string 分享码
394
+ @param resolve promise 执行回调
395
+ @param reject promise 执行回调
396
+ */
397
+ - (void)impl_updateDeviceNameByShareUserWithDeviceName:(NSString*)deviceName shareCode:(NSString*)shareCode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
398
+
399
+ /**
400
+ 更改分享设备名称
401
+
402
+ @available 1.0.0
403
+ @param deviceName string deviceName
404
+ @param productKey string product key
405
+ @param deviceKey string deviceKey
406
+ @param resolve promise 执行回调
407
+ @param reject promise 执行回调
408
+ */
409
+ - (void)impl_updateDeviceName:(NSString*)deviceName productKey:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
410
+
411
+ /**
412
+ 查询网关设备下子设备列表
413
+
414
+ @available 1.0.0
415
+ @param params deviceKey string 必传 网关设备deviceKey
416
+ productKey string 必传 网关设备productKey
417
+ pageNumber number 必传 页码
418
+ pageSize number 必传 页大小
419
+ @param resolve promise 执行回调
420
+ callback {"data": {"list" : [], "total" : 12}}
421
+ @param reject promise 执行回调
422
+ callback {"data": {"list" : [], "total" : 12}}
423
+ */
424
+ - (void)impl_getGatewayDeviceChildListWithParams:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
425
+
426
+ /**
427
+ 设备解绑
428
+
429
+ @available 1.0.0
430
+ @param deviceKey string device key
431
+ @param productKey string product key
432
+ @param resolve promise 执行回调
433
+ @param reject promise 执行回调
434
+ */
435
+ - (void)impl_unbindDeviceWithDeviceKey:(NSString*)deviceKey productKey:(NSString*)productKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
436
+
437
+ /**
438
+ 设备解绑
439
+
440
+ @available 1.0.0
441
+ @param shareCode string 分享码
442
+ @param resolve promise 执行回调
443
+ @param reject promise 执行回调
444
+ */
445
+ - (void)impl_unShareDeviceByShareUserWithShareCode:(NSString*)shareCode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
446
+
447
+ /**
448
+ 获取设备属性图表列表
449
+
450
+ @available 1.1.0
451
+ @param params productKey 产品key
452
+ deviceKey 设备key
453
+ startTimestamp 开始时间(毫秒时间戳)
454
+ endTimestamp 结束时间(毫秒时间戳)
455
+ attributeCode 物模型属性标识符,查询多个属性时使用英文逗号分隔
456
+ gatewayDk 网关设备的 Device Key
457
+ gatewayPk 网关设备的 Product Key
458
+ countType 聚合类型(默认3):1-最大值 2-最小值 3-平均值 4-差值 5-总值
459
+ timeGranularity 统计时间粒度(默认2):1-月 2-日 3-小时 4-分钟 5-秒
460
+ callback {"data": []}
461
+ @param resolve promise 执行回调
462
+ @param reject promise 执行回调
463
+ */
464
+ - (void)impl_getPropertyChartListWithParams:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
465
+
466
+ /**
467
+ 获取设备分享人列表
468
+
469
+ @available 1.1.0
470
+ @param deviceKey string 设备名称
471
+ @param productKey string 产品key
472
+ @param resolve promise 执行回调
473
+ @param reject promise 执行回调
474
+ */
475
+ - (void)impl_getDeviceShareUserListWithDeviceKey:(NSString*)deviceKey productKey:(NSString*)productKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
476
+
477
+ /**
478
+ 分享人设置分享信息
479
+
480
+ @available 1.1.0
481
+ @param params deviceKey string 设备key
482
+ productKey string 产品key
483
+ acceptingExpireTime number 分享二维码种子失效时间 时间戳(毫秒),表示该分享在此时间戳时间内没有使用,会失效
484
+ coverMark number 覆盖标志:1 直接覆盖上条有效分享(默认)(覆盖原有的分享码);2 直接添加,允许多条并存;3 只有分享时间延长了,才允许覆盖上条分享
485
+ isSharingAlwaysValid bool 设备是否永久有效
486
+ sharingExpireTime number 设备使用到期时间 时间戳(毫秒),表示该分享的设备,被分享人可以使用的时间,isSharingAlwaysValid为YES时该参数无效
487
+ @param resolve promise 执行回调
488
+ @param reject promise 执行回调
489
+ */
490
+ - (void)impl_setShareInfoByOwnerWithDeviceKey:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
491
+
492
+ /**
493
+ 分享人取消分享
494
+
495
+ @available 1.1.0
496
+ @param shareCode string 分享码
497
+ @param resolve promise 执行回调
498
+ @param reject promise 执行回调
499
+ */
500
+ - (void)impl_unShareDeviceByOwnerWithShareCode:(NSString*)shareCode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
501
+
502
+ /**
503
+ 获取设备历史轨迹
504
+
505
+ @available 1.1.0
506
+ @param params productKey 产品key
507
+ deviceKey 设备key
508
+ startTimestamp 开始时间(毫秒时间戳)
509
+ endTimestamp 结束时间(毫秒时间戳)
510
+ gatewayDk 网关设备的 Device Key
511
+ gatewayPk 网关设备的 Product Key
512
+ locateTypes 定位类型(默认查询所有类型的定位),查询多种定位时使用英文逗号分隔
513
+ GNSS-全球导航卫星系统
514
+ GPS-美国导航定位系统
515
+ GL-俄罗斯格洛纳导航定位系统
516
+ GA-欧盟伽利略卫星导航系统
517
+ BD/PQ-中国导航定位系统
518
+ LBS-基于通信运营商的基站定位系统
519
+ @param resolve
520
+ @param reject
521
+ */
522
+ - (void)impl_getLocationHistoryWithParams:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
523
+
524
+ /**
525
+ 获取设备信息
526
+
527
+ @available 1.2.0
528
+ @param deviceKey string 设备key
529
+ @param productKey string 产品key
530
+ @param resolve promise 执行回调
531
+ @param reject promise 执行回调
532
+ */
533
+ - (void)impl_getDeviceInfoByDeviceKey:(NSString*)deviceKey productKey:(NSString*)productKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
534
+
535
+ /**
536
+ 获取设备属性信息
537
+
538
+ @available 1.2.0
539
+ @param params map
540
+ productKey 产品key
541
+ deviceKey 设备key
542
+ startTimestamp 开始时间(毫秒时间戳)
543
+ endTimestamp 结束时间(毫秒时间戳)
544
+ attributeCode 物模型属性标识符,查询多个属性时使用英文逗号分隔
545
+ gatewayDk 网关设备的 Device Key
546
+ gatewayPk 网关设备的 Product Key
547
+ pageNumber 当前页,默认为第 1 页
548
+ pageSize 页大小,默认为 10 条
549
+ @param resolve promise 执行回调
550
+ @param reject promise 执行回调
551
+ */
552
+ - (void)impl_getPropertyDataListWithParams:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
553
+
554
+ /**
555
+ 获取设备属性环比统计数据
556
+
557
+ @available 1.2.0
558
+ @param params map
559
+ productKey 产品key
560
+ deviceKey 设备key
561
+ currentTimestamp 当前时间(毫秒时间戳
562
+ attributeCode 物模型属性标识符,查询多个属性时使用英文逗号分隔
563
+ gatewayDk 网关设备的 Device Key
564
+ gatewayPk 网关设备的 Product Key
565
+ countType 聚合类型(默认3):1-最大值 2-最小值 3-平均值 4-差值 5-总值
566
+ timeGranularities 统计时间粒度,查询多个粒度时使用英文逗号分隔(默认1):1-日 2-周 3-月 4-年
567
+ callback {"data": []}
568
+ @param resolve promise 执行回调
569
+ @param reject promise 执行回调
570
+ */
571
+ - (void)impl_getPropertyStatisticsWithParams:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
572
+
573
+ /**
574
+ 通过分享码查询设备信息
575
+
576
+ @available 1.3.0
577
+ @param shareCode 分享码
578
+ @param resolve 回调
579
+ @param reject 回调
580
+ */
581
+ - (void)impl_getDeviceInfoByShareCode:(NSString*)shareCode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
582
+
583
+ /**
584
+ 获取设备列表-根据设备名称搜索
585
+
586
+ @available 1.3.0
587
+ @param deviceName 设备名称
588
+ @param pageNumber number 页码
589
+ @param pageSize number 页大小
590
+ @param resolve 回调 callback {"data": {"list" : [], "total" : 12}}
591
+ @param reject 回调 callback {"data": {"list" : [], "total" : 12}}
592
+ */
593
+ - (void)impl_getDeviceListByDeviceName:(NSString*)deviceName pageNumber:(NSInteger)pageNumber pageSize:(NSInteger)pageSize resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
594
+
595
+ /**
596
+ 通过SN绑定设备
597
+
598
+ @available 1.3.0
599
+ @param serialNumber string 设备SN码
600
+ @param productKey string 产品key
601
+ @param deviceName string 设备名称
602
+ @param resolve 回调 callback
603
+ @param reject 回调 callback
604
+ */
605
+ - (void)impl_bindDeviceBySerialNumber:(NSString*)serialNumber productKey:(NSString*)productKey deviceName:(NSString*)deviceName resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
606
+
607
+ /**
608
+ 通过authCode绑定设备
609
+ 可用于wifi/wifi+蓝牙设备绑定
610
+
611
+ @available 1.3.0
612
+ @param params Map 包含以下属性
613
+ authCode string 设备authCode
614
+ productKey string 产品key
615
+ deviceKey string 设备key
616
+ deviceName string 设备名称
617
+ @param resolve 回调 callback
618
+ @param reject 回调 callback
619
+ */
620
+ - (void)impl_bindDeviceByAuthCode:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
621
+
622
+ /**
623
+ 通过authCode + password绑定设备
624
+ 可用于蓝牙设备绑定
625
+
626
+ @available 1.3.0
627
+ @param params Map 包含以下属性
628
+ authCode string 设备authCode
629
+ productKey string 产品key
630
+ deviceKey string 设备key
631
+ password string 设备password
632
+ deviceName string 设备名称
633
+ @param resolve 回调 callback
634
+ @param reject 回调 callback
635
+ */
636
+ - (void)impl_bindDeviceByPSWAuthCode:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
637
+
638
+ /**
639
+ 查询设备升级信息
640
+
641
+ @available 1.3.0
642
+ @param productKey string 产品key
643
+ @param deviceKey string 设备key
644
+ @param params map 其他信息 非必传
645
+ batteryLevelLimit number 设备剩余电量百分比
646
+ mcuVersions array 固件信息 componentNo string 升级组件标识 version string 升级组件版本
647
+ minSignalIntensity number 设备最小信号量 dbM
648
+ moduleVersion string 模组版本
649
+ upgradeTime number 升级时间时间戳,默认为当前时间戳
650
+ useSpace number 所需磁盘空间,KB
651
+ {'batteryLevelLimit':1, 'mcuVersions':[{'componentNo': '', 'version': ''}], 'minSignalIntensity':1, 'moduleVersion':'', 'upgradeTime':1, 'useSpace':1}
652
+ @param resolve 回调 callback
653
+ @param reject 回调 callback
654
+ */
655
+ - (void)impl_getFetchPlanWithProductKey:(NSString*)productKey deviceKey:(NSString*)deviceKey params:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
656
+
657
+ /**
658
+ 上报设备升级信息
659
+
660
+ @available 1.3.0
661
+ @param params map
662
+ productKey string 产品key
663
+ deviceKey string 设备key
664
+ componentNo string 升级固件标识
665
+ reportStatus number 升级状态 0 - 1 2
666
+ @param resolve 回调 callback
667
+ @param reject 回调 callback
668
+ */
669
+ - (void)impl_reportDeviceUpgradeStatusWithProductKey:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
670
+
671
+ /**
672
+ 设备批量控制
673
+
674
+ @available 1.3.0
675
+ @param params Map
676
+ data 遵循tsl格式的json string [{"id":62,"value":99,"type":"INT","name":"温度(temp)"},{"id":63,"value":"true","type":"BOOL","name":"开关机状态(powerstate)"}]
677
+ deviceList 设备列表 [{"deviceKey":"", "productKey":""}]
678
+ type number 类型 1:透传 2:属性 3:服务
679
+ dataFormat number 数据类型 1:Hex 2:Text(当type为透传时,需要指定 dataFormat)
680
+ cacheTime number 非必传 缓存时间,单位为秒,缓存时间范围 1-7776000 秒,启用缓存时必须设置缓存时间
681
+ isCache number 非必传 是否启用缓存 1:启用 2:不启用,默认不启用
682
+ isCover number 非必传 是否覆盖之前发送的相同的命令 1:覆盖 2:不覆盖,默认不覆盖,启用缓存时此参数有效
683
+ @param resolve 回调 callback
684
+ @param reject 回调 callback
685
+ */
686
+ - (void)impl_sendDataToDevicesByHttpWithData:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
687
+
688
+ /**
689
+ 创建定时任务
690
+
691
+ @available 1.3.0
692
+ @param params productKey – string 必传 产品key
693
+ deviceKey – string 必传 设备key
694
+ type – string 必传 定时任务类型,once: 执行一次,day-repeat: 每天重复,custom-repeat: 自定义重复,multi-section: 多段执行,random: 随机执行,delay: 延迟执行(倒计时)
695
+ timers:[{
696
+ action – string 必传 定时任务执行的命令,格式:物模型的 json 字符串,
697
+ time – string 非必传 执行时间,格式为 HH:mm:ss, 当 type = once || day-repeat || custom-repeat ||
698
+ multi-section 时必填,
699
+ startTime – string 非必传 当 type 为 random 时必填,格式为 "HH:mm:ss",如 "12:00:00"
700
+ endTime – string 非必传 当 type 为 random 时必填,格式为 "HH:mm:ss",如 "12:00:00"
701
+ delay – number 非必传 延迟执行时间,单位为秒, 当 type = delay 时必填,单位为 s
702
+ }]
703
+ enabled – 定时任务状态:false-停止(默认) true-启动
704
+ dayOfWeek – string 非必传 周几执行:1-周一 2-周二 3-周三 4-周四 5-周五 6-周六 7-周日, 可以多选,传多个值时使用英文逗号分隔, 当 type = custom-repeat || multi-section || random 时必填
705
+ @param resolve 回调 callback {"data": {}}
706
+ @param reject 回调 callback {"data": {}}
707
+ */
708
+ - (void)impl_addCornJob:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
709
+
710
+ /**
711
+ 修改定时任务
712
+
713
+ @available 1.3.0
714
+ @param params productKey – string 必传 产品key
715
+ deviceKey – string 必传 设备key
716
+ ruleId – string 必传 规则唯一标识,修改规则实例信息时必填
717
+ type – string 必传 定时任务类型,once: 执行一次,day-repeat: 每天重复,custom-repeat: 自定义重复,multi-section: 多段执行,random: 随机执行,delay: 延迟执行(倒计时)
718
+ timers:[{
719
+ action – string 必传 定时任务执行的命令,格式:物模型的 json 字符串,
720
+ time – string 非必传 执行时间,格式为 HH:mm:ss, 当 type = once || day-repeat || custom-repeat ||
721
+ multi-section 时必填,
722
+ startTime – string 非必传 当 type 为 random 时必填,格式为 "HH:mm:ss",如 "12:00:00"
723
+ endTime – string 非必传 当 type 为 random 时必填,格式为 "HH:mm:ss",如 "12:00:00"
724
+ delay – number 非必传 延迟执行时间,单位为秒, 当 type = delay 时必填,单位为 s
725
+ }]
726
+ enabled – 定时任务状态:false-停止(默认) true-启动
727
+ dayOfWeek – string 非必传 周几执行:1-周一 2-周二 3-周三 4-周四 5-周五 6-周六 7-周日, 可以多选,传多个值时使用英文逗号分隔, 当 type = custom-repeat || multi-section || random 时必填
728
+ @param resolve 回调 callback {"data": {}}
729
+ @param reject 回调 callback {"data": {}}
730
+ */
731
+ - (void)impl_setCronJob:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
732
+
733
+ /**
734
+ 查询设备下定时任务列表
735
+
736
+ @available 1.3.0
737
+ @param params productKey – string 必传 产品key
738
+ deviceKey – string 必传 设备key
739
+ type – string 必传 定时任务类型,once: 执行一次,day-repeat: 每天重复,custom-repeat: 自定义重复,multi-section: 多段执行,random: 随机执行,delay: 延迟执行(倒计时)
740
+ page – number 分页页码,默认: 1
741
+ pageSize – number 分页大小,默认: 10
742
+ @param resolve 回调 callback {"data": {"list" : [], "total" : 12}}
743
+ @param reject 回调 callback {"data": {"list" : [], "total" : 12}}
744
+ */
745
+ - (void)impl_getCronJobList:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
746
+
747
+ /**
748
+ 查询定时任务详情
749
+
750
+ @available 1.3.0
751
+ @param ruleId – string 必传 定时任务ID
752
+ @param resolve 回调 callback {"data": {}}
753
+ @param reject 回调 callback {"data": {}}
754
+ */
755
+ - (void)impl_getCronJobInfo:(NSString*)ruleId resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
756
+
757
+ /**
758
+ 批量删除定时任务
759
+
760
+ @available 1.3.0
761
+ @param params – {ruleIdList:[] String[] 必传 定时任务ID}
762
+ @param resolve 回调 callback {"data": {}}
763
+ @param reject 回调 callback {"data": {}}
764
+ */
765
+ - (void)impl_batchDeleteCronJob:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
766
+
767
+ /**
768
+ 查询产品下定时任务限制数
769
+
770
+ @available 1.3.0
771
+ @param productKey – string 必传 产品key
772
+ @param resolve 回调callback {"data": {}}
773
+ @param reject 回调callback {"data": {}}
774
+ */
775
+ - (void)impl_getProductCornJobLimit:(NSString*)productKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
776
+
777
+ /**
778
+ 打开websocket
779
+
780
+ @available 1.3.0
781
+ */
782
+ - (void)impl_openWebSocket;
783
+
784
+ /**
785
+ 关闭websocket
786
+
787
+ @available 1.3.0
788
+ */
789
+ - (void)impl_closeWebSocket;
790
+
791
+ /**
792
+ 查询产品的tls模型
793
+
794
+ @available 1.5.0
795
+ @param param -{productKey:String } --必传
796
+ @param resolve -{callback:{data:{}}
797
+ @param reject -{callback:{data:{}}
798
+ */
799
+ - (void)impl_getProductTSLWithCacheByProductKey:(NSDictionary*)param resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
800
+
801
+ /**
802
+ 门锁事件日志
803
+
804
+ @available 1.9.0
805
+ @param params {codeList:["",""],productKey:"",deviceKey:"",startTime:long,endTime:long,pageNumber:1,pageSize:10}
806
+ @param resolve
807
+ @param reject
808
+ */
809
+ - (void)impl_listDeviceEvent:(NSDictionary*)params resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
810
+
811
+ /**
812
+ 设备解绑
813
+
814
+ @available 1.9.6
815
+ @param pk string 产品id
816
+ @param dk string 设备id
817
+ @param shareCode string 分享码
818
+ @param resolve promise 执行回调
819
+ @param reject promise 执行回调
820
+ */
821
+ - (void)impl_unShareDeviceByShareUserWithShareCodeIpc:(NSString*)pk dk:(NSString*)dk shareCode:(NSString*)shareCode resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject __deprecated_msg("event has been Deprecatedd, will be removed lately.");
822
+
823
+ /**
824
+ 订阅设备(非当前面板设备)
825
+
826
+ @available 2.0.0
827
+ @param pk string 产品id
828
+ @param dk string 设备id
829
+ */
830
+ - (void)impl_subscribeDevice:(NSString*)pk dk:(NSString*)dk ;
831
+
832
+ /**
833
+ 取消订阅 (非当前面板设备)
834
+
835
+ @available 2.0.0
836
+ @param pk string 产品id
837
+ @param dk string 设备id
838
+ */
839
+ - (void)impl_unSubscribeDevice:(NSString*)pk dk:(NSString*)dk ;
840
+
841
+ /**
842
+ 设置主从设备关联关系
843
+
844
+ @available 2.0.0
845
+ @param list - array<DeviceModel> 关联设备列表
846
+ [
847
+ {
848
+ "deviceKey": "1234567890",
849
+ "productKey": "p12345",
850
+ ...设备其他信息
851
+ },
852
+ {
853
+ "deviceKey": "1234567890",
854
+ "productKey": "p12345"
855
+ ...设备其他信息
856
+ }
857
+ ]
858
+ @param master - DeviceModel Object 主设备信息
859
+ @param fid - string 家庭 id, 没有传空
860
+ @param resolve promise 执行回调
861
+ @param reject promise 执行回调
862
+ */
863
+ - (void)impl_deviceAssociationWithList:(NSArray*)list master:(NSDictionary*)master fid:(NSString*)fid resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
864
+
865
+ /**
866
+ 设备关联关系查询
867
+
868
+ @available 2.0.0
869
+ @param master - DeviceModel Object 主设备信息
870
+ @param fid - string 家庭 id, 没有传空
871
+ @param codelist - string 物模型code, 用逗号分隔
872
+ @param resolve promise 执行回调
873
+ @param reject promise 执行回调
874
+ */
875
+ - (void)impl_deviceAssociation:(NSDictionary*)master fid:(NSString*)fid codelist:(NSString*)codelist resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
876
+
877
+ /**
878
+ 设备关联关系解除
879
+
880
+ @available 2.0.0
881
+ @param device - DeviceModel Object 从设备信息
882
+ @param fid - string 家庭 id, 没有传空
883
+ @param resolve promise 执行回调
884
+ @param reject promise 执行回调
885
+ */
886
+ - (void)impl_deviceDisassociation:(NSDictionary*)device fid:(NSString*)fid resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
887
+
888
+ /**
889
+ 设备关联关系配置查询
890
+
891
+ @available 2.0.0
892
+ @param pk string 主设备pk
893
+ @param resolve promise 执行回调
894
+ @param reject promise 执行回调
895
+ */
896
+ - (void)impl_deviceAssociationConfig:(NSString*)pk resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
897
+
898
+ /**
899
+ 通过设备dk,pk获取指定设备设备通道状态
900
+
901
+ @available 2.0.0
902
+ @param pk - string 设备 productkey
903
+ @param dk - string 设备 devicekey
904
+ @param resolve 回调 callback {"onlineState": 0/1/2/3/4/5/6/7}
905
+ onlineStateMaskWS = 1 << 0,
906
+ onlineStateMaskWifi = 1 << 1,
907
+ onlineStateMaskBle = 1 << 2,
908
+ (0: all offline, 1: websocket online, 2 : wifi online, 3: wifi + websocket online, 4: ble online, 5: websocket + ble online, 6: ble + wifi online , 7: wifi + ble + ws online)
909
+ @param reject 回调 callback {"onlineState": 0/1/2/3/4/5/6/7}
910
+ onlineStateMaskWS = 1 << 0,
911
+ onlineStateMaskWifi = 1 << 1,
912
+ onlineStateMaskBle = 1 << 2,
913
+ (0: all offline, 1: websocket online, 2 : wifi online, 3: wifi + websocket online, 4: ble online, 5: websocket + ble online, 6: ble + wifi online , 7: wifi + ble + ws online)
914
+ */
915
+ - (void)impl_getDeviceOnlineState:(NSString*)pk dk:(NSString*)dk resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
916
+
917
+ /**
918
+ 设置离线提醒开关
919
+
920
+ @available 2.4.0
921
+ @param enableOfflineReminder number 开关 0关闭1开启
922
+ @param productKey - string productKey
923
+ @param deviceKey - string deviceKey
924
+ @param resolve promise回调
925
+ @param reject promise回调
926
+ */
927
+ - (void)impl_setOfflineReminder:(NSInteger)enableOfflineReminder productKey:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
928
+
929
+ /**
930
+ 离线提醒开关查询
931
+
932
+ @available 2.4.0
933
+ @param productKey - string productKey
934
+ @param deviceKey - string deviceKey
935
+ @param resolve promise 回调
936
+ @param reject promise 回调
937
+ */
938
+ - (void)impl_getOfflineReminderInfo:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
939
+
940
+ /**
941
+ 获取设备是否有OTA计划
942
+
943
+ @available 2.4.0
944
+ @param device - DeviceModel Object 设备信息
945
+ @param resolve promise 回调
946
+ @param reject promise 回调
947
+ */
948
+ - (void)impl_checkDeviceUpdatePlan:(NSDictionary*)device resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
949
+
950
+ /**
951
+ 打开设备OTA详情
952
+
953
+ @available 2.4.0
954
+ @param productKey - string productKey
955
+ @param deviceKey - string deviceKey
956
+ @param resolve promise 回调
957
+ @param reject promise 回调
958
+ */
959
+ - (void)impl_openDeviceOTAPage:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
960
+
961
+ /**
962
+ 获取当前手机设置时区
963
+
964
+ @available 2.5.7
965
+ @param resolve promise 执行回调
966
+ @param reject promise 执行回调
967
+ */
968
+ - (void)impl_getTimeDifferenceWithGMT:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
969
+
970
+ /**
971
+ 获取当前设备设置时区
972
+
973
+ @available 2.5.7
974
+ @param productKey - string productKey
975
+ @param deviceKey - string deviceKey
976
+ @param resolve promise 执行回调
977
+ @param reject promise 执行回调
978
+ */
979
+ - (void)impl_getDeviceTimeZone:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
980
+
981
+ /**
982
+ 设置设备时区
983
+
984
+ @available 2.5.7
985
+ @param productKey - string productKey
986
+ @param deviceKey - string deviceKey
987
+ @param timezone - string 时区
988
+ @param resolve promise 执行回调
989
+ @param reject promise 执行回调
990
+ */
991
+ - (void)impl_setDeviceTimeZone:(NSString*)productKey deviceKey:(NSString*)deviceKey timezone:(NSString*)timezone resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
992
+
993
+ /**
994
+ 获取设备当前连接WiFi信息
995
+
996
+ @available 2.10.0
997
+ @param productKey - string productKey
998
+ @param deviceKey - string deviceKey
999
+ @param resolve promise 执行回调
1000
+ @param reject promise 执行回调
1001
+ */
1002
+ - (void)impl_getDeviceStateInfo:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1003
+
1004
+ /**
1005
+ 跳转WiFi列表页
1006
+
1007
+ @available 2.10.0
1008
+ @param productKey - string productKey
1009
+ @param deviceKey - string deviceKey
1010
+ @param oldSsid - string 已连接ssid
1011
+ @param signal_strength - string 信号强度
1012
+ @param supportOnlineWiFiScan - boolean 设备是否支持在线WiFi扫描
1013
+ @param resolve promise 执行回调
1014
+ @param reject promise 执行回调
1015
+ */
1016
+ - (void)impl_jumpDeviceWiFiListPage:(NSString*)productKey deviceKey:(NSString*)deviceKey oldSsid:(NSString*)oldSsid signal_strength:(NSString*)signal_strength supportOnlineWiFiScan:(BOOL)supportOnlineWiFiScan resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1017
+
1018
+ /**
1019
+ 获取产品说明书地址
1020
+
1021
+ @available 2.10.0
1022
+ @param productKey - string productKey
1023
+ @param resolve promise 执行回调 { "data":{"url": "https://xxx.pdf"}}
1024
+ @param reject promise 执行回调 { "data":{"url": "https://xxx.pdf"}}
1025
+ */
1026
+ - (void)impl_getProductDescription:(NSString*)productKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1027
+
1028
+ /**
1029
+ 获取设备列表
1030
+
1031
+ @available 2.11.5
1032
+ @param pageNumber number 页码
1033
+ @param pageSize number 页大小
1034
+ @param resolve promise 执行回调
1035
+ callback {"data": {"list" : [], "total" : 12}}
1036
+ @param reject promise 执行回调
1037
+ callback {"data": {"list" : [], "total" : 12}}
1038
+ */
1039
+ - (void)impl_getFamilyDeviceList:(NSInteger)pageNumber pageSize:(NSInteger)pageSize resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1040
+
1041
+ /**
1042
+ 设备校时 only pure bt
1043
+
1044
+ @available 2.11.0
1045
+ @param productKey - string productKey
1046
+ @param deviceKey - string deviceKey
1047
+ @param resolve 回调
1048
+ @param reject 回调
1049
+ */
1050
+ - (void)impl_timeZoneSync:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1051
+
1052
+ /**
1053
+ 纯蓝牙设备解绑
1054
+
1055
+ @available 2.11.0
1056
+ @param productKey - string productKey
1057
+ @param deviceKey - string deviceKey
1058
+ @param isInit - boolean 是否重置设备
1059
+ @param random - string 非必传 random
1060
+ @param pureBtResetCredentials - string 非必传 重置凭证
1061
+ @param resolve 回调
1062
+ @param reject 回调
1063
+ */
1064
+ - (void)impl_unbindlingPureBtDevice:(NSString*)productKey deviceKey:(NSString*)deviceKey isInit:(BOOL)isInit random:(NSString*)random pureBtResetCredentials:(NSString*)pureBtResetCredentials resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1065
+
1066
+ /**
1067
+ 获取产品物模型(无网络获取缓存)
1068
+
1069
+ @available 2.11.0
1070
+ @param productKey - string productKey
1071
+ @param resolve promise 执行回调
1072
+ @param reject promise 执行回调
1073
+ */
1074
+ - (void)impl_getTsl:(NSString*)productKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1075
+
1076
+ /**
1077
+ 激活设备(设备配网)
1078
+
1079
+ @available 2.12.0
1080
+ @param productKey productKey
1081
+ @param deviceKey deviceKey
1082
+ @param resolve 执行结果
1083
+ @param reject 执行结果
1084
+ */
1085
+ - (void)impl_startVerifyDevice:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1086
+
1087
+ /**
1088
+ 已绑定设备配网
1089
+
1090
+ @available 2.14.5
1091
+ @param productKey productKey
1092
+ @param deviceKey deviceKey
1093
+ @param resolve 执行结果
1094
+ @param reject 执行结果
1095
+ */
1096
+ - (void)impl_startNetConfigDevice:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1097
+
1098
+ /**
1099
+ 被分享人查询分享权限
1100
+
1101
+ @available 2.19.0
1102
+ @param shareCodeList 分享码列表
1103
+ @param resolve 执行结果
1104
+ @param reject 执行结果
1105
+ */
1106
+ - (void)impl_getSharePermList:(NSArray*)shareCodeList resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1107
+
1108
+ /**
1109
+ 立刻上传设备历史数据
1110
+
1111
+ @available 3.1.0
1112
+ @param productKey productKey
1113
+ @param deviceKey deviceKey
1114
+ @param resolve 执行结果
1115
+ @param reject 执行结果
1116
+ */
1117
+ - (void)impl_uploadDeviceHistoricalData:(NSString*)productKey deviceKey:(NSString*)deviceKey resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1118
+
1119
+ /**
1120
+ 获取产品语音技能支持
1121
+
1122
+ @available 3.2.0
1123
+ @param productKey productKey
1124
+ @param uid 终端用户id
1125
+ @param account 当前用户的账号(优先邮箱 没有就手机号, 都没有就不传)
1126
+ @param resolve 执行结果 callback {"supportAlexa": true/false, "supportAssistant": true/false,}
1127
+ supportAlexa 是否支持Alexa 语音
1128
+ supportAssistant 是否支持google assistant
1129
+ @param reject 执行结果 callback {"supportAlexa": true/false, "supportAssistant": true/false,}
1130
+ supportAlexa 是否支持Alexa 语音
1131
+ supportAssistant 是否支持google assistant
1132
+ */
1133
+ - (void)impl_getVoiceSupport:(NSString*)productKey uid:(NSString*)uid account:(NSString*)account resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject ;
1134
+
1135
+
1136
+
1137
+ @end