tencentcloud-sdk-python-mqtt 3.1.97__tar.gz → 3.1.126__tar.gz

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 (17) hide show
  1. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/PKG-INFO +2 -2
  2. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/setup.py +1 -1
  3. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/__init__.py +1 -1
  4. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/mqtt/v20240516/errorcodes.py +3 -0
  5. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/mqtt/v20240516/models.py +499 -20
  6. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/mqtt/v20240516/mqtt_client.py +46 -0
  7. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/mqtt/v20240516/mqtt_client_async.py +36 -0
  8. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud_sdk_python_mqtt.egg-info/PKG-INFO +2 -2
  9. tencentcloud_sdk_python_mqtt-3.1.126/tencentcloud_sdk_python_mqtt.egg-info/requires.txt +1 -0
  10. tencentcloud_sdk_python_mqtt-3.1.97/tencentcloud_sdk_python_mqtt.egg-info/requires.txt +0 -1
  11. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/README.rst +0 -0
  12. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/setup.cfg +0 -0
  13. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/mqtt/__init__.py +0 -0
  14. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud/mqtt/v20240516/__init__.py +0 -0
  15. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud_sdk_python_mqtt.egg-info/SOURCES.txt +0 -0
  16. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud_sdk_python_mqtt.egg-info/dependency_links.txt +0 -0
  17. {tencentcloud_sdk_python_mqtt-3.1.97 → tencentcloud_sdk_python_mqtt-3.1.126}/tencentcloud_sdk_python_mqtt.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tencentcloud-sdk-python-mqtt
3
- Version: 3.1.97
3
+ Version: 3.1.126
4
4
  Summary: Tencent Cloud Mqtt SDK for Python
5
5
  Home-page: https://github.com/TencentCloud/tencentcloud-sdk-python
6
6
  Author: Tencent Cloud
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 2.7
15
15
  Classifier: Programming Language :: Python :: 3
16
16
  Classifier: Programming Language :: Python :: 3.6
17
17
  Classifier: Programming Language :: Python :: 3.7
18
- Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.97
18
+ Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.126
19
19
 
20
20
  ============================
21
21
  Tencent Cloud SDK for Python
@@ -8,7 +8,7 @@ ROOT = os.path.dirname(__file__)
8
8
 
