tencentcloud-sdk-iot 1.0.200

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1116 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ require 'json'
18
+
19
+ module TencentCloud
20
+ module Iot
21
+ module V20180123
22
+ class Client < TencentCloud::Common::AbstractClient
23
+
24
+ def initialize(credential, region, profile = nil)
25
+ api_version = '2018-01-23'
26
+ api_endpoint = 'iot.tencentcloudapi.com'
27
+ sdk_version = 'IOT_' + File.read(File.expand_path('../VERSION', __dir__)).strip
28
+ super(credential, region, api_version, api_endpoint, sdk_version, profile)
29
+ end
30
+
31
+
32
+ # 启用规则
33
+
34
+ # @param request: Request instance for ActivateRule.
35
+ # @type request: :class:`Tencentcloud::iot::V20180123::ActivateRuleRequest`
36
+ # @rtype: :class:`Tencentcloud::iot::V20180123::ActivateRuleResponse`
37
+ def ActivateRule(request)
38
+ body = send_request('ActivateRule', request.serialize)
39
+ response = JSON.parse(body)
40
+ if response['Response'].key?('Error') == false
41
+ model = ActivateRuleResponse.new
42
+ model.deserialize(response['Response'])
43
+ model
44
+ else
45
+ code = response['Response']['Error']['Code']
46
+ message = response['Response']['Error']['Message']
47
+ reqid = response['Response']['RequestId']
48
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
49
+ end
50
+ rescue TencentCloud::Common::TencentCloudSDKException => e
51
+ raise e
52
+ rescue StandardError => e
53
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
54
+ end
55
+
56
+ # 提供在指定的产品Id下创建一个设备的能力,生成设备名称与设备秘钥。
57
+
58
+ # @param request: Request instance for AddDevice.
59
+ # @type request: :class:`Tencentcloud::iot::V20180123::AddDeviceRequest`
60
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AddDeviceResponse`
61
+ def AddDevice(request)
62
+ body = send_request('AddDevice', request.serialize)
63
+ response = JSON.parse(body)
64
+ if response['Response'].key?('Error') == false
65
+ model = AddDeviceResponse.new
66
+ model.deserialize(response['Response'])
67
+ model
68
+ else
69
+ code = response['Response']['Error']['Code']
70
+ message = response['Response']['Error']['Message']
71
+ reqid = response['Response']['RequestId']
72
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
73
+ end
74
+ rescue TencentCloud::Common::TencentCloudSDKException => e
75
+ raise e
76
+ rescue StandardError => e
77
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
78
+ end
79
+
80
+ # 本接口(AddProduct)用于创建、定义某款硬件产品。
81
+
82
+ # @param request: Request instance for AddProduct.
83
+ # @type request: :class:`Tencentcloud::iot::V20180123::AddProductRequest`
84
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AddProductResponse`
85
+ def AddProduct(request)
86
+ body = send_request('AddProduct', request.serialize)
87
+ response = JSON.parse(body)
88
+ if response['Response'].key?('Error') == false
89
+ model = AddProductResponse.new
90
+ model.deserialize(response['Response'])
91
+ model
92
+ else
93
+ code = response['Response']['Error']['Code']
94
+ message = response['Response']['Error']['Message']
95
+ reqid = response['Response']['RequestId']
96
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
97
+ end
98
+ rescue TencentCloud::Common::TencentCloudSDKException => e
99
+ raise e
100
+ rescue StandardError => e
101
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
102
+ end
103
+
104
+ # 新增规则
105
+
106
+ # @param request: Request instance for AddRule.
107
+ # @type request: :class:`Tencentcloud::iot::V20180123::AddRuleRequest`
108
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AddRuleResponse`
109
+ def AddRule(request)
110
+ body = send_request('AddRule', request.serialize)
111
+ response = JSON.parse(body)
112
+ if response['Response'].key?('Error') == false
113
+ model = AddRuleResponse.new
114
+ model.deserialize(response['Response'])
115
+ model
116
+ else
117
+ code = response['Response']['Error']['Code']
118
+ message = response['Response']['Error']['Message']
119
+ reqid = response['Response']['RequestId']
120
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
121
+ end
122
+ rescue TencentCloud::Common::TencentCloudSDKException => e
123
+ raise e
124
+ rescue StandardError => e
125
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
126
+ end
127
+
128
+ # 新增Topic,用于设备或应用发布消息至该Topic或订阅该Topic的消息。
129
+
130
+ # @param request: Request instance for AddTopic.
131
+ # @type request: :class:`Tencentcloud::iot::V20180123::AddTopicRequest`
132
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AddTopicResponse`
133
+ def AddTopic(request)
134
+ body = send_request('AddTopic', request.serialize)
135
+ response = JSON.parse(body)
136
+ if response['Response'].key?('Error') == false
137
+ model = AddTopicResponse.new
138
+ model.deserialize(response['Response'])
139
+ model
140
+ else
141
+ code = response['Response']['Error']['Code']
142
+ message = response['Response']['Error']['Message']
143
+ reqid = response['Response']['RequestId']
144
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
145
+ end
146
+ rescue TencentCloud::Common::TencentCloudSDKException => e
147
+ raise e
148
+ rescue StandardError => e
149
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
150
+ end
151
+
152
+ # 为APP提供用户注册功能
153
+
154
+ # @param request: Request instance for AppAddUser.
155
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppAddUserRequest`
156
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppAddUserResponse`
157
+ def AppAddUser(request)
158
+ body = send_request('AppAddUser', request.serialize)
159
+ response = JSON.parse(body)
160
+ if response['Response'].key?('Error') == false
161
+ model = AppAddUserResponse.new
162
+ model.deserialize(response['Response'])
163
+ model
164
+ else
165
+ code = response['Response']['Error']['Code']
166
+ message = response['Response']['Error']['Message']
167
+ reqid = response['Response']['RequestId']
168
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
169
+ end
170
+ rescue TencentCloud::Common::TencentCloudSDKException => e
171
+ raise e
172
+ rescue StandardError => e
173
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
174
+ end
175
+
176
+ # 用户解除与设备的关联关系,解除后APP用户无法控制设备,获取设备数据
177
+
178
+ # @param request: Request instance for AppDeleteDevice.
179
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppDeleteDeviceRequest`
180
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppDeleteDeviceResponse`
181
+ def AppDeleteDevice(request)
182
+ body = send_request('AppDeleteDevice', request.serialize)
183
+ response = JSON.parse(body)
184
+ if response['Response'].key?('Error') == false
185
+ model = AppDeleteDeviceResponse.new
186
+ model.deserialize(response['Response'])
187
+ model
188
+ else
189
+ code = response['Response']['Error']['Code']
190
+ message = response['Response']['Error']['Message']
191
+ reqid = response['Response']['RequestId']
192
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
193
+ end
194
+ rescue TencentCloud::Common::TencentCloudSDKException => e
195
+ raise e
196
+ rescue StandardError => e
197
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
198
+ end
199
+
200
+ # 获取绑定设备的基本信息与数据模板定义
201
+
202
+ # @param request: Request instance for AppGetDevice.
203
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppGetDeviceRequest`
204
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppGetDeviceResponse`
205
+ def AppGetDevice(request)
206
+ body = send_request('AppGetDevice', request.serialize)
207
+ response = JSON.parse(body)
208
+ if response['Response'].key?('Error') == false
209
+ model = AppGetDeviceResponse.new
210
+ model.deserialize(response['Response'])
211
+ model
212
+ else
213
+ code = response['Response']['Error']['Code']
214
+ message = response['Response']['Error']['Message']
215
+ reqid = response['Response']['RequestId']
216
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
217
+ end
218
+ rescue TencentCloud::Common::TencentCloudSDKException => e
219
+ raise e
220
+ rescue StandardError => e
221
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
222
+ end
223
+
224
+ # 获取绑定设备数据,用于实时展示设备的最新数据
225
+
226
+ # @param request: Request instance for AppGetDeviceData.
227
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppGetDeviceDataRequest`
228
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppGetDeviceDataResponse`
229
+ def AppGetDeviceData(request)
230
+ body = send_request('AppGetDeviceData', request.serialize)
231
+ response = JSON.parse(body)
232
+ if response['Response'].key?('Error') == false
233
+ model = AppGetDeviceDataResponse.new
234
+ model.deserialize(response['Response'])
235
+ model
236
+ else
237
+ code = response['Response']['Error']['Code']
238
+ message = response['Response']['Error']['Message']
239
+ reqid = response['Response']['RequestId']
240
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
241
+ end
242
+ rescue TencentCloud::Common::TencentCloudSDKException => e
243
+ raise e
244
+ rescue StandardError => e
245
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
246
+ end
247
+
248
+ # 获取绑定设备的上下线状态
249
+
250
+ # @param request: Request instance for AppGetDeviceStatuses.
251
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppGetDeviceStatusesRequest`
252
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppGetDeviceStatusesResponse`
253
+ def AppGetDeviceStatuses(request)
254
+ body = send_request('AppGetDeviceStatuses', request.serialize)
255
+ response = JSON.parse(body)
256
+ if response['Response'].key?('Error') == false
257
+ model = AppGetDeviceStatusesResponse.new
258
+ model.deserialize(response['Response'])
259
+ model
260
+ else
261
+ code = response['Response']['Error']['Code']
262
+ message = response['Response']['Error']['Message']
263
+ reqid = response['Response']['RequestId']
264
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
265
+ end
266
+ rescue TencentCloud::Common::TencentCloudSDKException => e
267
+ raise e
268
+ rescue StandardError => e
269
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
270
+ end
271
+
272
+ # 获取用户的绑定设备列表
273
+
274
+ # @param request: Request instance for AppGetDevices.
275
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppGetDevicesRequest`
276
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppGetDevicesResponse`
277
+ def AppGetDevices(request)
278
+ body = send_request('AppGetDevices', request.serialize)
279
+ response = JSON.parse(body)
280
+ if response['Response'].key?('Error') == false
281
+ model = AppGetDevicesResponse.new
282
+ model.deserialize(response['Response'])
283
+ model
284
+ else
285
+ code = response['Response']['Error']['Code']
286
+ message = response['Response']['Error']['Message']
287
+ reqid = response['Response']['RequestId']
288
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
289
+ end
290
+ rescue TencentCloud::Common::TencentCloudSDKException => e
291
+ raise e
292
+ rescue StandardError => e
293
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
294
+ end
295
+
296
+ # 获取用户token
297
+
298
+ # @param request: Request instance for AppGetToken.
299
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppGetTokenRequest`
300
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppGetTokenResponse`
301
+ def AppGetToken(request)
302
+ body = send_request('AppGetToken', request.serialize)
303
+ response = JSON.parse(body)
304
+ if response['Response'].key?('Error') == false
305
+ model = AppGetTokenResponse.new
306
+ model.deserialize(response['Response'])
307
+ model
308
+ else
309
+ code = response['Response']['Error']['Code']
310
+ message = response['Response']['Error']['Message']
311
+ reqid = response['Response']['RequestId']
312
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
313
+ end
314
+ rescue TencentCloud::Common::TencentCloudSDKException => e
315
+ raise e
316
+ rescue StandardError => e
317
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
318
+ end
319
+
320
+ # 获取用户信息
321
+
322
+ # @param request: Request instance for AppGetUser.
323
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppGetUserRequest`
324
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppGetUserResponse`
325
+ def AppGetUser(request)
326
+ body = send_request('AppGetUser', request.serialize)
327
+ response = JSON.parse(body)
328
+ if response['Response'].key?('Error') == false
329
+ model = AppGetUserResponse.new
330
+ model.deserialize(response['Response'])
331
+ model
332
+ else
333
+ code = response['Response']['Error']['Code']
334
+ message = response['Response']['Error']['Message']
335
+ reqid = response['Response']['RequestId']
336
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
337
+ end
338
+ rescue TencentCloud::Common::TencentCloudSDKException => e
339
+ raise e
340
+ rescue StandardError => e
341
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
342
+ end
343
+
344
+ # 用户通过APP控制设备
345
+
346
+ # @param request: Request instance for AppIssueDeviceControl.
347
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppIssueDeviceControlRequest`
348
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppIssueDeviceControlResponse`
349
+ def AppIssueDeviceControl(request)
350
+ body = send_request('AppIssueDeviceControl', request.serialize)
351
+ response = JSON.parse(body)
352
+ if response['Response'].key?('Error') == false
353
+ model = AppIssueDeviceControlResponse.new
354
+ model.deserialize(response['Response'])
355
+ model
356
+ else
357
+ code = response['Response']['Error']['Code']
358
+ message = response['Response']['Error']['Message']
359
+ reqid = response['Response']['RequestId']
360
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
361
+ end
362
+ rescue TencentCloud::Common::TencentCloudSDKException => e
363
+ raise e
364
+ rescue StandardError => e
365
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
366
+ end
367
+
368
+ # 重置APP用户密码
369
+
370
+ # @param request: Request instance for AppResetPassword.
371
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppResetPasswordRequest`
372
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppResetPasswordResponse`
373
+ def AppResetPassword(request)
374
+ body = send_request('AppResetPassword', request.serialize)
375
+ response = JSON.parse(body)
376
+ if response['Response'].key?('Error') == false
377
+ model = AppResetPasswordResponse.new
378
+ model.deserialize(response['Response'])
379
+ model
380
+ else
381
+ code = response['Response']['Error']['Code']
382
+ message = response['Response']['Error']['Message']
383
+ reqid = response['Response']['RequestId']
384
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
385
+ end
386
+ rescue TencentCloud::Common::TencentCloudSDKException => e
387
+ raise e
388
+ rescue StandardError => e
389
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
390
+ end
391
+
392
+ # 用户绑定设备,绑定后可以在APP端进行控制。绑定设备前需调用“获取设备绑定签名”接口
393
+
394
+ # @param request: Request instance for AppSecureAddDevice.
395
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppSecureAddDeviceRequest`
396
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppSecureAddDeviceResponse`
397
+ def AppSecureAddDevice(request)
398
+ body = send_request('AppSecureAddDevice', request.serialize)
399
+ response = JSON.parse(body)
400
+ if response['Response'].key?('Error') == false
401
+ model = AppSecureAddDeviceResponse.new
402
+ model.deserialize(response['Response'])
403
+ model
404
+ else
405
+ code = response['Response']['Error']['Code']
406
+ message = response['Response']['Error']['Message']
407
+ reqid = response['Response']['RequestId']
408
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
409
+ end
410
+ rescue TencentCloud::Common::TencentCloudSDKException => e
411
+ raise e
412
+ rescue StandardError => e
413
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
414
+ end
415
+
416
+ # 修改设备别名,便于用户个性化定义设备的名称
417
+
418
+ # @param request: Request instance for AppUpdateDevice.
419
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppUpdateDeviceRequest`
420
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppUpdateDeviceResponse`
421
+ def AppUpdateDevice(request)
422
+ body = send_request('AppUpdateDevice', request.serialize)
423
+ response = JSON.parse(body)
424
+ if response['Response'].key?('Error') == false
425
+ model = AppUpdateDeviceResponse.new
426
+ model.deserialize(response['Response'])
427
+ model
428
+ else
429
+ code = response['Response']['Error']['Code']
430
+ message = response['Response']['Error']['Message']
431
+ reqid = response['Response']['RequestId']
432
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
433
+ end
434
+ rescue TencentCloud::Common::TencentCloudSDKException => e
435
+ raise e
436
+ rescue StandardError => e
437
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
438
+ end
439
+
440
+ # 修改用户信息
441
+
442
+ # @param request: Request instance for AppUpdateUser.
443
+ # @type request: :class:`Tencentcloud::iot::V20180123::AppUpdateUserRequest`
444
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AppUpdateUserResponse`
445
+ def AppUpdateUser(request)
446
+ body = send_request('AppUpdateUser', request.serialize)
447
+ response = JSON.parse(body)
448
+ if response['Response'].key?('Error') == false
449
+ model = AppUpdateUserResponse.new
450
+ model.deserialize(response['Response'])
451
+ model
452
+ else
453
+ code = response['Response']['Error']['Code']
454
+ message = response['Response']['Error']['Message']
455
+ reqid = response['Response']['RequestId']
456
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
457
+ end
458
+ rescue TencentCloud::Common::TencentCloudSDKException => e
459
+ raise e
460
+ rescue StandardError => e
461
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
462
+ end
463
+
464
+ # 关联子设备产品和网关产品
465
+
466
+ # @param request: Request instance for AssociateSubDeviceToGatewayProduct.
467
+ # @type request: :class:`Tencentcloud::iot::V20180123::AssociateSubDeviceToGatewayProductRequest`
468
+ # @rtype: :class:`Tencentcloud::iot::V20180123::AssociateSubDeviceToGatewayProductResponse`
469
+ def AssociateSubDeviceToGatewayProduct(request)
470
+ body = send_request('AssociateSubDeviceToGatewayProduct', request.serialize)
471
+ response = JSON.parse(body)
472
+ if response['Response'].key?('Error') == false
473
+ model = AssociateSubDeviceToGatewayProductResponse.new
474
+ model.deserialize(response['Response'])
475
+ model
476
+ else
477
+ code = response['Response']['Error']['Code']
478
+ message = response['Response']['Error']['Message']
479
+ reqid = response['Response']['RequestId']
480
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
481
+ end
482
+ rescue TencentCloud::Common::TencentCloudSDKException => e
483
+ raise e
484
+ rescue StandardError => e
485
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
486
+ end
487
+
488
+ # 禁用规则
489
+
490
+ # @param request: Request instance for DeactivateRule.
491
+ # @type request: :class:`Tencentcloud::iot::V20180123::DeactivateRuleRequest`
492
+ # @rtype: :class:`Tencentcloud::iot::V20180123::DeactivateRuleResponse`
493
+ def DeactivateRule(request)
494
+ body = send_request('DeactivateRule', request.serialize)
495
+ response = JSON.parse(body)
496
+ if response['Response'].key?('Error') == false
497
+ model = DeactivateRuleResponse.new
498
+ model.deserialize(response['Response'])
499
+ model
500
+ else
501
+ code = response['Response']['Error']['Code']
502
+ message = response['Response']['Error']['Message']
503
+ reqid = response['Response']['RequestId']
504
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
505
+ end
506
+ rescue TencentCloud::Common::TencentCloudSDKException => e
507
+ raise e
508
+ rescue StandardError => e
509
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
510
+ end
511
+
512
+ # 提供在指定的产品Id下删除一个设备的能力。
513
+
514
+ # @param request: Request instance for DeleteDevice.
515
+ # @type request: :class:`Tencentcloud::iot::V20180123::DeleteDeviceRequest`
516
+ # @rtype: :class:`Tencentcloud::iot::V20180123::DeleteDeviceResponse`
517
+ def DeleteDevice(request)
518
+ body = send_request('DeleteDevice', request.serialize)
519
+ response = JSON.parse(body)
520
+ if response['Response'].key?('Error') == false
521
+ model = DeleteDeviceResponse.new
522
+ model.deserialize(response['Response'])
523
+ model
524
+ else
525
+ code = response['Response']['Error']['Code']
526
+ message = response['Response']['Error']['Message']
527
+ reqid = response['Response']['RequestId']
528
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
529
+ end
530
+ rescue TencentCloud::Common::TencentCloudSDKException => e
531
+ raise e
532
+ rescue StandardError => e
533
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
534
+ end
535
+
536
+ # 删除用户指定的产品Id对应的信息。
537
+
538
+ # @param request: Request instance for DeleteProduct.
539
+ # @type request: :class:`Tencentcloud::iot::V20180123::DeleteProductRequest`
540
+ # @rtype: :class:`Tencentcloud::iot::V20180123::DeleteProductResponse`
541
+ def DeleteProduct(request)
542
+ body = send_request('DeleteProduct', request.serialize)
543
+ response = JSON.parse(body)
544
+ if response['Response'].key?('Error') == false
545
+ model = DeleteProductResponse.new
546
+ model.deserialize(response['Response'])
547
+ model
548
+ else
549
+ code = response['Response']['Error']['Code']
550
+ message = response['Response']['Error']['Message']
551
+ reqid = response['Response']['RequestId']
552
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
553
+ end
554
+ rescue TencentCloud::Common::TencentCloudSDKException => e
555
+ raise e
556
+ rescue StandardError => e
557
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
558
+ end
559
+
560
+ # 删除规则
561
+
562
+ # @param request: Request instance for DeleteRule.
563
+ # @type request: :class:`Tencentcloud::iot::V20180123::DeleteRuleRequest`
564
+ # @rtype: :class:`Tencentcloud::iot::V20180123::DeleteRuleResponse`
565
+ def DeleteRule(request)
566
+ body = send_request('DeleteRule', request.serialize)
567
+ response = JSON.parse(body)
568
+ if response['Response'].key?('Error') == false
569
+ model = DeleteRuleResponse.new
570
+ model.deserialize(response['Response'])
571
+ model
572
+ else
573
+ code = response['Response']['Error']['Code']
574
+ message = response['Response']['Error']['Message']
575
+ reqid = response['Response']['RequestId']
576
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
577
+ end
578
+ rescue TencentCloud::Common::TencentCloudSDKException => e
579
+ raise e
580
+ rescue StandardError => e
581
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
582
+ end
583
+
584
+ # 删除Topic
585
+
586
+ # @param request: Request instance for DeleteTopic.
587
+ # @type request: :class:`Tencentcloud::iot::V20180123::DeleteTopicRequest`
588
+ # @rtype: :class:`Tencentcloud::iot::V20180123::DeleteTopicResponse`
589
+ def DeleteTopic(request)
590
+ body = send_request('DeleteTopic', request.serialize)
591
+ response = JSON.parse(body)
592
+ if response['Response'].key?('Error') == false
593
+ model = DeleteTopicResponse.new
594
+ model.deserialize(response['Response'])
595
+ model
596
+ else
597
+ code = response['Response']['Error']['Code']
598
+ message = response['Response']['Error']['Message']
599
+ reqid = response['Response']['RequestId']
600
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
601
+ end
602
+ rescue TencentCloud::Common::TencentCloudSDKException => e
603
+ raise e
604
+ rescue StandardError => e
605
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
606
+ end
607
+
608
+ # 批量获取设备某一段时间范围的设备上报数据。该接口适用于使用高级版类型的产品
609
+
610
+ # @param request: Request instance for GetDataHistory.
611
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDataHistoryRequest`
612
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDataHistoryResponse`
613
+ def GetDataHistory(request)
614
+ body = send_request('GetDataHistory', request.serialize)
615
+ response = JSON.parse(body)
616
+ if response['Response'].key?('Error') == false
617
+ model = GetDataHistoryResponse.new
618
+ model.deserialize(response['Response'])
619
+ model
620
+ else
621
+ code = response['Response']['Error']['Code']
622
+ message = response['Response']['Error']['Message']
623
+ reqid = response['Response']['RequestId']
624
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
625
+ end
626
+ rescue TencentCloud::Common::TencentCloudSDKException => e
627
+ raise e
628
+ rescue StandardError => e
629
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
630
+ end
631
+
632
+ # 获取设备的调试日志,用于定位问题
633
+
634
+ # @param request: Request instance for GetDebugLog.
635
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDebugLogRequest`
636
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDebugLogResponse`
637
+ def GetDebugLog(request)
638
+ body = send_request('GetDebugLog', request.serialize)
639
+ response = JSON.parse(body)
640
+ if response['Response'].key?('Error') == false
641
+ model = GetDebugLogResponse.new
642
+ model.deserialize(response['Response'])
643
+ model
644
+ else
645
+ code = response['Response']['Error']['Code']
646
+ message = response['Response']['Error']['Message']
647
+ reqid = response['Response']['RequestId']
648
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
649
+ end
650
+ rescue TencentCloud::Common::TencentCloudSDKException => e
651
+ raise e
652
+ rescue StandardError => e
653
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
654
+ end
655
+
656
+ # 提供查询某个设备详细信息的能力。
657
+
658
+ # @param request: Request instance for GetDevice.
659
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDeviceRequest`
660
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDeviceResponse`
661
+ def GetDevice(request)
662
+ body = send_request('GetDevice', request.serialize)
663
+ response = JSON.parse(body)
664
+ if response['Response'].key?('Error') == false
665
+ model = GetDeviceResponse.new
666
+ model.deserialize(response['Response'])
667
+ model
668
+ else
669
+ code = response['Response']['Error']['Code']
670
+ message = response['Response']['Error']['Message']
671
+ reqid = response['Response']['RequestId']
672
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
673
+ end
674
+ rescue TencentCloud::Common::TencentCloudSDKException => e
675
+ raise e
676
+ rescue StandardError => e
677
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
678
+ end
679
+
680
+ # 获取某个设备当前上报到云端的数据,该接口适用于使用数据模板协议的产品。
681
+
682
+ # @param request: Request instance for GetDeviceData.
683
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDeviceDataRequest`
684
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDeviceDataResponse`
685
+ def GetDeviceData(request)
686
+ body = send_request('GetDeviceData', request.serialize)
687
+ response = JSON.parse(body)
688
+ if response['Response'].key?('Error') == false
689
+ model = GetDeviceDataResponse.new
690
+ model.deserialize(response['Response'])
691
+ model
692
+ else
693
+ code = response['Response']['Error']['Code']
694
+ message = response['Response']['Error']['Message']
695
+ reqid = response['Response']['RequestId']
696
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
697
+ end
698
+ rescue TencentCloud::Common::TencentCloudSDKException => e
699
+ raise e
700
+ rescue StandardError => e
701
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
702
+ end
703
+
704
+ # 批量获取设备与云端的详细通信日志,该接口适用于使用高级版类型的产品。
705
+
706
+ # @param request: Request instance for GetDeviceLog.
707
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDeviceLogRequest`
708
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDeviceLogResponse`
709
+ def GetDeviceLog(request)
710
+ body = send_request('GetDeviceLog', request.serialize)
711
+ response = JSON.parse(body)
712
+ if response['Response'].key?('Error') == false
713
+ model = GetDeviceLogResponse.new
714
+ model.deserialize(response['Response'])
715
+ model
716
+ else
717
+ code = response['Response']['Error']['Code']
718
+ message = response['Response']['Error']['Message']
719
+ reqid = response['Response']['RequestId']
720
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
721
+ end
722
+ rescue TencentCloud::Common::TencentCloudSDKException => e
723
+ raise e
724
+ rescue StandardError => e
725
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
726
+ end
727
+
728
+ # 获取设备绑定签名,用于用户绑定某个设备的应用场景
729
+
730
+ # @param request: Request instance for GetDeviceSignatures.
731
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDeviceSignaturesRequest`
732
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDeviceSignaturesResponse`
733
+ def GetDeviceSignatures(request)
734
+ body = send_request('GetDeviceSignatures', request.serialize)
735
+ response = JSON.parse(body)
736
+ if response['Response'].key?('Error') == false
737
+ model = GetDeviceSignaturesResponse.new
738
+ model.deserialize(response['Response'])
739
+ model
740
+ else
741
+ code = response['Response']['Error']['Code']
742
+ message = response['Response']['Error']['Message']
743
+ reqid = response['Response']['RequestId']
744
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
745
+ end
746
+ rescue TencentCloud::Common::TencentCloudSDKException => e
747
+ raise e
748
+ rescue StandardError => e
749
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
750
+ end
751
+
752
+ # 查询某段时间范围内产品的在线、激活设备数
753
+
754
+ # @param request: Request instance for GetDeviceStatistics.
755
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDeviceStatisticsRequest`
756
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDeviceStatisticsResponse`
757
+ def GetDeviceStatistics(request)
758
+ body = send_request('GetDeviceStatistics', request.serialize)
759
+ response = JSON.parse(body)
760
+ if response['Response'].key?('Error') == false
761
+ model = GetDeviceStatisticsResponse.new
762
+ model.deserialize(response['Response'])
763
+ model
764
+ else
765
+ code = response['Response']['Error']['Code']
766
+ message = response['Response']['Error']['Message']
767
+ reqid = response['Response']['RequestId']
768
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
769
+ end
770
+ rescue TencentCloud::Common::TencentCloudSDKException => e
771
+ raise e
772
+ rescue StandardError => e
773
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
774
+ end
775
+
776
+ # 批量获取设备的当前状态,状态包括在线、离线或未激活状态。
777
+
778
+ # @param request: Request instance for GetDeviceStatuses.
779
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDeviceStatusesRequest`
780
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDeviceStatusesResponse`
781
+ def GetDeviceStatuses(request)
782
+ body = send_request('GetDeviceStatuses', request.serialize)
783
+ response = JSON.parse(body)
784
+ if response['Response'].key?('Error') == false
785
+ model = GetDeviceStatusesResponse.new
786
+ model.deserialize(response['Response'])
787
+ model
788
+ else
789
+ code = response['Response']['Error']['Code']
790
+ message = response['Response']['Error']['Message']
791
+ reqid = response['Response']['RequestId']
792
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
793
+ end
794
+ rescue TencentCloud::Common::TencentCloudSDKException => e
795
+ raise e
796
+ rescue StandardError => e
797
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
798
+ end
799
+
800
+ # 提供分页查询某个产品Id下设备信息的能力。
801
+
802
+ # @param request: Request instance for GetDevices.
803
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetDevicesRequest`
804
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetDevicesResponse`
805
+ def GetDevices(request)
806
+ body = send_request('GetDevices', request.serialize)
807
+ response = JSON.parse(body)
808
+ if response['Response'].key?('Error') == false
809
+ model = GetDevicesResponse.new
810
+ model.deserialize(response['Response'])
811
+ model
812
+ else
813
+ code = response['Response']['Error']['Code']
814
+ message = response['Response']['Error']['Message']
815
+ reqid = response['Response']['RequestId']
816
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
817
+ end
818
+ rescue TencentCloud::Common::TencentCloudSDKException => e
819
+ raise e
820
+ rescue StandardError => e
821
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
822
+ end
823
+
824
+ # 获取产品定义的详细信息,包括产品名称、产品描述,鉴权模式等信息。
825
+
826
+ # @param request: Request instance for GetProduct.
827
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetProductRequest`
828
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetProductResponse`
829
+ def GetProduct(request)
830
+ body = send_request('GetProduct', request.serialize)
831
+ response = JSON.parse(body)
832
+ if response['Response'].key?('Error') == false
833
+ model = GetProductResponse.new
834
+ model.deserialize(response['Response'])
835
+ model
836
+ else
837
+ code = response['Response']['Error']['Code']
838
+ message = response['Response']['Error']['Message']
839
+ reqid = response['Response']['RequestId']
840
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
841
+ end
842
+ rescue TencentCloud::Common::TencentCloudSDKException => e
843
+ raise e
844
+ rescue StandardError => e
845
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
846
+ end
847
+
848
+ # 获取用户在物联网套件所创建的所有产品信息。
849
+
850
+ # @param request: Request instance for GetProducts.
851
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetProductsRequest`
852
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetProductsResponse`
853
+ def GetProducts(request)
854
+ body = send_request('GetProducts', request.serialize)
855
+ response = JSON.parse(body)
856
+ if response['Response'].key?('Error') == false
857
+ model = GetProductsResponse.new
858
+ model.deserialize(response['Response'])
859
+ model
860
+ else
861
+ code = response['Response']['Error']['Code']
862
+ message = response['Response']['Error']['Message']
863
+ reqid = response['Response']['RequestId']
864
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
865
+ end
866
+ rescue TencentCloud::Common::TencentCloudSDKException => e
867
+ raise e
868
+ rescue StandardError => e
869
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
870
+ end
871
+
872
+ # 获取转发规则信息
873
+
874
+ # @param request: Request instance for GetRule.
875
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetRuleRequest`
876
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetRuleResponse`
877
+ def GetRule(request)
878
+ body = send_request('GetRule', request.serialize)
879
+ response = JSON.parse(body)
880
+ if response['Response'].key?('Error') == false
881
+ model = GetRuleResponse.new
882
+ model.deserialize(response['Response'])
883
+ model
884
+ else
885
+ code = response['Response']['Error']['Code']
886
+ message = response['Response']['Error']['Message']
887
+ reqid = response['Response']['RequestId']
888
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
889
+ end
890
+ rescue TencentCloud::Common::TencentCloudSDKException => e
891
+ raise e
892
+ rescue StandardError => e
893
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
894
+ end
895
+
896
+ # 获取转发规则列表
897
+
898
+ # @param request: Request instance for GetRules.
899
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetRulesRequest`
900
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetRulesResponse`
901
+ def GetRules(request)
902
+ body = send_request('GetRules', request.serialize)
903
+ response = JSON.parse(body)
904
+ if response['Response'].key?('Error') == false
905
+ model = GetRulesResponse.new
906
+ model.deserialize(response['Response'])
907
+ model
908
+ else
909
+ code = response['Response']['Error']['Code']
910
+ message = response['Response']['Error']['Message']
911
+ reqid = response['Response']['RequestId']
912
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
913
+ end
914
+ rescue TencentCloud::Common::TencentCloudSDKException => e
915
+ raise e
916
+ rescue StandardError => e
917
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
918
+ end
919
+
920
+ # 获取Topic信息
921
+
922
+ # @param request: Request instance for GetTopic.
923
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetTopicRequest`
924
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetTopicResponse`
925
+ def GetTopic(request)
926
+ body = send_request('GetTopic', request.serialize)
927
+ response = JSON.parse(body)
928
+ if response['Response'].key?('Error') == false
929
+ model = GetTopicResponse.new
930
+ model.deserialize(response['Response'])
931
+ model
932
+ else
933
+ code = response['Response']['Error']['Code']
934
+ message = response['Response']['Error']['Message']
935
+ reqid = response['Response']['RequestId']
936
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
937
+ end
938
+ rescue TencentCloud::Common::TencentCloudSDKException => e
939
+ raise e
940
+ rescue StandardError => e
941
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
942
+ end
943
+
944
+ # 获取Topic列表
945
+
946
+ # @param request: Request instance for GetTopics.
947
+ # @type request: :class:`Tencentcloud::iot::V20180123::GetTopicsRequest`
948
+ # @rtype: :class:`Tencentcloud::iot::V20180123::GetTopicsResponse`
949
+ def GetTopics(request)
950
+ body = send_request('GetTopics', request.serialize)
951
+ response = JSON.parse(body)
952
+ if response['Response'].key?('Error') == false
953
+ model = GetTopicsResponse.new
954
+ model.deserialize(response['Response'])
955
+ model
956
+ else
957
+ code = response['Response']['Error']['Code']
958
+ message = response['Response']['Error']['Message']
959
+ reqid = response['Response']['RequestId']
960
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
961
+ end
962
+ rescue TencentCloud::Common::TencentCloudSDKException => e
963
+ raise e
964
+ rescue StandardError => e
965
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
966
+ end
967
+
968
+ # 提供下发控制指令到指定设备的能力,该接口适用于使用高级版类型的产品。
969
+
970
+ # @param request: Request instance for IssueDeviceControl.
971
+ # @type request: :class:`Tencentcloud::iot::V20180123::IssueDeviceControlRequest`
972
+ # @rtype: :class:`Tencentcloud::iot::V20180123::IssueDeviceControlResponse`
973
+ def IssueDeviceControl(request)
974
+ body = send_request('IssueDeviceControl', request.serialize)
975
+ response = JSON.parse(body)
976
+ if response['Response'].key?('Error') == false
977
+ model = IssueDeviceControlResponse.new
978
+ model.deserialize(response['Response'])
979
+ model
980
+ else
981
+ code = response['Response']['Error']['Code']
982
+ message = response['Response']['Error']['Message']
983
+ reqid = response['Response']['RequestId']
984
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
985
+ end
986
+ rescue TencentCloud::Common::TencentCloudSDKException => e
987
+ raise e
988
+ rescue StandardError => e
989
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
990
+ end
991
+
992
+ # 提供向指定的Topic发布消息的能力,常用于向设备下发控制指令。该接口只适用于产品版本为“基础版”类型的产品,使用高级版的产品需使用“下发设备控制指令”接口
993
+
994
+ # @param request: Request instance for PublishMsg.
995
+ # @type request: :class:`Tencentcloud::iot::V20180123::PublishMsgRequest`
996
+ # @rtype: :class:`Tencentcloud::iot::V20180123::PublishMsgResponse`
997
+ def PublishMsg(request)
998
+ body = send_request('PublishMsg', request.serialize)
999
+ response = JSON.parse(body)
1000
+ if response['Response'].key?('Error') == false
1001
+ model = PublishMsgResponse.new
1002
+ model.deserialize(response['Response'])
1003
+ model
1004
+ else
1005
+ code = response['Response']['Error']['Code']
1006
+ message = response['Response']['Error']['Message']
1007
+ reqid = response['Response']['RequestId']
1008
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1009
+ end
1010
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1011
+ raise e
1012
+ rescue StandardError => e
1013
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1014
+ end
1015
+
1016
+ # 重置设备操作,将会为设备生成新的证书及清空最新数据,需谨慎操作。
1017
+
1018
+ # @param request: Request instance for ResetDevice.
1019
+ # @type request: :class:`Tencentcloud::iot::V20180123::ResetDeviceRequest`
1020
+ # @rtype: :class:`Tencentcloud::iot::V20180123::ResetDeviceResponse`
1021
+ def ResetDevice(request)
1022
+ body = send_request('ResetDevice', request.serialize)
1023
+ response = JSON.parse(body)
1024
+ if response['Response'].key?('Error') == false
1025
+ model = ResetDeviceResponse.new
1026
+ model.deserialize(response['Response'])
1027
+ model
1028
+ else
1029
+ code = response['Response']['Error']['Code']
1030
+ message = response['Response']['Error']['Message']
1031
+ reqid = response['Response']['RequestId']
1032
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1033
+ end
1034
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1035
+ raise e
1036
+ rescue StandardError => e
1037
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1038
+ end
1039
+
1040
+ # 取消子设备产品与网关设备产品的关联
1041
+
1042
+ # @param request: Request instance for UnassociateSubDeviceFromGatewayProduct.
1043
+ # @type request: :class:`Tencentcloud::iot::V20180123::UnassociateSubDeviceFromGatewayProductRequest`
1044
+ # @rtype: :class:`Tencentcloud::iot::V20180123::UnassociateSubDeviceFromGatewayProductResponse`
1045
+ def UnassociateSubDeviceFromGatewayProduct(request)
1046
+ body = send_request('UnassociateSubDeviceFromGatewayProduct', request.serialize)
1047
+ response = JSON.parse(body)
1048
+ if response['Response'].key?('Error') == false
1049
+ model = UnassociateSubDeviceFromGatewayProductResponse.new
1050
+ model.deserialize(response['Response'])
1051
+ model
1052
+ else
1053
+ code = response['Response']['Error']['Code']
1054
+ message = response['Response']['Error']['Message']
1055
+ reqid = response['Response']['RequestId']
1056
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1057
+ end
1058
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1059
+ raise e
1060
+ rescue StandardError => e
1061
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1062
+ end
1063
+
1064
+ # 提供修改产品信息及数据模板的能力。
1065
+
1066
+ # @param request: Request instance for UpdateProduct.
1067
+ # @type request: :class:`Tencentcloud::iot::V20180123::UpdateProductRequest`
1068
+ # @rtype: :class:`Tencentcloud::iot::V20180123::UpdateProductResponse`
1069
+ def UpdateProduct(request)
1070
+ body = send_request('UpdateProduct', request.serialize)
1071
+ response = JSON.parse(body)
1072
+ if response['Response'].key?('Error') == false
1073
+ model = UpdateProductResponse.new
1074
+ model.deserialize(response['Response'])
1075
+ model
1076
+ else
1077
+ code = response['Response']['Error']['Code']
1078
+ message = response['Response']['Error']['Message']
1079
+ reqid = response['Response']['RequestId']
1080
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1081
+ end
1082
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1083
+ raise e
1084
+ rescue StandardError => e
1085
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1086
+ end
1087
+
1088
+ # 更新规则
1089
+
1090
+ # @param request: Request instance for UpdateRule.
1091
+ # @type request: :class:`Tencentcloud::iot::V20180123::UpdateRuleRequest`
1092
+ # @rtype: :class:`Tencentcloud::iot::V20180123::UpdateRuleResponse`
1093
+ def UpdateRule(request)
1094
+ body = send_request('UpdateRule', request.serialize)
1095
+ response = JSON.parse(body)
1096
+ if response['Response'].key?('Error') == false
1097
+ model = UpdateRuleResponse.new
1098
+ model.deserialize(response['Response'])
1099
+ model
1100
+ else
1101
+ code = response['Response']['Error']['Code']
1102
+ message = response['Response']['Error']['Message']
1103
+ reqid = response['Response']['RequestId']
1104
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1105
+ end
1106
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1107
+ raise e
1108
+ rescue StandardError => e
1109
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1110
+ end
1111
+
1112
+
1113
+ end
1114
+ end
1115
+ end
1116
+ end