tccli 3.0.1114.1__py2.py3-none-any.whl → 3.0.1116.1__py2.py3-none-any.whl
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.
- tccli/__init__.py +1 -1
- tccli/services/aiart/v20221229/examples.json +1 -1
- tccli/services/asr/v20190614/api.json +1 -1
- tccli/services/cat/v20180409/api.json +1 -1
- tccli/services/cat/v20180409/examples.json +2 -2
- tccli/services/ccc/v20200210/api.json +2 -2
- tccli/services/cdwdoris/v20211228/api.json +9 -0
- tccli/services/ckafka/v20190819/api.json +20 -0
- tccli/services/cynosdb/v20190107/api.json +151 -50
- tccli/services/dasb/dasb_client.py +347 -29
- tccli/services/dasb/v20191018/api.json +966 -13
- tccli/services/dasb/v20191018/examples.json +48 -0
- tccli/services/dbbrain/dbbrain_client.py +53 -0
- tccli/services/dbbrain/v20210527/api.json +62 -0
- tccli/services/dbbrain/v20210527/examples.json +9 -1
- tccli/services/dlc/dlc_client.py +61 -8
- tccli/services/dlc/v20210125/api.json +53 -0
- tccli/services/dlc/v20210125/examples.json +8 -0
- tccli/services/domain/domain_client.py +871 -129
- tccli/services/domain/v20180808/api.json +1502 -146
- tccli/services/domain/v20180808/examples.json +112 -0
- tccli/services/dsgc/v20190723/api.json +30 -17
- tccli/services/dsgc/v20190723/examples.json +1 -1
- tccli/services/dts/v20211206/api.json +2 -2
- tccli/services/ess/v20201111/api.json +10 -1
- tccli/services/ess/v20201111/examples.json +1 -1
- tccli/services/essbasic/v20210526/api.json +2 -2
- tccli/services/gs/v20191118/api.json +11 -8
- tccli/services/iotexplorer/iotexplorer_client.py +326 -8
- tccli/services/iotexplorer/v20190423/api.json +583 -0
- tccli/services/iotexplorer/v20190423/examples.json +48 -0
- tccli/services/lighthouse/v20200324/api.json +16 -16
- tccli/services/mna/mna_client.py +110 -4
- tccli/services/mna/v20210119/api.json +182 -0
- tccli/services/mna/v20210119/examples.json +16 -0
- tccli/services/ocr/v20181119/api.json +60 -0
- tccli/services/ocr/v20181119/examples.json +1 -1
- tccli/services/rum/v20210622/api.json +6 -6
- tccli/services/rum/v20210622/examples.json +2 -2
- tccli/services/ssl/v20191205/api.json +1 -1
- tccli/services/ssl/v20191205/examples.json +1 -1
- tccli/services/teo/v20220901/api.json +1 -1
- tccli/services/tione/v20211111/api.json +11 -0
- tccli/services/tmt/v20180321/api.json +3 -3
- {tccli-3.0.1114.1.dist-info → tccli-3.0.1116.1.dist-info}/METADATA +2 -2
- {tccli-3.0.1114.1.dist-info → tccli-3.0.1116.1.dist-info}/RECORD +49 -49
- {tccli-3.0.1114.1.dist-info → tccli-3.0.1116.1.dist-info}/WHEEL +0 -0
- {tccli-3.0.1114.1.dist-info → tccli-3.0.1116.1.dist-info}/entry_points.txt +0 -0
- {tccli-3.0.1114.1.dist-info → tccli-3.0.1116.1.dist-info}/license_files/LICENSE +0 -0
| @@ -1,5 +1,21 @@ | |
| 1 1 | 
             
            {
         | 
| 2 2 | 
             
              "actions": {
         | 
| 3 | 
            +
                "ActivateTWeCallLicense": [
         | 
| 4 | 
            +
                  {
         | 
| 5 | 
            +
                    "document": "",
         | 
| 6 | 
            +
                    "input": "POST / HTTP/1.1\nHost: iotexplorer.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: ActivateTWeCallLicense\n<公共请求参数>\n\n{\n    \"PkgType\": 1,\n    \"MiniProgramAppId\": \"abc\",\n    \"DeviceList\": [\n        {\n            \"ModelId\": \"1qaz\",\n            \"Sn\": \"p/d\"\n        }\n    ]\n}",
         | 
| 7 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"abc\"\n    }\n}",
         | 
| 8 | 
            +
                    "title": "成功激活示例"
         | 
| 9 | 
            +
                  }
         | 
| 10 | 
            +
                ],
         | 
| 11 | 
            +
                "AssignTWeCallLicense": [
         | 
| 12 | 
            +
                  {
         | 
| 13 | 
            +
                    "document": "",
         | 
| 14 | 
            +
                    "input": "POST / HTTP/1.1\nHost: iotexplorer.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: AssignTWeCallLicense\n<公共请求参数>\n\n{\n    \"PkgType\": 1,\n    \"MiniProgramAppId\": \"abc\",\n    \"DeductNum\": 1\n}",
         | 
| 15 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"abc\"\n    }\n}",
         | 
| 16 | 
            +
                    "title": "分配成功"
         | 
| 17 | 
            +
                  }
         | 
| 18 | 
            +
                ],
         | 
| 3 19 | 
             
                "BindCloudStorageUser": [
         | 
| 4 20 | 
             
                  {
         | 
| 5 21 | 
             
                    "document": "",
         | 
| @@ -52,6 +68,14 @@ | |
| 52 68 | 
             
                    "title": "同步调用设备行为,设备不在线。"
         | 
| 53 69 | 
             
                  }
         | 
| 54 70 | 
             
                ],
         | 
| 71 | 
            +
                "CancelAssignTWeCallLicense": [
         | 
| 72 | 
            +
                  {
         | 
| 73 | 
            +
                    "document": "",
         | 
| 74 | 
            +
                    "input": "POST / HTTP/1.1\nHost: iotexplorer.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CancelAssignTWeCallLicense\n<公共请求参数>\n\n{\n    \"PkgId\": \"abc\"\n}",
         | 
| 75 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"abc\"\n    }\n}",
         | 
| 76 | 
            +
                    "title": "成功取消分配"
         | 
| 77 | 
            +
                  }
         | 
| 78 | 
            +
                ],
         | 
| 55 79 | 
             
                "ControlDeviceData": [
         | 
| 56 80 | 
             
                  {
         | 
| 57 81 | 
             
                    "document": "设置设备数据",
         | 
| @@ -706,6 +730,14 @@ | |
| 706 730 | 
             
                    "title": "获取视频防盗链播放URL"
         | 
| 707 731 | 
             
                  }
         | 
| 708 732 | 
             
                ],
         | 
| 733 | 
            +
                "GetAuthMiniProgramAppList": [
         | 
| 734 | 
            +
                  {
         | 
| 735 | 
            +
                    "document": "",
         | 
| 736 | 
            +
                    "input": "POST / HTTP/1.1\nHost: iotexplorer.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: GetAuthMiniProgramAppList\n<公共请求参数>\n\n{\n    \"MiniProgramAppId\": \"123wdc\"\n}",
         | 
| 737 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"abc\",\n        \"Total\": 1,\n        \"MiniProgramList\": [\n            {\n                \"MiniProgramAppId\": \"1qaz\",\n                \"MiniProgramName\": \"appBane\",\n                \"LicenseNum\": 100,\n                \"CreateTime\": 45674345567\n            }\n        ]\n    }\n}",
         | 
| 738 | 
            +
                    "title": "成功查询小程序列表"
         | 
| 739 | 
            +
                  }
         | 
| 740 | 
            +
                ],
         | 
| 709 741 | 
             
                "GetBatchProductionsList": [
         | 
| 710 742 | 
             
                  {
         | 
| 711 743 | 
             
                    "document": "",
         | 
| @@ -800,6 +832,22 @@ | |
| 800 832 | 
             
                    "title": "获取产品列表"
         | 
| 801 833 | 
             
                  }
         | 
| 802 834 | 
             
                ],
         | 
| 835 | 
            +
                "GetTWeCallActiveStatus": [
         | 
| 836 | 
            +
                  {
         | 
| 837 | 
            +
                    "document": "",
         | 
| 838 | 
            +
                    "input": "POST / HTTP/1.1\nHost: iotexplorer.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: GetTWeCallActiveStatus\n<公共请求参数>\n\n{\n    \"MiniProgramAppId\": \"abc\",\n    \"DeviceList\": [\n        {\n            \"ModelId\": \"1qaz\",\n            \"Sn\": \"p/d\"\n        }\n    ]\n}",
         | 
| 839 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"abc\",\n        \"TWeCallActiveInfos\": [\n            {\n                \"ModelId\": \"1qaz\",\n                \"Sn\": \"p/d\",\n                \"ExpireTime\": 45674345567\n            }\n        ]\n    }\n}",
         | 
| 840 | 
            +
                    "title": "成功获取激活状态"
         | 
| 841 | 
            +
                  }
         | 
| 842 | 
            +
                ],
         | 
| 843 | 
            +
                "GetTWeCallPkgList": [
         | 
| 844 | 
            +
                  {
         | 
| 845 | 
            +
                    "document": "",
         | 
| 846 | 
            +
                    "input": "POST / HTTP/1.1\nHost: iotexplorer.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: GetTWeCallPkgList\n<公共请求参数>\n\n{\n    \"MiniProgramAppId\": \"abc\"\n}",
         | 
| 847 | 
            +
                    "output": "{\n    \"Response\": {\n        \"RequestId\": \"abc\",\n        \"Total\": 1,\n        \"TWeCallPkgList\": [\n            {\n                \"PkgId\": \"1qaz\",\n                \"PkgType\": 1,\n                \"CreateTime\": 45674345567,\n                \"ExpireTime\": 45674345567,\n                \"LicenseTotalNum\": 1,\n                \"LicenseUsedNum\": 1\n            }\n        ]\n    }\n}",
         | 
| 848 | 
            +
                    "title": "成功查询示例"
         | 
| 849 | 
            +
                  }
         | 
| 850 | 
            +
                ],
         | 
| 803 851 | 
             
                "GetTopicRuleList": [
         | 
| 804 852 | 
             
                  {
         | 
| 805 853 | 
             
                    "document": "",
         | 
| @@ -993,7 +993,7 @@ | |
| 993 993 | 
             
                  "members": [
         | 
| 994 994 | 
             
                    {
         | 
| 995 995 | 
             
                      "disabled": false,
         | 
| 996 | 
            -
                      "document": "云硬盘ID | 
| 996 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 100。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 997 997 | 
             
                      "example": "[\"lhdisk-5vmz00i3\"]",
         | 
| 998 998 | 
             
                      "member": "string",
         | 
| 999 999 | 
             
                      "name": "DiskIds",
         | 
| @@ -1002,7 +1002,7 @@ | |
| 1002 1002 | 
             
                    },
         | 
| 1003 1003 | 
             
                    {
         | 
| 1004 1004 | 
             
                      "disabled": false,
         | 
| 1005 | 
            -
                      "document": "实例ID | 
| 1005 | 
            +
                      "document": "实例ID。可通过[DescribeInstances](https://cloud.tencent.com/document/product/1207/47573)接口返回值中的InstanceId获取。",
         | 
| 1006 1006 | 
             
                      "example": "lhins-qg08np8l",
         | 
| 1007 1007 | 
             
                      "member": "string",
         | 
| 1008 1008 | 
             
                      "name": "InstanceId",
         | 
| @@ -3149,7 +3149,7 @@ | |
| 3149 3149 | 
             
                  "members": [
         | 
| 3150 3150 | 
             
                    {
         | 
| 3151 3151 | 
             
                      "disabled": false,
         | 
| 3152 | 
            -
                      "document": "云硬盘ID | 
| 3152 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 100。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 3153 3153 | 
             
                      "example": "[\"lhdisk-eobj8huv\"]",
         | 
| 3154 3154 | 
             
                      "member": "string",
         | 
| 3155 3155 | 
             
                      "name": "DiskIds",
         | 
| @@ -3168,7 +3168,7 @@ | |
| 3168 3168 | 
             
                      "example": "无",
         | 
| 3169 3169 | 
             
                      "member": "DiskDeniedActions",
         | 
| 3170 3170 | 
             
                      "name": "DiskDeniedActionSet",
         | 
| 3171 | 
            -
                      " | 
| 3171 | 
            +
                      "output_required": true,
         | 
| 3172 3172 | 
             
                      "type": "list",
         | 
| 3173 3173 | 
             
                      "value_allowed_null": false
         | 
| 3174 3174 | 
             
                    },
         | 
| @@ -3186,7 +3186,7 @@ | |
| 3186 3186 | 
             
                  "members": [
         | 
| 3187 3187 | 
             
                    {
         | 
| 3188 3188 | 
             
                      "disabled": false,
         | 
| 3189 | 
            -
                      "document": "云硬盘ID | 
| 3189 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 100。",
         | 
| 3190 3190 | 
             
                      "example": "[\"lhdisk-p1zflrif\"]",
         | 
| 3191 3191 | 
             
                      "member": "string",
         | 
| 3192 3192 | 
             
                      "name": "DiskIds",
         | 
| @@ -3278,7 +3278,7 @@ | |
| 3278 3278 | 
             
                  "members": [
         | 
| 3279 3279 | 
             
                    {
         | 
| 3280 3280 | 
             
                      "disabled": false,
         | 
| 3281 | 
            -
                      "document": "云硬盘ID | 
| 3281 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 10。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 3282 3282 | 
             
                      "example": "[\"lhdisk-eobj8huv\"]",
         | 
| 3283 3283 | 
             
                      "member": "string",
         | 
| 3284 3284 | 
             
                      "name": "DiskIds",
         | 
| @@ -3315,7 +3315,7 @@ | |
| 3315 3315 | 
             
                      "example": "无",
         | 
| 3316 3316 | 
             
                      "member": "DiskReturnable",
         | 
| 3317 3317 | 
             
                      "name": "DiskReturnableSet",
         | 
| 3318 | 
            -
                      " | 
| 3318 | 
            +
                      "output_required": true,
         | 
| 3319 3319 | 
             
                      "type": "list",
         | 
| 3320 3320 | 
             
                      "value_allowed_null": false
         | 
| 3321 3321 | 
             
                    },
         | 
| @@ -3325,7 +3325,7 @@ | |
| 3325 3325 | 
             
                      "example": "1",
         | 
| 3326 3326 | 
             
                      "member": "int64",
         | 
| 3327 3327 | 
             
                      "name": "TotalCount",
         | 
| 3328 | 
            -
                      " | 
| 3328 | 
            +
                      "output_required": true,
         | 
| 3329 3329 | 
             
                      "type": "int",
         | 
| 3330 3330 | 
             
                      "value_allowed_null": false
         | 
| 3331 3331 | 
             
                    },
         | 
| @@ -4889,7 +4889,7 @@ | |
| 4889 4889 | 
             
                  "members": [
         | 
| 4890 4890 | 
             
                    {
         | 
| 4891 4891 | 
             
                      "disabled": false,
         | 
| 4892 | 
            -
                      "document": "云联网实例ID | 
| 4892 | 
            +
                      "document": "云联网实例ID。可通过[DescribeCcnAttachedInstances](https://cloud.tencent.com/document/product/1207/58797)接口返回值中的CcnId获取。",
         | 
| 4893 4893 | 
             
                      "example": "ccn-f49l6u0z",
         | 
| 4894 4894 | 
             
                      "member": "string",
         | 
| 4895 4895 | 
             
                      "name": "CcnId",
         | 
| @@ -4916,7 +4916,7 @@ | |
| 4916 4916 | 
             
                  "members": [
         | 
| 4917 4917 | 
             
                    {
         | 
| 4918 4918 | 
             
                      "disabled": false,
         | 
| 4919 | 
            -
                      "document": "云硬盘ID | 
| 4919 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 100。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 4920 4920 | 
             
                      "example": "[\"lhdisk-eobj8huv\"]",
         | 
| 4921 4921 | 
             
                      "member": "string",
         | 
| 4922 4922 | 
             
                      "name": "DiskIds",
         | 
| @@ -6641,7 +6641,7 @@ | |
| 6641 6641 | 
             
                  "members": [
         | 
| 6642 6642 | 
             
                    {
         | 
| 6643 6643 | 
             
                      "disabled": false,
         | 
| 6644 | 
            -
                      "document": "云硬盘ID | 
| 6644 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 1。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 6645 6645 | 
             
                      "example": "[\"lhdisk-eobj8huv\"]",
         | 
| 6646 6646 | 
             
                      "member": "string",
         | 
| 6647 6647 | 
             
                      "name": "DiskIds",
         | 
| @@ -6669,7 +6669,7 @@ | |
| 6669 6669 | 
             
                      "example": "无",
         | 
| 6670 6670 | 
             
                      "member": "DiskPrice",
         | 
| 6671 6671 | 
             
                      "name": "DiskPrice",
         | 
| 6672 | 
            -
                      " | 
| 6672 | 
            +
                      "output_required": true,
         | 
| 6673 6673 | 
             
                      "type": "object",
         | 
| 6674 6674 | 
             
                      "value_allowed_null": false
         | 
| 6675 6675 | 
             
                    },
         | 
| @@ -7656,7 +7656,7 @@ | |
| 7656 7656 | 
             
                  "members": [
         | 
| 7657 7657 | 
             
                    {
         | 
| 7658 7658 | 
             
                      "disabled": false,
         | 
| 7659 | 
            -
                      "document": "云硬盘ID | 
| 7659 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 100。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 7660 7660 | 
             
                      "example": "[\"lhdisk-p1zflrif\"]",
         | 
| 7661 7661 | 
             
                      "member": "string",
         | 
| 7662 7662 | 
             
                      "name": "DiskIds",
         | 
| @@ -7728,7 +7728,7 @@ | |
| 7728 7728 | 
             
                  "members": [
         | 
| 7729 7729 | 
             
                    {
         | 
| 7730 7730 | 
             
                      "disabled": false,
         | 
| 7731 | 
            -
                      "document": "云硬盘ID | 
| 7731 | 
            +
                      "document": "云硬盘ID列表。每次批量请求云硬盘的上限为 100。可通过[DescribeDisks](https://cloud.tencent.com/document/product/1207/66093)接口返回值中的DiskId获取。",
         | 
| 7732 7732 | 
             
                      "example": "[\"lhdisk-eobj8huv\"]",
         | 
| 7733 7733 | 
             
                      "member": "string",
         | 
| 7734 7734 | 
             
                      "name": "DiskIds",
         | 
| @@ -7737,7 +7737,7 @@ | |
| 7737 7737 | 
             
                    },
         | 
| 7738 7738 | 
             
                    {
         | 
| 7739 7739 | 
             
                      "disabled": false,
         | 
| 7740 | 
            -
                      "document": " | 
| 7740 | 
            +
                      "document": "自动续费标识。取值范围:\n\n- NOTIFY_AND_AUTO_RENEW:通知过期且自动续费\n- NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费\n- DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费\n\n若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。",
         | 
| 7741 7741 | 
             
                      "example": "NOTIFY_AND_AUTO_RENEW",
         | 
| 7742 7742 | 
             
                      "member": "string",
         | 
| 7743 7743 | 
             
                      "name": "RenewFlag",
         | 
| @@ -8657,7 +8657,7 @@ | |
| 8657 8657 | 
             
                  "members": [
         | 
| 8658 8658 | 
             
                    {
         | 
| 8659 8659 | 
             
                      "disabled": false,
         | 
| 8660 | 
            -
                      "document": "云联网实例ID | 
| 8660 | 
            +
                      "document": "云联网实例ID。可通过[DescribeCcnAttachedInstances](https://cloud.tencent.com/document/product/1207/58797)接口返回值中的CcnId获取。",
         | 
| 8661 8661 | 
             
                      "example": "ccn-f49l6u0z",
         | 
| 8662 8662 | 
             
                      "member": "string",
         | 
| 8663 8663 | 
             
                      "name": "CcnId",
         | 
    
        tccli/services/mna/mna_client.py
    CHANGED
    
    | @@ -173,6 +173,58 @@ def doGetFlowStatistic(args, parsed_globals): | |
| 173 173 | 
             
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 174 174 |  | 
| 175 175 |  | 
| 176 | 
            +
            def doGetFlowStatisticByGroup(args, parsed_globals):
         | 
| 177 | 
            +
                g_param = parse_global_arg(parsed_globals)
         | 
| 178 | 
            +
             | 
| 179 | 
            +
                if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
         | 
| 180 | 
            +
                    cred = credential.CVMRoleCredential()
         | 
| 181 | 
            +
                elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
         | 
| 182 | 
            +
                    cred = credential.STSAssumeRoleCredential(
         | 
| 183 | 
            +
                        g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
         | 
| 184 | 
            +
                        g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
         | 
| 185 | 
            +
                    )
         | 
| 186 | 
            +
                elif os.getenv(OptionsDefine.ENV_TKE_REGION)             and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID)             and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE)             and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
         | 
| 187 | 
            +
                    cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
         | 
| 188 | 
            +
                else:
         | 
| 189 | 
            +
                    cred = credential.Credential(
         | 
| 190 | 
            +
                        g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
         | 
| 191 | 
            +
                    )
         | 
| 192 | 
            +
                http_profile = HttpProfile(
         | 
| 193 | 
            +
                    reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
         | 
| 194 | 
            +
                    reqMethod="POST",
         | 
| 195 | 
            +
                    endpoint=g_param[OptionsDefine.Endpoint],
         | 
| 196 | 
            +
                    proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
         | 
| 197 | 
            +
                )
         | 
| 198 | 
            +
                profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
         | 
| 199 | 
            +
                if g_param[OptionsDefine.Language]:
         | 
| 200 | 
            +
                    profile.language = g_param[OptionsDefine.Language]
         | 
| 201 | 
            +
                mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
         | 
| 202 | 
            +
                client = mod.MnaClient(cred, g_param[OptionsDefine.Region], profile)
         | 
| 203 | 
            +
                client._sdkVersion += ("_CLI_" + __version__)
         | 
| 204 | 
            +
                models = MODELS_MAP[g_param[OptionsDefine.Version]]
         | 
| 205 | 
            +
                model = models.GetFlowStatisticByGroupRequest()
         | 
| 206 | 
            +
                model.from_json_string(json.dumps(args))
         | 
| 207 | 
            +
                start_time = time.time()
         | 
| 208 | 
            +
                while True:
         | 
| 209 | 
            +
                    rsp = client.GetFlowStatisticByGroup(model)
         | 
| 210 | 
            +
                    result = rsp.to_json_string()
         | 
| 211 | 
            +
                    try:
         | 
| 212 | 
            +
                        json_obj = json.loads(result)
         | 
| 213 | 
            +
                    except TypeError as e:
         | 
| 214 | 
            +
                        json_obj = json.loads(result.decode('utf-8'))  # python3.3
         | 
| 215 | 
            +
                    if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
         | 
| 216 | 
            +
                        break
         | 
| 217 | 
            +
                    cur_time = time.time()
         | 
| 218 | 
            +
                    if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
         | 
| 219 | 
            +
                        raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
         | 
| 220 | 
            +
                        (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
         | 
| 221 | 
            +
                        search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
         | 
| 222 | 
            +
                    else:
         | 
| 223 | 
            +
                        print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
         | 
| 224 | 
            +
                    time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
         | 
| 225 | 
            +
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 226 | 
            +
             | 
| 227 | 
            +
             | 
| 176 228 | 
             
            def doGetMultiFlowStatistic(args, parsed_globals):
         | 
| 177 229 | 
             
                g_param = parse_global_arg(parsed_globals)
         | 
| 178 230 |  | 
| @@ -485,6 +537,58 @@ def doAddHardware(args, parsed_globals): | |
| 485 537 | 
             
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 486 538 |  | 
| 487 539 |  | 
| 540 | 
            +
            def doGetDevice(args, parsed_globals):
         | 
| 541 | 
            +
                g_param = parse_global_arg(parsed_globals)
         | 
| 542 | 
            +
             | 
| 543 | 
            +
                if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
         | 
| 544 | 
            +
                    cred = credential.CVMRoleCredential()
         | 
| 545 | 
            +
                elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
         | 
| 546 | 
            +
                    cred = credential.STSAssumeRoleCredential(
         | 
| 547 | 
            +
                        g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
         | 
| 548 | 
            +
                        g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
         | 
| 549 | 
            +
                    )
         | 
| 550 | 
            +
                elif os.getenv(OptionsDefine.ENV_TKE_REGION)             and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID)             and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE)             and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
         | 
| 551 | 
            +
                    cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
         | 
| 552 | 
            +
                else:
         | 
| 553 | 
            +
                    cred = credential.Credential(
         | 
| 554 | 
            +
                        g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
         | 
| 555 | 
            +
                    )
         | 
| 556 | 
            +
                http_profile = HttpProfile(
         | 
| 557 | 
            +
                    reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
         | 
| 558 | 
            +
                    reqMethod="POST",
         | 
| 559 | 
            +
                    endpoint=g_param[OptionsDefine.Endpoint],
         | 
| 560 | 
            +
                    proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
         | 
| 561 | 
            +
                )
         | 
| 562 | 
            +
                profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
         | 
| 563 | 
            +
                if g_param[OptionsDefine.Language]:
         | 
| 564 | 
            +
                    profile.language = g_param[OptionsDefine.Language]
         | 
| 565 | 
            +
                mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
         | 
| 566 | 
            +
                client = mod.MnaClient(cred, g_param[OptionsDefine.Region], profile)
         | 
| 567 | 
            +
                client._sdkVersion += ("_CLI_" + __version__)
         | 
| 568 | 
            +
                models = MODELS_MAP[g_param[OptionsDefine.Version]]
         | 
| 569 | 
            +
                model = models.GetDeviceRequest()
         | 
| 570 | 
            +
                model.from_json_string(json.dumps(args))
         | 
| 571 | 
            +
                start_time = time.time()
         | 
| 572 | 
            +
                while True:
         | 
| 573 | 
            +
                    rsp = client.GetDevice(model)
         | 
| 574 | 
            +
                    result = rsp.to_json_string()
         | 
| 575 | 
            +
                    try:
         | 
| 576 | 
            +
                        json_obj = json.loads(result)
         | 
| 577 | 
            +
                    except TypeError as e:
         | 
| 578 | 
            +
                        json_obj = json.loads(result.decode('utf-8'))  # python3.3
         | 
| 579 | 
            +
                    if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
         | 
| 580 | 
            +
                        break
         | 
| 581 | 
            +
                    cur_time = time.time()
         | 
| 582 | 
            +
                    if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
         | 
| 583 | 
            +
                        raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
         | 
| 584 | 
            +
                        (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
         | 
| 585 | 
            +
                        search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
         | 
| 586 | 
            +
                    else:
         | 
| 587 | 
            +
                        print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
         | 
| 588 | 
            +
                    time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
         | 
| 589 | 
            +
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 590 | 
            +
             | 
| 591 | 
            +
             | 
| 488 592 | 
             
            def doCreateQos(args, parsed_globals):
         | 
| 489 593 | 
             
                g_param = parse_global_arg(parsed_globals)
         | 
| 490 594 |  | 
| @@ -901,7 +1005,7 @@ def doDeleteQos(args, parsed_globals): | |
| 901 1005 | 
             
                FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
         | 
| 902 1006 |  | 
| 903 1007 |  | 
| 904 | 
            -
            def  | 
| 1008 | 
            +
            def doGetFlowAlarmInfo(args, parsed_globals):
         | 
| 905 1009 | 
             
                g_param = parse_global_arg(parsed_globals)
         | 
| 906 1010 |  | 
| 907 1011 | 
             
                if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
         | 
| @@ -930,11 +1034,11 @@ def doGetDevice(args, parsed_globals): | |
| 930 1034 | 
             
                client = mod.MnaClient(cred, g_param[OptionsDefine.Region], profile)
         | 
| 931 1035 | 
             
                client._sdkVersion += ("_CLI_" + __version__)
         | 
| 932 1036 | 
             
                models = MODELS_MAP[g_param[OptionsDefine.Version]]
         | 
| 933 | 
            -
                model = models. | 
| 1037 | 
            +
                model = models.GetFlowAlarmInfoRequest()
         | 
| 934 1038 | 
             
                model.from_json_string(json.dumps(args))
         | 
| 935 1039 | 
             
                start_time = time.time()
         | 
| 936 1040 | 
             
                while True:
         | 
| 937 | 
            -
                    rsp = client. | 
| 1041 | 
            +
                    rsp = client.GetFlowAlarmInfo(model)
         | 
| 938 1042 | 
             
                    result = rsp.to_json_string()
         | 
| 939 1043 | 
             
                    try:
         | 
| 940 1044 | 
             
                        json_obj = json.loads(result)
         | 
| @@ -1227,12 +1331,14 @@ ACTION_MAP = { | |
| 1227 1331 | 
             
                "GetDevicePayMode": doGetDevicePayMode,
         | 
| 1228 1332 | 
             
                "ModifyPackageRenewFlag": doModifyPackageRenewFlag,
         | 
| 1229 1333 | 
             
                "GetFlowStatistic": doGetFlowStatistic,
         | 
| 1334 | 
            +
                "GetFlowStatisticByGroup": doGetFlowStatisticByGroup,
         | 
| 1230 1335 | 
             
                "GetMultiFlowStatistic": doGetMultiFlowStatistic,
         | 
| 1231 1336 | 
             
                "GetDevices": doGetDevices,
         | 
| 1232 1337 | 
             
                "GetPublicKey": doGetPublicKey,
         | 
| 1233 1338 | 
             
                "ActivateHardware": doActivateHardware,
         | 
| 1234 1339 | 
             
                "GetFlowPackages": doGetFlowPackages,
         | 
| 1235 1340 | 
             
                "AddHardware": doAddHardware,
         | 
| 1341 | 
            +
                "GetDevice": doGetDevice,
         | 
| 1236 1342 | 
             
                "CreateQos": doCreateQos,
         | 
| 1237 1343 | 
             
                "DeleteDevice": doDeleteDevice,
         | 
| 1238 1344 | 
             
                "UpdateDevice": doUpdateDevice,
         | 
| @@ -1241,7 +1347,7 @@ ACTION_MAP = { | |
| 1241 1347 | 
             
                "GetVendorHardware": doGetVendorHardware,
         | 
| 1242 1348 | 
             
                "CreateEncryptedKey": doCreateEncryptedKey,
         | 
| 1243 1349 | 
             
                "DeleteQos": doDeleteQos,
         | 
| 1244 | 
            -
                " | 
| 1350 | 
            +
                "GetFlowAlarmInfo": doGetFlowAlarmInfo,
         | 
| 1245 1351 | 
             
                "OrderFlowPackage": doOrderFlowPackage,
         | 
| 1246 1352 | 
             
                "GetStatisticData": doGetStatisticData,
         | 
| 1247 1353 | 
             
                "GetHardwareList": doGetHardwareList,
         | 
| @@ -77,6 +77,13 @@ | |
| 77 77 | 
             
                  "output": "GetDevicesResponse",
         | 
| 78 78 | 
             
                  "status": "online"
         | 
| 79 79 | 
             
                },
         | 
| 80 | 
            +
                "GetFlowAlarmInfo": {
         | 
| 81 | 
            +
                  "document": "根据AppId查询用户设置的流量告警信息,包括阈值,回调url和key",
         | 
| 82 | 
            +
                  "input": "GetFlowAlarmInfoRequest",
         | 
| 83 | 
            +
                  "name": "查询流量告警信息",
         | 
| 84 | 
            +
                  "output": "GetFlowAlarmInfoResponse",
         | 
| 85 | 
            +
                  "status": "online"
         | 
| 86 | 
            +
                },
         | 
| 80 87 | 
             
                "GetFlowPackages": {
         | 
| 81 88 | 
             
                  "document": "获取流量包列表",
         | 
| 82 89 | 
             
                  "input": "GetFlowPackagesRequest",
         | 
| @@ -91,6 +98,13 @@ | |
| 91 98 | 
             
                  "output": "GetFlowStatisticResponse",
         | 
| 92 99 | 
             
                  "status": "online"
         | 
| 93 100 | 
             
                },
         | 
| 101 | 
            +
                "GetFlowStatisticByGroup": {
         | 
| 102 | 
            +
                  "document": "获取指定分组,指定时间数据流量使用情况",
         | 
| 103 | 
            +
                  "input": "GetFlowStatisticByGroupRequest",
         | 
| 104 | 
            +
                  "name": "根据设备组获取数据流量统计数据",
         | 
| 105 | 
            +
                  "output": "GetFlowStatisticByGroupResponse",
         | 
| 106 | 
            +
                  "status": "online"
         | 
| 107 | 
            +
                },
         | 
| 94 108 | 
             
                "GetHardwareList": {
         | 
| 95 109 | 
             
                  "document": "获取厂商硬件列表",
         | 
| 96 110 | 
             
                  "input": "GetHardwareListRequest",
         | 
| @@ -1653,6 +1667,53 @@ | |
| 1653 1667 | 
             
                  ],
         | 
| 1654 1668 | 
             
                  "type": "object"
         | 
| 1655 1669 | 
             
                },
         | 
| 1670 | 
            +
                "GetFlowAlarmInfoRequest": {
         | 
| 1671 | 
            +
                  "document": "GetFlowAlarmInfo请求参数结构体",
         | 
| 1672 | 
            +
                  "members": [],
         | 
| 1673 | 
            +
                  "type": "object"
         | 
| 1674 | 
            +
                },
         | 
| 1675 | 
            +
                "GetFlowAlarmInfoResponse": {
         | 
| 1676 | 
            +
                  "document": "GetFlowAlarmInfo返回参数结构体",
         | 
| 1677 | 
            +
                  "members": [
         | 
| 1678 | 
            +
                    {
         | 
| 1679 | 
            +
                      "disabled": false,
         | 
| 1680 | 
            +
                      "document": "流量包的告警阈值\n注意:此字段可能返回 null,表示取不到有效值。",
         | 
| 1681 | 
            +
                      "example": "20",
         | 
| 1682 | 
            +
                      "member": "int64",
         | 
| 1683 | 
            +
                      "name": "AlarmValue",
         | 
| 1684 | 
            +
                      "output_required": false,
         | 
| 1685 | 
            +
                      "type": "int",
         | 
| 1686 | 
            +
                      "value_allowed_null": true
         | 
| 1687 | 
            +
                    },
         | 
| 1688 | 
            +
                    {
         | 
| 1689 | 
            +
                      "disabled": false,
         | 
| 1690 | 
            +
                      "document": "告警通知回调url\n注意:此字段可能返回 null,表示取不到有效值。",
         | 
| 1691 | 
            +
                      "example": "http://ip:port/callurl",
         | 
| 1692 | 
            +
                      "member": "string",
         | 
| 1693 | 
            +
                      "name": "NotifyUrl",
         | 
| 1694 | 
            +
                      "output_required": true,
         | 
| 1695 | 
            +
                      "type": "string",
         | 
| 1696 | 
            +
                      "value_allowed_null": true
         | 
| 1697 | 
            +
                    },
         | 
| 1698 | 
            +
                    {
         | 
| 1699 | 
            +
                      "disabled": false,
         | 
| 1700 | 
            +
                      "document": "告警通知回调key\n注意:此字段可能返回 null,表示取不到有效值。",
         | 
| 1701 | 
            +
                      "example": "xd23y5cb89bx23432",
         | 
| 1702 | 
            +
                      "member": "string",
         | 
| 1703 | 
            +
                      "name": "CallbackKey",
         | 
| 1704 | 
            +
                      "output_required": true,
         | 
| 1705 | 
            +
                      "type": "string",
         | 
| 1706 | 
            +
                      "value_allowed_null": true
         | 
| 1707 | 
            +
                    },
         | 
| 1708 | 
            +
                    {
         | 
| 1709 | 
            +
                      "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
         | 
| 1710 | 
            +
                      "member": "string",
         | 
| 1711 | 
            +
                      "name": "RequestId",
         | 
| 1712 | 
            +
                      "type": "string"
         | 
| 1713 | 
            +
                    }
         | 
| 1714 | 
            +
                  ],
         | 
| 1715 | 
            +
                  "type": "object"
         | 
| 1716 | 
            +
                },
         | 
| 1656 1717 | 
             
                "GetFlowPackagesRequest": {
         | 
| 1657 1718 | 
             
                  "document": "GetFlowPackages请求参数结构体",
         | 
| 1658 1719 | 
             
                  "members": [
         | 
| @@ -1736,6 +1797,127 @@ | |
| 1736 1797 | 
             
                  ],
         | 
| 1737 1798 | 
             
                  "type": "object"
         | 
| 1738 1799 | 
             
                },
         | 
| 1800 | 
            +
                "GetFlowStatisticByGroupRequest": {
         | 
| 1801 | 
            +
                  "document": "GetFlowStatisticByGroup请求参数结构体",
         | 
| 1802 | 
            +
                  "members": [
         | 
| 1803 | 
            +
                    {
         | 
| 1804 | 
            +
                      "disabled": false,
         | 
| 1805 | 
            +
                      "document": "分组ID",
         | 
| 1806 | 
            +
                      "example": "1a2b3c4d5e",
         | 
| 1807 | 
            +
                      "member": "string",
         | 
| 1808 | 
            +
                      "name": "GroupId",
         | 
| 1809 | 
            +
                      "required": true,
         | 
| 1810 | 
            +
                      "type": "string"
         | 
| 1811 | 
            +
                    },
         | 
| 1812 | 
            +
                    {
         | 
| 1813 | 
            +
                      "disabled": false,
         | 
| 1814 | 
            +
                      "document": "开始查找时间",
         | 
| 1815 | 
            +
                      "example": "1659514436",
         | 
| 1816 | 
            +
                      "member": "int64",
         | 
| 1817 | 
            +
                      "name": "BeginTime",
         | 
| 1818 | 
            +
                      "required": true,
         | 
| 1819 | 
            +
                      "type": "int"
         | 
| 1820 | 
            +
                    },
         | 
| 1821 | 
            +
                    {
         | 
| 1822 | 
            +
                      "disabled": false,
         | 
| 1823 | 
            +
                      "document": "截止时间",
         | 
| 1824 | 
            +
                      "example": "1659515436",
         | 
| 1825 | 
            +
                      "member": "int64",
         | 
| 1826 | 
            +
                      "name": "EndTime",
         | 
| 1827 | 
            +
                      "required": true,
         | 
| 1828 | 
            +
                      "type": "int"
         | 
| 1829 | 
            +
                    },
         | 
| 1830 | 
            +
                    {
         | 
| 1831 | 
            +
                      "disabled": false,
         | 
| 1832 | 
            +
                      "document": "流量种类(1:上行流量,2:下行流量, 3: 上下行总和)",
         | 
| 1833 | 
            +
                      "example": "1",
         | 
| 1834 | 
            +
                      "member": "int64",
         | 
| 1835 | 
            +
                      "name": "Type",
         | 
| 1836 | 
            +
                      "required": true,
         | 
| 1837 | 
            +
                      "type": "int"
         | 
| 1838 | 
            +
                    },
         | 
| 1839 | 
            +
                    {
         | 
| 1840 | 
            +
                      "disabled": false,
         | 
| 1841 | 
            +
                      "document": "时间粒度(1:按小时统计,2:按天统计)",
         | 
| 1842 | 
            +
                      "example": "1",
         | 
| 1843 | 
            +
                      "member": "int64",
         | 
| 1844 | 
            +
                      "name": "TimeGranularity",
         | 
| 1845 | 
            +
                      "required": true,
         | 
| 1846 | 
            +
                      "type": "int"
         | 
| 1847 | 
            +
                    },
         | 
| 1848 | 
            +
                    {
         | 
| 1849 | 
            +
                      "disabled": false,
         | 
| 1850 | 
            +
                      "document": "接入区域。取值范围:['MC','AP','EU','AM'] MC=中国大陆 AP=亚太 EU=欧洲 AM=美洲。不填代表全量区域。",
         | 
| 1851 | 
            +
                      "example": "MC",
         | 
| 1852 | 
            +
                      "member": "string",
         | 
| 1853 | 
            +
                      "name": "AccessRegion",
         | 
| 1854 | 
            +
                      "required": false,
         | 
| 1855 | 
            +
                      "type": "string"
         | 
| 1856 | 
            +
                    },
         | 
| 1857 | 
            +
                    {
         | 
| 1858 | 
            +
                      "disabled": false,
         | 
| 1859 | 
            +
                      "document": "网关类型。0:公有云网关;1:自有网关。不传默认为0。",
         | 
| 1860 | 
            +
                      "example": "0",
         | 
| 1861 | 
            +
                      "member": "int64",
         | 
| 1862 | 
            +
                      "name": "GatewayType",
         | 
| 1863 | 
            +
                      "required": false,
         | 
| 1864 | 
            +
                      "type": "int"
         | 
| 1865 | 
            +
                    }
         | 
| 1866 | 
            +
                  ],
         | 
| 1867 | 
            +
                  "type": "object"
         | 
| 1868 | 
            +
                },
         | 
| 1869 | 
            +
                "GetFlowStatisticByGroupResponse": {
         | 
| 1870 | 
            +
                  "document": "GetFlowStatisticByGroup返回参数结构体",
         | 
| 1871 | 
            +
                  "members": [
         | 
| 1872 | 
            +
                    {
         | 
| 1873 | 
            +
                      "disabled": false,
         | 
| 1874 | 
            +
                      "document": "流量详细信息",
         | 
| 1875 | 
            +
                      "example": "无",
         | 
| 1876 | 
            +
                      "member": "NetDetails",
         | 
| 1877 | 
            +
                      "name": "NetDetails",
         | 
| 1878 | 
            +
                      "output_required": true,
         | 
| 1879 | 
            +
                      "type": "list",
         | 
| 1880 | 
            +
                      "value_allowed_null": false
         | 
| 1881 | 
            +
                    },
         | 
| 1882 | 
            +
                    {
         | 
| 1883 | 
            +
                      "disabled": false,
         | 
| 1884 | 
            +
                      "document": "查找时间段流量使用最大值(单位:byte)",
         | 
| 1885 | 
            +
                      "example": "216516",
         | 
| 1886 | 
            +
                      "member": "float",
         | 
| 1887 | 
            +
                      "name": "MaxValue",
         | 
| 1888 | 
            +
                      "output_required": true,
         | 
| 1889 | 
            +
                      "type": "float",
         | 
| 1890 | 
            +
                      "value_allowed_null": false
         | 
| 1891 | 
            +
                    },
         | 
| 1892 | 
            +
                    {
         | 
| 1893 | 
            +
                      "disabled": false,
         | 
| 1894 | 
            +
                      "document": "查找时间段流量使用平均值(单位:byte)",
         | 
| 1895 | 
            +
                      "example": "25151",
         | 
| 1896 | 
            +
                      "member": "float",
         | 
| 1897 | 
            +
                      "name": "AvgValue",
         | 
| 1898 | 
            +
                      "output_required": true,
         | 
| 1899 | 
            +
                      "type": "float",
         | 
| 1900 | 
            +
                      "value_allowed_null": false
         | 
| 1901 | 
            +
                    },
         | 
| 1902 | 
            +
                    {
         | 
| 1903 | 
            +
                      "disabled": false,
         | 
| 1904 | 
            +
                      "document": "查找时间段流量使用总量(单位:byte)",
         | 
| 1905 | 
            +
                      "example": "35465464",
         | 
| 1906 | 
            +
                      "member": "float",
         | 
| 1907 | 
            +
                      "name": "TotalValue",
         | 
| 1908 | 
            +
                      "output_required": true,
         | 
| 1909 | 
            +
                      "type": "float",
         | 
| 1910 | 
            +
                      "value_allowed_null": false
         | 
| 1911 | 
            +
                    },
         | 
| 1912 | 
            +
                    {
         | 
| 1913 | 
            +
                      "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
         | 
| 1914 | 
            +
                      "member": "string",
         | 
| 1915 | 
            +
                      "name": "RequestId",
         | 
| 1916 | 
            +
                      "type": "string"
         | 
| 1917 | 
            +
                    }
         | 
| 1918 | 
            +
                  ],
         | 
| 1919 | 
            +
                  "type": "object"
         | 
| 1920 | 
            +
                },
         | 
| 1739 1921 | 
             
                "GetFlowStatisticRequest": {
         | 
| 1740 1922 | 
             
                  "document": "GetFlowStatistic请求参数结构体",
         | 
| 1741 1923 | 
             
                  "members": [
         | 
| @@ -88,6 +88,14 @@ | |
| 88 88 | 
             
                    "title": "获取设备基本信息列表"
         | 
| 89 89 | 
             
                  }
         | 
| 90 90 | 
             
                ],
         | 
| 91 | 
            +
                "GetFlowAlarmInfo": [
         | 
| 92 | 
            +
                  {
         | 
| 93 | 
            +
                    "document": "",
         | 
| 94 | 
            +
                    "input": "POST / HTTP/1.1\nHost: mna.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: GetFlowAlarmInfo\n<公共请求参数>\n\n{}",
         | 
| 95 | 
            +
                    "output": "{\n    \"Response\": {\n        \"AlarmValue\": 20,\n        \"NotifyUrl\": \"http://ip:port/callurl\",\n        \"CallbackKey\": \"xd23y5cb89bx23432\",\n        \"RequestId\": \"1206563f-f13f-4647-aaa8-37fa86954cc4-1\"\n    }\n}",
         | 
| 96 | 
            +
                    "title": "示例1"
         | 
| 97 | 
            +
                  }
         | 
| 98 | 
            +
                ],
         | 
| 91 99 | 
             
                "GetFlowPackages": [
         | 
| 92 100 | 
             
                  {
         | 
| 93 101 | 
             
                    "document": "",
         | 
| @@ -110,6 +118,14 @@ | |
| 110 118 | 
             
                    "title": "获取多个设备的流量使用信息之和"
         | 
| 111 119 | 
             
                  }
         | 
| 112 120 | 
             
                ],
         | 
| 121 | 
            +
                "GetFlowStatisticByGroup": [
         | 
| 122 | 
            +
                  {
         | 
| 123 | 
            +
                    "document": "",
         | 
| 124 | 
            +
                    "input": "POST / HTTP/1.1\nHost: mna.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: GetFlowStatisticByGroup\n<公共请求参数>\n\n{\n    \"GroupId\": \"cliGrp-xf8rboasbh\",\n    \"BeginTime\": 1711296000,\n    \"EndTime\": 1711987200,\n    \"Type\": 1,\n    \"TimeGranularity\": 2,\n    \"AccessRegion\": \"MC\",\n    \"GatewayType\": 0\n}",
         | 
| 125 | 
            +
                    "output": "{\n    \"Response\": {\n        \"AvgValue\": 154434162.5,\n        \"MaxValue\": 305576473,\n        \"NetDetails\": [\n            {\n                \"Current\": 305576473,\n                \"Time\": \"1711555200\"\n            },\n            {\n                \"Current\": 3291852,\n                \"Time\": \"1711641600\"\n            }\n        ],\n        \"RequestId\": \"e5b650a9-d994-439f-9132-3e5c56054903\",\n        \"TotalValue\": 308868325\n    }\n}",
         | 
| 126 | 
            +
                    "title": "根据分组获取用量统计信息"
         | 
| 127 | 
            +
                  }
         | 
| 128 | 
            +
                ],
         | 
| 113 129 | 
             
                "GetHardwareList": [
         | 
| 114 130 | 
             
                  {
         | 
| 115 131 | 
             
                    "document": "硬件信息列表",
         |