9
9
  setup(
10
10
  name='tencentcloud-sdk-python-mqtt',
11
- install_requires=["tencentcloud-sdk-python-common>=3.1.97,<4.0.0"],
11
+ install_requires=["tencentcloud-sdk-python-common>=3.1.126,<4.0.0"],
12
12
 
13
13
  version=tencentcloud.__version__,
14
14
  description='Tencent Cloud Mqtt SDK for Python',
@@ -14,4 +14,4 @@
14
14
  # limitations under the License.
15
15
 
16
16
 
17
- __version__ = '3.1.97'
17
+ __version__ = '3.1.126'
@@ -23,6 +23,9 @@ FAILEDOPERATION_CALLTRADE = 'FailedOperation.CallTrade'
23
23
  # FailedOperation.CertificateVerificationFailed
24
24
  FAILEDOPERATION_CERTIFICATEVERIFICATIONFAILED = 'FailedOperation.CertificateVerificationFailed'
25
25
 
26
+ # 集群已打开删除保护开关。
27
+ FAILEDOPERATION_DELETEPROTECT = 'FailedOperation.DeleteProtect'
28
+
26
29
  # 策略优先级重复
27
30
  FAILEDOPERATION_DUPLICATEAUTHORIZATIONIDORPRIORITY = 'FailedOperation.DuplicateAuthorizationIdOrPriority'
28
31
 
@@ -1461,6 +1461,16 @@ class CreateHttpAuthenticatorRequest(AbstractModel):
1461
1461
  :type Header: list of HeaderItem
1462
1462
  :param _Body: 转发请求body
1463
1463
  :type Body: list of BodyItem
1464
+ :param _IncludingUserProperties: 连接UserProperty作为Header转发,默认false
1465
+ :type IncludingUserProperties: bool
1466
+ :param _VpcSvcId: vpcsvcId
1467
+ HTTP认证需要通过vpc网络访问时需要配置
1468
+ :type VpcSvcId: str
1469
+ :param _NetworkType: 网络连接类型
1470
+ vpc:vpc网络
1471
+ public:公网
1472
+ 通过vpc网络连接需要设置VpcSvcId参数
1473
+ :type NetworkType: str
1464
1474
  """
1465
1475
  self._InstanceId = None
1466
1476
  self._Endpoint = None
@@ -1472,6 +1482,9 @@ class CreateHttpAuthenticatorRequest(AbstractModel):
1472
1482
  self._ReadTimeout = None
1473
1483
  self._Header = None
1474
1484
  self._Body = None
1485
+ self._IncludingUserProperties = None
1486
+ self._VpcSvcId = None
1487
+ self._NetworkType = None
1475
1488
 
1476
1489
  @property
1477
1490
  def InstanceId(self):
@@ -1583,6 +1596,43 @@ class CreateHttpAuthenticatorRequest(AbstractModel):
1583
1596
  def Body(self, Body):
1584
1597
  self._Body = Body
1585
1598
 
1599
+ @property
1600
+ def IncludingUserProperties(self):
1601
+ r"""连接UserProperty作为Header转发,默认false
1602
+ :rtype: bool
1603
+ """
1604
+ return self._IncludingUserProperties
1605
+
1606
+ @IncludingUserProperties.setter
1607
+ def IncludingUserProperties(self, IncludingUserProperties):
1608
+ self._IncludingUserProperties = IncludingUserProperties
1609
+
1610
+ @property
1611
+ def VpcSvcId(self):
1612
+ r"""vpcsvcId
1613
+ HTTP认证需要通过vpc网络访问时需要配置
1614
+ :rtype: str
1615
+ """
1616
+ return self._VpcSvcId
1617
+
1618
+ @VpcSvcId.setter
1619
+ def VpcSvcId(self, VpcSvcId):
1620
+ self._VpcSvcId = VpcSvcId
1621
+
1622
+ @property
1623
+ def NetworkType(self):
1624
+ r"""网络连接类型
1625
+ vpc:vpc网络
1626
+ public:公网
1627
+ 通过vpc网络连接需要设置VpcSvcId参数
1628
+ :rtype: str
1629
+ """
1630
+ return self._NetworkType
1631
+
1632
+ @NetworkType.setter
1633
+ def NetworkType(self, NetworkType):
1634
+ self._NetworkType = NetworkType
1635
+
1586
1636
 
1587
1637
  def _deserialize(self, params):
1588
1638
  self._InstanceId = params.get("InstanceId")
@@ -1605,6 +1655,9 @@ class CreateHttpAuthenticatorRequest(AbstractModel):
1605
1655
  obj = BodyItem()
1606
1656
  obj._deserialize(item)
1607
1657
  self._Body.append(obj)
1658
+ self._IncludingUserProperties = params.get("IncludingUserProperties")
1659
+ self._VpcSvcId = params.get("VpcSvcId")
1660
+ self._NetworkType = params.get("NetworkType")
1608
1661
  memeber_set = set(params.keys())
1609
1662
  for name, value in vars(self).items():
1610
1663
  property_name = name[1:]
@@ -4335,10 +4388,19 @@ class DescribeClientListRequest(AbstractModel):
4335
4388
  :type ClientId: str
4336
4389
  :param _Number: 客户端数量限制,最大1024,默认1024
4337
4390
  :type Number: str
4391
+ :param _OnlineStatus: 0:查询在线和离线客户端(默认值)
4392
+ 1:查询在线客户端
4393
+ 2:查询离线客户端
4394
+ :type OnlineStatus: int
4395
+ :param _MaxTimestamp: 在线连接:表示最后的连接时间
4396
+ 离线连接:表示最后的断开连接时间
4397
+ :type MaxTimestamp: int
4338
4398
  """
4339
4399
  self._InstanceId = None
4340
4400
  self._ClientId = None
4341
4401
  self._Number = None
4402
+ self._OnlineStatus = None
4403
+ self._MaxTimestamp = None
4342
4404
 
4343
4405
  @property
4344
4406
  def InstanceId(self):
@@ -4373,11 +4435,38 @@ class DescribeClientListRequest(AbstractModel):
4373
4435
  def Number(self, Number):
4374
4436
  self._Number = Number
4375
4437
 
4438
+ @property
4439
+ def OnlineStatus(self):
4440
+ r"""0:查询在线和离线客户端(默认值)
4441
+ 1:查询在线客户端
4442
+ 2:查询离线客户端
4443
+ :rtype: int
4444
+ """
4445
+ return self._OnlineStatus
4446
+
4447
+ @OnlineStatus.setter
4448
+ def OnlineStatus(self, OnlineStatus):
4449
+ self._OnlineStatus = OnlineStatus
4450
+
4451
+ @property
4452
+ def MaxTimestamp(self):
4453
+ r"""在线连接:表示最后的连接时间
4454
+ 离线连接:表示最后的断开连接时间
4455
+ :rtype: int
4456
+ """
4457
+ return self._MaxTimestamp
4458
+
4459
+ @MaxTimestamp.setter
4460
+ def MaxTimestamp(self, MaxTimestamp):
4461
+ self._MaxTimestamp = MaxTimestamp
4462
+
4376
4463
 
4377
4464
  def _deserialize(self, params):
4378
4465
  self._InstanceId = params.get("InstanceId")
4379
4466
  self._ClientId = params.get("ClientId")
4380
4467
  self._Number = params.get("Number")
4468
+ self._OnlineStatus = params.get("OnlineStatus")
4469
+ self._MaxTimestamp = params.get("MaxTimestamp")
4381
4470
  memeber_set = set(params.keys())
4382
4471
  for name, value in vars(self).items():
4383
4472
  property_name = name[1:]
@@ -5497,17 +5586,13 @@ class DescribeInstanceListRequest(AbstractModel):
5497
5586
 
5498
5587
  def __init__(self):
5499
5588
  r"""
5500
- :param _Filters: 查询条件列表,支持以下字段
5501
- InstanceName:集群名模糊搜索
5502
- InstanceId:集群id精确搜索
5503
- InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,MODIFYING-变配中,DELETING-删除中)
5504
- 注意:配置TagFilters时该查询条件不生效。
5589
+ :param _Filters: <p>查询条件列表,支持以下字段<br>InstanceName:集群名模糊搜索<br>InstanceId:集群id精确搜索<br>InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,MODIFYING-变配中,DELETING-删除中)<br>PayMode:付费模式搜索(PREPAID-包年包月,POSTPAID-按小时计费)<br>ExpiredBefore:按过期时间过滤:仅筛选包年包月(PREPAID)集群<br>注意:配置TagFilters时该查询条件不生效。</p>
5505
5590
  :type Filters: list of Filter
5506
- :param _Offset: 查询起始位置,默认0
5591
+ :param _Offset: <p>查询起始位置,默认0</p>
5507
5592
  :type Offset: int
5508
- :param _Limit: 查询结果限制数量,默认20,最大100
5593
+ :param _Limit: <p>查询结果限制数量,默认20,最大100</p>
5509
5594
  :type Limit: int
5510
- :param _TagFilters: 标签过滤器
5595
+ :param _TagFilters: <p>标签过滤器</p>
5511
5596
  :type TagFilters: list of TagFilter
5512
5597
  """
5513
5598
  self._Filters = None
@@ -5517,11 +5602,7 @@ InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,M
5517
5602
 
5518
5603
  @property
5519
5604
  def Filters(self):
5520
- r"""查询条件列表,支持以下字段
5521
- InstanceName:集群名模糊搜索
5522
- InstanceId:集群id精确搜索
5523
- InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,MODIFYING-变配中,DELETING-删除中)
5524
- 注意:配置TagFilters时该查询条件不生效。
5605
+ r"""<p>查询条件列表,支持以下字段<br>InstanceName:集群名模糊搜索<br>InstanceId:集群id精确搜索<br>InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,MODIFYING-变配中,DELETING-删除中)<br>PayMode:付费模式搜索(PREPAID-包年包月,POSTPAID-按小时计费)<br>ExpiredBefore:按过期时间过滤:仅筛选包年包月(PREPAID)集群<br>注意:配置TagFilters时该查询条件不生效。</p>
5525
5606
  :rtype: list of Filter
