Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 98 additions & 25 deletions ucloud/services/usms/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ def add_usms_signature_qualification(

- **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list>`_
- **Attr** (int) - (Required) 资质属性,0-自用 1-他用
- **HandlerPhone** (str) - (Required) 经办人手机号
- **Name** (str) - (Required) 资质名称
- **Status** (int) - (Required) 状态:0-草稿,1-提交审核
- **CompanyCertificateFileId** (str) - 公司证件文件FileId
Expand All @@ -68,6 +69,7 @@ def add_usms_signature_qualification(
- **HandlerName** (str) - 经办人姓名
- **ManagerIDNumber** (str) - 法人身份证号码
- **ManagerName** (str) - 法人姓名
- **ManagerPhone** (str) - 法人手机号

**Response**

Expand Down Expand Up @@ -259,11 +261,6 @@ def get_usms_send_receipt(

**Response Model**

**ReceiptPerSession**
- **ReceiptSet** (list) - 见 **ReceiptPerPhone** 模型定义
- **SessionNo** (str) - 发送短信时返回的SessionNo


**ReceiptPerPhone**
- **CostCount** (int) - 消耗短信条数
- **Phone** (str) - 手机号码
Expand All @@ -274,6 +271,11 @@ def get_usms_send_receipt(
- **UserId** (str) - 自定义的业务标识ID,字符串


**ReceiptPerSession**
- **ReceiptSet** (list) - 见 **ReceiptPerPhone** 模型定义
- **SessionNo** (str) - 发送短信时返回的SessionNo


"""
# build request
d = {
Expand Down Expand Up @@ -313,6 +315,19 @@ def get_usms_send_statistics(

**Response Model**

**StatisticsData**
- **FailCostCount** (int) - 发送失败数(拆分条数)
- **FailCount** (int) - 发送失败数(提交条数)
- **SendCostCount** (int) - 发送总数(拆分条数)
- **SendCount** (int) - 发送总数(提交条数)
- **SubmitFailCostCount** (int) - 提交失败数(拆分条数)
- **SubmitFailCount** (int) - 提交失败数(提交条数)
- **SuccessCostCount** (int) - 发送成功数(拆分条数)
- **SuccessCount** (int) - 发送成功数(提交条数)
- **UnknownCostCount** (int) - 状态未知数(拆分条数)
- **UnknownCount** (int) - 状态未知数(提交条数)


**StatisticsDataInfo**
- **BrevityCode** (str) - 国际/地区标识码
- **CostCount** (int) - 发送总数(拆分条数)
Expand All @@ -330,19 +345,6 @@ def get_usms_send_statistics(
- **UserId** (str) - UserId


**StatisticsData**
- **FailCostCount** (int) - 发送失败数(拆分条数)
- **FailCount** (int) - 发送失败数(提交条数)
- **SendCostCount** (int) - 发送总数(拆分条数)
- **SendCount** (int) - 发送总数(提交条数)
- **SubmitFailCostCount** (int) - 提交失败数(拆分条数)
- **SubmitFailCount** (int) - 提交失败数(提交条数)
- **SuccessCostCount** (int) - 发送成功数(拆分条数)
- **SuccessCount** (int) - 发送成功数(提交条数)
- **UnknownCostCount** (int) - 状态未知数(拆分条数)
- **UnknownCount** (int) - 状态未知数(提交条数)


"""
# build request
d = {
Expand Down Expand Up @@ -406,6 +408,73 @@ def get_usms_signature_qualification(
resp = self.invoke("GetUSMSSignatureQualification", d, **kwargs)
return apis.GetUSMSSignatureQualificationResponseSchema().loads(resp)

def get_usms_template_send_statistics(
self, req: typing.Optional[dict] = None, **kwargs
) -> dict:
"""GetUSMSTemplateSendStatistics - 获取模板发送统计数据

**Request**

- **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list>`_
- **Domestic** (int) - (Required) 国内标记,0-国际短信 1-国内短信
- **EndDate** (str) - (Required) 结束日期,格式为YYYY-MM-DD
- **NumPerPage** (int) - (Required) 每页记录个数
- **OrderBy** (str) - (Required) 排序字段,如BrevityCode表示按照BrevityCode排列,配合OrderType使用。目前支持SendDate、BrevityCode
- **OrderType** (str) - (Required) 排序方式,asc-正序 desc-倒序
- **Page** (int) - (Required) 页编号,从0开始
- **StartDate** (str) - (Required) 开始日期,格式为YYYY-MM-DD
- **BrevityCode** (str) - 国际简码,如CN表示中国,当需要查询多个国家时,使用-分割,如CN-ID。
- **TemplateId** (str) - 短信模板ID

**Response**

- **Data** (list) - 见 **TemplateStatisticsDataInfo** 模型定义
- **Message** (str) - 描述信息
- **StatisticsData** (dict) - 见 **StatisticsData** 模型定义
- **Total** (int) - 返回记录数

**Response Model**

**TemplateStatisticsDataInfo**
- **BrevityCode** (str) - 国际/地区标识码
- **CostCount** (int) - 发送总数(拆分条数)
- **Count** (int) - 发送总数(提交条数)
- **FailedCostCount** (int) - 发送失败数(拆分条数)
- **FailedCount** (int) - 发送失败数(提交条数)
- **SendDate** (str) - 发送时间
- **SubmitFailedCostCount** (int) - 提交失败数(拆分条数)
- **SubmitFailedCount** (int) - 提交失败数(提交条数)
- **SuccessCostCount** (int) - 发送成功数(拆分条数)
- **SuccessCount** (int) - 发送成功数(提交条数)
- **TemplateId** (str) - 短信模板ID
- **UnknownCostCount** (int) - 状态未知数(拆分条数)
- **UnknownCount** (int) - 状态未知数(提交条数)


**StatisticsData**
- **FailCostCount** (int) - 发送失败数(拆分条数)
- **FailCount** (int) - 发送失败数(提交条数)
- **SendCostCount** (int) - 发送总数(拆分条数)
- **SendCount** (int) - 发送总数(提交条数)
- **SubmitFailCostCount** (int) - 提交失败数(拆分条数)
- **SubmitFailCount** (int) - 提交失败数(提交条数)
- **SuccessCostCount** (int) - 发送成功数(拆分条数)
- **SuccessCount** (int) - 发送成功数(提交条数)
- **UnknownCostCount** (int) - 状态未知数(拆分条数)
- **UnknownCount** (int) - 状态未知数(提交条数)


"""
# build request
d = {
"ProjectId": self.config.project_id,
}
req and d.update(req)
d = apis.GetUSMSTemplateSendStatisticsRequestSchema().dumps(d)

resp = self.invoke("GetUSMSTemplateSendStatistics", d, **kwargs)
return apis.GetUSMSTemplateSendStatisticsResponseSchema().loads(resp)

def query_usms_signature(
self, req: typing.Optional[dict] = None, **kwargs
) -> dict:
Expand Down Expand Up @@ -473,8 +542,10 @@ def query_usms_signature_qualification(
- **HandlerIDCardFrontImage** (str) - 经办人身份证人像面图片链接
- **HandlerIDNumber** (str) - 经办人证件号码
- **HandlerName** (str) - 经办人姓名
- **HandlerPhone** (str) - 经办人手机号
- **ManagerIDNumber** (str) - 负责人证件号码
- **ManagerName** (str) - 负责人姓名
- **ManagerPhone** (str) - 负责人手机号
- **ModifyTime** (int) - 修改时间戳
- **Name** (str) - 资质名称
- **PowerOfAttorney** (str) - 授权委托书文件链接
Expand Down Expand Up @@ -557,13 +628,6 @@ def send_batch_usms_message(

**Response Model**

**BatchInfo**
- **FailureDetails** (str) - 未能成功发送的详情。注:模板/签名检验失败时,该字段有效
- **SigContent** (str) - 签名
- **Target** (list) - 见 **FailPhoneDetail** 模型定义
- **TemplateId** (str) - 模板ID


**FailPhoneDetail**
- **ExtendCode** (str) - 扩展号码
- **FailureDetails** (str) - 发送失败原因。注:若模板/签名校验失败,该字段为空
Expand All @@ -572,6 +636,13 @@ def send_batch_usms_message(
- **UserId** (str) - 用户自定义ID


**BatchInfo**
- **FailureDetails** (str) - 未能成功发送的详情。注:模板/签名检验失败时,该字段有效
- **SigContent** (str) - 签名
- **Target** (list) - 见 **FailPhoneDetail** 模型定义
- **TemplateId** (str) - 模板ID


"""
# build request
d = {
Expand Down Expand Up @@ -678,8 +749,10 @@ def update_usms_signature_qualification(
- **HandlerIDCardFrontImageFileId** (str) - 经办人身份证人像面图片FileId
- **HandlerIDNumber** (str) - 经办人身份证号码
- **HandlerName** (str) - 经办人姓名
- **HandlerPhone** (str) - 经办人手机号
- **ManagerIDNumber** (str) - 法人身份证号码
- **ManagerName** (str) - 法人姓名
- **ManagerPhone** (str) - 法人手机号
- **Name** (str) - 资质名称

**Response**
Expand Down
43 changes: 43 additions & 0 deletions ucloud/services/usms/schemas/apis.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,12 @@ class AddUSMSSignatureQualificationRequestSchema(schema.RequestSchema):
required=False, dump_to="HandlerIDNumber"
),
"HandlerName": fields.Str(required=False, dump_to="HandlerName"),
"HandlerPhone": fields.Str(required=True, dump_to="HandlerPhone"),
"ManagerIDNumber": fields.Str(
required=False, dump_to="ManagerIDNumber"
),
"ManagerName": fields.Str(required=False, dump_to="ManagerName"),
"ManagerPhone": fields.Str(required=False, dump_to="ManagerPhone"),
"Name": fields.Str(required=True, dump_to="Name"),
"ProjectId": fields.Str(required=True, dump_to="ProjectId"),
"Status": fields.Int(required=True, dump_to="Status"),
Expand Down Expand Up @@ -353,6 +355,45 @@ class GetUSMSSignatureQualificationResponseSchema(schema.ResponseSchema):
}


"""
API: GetUSMSTemplateSendStatistics

获取模板发送统计数据
"""


class GetUSMSTemplateSendStatisticsRequestSchema(schema.RequestSchema):
"""GetUSMSTemplateSendStatistics - 获取模板发送统计数据"""

fields = {
"BrevityCode": fields.Str(required=False, dump_to="BrevityCode"),
"Domestic": fields.Int(required=True, dump_to="Domestic"),
"EndDate": fields.Str(required=True, dump_to="EndDate"),
"NumPerPage": fields.Int(required=True, dump_to="NumPerPage"),
"OrderBy": fields.Str(required=True, dump_to="OrderBy"),
"OrderType": fields.Str(required=True, dump_to="OrderType"),
"Page": fields.Int(required=True, dump_to="Page"),
"ProjectId": fields.Str(required=True, dump_to="ProjectId"),
"StartDate": fields.Str(required=True, dump_to="StartDate"),
"TemplateId": fields.Str(required=False, dump_to="TemplateId"),
}


class GetUSMSTemplateSendStatisticsResponseSchema(schema.ResponseSchema):
"""GetUSMSTemplateSendStatistics - 获取模板发送统计数据"""

fields = {
"Data": fields.List(
models.TemplateStatisticsDataInfoSchema(),
required=False,
load_from="Data",
),
"Message": fields.Str(required=True, load_from="Message"),
"StatisticsData": models.StatisticsDataSchema(),
"Total": fields.Int(required=True, load_from="Total"),
}


"""
API: QueryUSMSSignature

Expand Down Expand Up @@ -566,10 +607,12 @@ class UpdateUSMSSignatureQualificationRequestSchema(schema.RequestSchema):
required=False, dump_to="HandlerIDNumber"
),
"HandlerName": fields.Str(required=False, dump_to="HandlerName"),
"HandlerPhone": fields.Str(required=False, dump_to="HandlerPhone"),
"ManagerIDNumber": fields.Str(
required=False, dump_to="ManagerIDNumber"
),
"ManagerName": fields.Str(required=False, dump_to="ManagerName"),
"ManagerPhone": fields.Str(required=False, dump_to="ManagerPhone"),
"Name": fields.Str(required=False, dump_to="Name"),
"ProjectId": fields.Str(required=True, dump_to="ProjectId"),
"QualificationId": fields.Str(required=True, dump_to="QualificationId"),
Expand Down
34 changes: 33 additions & 1 deletion ucloud/services/usms/schemas/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,36 @@ class OutSignatureQualificationSchema(schema.ResponseSchema):
}


class TemplateStatisticsDataInfoSchema(schema.ResponseSchema):
"""TemplateStatisticsDataInfo - 模版统计信息按天聚合"""

fields = {
"BrevityCode": fields.Str(required=True, load_from="BrevityCode"),
"CostCount": fields.Int(required=True, load_from="CostCount"),
"Count": fields.Int(required=True, load_from="Count"),
"FailedCostCount": fields.Int(
required=True, load_from="FailedCostCount"
),
"FailedCount": fields.Int(required=True, load_from="FailedCount"),
"SendDate": fields.Str(required=True, load_from="SendDate"),
"SubmitFailedCostCount": fields.Int(
required=True, load_from="SubmitFailedCostCount"
),
"SubmitFailedCount": fields.Int(
required=True, load_from="SubmitFailedCount"
),
"SuccessCostCount": fields.Int(
required=True, load_from="SuccessCostCount"
),
"SuccessCount": fields.Int(required=True, load_from="SuccessCount"),
"TemplateId": fields.Str(required=True, load_from="TemplateId"),
"UnknownCostCount": fields.Int(
required=True, load_from="UnknownCostCount"
),
"UnknownCount": fields.Int(required=True, load_from="UnknownCount"),
}


class OutSignatureSchema(schema.ResponseSchema):
"""OutSignature - 短信签名"""

Expand All @@ -119,7 +149,7 @@ class OutSignatureSchema(schema.ResponseSchema):


class OutSignatureQualificationDetailSchema(schema.ResponseSchema):
"""OutSignatureQualificationDetail -"""
"""OutSignatureQualificationDetail - 签名资质详情"""

fields = {
"Attr": fields.Int(required=False, load_from="Attr"),
Expand Down Expand Up @@ -149,10 +179,12 @@ class OutSignatureQualificationDetailSchema(schema.ResponseSchema):
required=False, load_from="HandlerIDNumber"
),
"HandlerName": fields.Str(required=False, load_from="HandlerName"),
"HandlerPhone": fields.Str(required=False, load_from="HandlerPhone"),
"ManagerIDNumber": fields.Str(
required=False, load_from="ManagerIDNumber"
),
"ManagerName": fields.Str(required=False, load_from="ManagerName"),
"ManagerPhone": fields.Str(required=False, load_from="ManagerPhone"),
"ModifyTime": fields.Int(required=False, load_from="ModifyTime"),
"Name": fields.Str(required=False, load_from="Name"),
"PowerOfAttorney": fields.Str(
Expand Down
2 changes: 1 addition & 1 deletion ucloud/version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
version = "0.11.147"
version = "0.11.148"
Loading