5526
5607
  """
5527
5608
  return self._Filters
@@ -5532,7 +5613,7 @@ InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,M
5532
5613
 
5533
5614
  @property
5534
5615
  def Offset(self):
5535
- r"""查询起始位置,默认0
5616
+ r"""<p>查询起始位置,默认0</p>
5536
5617
  :rtype: int
5537
5618
  """
5538
5619
  return self._Offset
@@ -5543,7 +5624,7 @@ InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,M
5543
5624
 
5544
5625
  @property
5545
5626
  def Limit(self):
5546
- r"""查询结果限制数量,默认20,最大100
5627
+ r"""<p>查询结果限制数量,默认20,最大100</p>
5547
5628
  :rtype: int
5548
5629
  """
5549
5630
  return self._Limit
@@ -5554,7 +5635,7 @@ InstanceStatus:集群状态搜索(RUNNING-运行中,CREATING-创建中,M
5554
5635
 
5555
5636
  @property
5556
5637
  def TagFilters(self):
5557
- r"""标签过滤器
5638
+ r"""<p>标签过滤器</p>
5558
5639
  :rtype: list of TagFilter
5559
5640
  """
5560
5641
  return self._TagFilters
@@ -5596,9 +5677,9 @@ class DescribeInstanceListResponse(AbstractModel):
5596
5677
 
5597
5678
  def __init__(self):
5598
5679
  r"""
5599
- :param _TotalCount: 查询总数
5680
+ :param _TotalCount: <p>查询总数</p>
5600
5681
  :type TotalCount: int
5601
- :param _Data: 实例列表
5682
+ :param _Data: <p>实例列表</p>
5602
5683
  :type Data: list of MQTTInstanceItem
5603
5684
  :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
5604
5685
  :type RequestId: str
@@ -5609,7 +5690,7 @@ class DescribeInstanceListResponse(AbstractModel):
5609
5690
 
5610
5691
  @property
5611
5692
  def TotalCount(self):
5612
- r"""查询总数
5693
+ r"""<p>查询总数</p>
5613
5694
  :rtype: int
5614
5695
  """
5615
5696
  return self._TotalCount
@@ -5620,7 +5701,7 @@ class DescribeInstanceListResponse(AbstractModel):
5620
5701
 
5621
5702
  @property
5622
5703
  def Data(self):
5623
- r"""实例列表
5704
+ r"""<p>实例列表</p>
5624
5705
  :rtype: list of MQTTInstanceItem
5625
5706
  """
5626
5707
  return self._Data
@@ -5767,6 +5848,12 @@ class DescribeInstanceResponse(AbstractModel):
5767
5848
  :type MessageEnrichmentRuleLimit: int
5768
5849
  :param _BlockRuleLimit: <p>封禁规则最大数量</p>
5769
5850
  :type BlockRuleLimit: int
5851
+ :param _DeleteProtect: <p>删除保护开关</p>
5852
+ :type DeleteProtect: bool
5853
+ :param _EventDialect: <p>集群客户端事件格式</p><p>枚举值:</p><ul><li>V1: 详见官网文档</li><li>V2: 详见官网文档</li><li>V3: 详见官网文档</li></ul><p>默认值:V3</p>
5854
+ :type EventDialect: str
5855
+ :param _HashMessagePolicy: <p>消息HASH策略</p><p>枚举值:</p><ul><li>TOPIC_NAME: 按主题名</li><li>CLIENT_ID: 按客户端ID</li></ul><p>默认值:TOPIC_NAME</p>
5856
+ :type HashMessagePolicy: str
5770
5857
  :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
5771
5858
  :type RequestId: str
5772
5859
  """
@@ -5806,6 +5893,9 @@ class DescribeInstanceResponse(AbstractModel):
5806
5893
  self._TransportLayerSecurity = None
5807
5894
  self._MessageEnrichmentRuleLimit = None
5808
5895
  self._BlockRuleLimit = None
5896
+ self._DeleteProtect = None
5897
+ self._EventDialect = None
5898
+ self._HashMessagePolicy = None
5809
5899
  self._RequestId = None
5810
5900
 
5811
5901
  @property
@@ -6208,6 +6298,39 @@ class DescribeInstanceResponse(AbstractModel):
6208
6298
  def BlockRuleLimit(self, BlockRuleLimit):
6209
6299
  self._BlockRuleLimit = BlockRuleLimit
6210
6300
 
6301
+ @property
6302
+ def DeleteProtect(self):
6303
+ r"""<p>删除保护开关</p>
6304
+ :rtype: bool
6305
+ """
6306
+ return self._DeleteProtect
6307
+
6308
+ @DeleteProtect.setter
6309
+ def DeleteProtect(self, DeleteProtect):
6310
+ self._DeleteProtect = DeleteProtect
6311
+
6312
+ @property
6313
+ def EventDialect(self):
6314
+ r"""<p>集群客户端事件格式</p><p>枚举值:</p><ul><li>V1: 详见官网文档</li><li>V2: 详见官网文档</li><li>V3: 详见官网文档</li></ul><p>默认值:V3</p>
6315
+ :rtype: str
6316
+ """
6317
+ return self._EventDialect
6318
+
6319
+ @EventDialect.setter
6320
+ def EventDialect(self, EventDialect):
6321
+ self._EventDialect = EventDialect
6322
+
6323
+ @property
6324
+ def HashMessagePolicy(self):
6325
+ r"""<p>消息HASH策略</p><p>枚举值:</p><ul><li>TOPIC_NAME: 按主题名</li><li>CLIENT_ID: 按客户端ID</li></ul><p>默认值:TOPIC_NAME</p>
6326
+ :rtype: str
6327
+ """
6328
+ return self._HashMessagePolicy
6329
+
6330
+ @HashMessagePolicy.setter
6331
+ def HashMessagePolicy(self, HashMessagePolicy):
6332
+ self._HashMessagePolicy = HashMessagePolicy
6333
+
6211
6334
  @property
6212
6335
  def RequestId(self):
6213
6336
  r"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
@@ -6257,6 +6380,9 @@ class DescribeInstanceResponse(AbstractModel):
6257
6380
  self._TransportLayerSecurity = params.get("TransportLayerSecurity")
6258
6381
  self._MessageEnrichmentRuleLimit = params.get("MessageEnrichmentRuleLimit")
6259
6382
  self._BlockRuleLimit = params.get("BlockRuleLimit")
6383
+ self._DeleteProtect = params.get("DeleteProtect")
6384
+ self._EventDialect = params.get("EventDialect")
6385
+ self._HashMessagePolicy = params.get("HashMessagePolicy")
6260
6386
  self._RequestId = params.get("RequestId")
6261
6387
 
6262
6388
 
@@ -7318,6 +7444,105 @@ class DescribeSharedSubscriptionGroupsResponse(AbstractModel):
7318
7444
  self._RequestId = params.get("RequestId")
7319
7445
 
7320
7446
 
7447
+ class DescribeSharedSubscriptionGroupsWithSubscriptionsRequest(AbstractModel):
7448
+ r"""DescribeSharedSubscriptionGroupsWithSubscriptions请求参数结构体
7449
+
7450
+ """
7451
+
7452
+ def __init__(self):
7453
+ r"""
7454
+ :param _InstanceId: <p>腾讯云MQTT实例ID,从 <a href="https://cloud.tencent.com/document/api/1778/111029">DescribeInstanceList</a>接口或控制台获得。</p>
7455
+ :type InstanceId: str
7456
+ """
7457
+ self._InstanceId = None
7458
+
7459
+ @property
7460
+ def InstanceId(self):
7461
+ r"""<p>腾讯云MQTT实例ID,从 <a href="https://cloud.tencent.com/document/api/1778/111029">DescribeInstanceList</a>接口或控制台获得。</p>
7462
+ :rtype: str
7463
+ """
7464
+ return self._InstanceId
7465
+
7466
+ @InstanceId.setter
7467
+ def InstanceId(self, InstanceId):
7468
+ self._InstanceId = InstanceId
7469
+
7470
+
7471
+ def _deserialize(self, params):
7472
+ self._InstanceId = params.get("InstanceId")
7473
+ memeber_set = set(params.keys())
7474
+ for name, value in vars(self).items():
7475
+ property_name = name[1:]
7476
+ if property_name in memeber_set:
7477
+ memeber_set.remove(property_name)
7478
+ if len(memeber_set) > 0:
7479
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
7480
+
7481
+
7482
+
7483
+ class DescribeSharedSubscriptionGroupsWithSubscriptionsResponse(AbstractModel):
7484
+ r"""DescribeSharedSubscriptionGroupsWithSubscriptions返回参数结构体
7485
+
7486
+ """
7487
+
7488
+ def __init__(self):
7489
+ r"""
7490
+ :param _Data: <p>集群下共享订阅组列表</p>
7491
+ :type Data: list of SharedSubscriptionGroupWithSubscriptions
7492
+ :param _TotalCount: <p>查询总数</p>
7493
+ :type TotalCount: int
7494
+ :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
7495
+ :type RequestId: str
7496
+ """
7497
+ self._Data = None
7498
+ self._TotalCount = None
7499
+ self._RequestId = None
7500
+
7501
+ @property
7502
+ def Data(self):
7503
+ r"""<p>集群下共享订阅组列表</p>
7504
+ :rtype: list of SharedSubscriptionGroupWithSubscriptions
7505
+ """
7506
+ return self._Data
7507
+
7508
+ @Data.setter
7509
+ def Data(self, Data):
7510
+ self._Data = Data
7511
+
7512
+ @property
7513
+ def TotalCount(self):
7514
+ r"""<p>查询总数</p>
7515
+ :rtype: int
7516
+ """
7517
+ return self._TotalCount
7518
+
7519
+ @TotalCount.setter
7520
+ def TotalCount(self, TotalCount):
7521
+ self._TotalCount = TotalCount
7522
+
7523
+ @property
7524
+ def RequestId(self):
7525
+ r"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
7526
+ :rtype: str
7527
+ """
7528
+ return self._RequestId
7529
+
7530
+ @RequestId.setter
7531
+ def RequestId(self, RequestId):
7532
+ self._RequestId = RequestId
7533
+
7534
+
7535
+ def _deserialize(self, params):
7536
+ if params.get("Data") is not None:
7537
+ self._Data = []
7538
+ for item in params.get("Data"):
7539
+ obj = SharedSubscriptionGroupWithSubscriptions()
7540
+ obj._deserialize(item)
7541
+ self._Data.append(obj)
7542
+ self._TotalCount = params.get("TotalCount")
7543
+ self._RequestId = params.get("RequestId")
7544
+
7545
+
7321
7546
  class DescribeSharedSubscriptionLagRequest(AbstractModel):
7322
7547
  r"""DescribeSharedSubscriptionLag请求参数结构体
7323
7548
 
@@ -8545,9 +8770,12 @@ class KickOutClientRequest(AbstractModel):
8545
8770
  :type InstanceId: str
8546
8771
  :param _ClientId: 客户端id
8547
8772
  :type ClientId: str
8773
+ :param _DeleteSession: 是否清理session,默认false
8774
+ :type DeleteSession: bool
8548
8775
  """
8549
8776
  self._InstanceId = None
8550
8777
  self._ClientId = None
8778
+ self._DeleteSession = None
8551
8779
 
8552
8780
  @property
8553
8781
  def InstanceId(self):
@@ -8571,10 +8799,22 @@ class KickOutClientRequest(AbstractModel):
8571
8799
  def ClientId(self, ClientId):
8572
8800
  self._ClientId = ClientId
8573
8801
 
8802
+ @property
8803
+ def DeleteSession(self):
8804
+ r"""是否清理session,默认false
8805
+ :rtype: bool
8806
+ """
8807
+ return self._DeleteSession
8808
+
8809
+ @DeleteSession.setter
8810
+ def DeleteSession(self, DeleteSession):
8811
+ self._DeleteSession = DeleteSession
8812
+
8574
8813
 
8575
8814
  def _deserialize(self, params):
8576
8815
  self._InstanceId = params.get("InstanceId")
8577
8816
  self._ClientId = params.get("ClientId")
8817
+ self._DeleteSession = params.get("DeleteSession")
8578
8818
  memeber_set = set(params.keys())
8579
8819
  for name, value in vars(self).items():
8580
8820
  property_name = name[1:]
@@ -8805,6 +9045,10 @@ class MQTTClientInfo(AbstractModel):
8805
9045
  :type DisconnectTime: int
8806
9046
  :param _MQTTClientSubscriptions: 客户端的订阅列表
8807
9047
  :type MQTTClientSubscriptions: list of MQTTClientSubscription
9048
+ :param _CleanSession: clean-session标志,在客户端使用mqtt5协议时,该字段即clean-start
9049
+ :type CleanSession: bool
9050
+ :param _ExpireIntervalInSeconds: MQTT5协议:expireIntervalInSeconds
9051
+ :type ExpireIntervalInSeconds: int
8808
9052
  """
8809
9053
  self._ClientId = None
8810
9054
  self._ClientAddress = None
@@ -8815,6 +9059,8 @@ class MQTTClientInfo(AbstractModel):
8815
9059
  self._ConnectTime = None
8816
9060
  self._DisconnectTime = None
8817
9061
  self._MQTTClientSubscriptions = None
9062
+ self._CleanSession = None
9063
+ self._ExpireIntervalInSeconds = None
8818
9064
 
8819
9065
  @property
8820
9066
  def ClientId(self):
@@ -8918,6 +9164,28 @@ class MQTTClientInfo(AbstractModel):
8918
9164
  def MQTTClientSubscriptions(self, MQTTClientSubscriptions):
8919
9165
  self._MQTTClientSubscriptions = MQTTClientSubscriptions
8920
9166
 
9167
+ @property
9168
+ def CleanSession(self):
9169
+ r"""clean-session标志,在客户端使用mqtt5协议时,该字段即clean-start
9170
+ :rtype: bool
9171
+ """
9172
+ return self._CleanSession
9173
+
9174
+ @CleanSession.setter
9175
+ def CleanSession(self, CleanSession):
9176
+ self._CleanSession = CleanSession
9177
+
9178
+ @property
9179
+ def ExpireIntervalInSeconds(self):
9180
+ r"""MQTT5协议:expireIntervalInSeconds
9181
+ :rtype: int
9182
+ """
9183
+ return self._ExpireIntervalInSeconds
9184
+
9185
+ @ExpireIntervalInSeconds.setter
9186
+ def ExpireIntervalInSeconds(self, ExpireIntervalInSeconds):
9187
+ self._ExpireIntervalInSeconds = ExpireIntervalInSeconds
9188
+
8921
9189
 
8922
9190
  def _deserialize(self, params):
8923
9191
  self._ClientId = params.get("ClientId")
@@ -8934,6 +9202,8 @@ class MQTTClientInfo(AbstractModel):
8934
9202
  obj = MQTTClientSubscription()
8935
9203
  obj._deserialize(item)
8936
9204
  self._MQTTClientSubscriptions.append(obj)
9205
+ self._CleanSession = params.get("CleanSession")
9206
+ self._ExpireIntervalInSeconds = params.get("ExpireIntervalInSeconds")
8937
9207
  memeber_set = set(params.keys())
8938
9208
  for name, value in vars(self).items():
8939
9209
  property_name = name[1:]
@@ -9246,6 +9516,8 @@ DELETING,删除中
9246
9516
  :type AutoSubscriptionPolicyLimit: int
9247
9517
  :param _MaxTopicFilterPerAutoSubscriptionPolicy: 单条自动订阅规则TopicFilter数限制
9248
9518
  :type MaxTopicFilterPerAutoSubscriptionPolicy: int
9519
+ :param _DeleteProtect: 集群删除保护开关
9520
+ :type DeleteProtect: bool
9249
9521
  """
9250
9522
  self._InstanceId = None
9251
9523
  self._InstanceName = None
@@ -9271,6 +9543,7 @@ DELETING,删除中
9271
9543
  self._MaxTopicFilterPerSharedSubscriptionGroup = None
9272
9544
  self._AutoSubscriptionPolicyLimit = None
9273
9545
  self._MaxTopicFilterPerAutoSubscriptionPolicy = None
9546
+ self._DeleteProtect = None
9274
9547
 
9275
9548
  @property
9276
9549
  def InstanceId(self):
@@ -9519,6 +9792,8 @@ DELETING,删除中
9519
9792
 
9520
9793
  @property
9521
9794
  def MaxTopicFilterPerSharedSubscriptionGroup(self):
9795
+ warnings.warn("parameter `MaxTopicFilterPerSharedSubscriptionGroup` is deprecated", DeprecationWarning)
9796
+
9522
9797
  r"""单个共享订阅组TopicFilter数限制
9523
9798
  :rtype: int
9524
9799
  """
@@ -9526,6 +9801,8 @@ DELETING,删除中
9526
9801
 
9527
9802
  @MaxTopicFilterPerSharedSubscriptionGroup.setter
9528
9803
  def MaxTopicFilterPerSharedSubscriptionGroup(self, MaxTopicFilterPerSharedSubscriptionGroup):
9804
+ warnings.warn("parameter `MaxTopicFilterPerSharedSubscriptionGroup` is deprecated", DeprecationWarning)
9805
+
9529
9806
  self._MaxTopicFilterPerSharedSubscriptionGroup = MaxTopicFilterPerSharedSubscriptionGroup
9530
9807
 
9531
9808
  @property
@@ -9550,6 +9827,17 @@ DELETING,删除中
9550
9827
  def MaxTopicFilterPerAutoSubscriptionPolicy(self, MaxTopicFilterPerAutoSubscriptionPolicy):
9551
9828
  self._MaxTopicFilterPerAutoSubscriptionPolicy = MaxTopicFilterPerAutoSubscriptionPolicy
9552
9829
 
9830
+ @property
9831
+ def DeleteProtect(self):
9832
+ r"""集群删除保护开关
9833
+ :rtype: bool
9834
+ """
9835
+ return self._DeleteProtect
9836
+
9837
+ @DeleteProtect.setter
9838
+ def DeleteProtect(self, DeleteProtect):
9839
+ self._DeleteProtect = DeleteProtect
9840
+
9553
9841
 
9554
9842
  def _deserialize(self, params):
9555
9843
  self._InstanceId = params.get("InstanceId")
@@ -9576,6 +9864,7 @@ DELETING,删除中
9576
9864
  self._MaxTopicFilterPerSharedSubscriptionGroup = params.get("MaxTopicFilterPerSharedSubscriptionGroup")
9577
9865
  self._AutoSubscriptionPolicyLimit = params.get("AutoSubscriptionPolicyLimit")
9578
9866
  self._MaxTopicFilterPerAutoSubscriptionPolicy = params.get("MaxTopicFilterPerAutoSubscriptionPolicy")
9867
+ self._DeleteProtect = params.get("DeleteProtect")
9579
9868
  memeber_set = set(params.keys())
9580
9869
  for name, value in vars(self).items():
9581
9870
  property_name = name[1:]
@@ -12057,6 +12346,115 @@ class ModifyUserResponse(AbstractModel):
12057
12346
  self._RequestId = params.get("RequestId")
12058
12347
 
12059
12348
 
12349
+ class ModifyX509ConfigRequest(AbstractModel):
12350
+ r"""ModifyX509Config请求参数结构体
12351
+
12352
+ """
12353
+
12354
+ def __init__(self):
12355
+ r"""
12356
+ :param _InstanceId: <p>腾讯云MQTT实例ID,从 <a href="https://cloud.tencent.com/document/api/1778/111029">DescribeInstanceList</a>接口或控制台获得。</p>
12357
+ :type InstanceId: str
12358
+ :param _X509Mode: <p>证书验证模式</p><p>枚举值:</p><ul><li>TLS: 单向认证</li><li>mTLS: 双向认证</li><li>BYOC: 一机一证</li></ul>
12359
+ :type X509Mode: str
12360
+ :param _DeviceCertificateProvisionType: <p>证书注册方式</p><p>枚举值:</p><ul><li>JITP: 自动注册</li><li>API: 手工注册</li></ul>
12361
+ :type DeviceCertificateProvisionType: str
12362
+ :param _AutomaticActivation: <p>证书自动后激活状态</p><p>枚举值:</p><ul><li>true: 自动激活</li><li>false: 不激活</li></ul>
12363
+ :type AutomaticActivation: bool
12364
+ """
12365
+ self._InstanceId = None
12366
+ self._X509Mode = None
12367
+ self._DeviceCertificateProvisionType = None
12368
+ self._AutomaticActivation = None
12369
+
12370
+ @property
12371
+ def InstanceId(self):
12372
+ r"""<p>腾讯云MQTT实例ID,从 <a href="https://cloud.tencent.com/document/api/1778/111029">DescribeInstanceList</a>接口或控制台获得。</p>
12373
+ :rtype: str
12374
+ """
12375
+ return self._InstanceId
12376
+
12377
+ @InstanceId.setter
12378
+ def InstanceId(self, InstanceId):
12379
+ self._InstanceId = InstanceId
12380
+
12381
+ @property
12382
+ def X509Mode(self):
12383
+ r"""<p>证书验证模式</p><p>枚举值:</p><ul><li>TLS: 单向认证</li><li>mTLS: 双向认证</li><li>BYOC: 一机一证</li></ul>
12384
+ :rtype: str
12385
+ """
12386
+ return self._X509Mode
12387
+
12388
+ @X509Mode.setter
12389
+ def X509Mode(self, X509Mode):
12390
+ self._X509Mode = X509Mode
12391
+
12392
+ @property
12393
+ def DeviceCertificateProvisionType(self):
12394
+ r"""<p>证书注册方式</p><p>枚举值:</p><ul><li>JITP: 自动注册</li><li>API: 手工注册</li></ul>
12395
+ :rtype: str
12396
+ """
12397
+ return self._DeviceCertificateProvisionType
12398
+
12399
+ @DeviceCertificateProvisionType.setter
12400
+ def DeviceCertificateProvisionType(self, DeviceCertificateProvisionType):
12401
+ self._DeviceCertificateProvisionType = DeviceCertificateProvisionType
12402
+
12403
+ @property
12404
+ def AutomaticActivation(self):
12405
+ r"""<p>证书自动后激活状态</p><p>枚举值:</p><ul><li>true: 自动激活</li><li>false: 不激活</li></ul>
12406
+ :rtype: bool
12407
+ """
12408
+ return self._AutomaticActivation
12409
+
12410
+ @AutomaticActivation.setter
12411
+ def AutomaticActivation(self, AutomaticActivation):
12412
+ self._AutomaticActivation = AutomaticActivation
12413
+
12414
+
12415
+ def _deserialize(self, params):
12416
+ self._InstanceId = params.get("InstanceId")
12417
+ self._X509Mode = params.get("X509Mode")
12418
+ self._DeviceCertificateProvisionType = params.get("DeviceCertificateProvisionType")
12419
+ self._AutomaticActivation = params.get("AutomaticActivation")
12420
+ memeber_set = set(params.keys())
12421
+ for name, value in vars(self).items():
12422
+ property_name = name[1:]
12423
+ if property_name in memeber_set:
12424
+ memeber_set.remove(property_name)
12425
+ if len(memeber_set) > 0:
12426
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
12427
+
12428
+
12429
+
12430
+ class ModifyX509ConfigResponse(AbstractModel):
12431
+ r"""ModifyX509Config返回参数结构体
12432
+
12433
+ """
12434
+
12435
+ def __init__(self):
12436
+ r"""
12437
+ :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
12438
+ :type RequestId: str
12439
+ """
12440
+ self._RequestId = None
12441
+
12442
+ @property
12443
+ def RequestId(self):
12444
+ r"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
12445
+ :rtype: str
12446
+ """
12447
+ return self._RequestId
12448
+
12449
+ @RequestId.setter
12450
+ def RequestId(self, RequestId):
12451
+ self._RequestId = RequestId
12452
+
12453
+
12454
+ def _deserialize(self, params):
12455
+ self._RequestId = params.get("RequestId")
12456
+
12457
+
12060
12458
  class PriceTag(AbstractModel):
12061
12459
  r"""价格标签信息
12062
12460
 
@@ -13224,6 +13622,87 @@ class SharedSubscriptionClient(AbstractModel):
13224
13622
 
13225
13623
 
13226
13624
 
13625
+ class SharedSubscriptionGroupWithSubscriptions(AbstractModel):
13626
+ r"""查询共享订阅组(带订阅)
13627
+
13628
+ """
13629
+
13630
+ def __init__(self):
13631
+ r"""
13632
+ :param _SharedName: <p>共享组名</p>
13633
+ :type SharedName: str
13634
+ :param _CreateTime: <p>创建时间</p><p>单位:毫秒级时间戳</p>
13635
+ :type CreateTime: int
13636
+ :param _UpdateTime: <p>更新时间</p><p>单位:毫秒级时间戳</p>
13637
+ :type UpdateTime: int
13638
+ :param _TopicFilters: <p>订阅表达式</p>
13639
+ :type TopicFilters: list of str
13640
+ """
13641
+ self._SharedName = None
13642
+ self._CreateTime = None
13643
+ self._UpdateTime = None
13644
+ self._TopicFilters = None
13645
+
13646
+ @property
13647
+ def SharedName(self):
13648
+ r"""<p>共享组名</p>
13649
+ :rtype: str
13650
+ """
13651
+ return self._SharedName
13652
+
13653
+ @SharedName.setter
13654
+ def SharedName(self, SharedName):
13655
+ self._SharedName = SharedName
13656
+
13657
+ @property
13658
+ def CreateTime(self):
13659
+ r"""<p>创建时间</p><p>单位:毫秒级时间戳</p>
13660
+ :rtype: int
13661
+ """
13662
+ return self._CreateTime
13663
+
13664
+ @CreateTime.setter
13665
+ def CreateTime(self, CreateTime):
13666
+ self._CreateTime = CreateTime
13667
+
13668
+ @property
13669
+ def UpdateTime(self):
13670
+ r"""<p>更新时间</p><p>单位:毫秒级时间戳</p>
13671
+ :rtype: int
13672
+ """
13673
+ return self._UpdateTime
13674
+
13675
+ @UpdateTime.setter
13676
+ def UpdateTime(self, UpdateTime):
13677
+ self._UpdateTime = UpdateTime
13678
+
13679
+ @property
13680
+ def TopicFilters(self):
13681
+ r"""<p>订阅表达式</p>
13682
+ :rtype: list of str
13683
+ """
13684
+ return self._TopicFilters
13685
+
13686
+ @TopicFilters.setter
13687
+ def TopicFilters(self, TopicFilters):
13688
+ self._TopicFilters = TopicFilters
13689
+
13690
+
13691
+ def _deserialize(self, params):
13692
+ self._SharedName = params.get("SharedName")
13693
+ self._CreateTime = params.get("CreateTime")
13694
+ self._UpdateTime = params.get("UpdateTime")
13695
+ self._TopicFilters = params.get("TopicFilters")
13696
+ memeber_set = set(params.keys())
13697
+ for name, value in vars(self).items():
13698
+ property_name = name[1:]
13699
+ if property_name in memeber_set:
13700
+ memeber_set.remove(property_name)
13701
+ if len(memeber_set) > 0:
13702
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
13703
+
13704
+
13705
+
13227
13706
  class SubscriptionUserProperty(AbstractModel):
13228
13707
  r"""订阅的UserProperty结构
13229
13708
 
@@ -1112,6 +1112,29 @@ class MqttClient(AbstractClient):
1112
1112
  raise TencentCloudSDKException(type(e).__name__, str(e))
1113
1113
 
1114
1114
 
1115
+ def DescribeSharedSubscriptionGroupsWithSubscriptions(self, request):
1116
+ r"""查询集群下共享订阅组列表
1117
+
1118
+ :param request: Request instance for DescribeSharedSubscriptionGroupsWithSubscriptions.
1119
+ :type request: :class:`tencentcloud.mqtt.v20240516.models.DescribeSharedSubscriptionGroupsWithSubscriptionsRequest`
1120
+ :rtype: :class:`tencentcloud.mqtt.v20240516.models.DescribeSharedSubscriptionGroupsWithSubscriptionsResponse`
1121
+
1122
+ """
1123
+ try:
1124
+ params = request._serialize()
1125
+ headers = request.headers
1126
+ body = self.call("DescribeSharedSubscriptionGroupsWithSubscriptions", params, headers=headers)
1127
+ response = json.loads(body)
1128
+ model = models.DescribeSharedSubscriptionGroupsWithSubscriptionsResponse()
1129
+ model._deserialize(response["Response"])
1130
+ return model
1131
+ except Exception as e:
1132
+ if isinstance(e, TencentCloudSDKException):
1133
+ raise
1134
+ else:
1135
+ raise TencentCloudSDKException(type(e).__name__, str(e))
1136
+
1137
+
1115
1138
  def DescribeSharedSubscriptionLag(self, request):
1116
1139
  r"""查询共享订阅消息堆积量
1117
1140
 
@@ -1510,6 +1533,29 @@ class MqttClient(AbstractClient):
1510
1533
  raise TencentCloudSDKException(type(e).__name__, str(e))
1511
1534
 
1512
1535
 
1536
+ def ModifyX509Config(self, request):
1537
+ r"""修改集群X509配置
1538
+
1539
+ :param request: Request instance for ModifyX509Config.
1540
+ :type request: :class:`tencentcloud.mqtt.v20240516.models.ModifyX509ConfigRequest`
1541
+ :rtype: :class:`tencentcloud.mqtt.v20240516.models.ModifyX509ConfigResponse`
1542
+
1543
+ """
1544
+ try:
1545
+ params = request._serialize()
1546
+ headers = request.headers
1547
+ body = self.call("ModifyX509Config", params, headers=headers)
1548
+ response = json.loads(body)
1549
+ model = models.ModifyX509ConfigResponse()
1550
+ model._deserialize(response["Response"])
1551
+ return model
1552
+ except Exception as e:
1553
+ if isinstance(e, TencentCloudSDKException):
1554
+ raise
1555
+ else:
1556
+ raise TencentCloudSDKException(type(e).__name__, str(e))
1557
+
1558
+
1513
1559
  def PublishMessage(self, request):
1514
1560
  r"""发布 MQTT 消息到消息主题或客户端
1515
1561
 
@@ -876,6 +876,24 @@ class MqttClient(AbstractClient):
876
876
 
877
877
  return await self.call_and_deserialize(**kwargs)
878
878
 
879
+ async def DescribeSharedSubscriptionGroupsWithSubscriptions(
880
+ self,
881
+ request: models.DescribeSharedSubscriptionGroupsWithSubscriptionsRequest,
882
+ opts: Dict = None,
883
+ ) -> models.DescribeSharedSubscriptionGroupsWithSubscriptionsResponse:
884
+ """
885
+ 查询集群下共享订阅组列表
886
+ """
887
+
888
+ kwargs = {}
889
+ kwargs["action"] = "DescribeSharedSubscriptionGroupsWithSubscriptions"
890
+ kwargs["params"] = request._serialize()
891
+ kwargs["resp_cls"] = models.DescribeSharedSubscriptionGroupsWithSubscriptionsResponse
892
+ kwargs["headers"] = request.headers
893
+ kwargs["opts"] = opts or {}
894
+
895
+ return await self.call_and_deserialize(**kwargs)
896
+
879
897
  async def DescribeSharedSubscriptionLag(
880
898
  self,
881
899
  request: models.DescribeSharedSubscriptionLagRequest,
@@ -1189,6 +1207,24 @@ class MqttClient(AbstractClient):
1189
1207
 
1190
1208
  return await self.call_and_deserialize(**kwargs)
1191
1209
 
1210
+ async def ModifyX509Config(
1211
+ self,
1212
+ request: models.ModifyX509ConfigRequest,
1213
+ opts: Dict = None,
1214
+ ) -> models.ModifyX509ConfigResponse:
1215
+ """
1216
+ 修改集群X509配置
1217
+ """
1218
+
1219
+ kwargs = {}
1220
+ kwargs["action"] = "ModifyX509Config"
1221
+ kwargs["params"] = request._serialize()
1222
+ kwargs["resp_cls"] = models.ModifyX509ConfigResponse
1223
+ kwargs["headers"] = request.headers
1224
+ kwargs["opts"] = opts or {}
1225
+
1226
+ return await self.call_and_deserialize(**kwargs)
1227
+
1192
1228
  async def PublishMessage(
1193
1229
  self,
1194
1230
  request: models.PublishMessageRequest,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tencentcloud-sdk-python-mqtt
3
- Version: 3.1.97
3
+ Version: 3.1.126
4
4
  Summary: Tencent Cloud Mqtt SDK for Python
5
5
  Home-page: https://github.com/TencentCloud/tencentcloud-sdk-python
6
6
  Author: Tencent Cloud
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 2.7
15
15
  Classifier: Programming Language :: Python :: 3
16
16
  Classifier: Programming Language :: Python :: 3.6
17
17
  Classifier: Programming Language :: Python :: 3.7
18
- Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.97
18
+ Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.126
19
19
 
20
20
  ============================
21
21
  Tencent Cloud SDK for Python
@@ -0,0 +1 @@
1
+ tencentcloud-sdk-python-common<4.0.0,>=3.1.126
@@ -1 +0,0 @@
1
- tencentcloud-sdk-python-common<4.0.0,>=3.1.97