华为云用户手册

  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 [数组元素] Array of strings OK 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。
  • 响应示例 状态码: 200 OK [ "test" ] 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • 请求示例 POST https://{endpoint} /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}/tables/{table_name}/partitions/column-statistics/batch-get { "aggregate_statics" : false, "column_names" : [ "column1", "column2" ], "partition_values_list" : [ [ "value1", "value2" ] ] }
  • 响应示例 状态码: 200 OK { "found_partition_number" : 1, "column_statistics" : { "part1=value1/part2=value2" : [ { "column_name" : "columnName", "column_type" : "bigint", "data_type" : "longStats", "long_statistics_data" : { "minimum_value" : 10, "maximum_value" : 1000, "number_of_null" : 30, "number_of_distinct_value" : 20 } } ] } } 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • URI POST /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}/tables/{table_name}/partitions/column-statistics/batch-get 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号。获取方法,请参见获取项目ID。 instance_id 是 String LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。 catalog_name 是 String catalog名称。只能包含字母、数字和下划线,且长度为1~256个字符。 database_name 是 String 数据库名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~128个字符。 table_name 是 String 表名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~256个字符。
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,定位辅助信息。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。
  • 响应示例 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • URI DELETE /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}/tables/{table_name}/column-statistics 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号。获取方法,请参见获取项目ID。 instance_id 是 String LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。 catalog_name 是 String catalog名称。只能包含字母、数字和下划线,且长度为1~256个字符。 database_name 是 String 数据库名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~128个字符。 table_name 是 String 表名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~256个字符。 表2 Query参数 参数 是否必选 参数类型 描述 column_name 否 String 被删除的列名,不填写则删除表所有统计信息。
  • 响应示例 状态码: 200 OK [ "test" ] 状态码: 400 Bad Request { "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" } 状态码: 401 Unauthorized { "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' } 状态码: 403 Forbidden { "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" } 状态码: 404 Not Found { "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" } 状态码: 408 Request Timeout { "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" } 状态码: 500 Internal Server Error { "error_code" : "common.00000500", "error_msg" : "internal error" }
  • URI GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}/functions/names 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号。获取方法,请参见获取项目ID。 instance_id 是 String LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。 catalog_name 是 String catalog名称。只能包含字母、数字和下划线,且长度为1~256个字符。 database_name 是 String 数据库名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~128个字符。 表2 Query参数 参数 是否必选 参数类型 描述 function_pattern 否 String 函数名称通配符。只能包含字母、数字和_|*.特殊字符,且最大长度为256个字符。
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,定位辅助信息。 表5 响应Body参数 参数 参数类型 描述 [数组元素] Array of strings OK 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 solution_msg String 解决方案描述。
  • 低时延直播场景 毫秒级超低延时播放:采用 UDP 协议实现高并发场景下节点间毫秒级延迟直播能力,完善标准直播中3秒-5秒延迟的弊端,同时兼顾秒开、卡顿率等核心指标,给用户带来超低延时直播体验。 功能完善,平滑兼容:兼容了标准直播包括推流、转码、录制、截图、鉴黄、播放等全功能,支持客户能够从现有的标准直播业务平滑迁移。 简单易用,安全可靠:采用标准协议,对接简单,在Chrome和Safari浏览器中无需任何插件即可进行播放。播放协议默认加密,更加安全可靠。
  • 回调示例 录制文件生成事件回调示例如下。回调消息体字段如表2所示。 { "project_id": "70b76xxxxxx34253880af501cdxxxxxx", "job_id": "dc0a1773-0cef-xxxx-xxxx-9a38fdb095d2", "task_id": "51126d0ebe94b1da00d2e21a10xxxxxx", "event_type": "RECORD_FILE_COMPLETE", "publish_domain": "push.example.com", "app": "live", "stream": "mystream", "record_format": "HLS", "download_url": "https://obs.cn-north-4.myhuaweicloud.com/live/record-xxxx-mystream-1589967495/record-push.example.com-live-mystream-1589967495.m3u8", "asset_id": "1a0d8e9bfaexxxxxxbe5021e62aa1e96", "file_size": 3957964, "record_duration": 120, "start_time": "2020-03-08T14:10:25Z", "end_time": "2020-03-08T14:12:25Z", "width": 1280, "height": 720, "obs_location": "https://obs.cn-north-4.myhuaweicloud.com", "obs_bucket": "mybucket", "obs_object": "live/record-xxxx-mystream-1589967495/record-hwpublish.myun.tv-live-mystream-1589967495.m3u8", "auth_sign": "4f97f46759axxxxxx7ad21e9935dc175", "auth_timestamp": 1583676745 }
  • 回调示例 直播推流和断流生成事件通知示例如下。通知消息体字段如表1所示。 { "domain":"push.example.com", "app":"live", "stream":"example_stream", "user_args":"auth_info=yz1TG0PVN/5isfyrGrRj10gKPCWqSS2X02t6QsRrocH+mEq0gQ0g8k6KhalS84sQ+kDprFyqI0yajbYiFmUO8e45B7ryaS+MpJBlYkhwnuFLnRiKK/IXG7.33436b625354564f6e4d4d434f55&cdn=hw", "client_ip":"100.111.*.*", "node_ip":"112.11.*.*", "publish_timestamp":"1587954134", "event":"PUBLISH", "auth_timestamp":1587954140, "auth_sign":"ff3b2bxxx5cfd56e76d72bed4c4aa2dxxxca8c2e46467d205a6417d4fc" }
  • 前提条件 成功登录华为乾坤控制台。 MSP帐号下存在工作组,且该工作组已绑定租户代维资源。 该租户下已上线以下款型设备: USG63xxE-C:USG6301E-C/6302E-C/6303E-C USG65xxE-C:USG6501E-C/USG6502E-C/USG6503E-C 防火墙USG61xxE:USG6106E 防火墙USG63xxE:USG6305E/USG6306E/USG6308E/USG6309E/USG6312E/USG6315E/USG6322E/USG6325E/USG6332E/USG6335E/USG6350E/USG6355E/USG6365E/USG6385E/USG6395E 防火墙USG6303E:USG6303E 防火墙USG65xxE:USG6515E/USG6525E/USG6530E/USG6550E/USG6555E/USG6560E/USG6565E/USG6575E-B/USG6580E/USG6585E 防火墙USG65xxE-K:USG6520E-K/USG6560E-K/USG6590E-K 防火墙USG63xxE-B:USG6308E-B/USG6318E-B/USG6338E-B/USG6358E-B/USG6378E-B/USG6388E-B/USG6398E-B 防火墙USG6xxxE-Exx:USG6000E-E03/USG6000E-E07 防火墙USG66xxE:USG6605E-B 防火墙USG66xxE:USG6610E/USG6620E/USG6630E/USG6650E/USG6680E/USG6605E-B/USG6620E-K/USG6640E-K 防火墙USG67xxE:USG6712E/USG6716E
  • 为什么调用API时提示“APIG.0301” 如果在调用API时返回错误信息与错误码: "error_msg":"Incorrect IAM authentication information: decrypt token fail","error_code":"APIG.0301",是因为token解密失败,解决方案:(1)请检查token是否过期;(2)获取token的方法,请求体信息是否填写正确,token是否正确完整;(3)获取token的环境与调用的环境是否一致是否跨区;(4)检查账号权限,是否欠费,被冻结等。 "error_msg":"Incorrect IAM authentication information: verify aksk signature fail","error_code":"APIG.0301",是因为AK/SK认证失败,解决方案:(1)请检查AK/SK是否正确,AK对应的SK错误,不匹配;AK/SK中多填了空格;(2)AK/SK频繁出现鉴权出错,连续错误5次以上,被锁定5分钟(5分钟内,则一直认为其是异常的鉴权请求),5分钟后解锁重新认证;(3)检查账号权限,是否欠费,被冻结等账号。 父主题: 错误码类
  • 子账户导出数据受obs权限影响时怎么处理 如果您所使用的子账户(IAM用户)因OBS的权限导致无法导出问答日志,请联系主账户调整OBS权限,详细的OBS权限介绍请参见OBS权限管理。 添加OBS权限方法: 管理员在控制台右上角用户名的下拉框中单击“ 统一身份认证 ”。 在“用户”页面,在子账户操作列单击“授权”。 图1 授权 在“选择授权方式”中勾选“继承所选用户组的策略”,在“用户组名称”列勾选目标用户组,单击“确定”。 目标用户组需要具备OBS OperateAccess权限。如果不存在用户组,请参考创建用户组并授权创建具备OBS OperateAccess权限的用户组。 图2 选择授权方式 授权成功后,在“用户”页面,单击用户名,进入用户详情页,确认子账户的目标用户组添加成功。 图3 所属用户组 父主题: 智能问答机器人
  • ModelArts和Hilens的模型转换有什么区别吗? ModelArts提供的模型转换功能支持以下场景: 使用Caffe(.caffemodel格式)或者Tensorflow框架(“frozen_graph”或“saved_model”格式)训练的模型,使用转换功能可转换成“.om格式”,转换后的模型可在昇腾(Ascend)芯片上部署运行。 使用Tensorflow框架(“frozen_graph”或“saved_model”格式)训练的模型,使用转换功能可转换成om格式,转换后的模型可在昇腾(Ascend)芯片上部署运行。 Hilens在导入模型过程中支持以下场景模型自动转换: 使用Caffe(.caffemodel格式)或者Tensorflow框架(“frozen_graph”或“saved_model”格式)训练的模型,使用转换功能可转换成“.om格式”,转换后的模型可在昇腾(Ascend)芯片上部署运行。 使用ModelArts模型转换的转换模板“TF-FrozenGraph-To-Ascend-HiLens”和“TF-SavedModel-To-Ascend-HiLens”生成的“.om格式”模板可以在Hliens Kit运行。 父主题: 压缩和转换模型
  • 示例 character存储类型转换。对一个目标列定义为character(20)的语句,下面的语句显示存储值的长度正确: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CREATE TABLE x1 ( customer_sk integer, customer_id char(20), first_name char(6), last_name char(8) ) with (orientation = column,compression=middle) distribute by hash (last_name); INSERT INTO x1(customer_sk, customer_id, first_name) VALUES (3769, 'abcdef', 'Grace'); SELECT customer_id, octet_length(customer_id) FROM x1; customer_id | octet_length ----------------------+-------------- abcdef | 20 (1 row) 两个unknown文本缺省解析成text,这样就允许||操作符解析成text连接。然后操作符的text结果转换成bpchar("空白填充的字符型", character类型内部名称)以匹配目标字段类型。不过,从text到bpchar的转换是二进制兼容的,这样的转换是隐含的并且实际上不做任何函数调用。最后,在系统表里找到长度转换函数bpchar(bpchar, integer, boolean) 并且应用于该操作符的结果和存储的字段长。这个类型相关的函数执行所需的长度检查和额外的空白填充。
  • 值存储数据类型解析 查找与目标字段准确的匹配。 试着将表达式直接转换成目标类型。如果已知这两种类型之间存在一个已登记的转换函数,那么直接调用该转换函数即可。如果表达式是一个未知类型文本,该文本字符串的内容将交给目标类型的输入转换过程。 检查一下看目标类型是否有长度转换。长度转换是一个从某类型到自身的转换。如果在pg_cast表里面找到一个,那么在存储到目标字段之前先在表达式上应用。这样的转换函数总是接受一个额外的类型为integer的参数,它接收目标字段的atttypmod值(实际上是其声明长度,atttypmod的解释随不同的数据类型而不同),并且它可能接受一个boolean类型的第三个参数,表示转换是显式的还是隐式的。转换函数负责施加那些长度相关的语义,比如长度检查或者截断。
  • 原因分析 用例状态在用例库和测试计划中是相互独立的,相互不受影响。 测试用例的结果和状态,在用例库中和测试计划中的同步规则是:用例库记录测试用例的最新结果,该结果可能是在由用例库中执行产生的,也可能是在测试计划下执行产生的。 如果用例库中的测试用例被添加到测试计划中,那么: 在测试计划中执行测试用例,执行的结果会同步到用例库中。 在用例库中执行测试用例,执行的结果不会同步到测试计划。 在测试计划中更新测试用例的状态,状态不会同步到用例库中。 在用例库中更新测试用例的状态,状态不会同步到测试计划。
  • 标签设计的原则 企业上云后,云上创建的资源不断增加,有些大型企业资源数量达到十万、百万级别,一个账号内存在大量资源,企业需要进行分类管理。单纯通过人工进行资源的分类,效率低下,操作困难,此时需要借助云上的自动化平台化能力来解决。 华为云推荐您使用标签对资源进行标记,进而实现资源的分组分类。通过标签对资源的业务归属、财务归属等资源属性进行标记,例如:按所属部门、地域或项目等。 命名标准化 命名标准化原则是指标签采用标准化命名原则,使后续基于标签的自动化能力,帮助平台能力高效的实施。 例如: 标签命名使用英文时,建议使用统一大小写的英文字母,避免大小写混杂。 标签命名使用中文时,建议尽量简洁,且键/值长度均不超过6个字符(中文字符在数据库中占位较长,避免超过上限)。 语义一致简洁 同一类资源的分类建议使用同一个标签来标识。例如:如已使用标签键purpose来标识资源的用途分类,则避免再使用use、用途等相同语义的标签。 标签键值含义明确清晰,避免使用一个标签键值代表两类含义。 事先制定标签规范 规划创建资源时,需要同步规划标签,并优先规划标签键。规划标签时,需先将对应的标签键/标签值预先定义完成。分类所有资源对象时都必须绑定已规划的标签键及其对应的标签值。 避免包含企业隐私信息 标签的键/值信息尽量不要使用涉及企业或个人的隐私信息,例如企业保密项目的名称、项目的收入数据、个人的电话号码和邮件地址等。
  • 标签键设计示例 下表列举了常见业务维度的标签命名示例。涉及英文标签命名时,建议统一使用小写英文字母。 业务维度 标签键(key) 标签值(value) 组织架构 headquarters subcompany department team group 相关名称 业务架构 product module service microservice 相关名称 角色架构 role user 网络管理员 审计管理员 运维管理员 研发人员 测试人员 用途类标签 purpose 用途值 项目环境类标签 project task environment 项目相关值 成本分账 costcenter businessunit 部门相关值 订单 order 订单ID
  • 场景介绍 本手册基于华为云标签管理服务实践所编写,通过一个企业应用示例指导您在拥有大量云资源时,如何使用标签管理服务对云资源进行快速分类及查询。 某公司购买了一批华为云资源,包括弹性云服务器(E CS )、云硬盘(EVS)等,现有如下需求: 将所拥有的资源按业务部门及资源规格等类型进行划分。 需要可以快速定位到使用频率较高的华北-北京四区域、运维部下的规格类型为通用型的弹性云服务器。 有一批云服务器计划迁移至华为云,需要在迁移完成后快速准确地为其添加标签加以区分。 虽然各服务控制台支持标签功能,可以为各服务控制台下对应的资源添加标签,但需要切换区域切换服务控制台来进行操作,这样不仅效率低下,还不能完全满足以上需求。 标签管理服务提供跨服务跨区域的标签搜索功能,并支持可视化的标签编辑操作和标签批量管理,具有全局性、可组合搜索、高效管理的特点,解决了以上多资源面临的管理难问题。 父主题: 通过标签实现资源快速分类及查询
  • Token认证 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 调用CBS服务提供的API前,需要先 获取Token ,获取Token方式如下所示。 加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码。 一般,username和domainname保持一致。如果您是IAM用户,请登录“我的凭证”页面,获取IAM用户名、账号名,填写至username、domainname参数处。 CBS服务开通区域为华北-北京四时,对应的projectname为cn-north-4。projectname请依据实际开通区域进行填写,当前服务支持区域请参见终端节点。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "cn-north-4" } } } }
  • 请求示例 获取指定时间范围内的问题答复统计 GET https://cbs-ext.cn-north-4.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/requests/reply-rates?interval=day&time_zone=%2B08%3A00 Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/reply-rates?start_time={start_time}&end_time={end_time}&interval={interval}&time_zone={time_zone}" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} response = requests.get(url, headers=headers, json=body, verify=False) print(response.text) Java语言请求代码示例 import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class CBSDemo { public void cbsDemo() { try { //endpoint、projectId、qabot_id等需要替换成实际信息。 URL url = new URL("https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/reply-rates?start_time={start_time}&end_time={end_time}&interval={interval}&time_zone={time_zone}"); String token = "用户获取得到的实际token值"; HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setDoInput(true); connection.setDoOutput(false); connection.addRequestProperty("Content-Type", "application/json"); connection.addRequestProperty("X-Auth-Token", token); InputStream is = connection.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8")); while (br.ready()) { System.out.println(br.readLine()); } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { CBSDemo CBSDemo = new CBSDemo(); CBSDemo.cbsDemo(); } }
  • 响应示例 状态码:200 成功响应示例 { "interval":"day", "startutc":1613059200000, "endutc":1613720547615, "time_zone":"+08:00", "total": { "question_count":179, "direct_count":86, "recommend_count":4, "notmatch_count":85, "chat_count":0, "invalid_count":2, "dialog_count":2, "direct_rate":0.480, "recommend_rate":0.022, "notmatch_rate":0.475, "dialog_rate":0.011, "chat_rate":0.000, "invalid_rate":0.011 }, "intervals":[ { "start":"2021-02-14", "question_count":28, "direct_count":7, "recommend_count":0, "notmatch_count":21, "chat_count":0, "invalid_count":0, "dialog_count":0, "direct_rate":0.250, "recommend_rate":0.000, "notmatch_rate":0.750, "dialog_rate":0.000, "chat_rate":0.000, "invalid_rate":0.000 }, { "start":"2021-02-15", "question_count":2, "direct_count":0, "recommend_count":0, "notmatch_count":2, "chat_count":0, "invalid_count":0, "dialog_count":0, "direct_rate":0.000, "recommend_rate":0.000, "notmatch_rate":1.000, "dialog_rate":0.000, "chat_rate":0.000, "invalid_rate":0.000 }, { "start":"2021-02-19", "question_count":149, "direct_count":79, "recommend_count":4, "notmatch_count":62, "chat_count":0, "invalid_count":2, "dialog_count":2, "direct_rate":0.530, "recommend_rate":0.027, "notmatch_rate":0.416, "dialog_rate":0.013, "chat_rate":0.000, "invalid_rate":0.013 } ] } 状态码:400 失败响应示例 { "error_code":"CBS.0021", "error_msg":"request parameter error" }
  • URI GET https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/reply-rates?start_time={start_time}&end_time={end_time}&interval={interval}&time_zone={time_zone}&domain={domian} 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String qabot编号,UUID格式,如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 获取方法: 登录 对话机器人服务 控制台,在智能 问答机器人 列表中查看qabot_id。 表2 Query参数 参数 是否必选 参数类型 描述 domain 否 String 问题类别。 end_time 否 String 查询的结束时间,long,UTC时间,采用毫秒时间戳,默认值为当前时间的毫秒数。 interval 否 String 统计周期目前支持year,month,week,day。 start_time 否 String 查询的起始时间,long,UTC时间,采用毫秒时间戳,默认值为0。 time_zone 否 String 请求所在时区,例如:中国东八区为"+08:00";美国西五区为"-05:00";默认为"UTC"。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 startutc Long 统计开始时间。调用失败时无此字段。 endutc Long 统计结束时间。调用失败时无此字段。 interval String 统计周期目前支持year、month、week、day。调用失败时无此字段。 time_zone String 所在时区,例如:中国东八区为"+08:00";美国西五区为"-05:00";默认为"UTC"。调用失败时无此字段。 total ReplyRatesTotal object 总计答复率统计数据。调用失败时无此字段。 intervals Array of ReplyRatesIntervals object 按时间间隔答复率统计数据。调用失败时无此字段。 表5 ReplyRatesTotal 参数 参数类型 描述 question_count Long 用户提问总数。 direct_count Long 直接回答个数。 recommend_count Long 推荐回答个数。 notmatch_count Long 未匹配个数。 direct_rate Double 直接回答比率,保留小数点后三位。 recommend_rate Double 推荐回答比率,保留小数点后三位。 notmatch_rate Double 未匹配比率,保留小数点后三位。 dialog_count Long 多轮对话次数。 dialog_rate Double 多轮对话比例。 invalid_count Long 无效问题次数。 invalid_rate Double 无效问题比例。 chat_count Long 闲聊匹配次数。 chat_rate Double 闲聊比例。 表6 ReplyRatesIntervals 名称 参数类型 说明 start String 间隔周期开始时间。 question_count Long 间隔周期用户提问总数。 direct_count Long 间隔周期直接回答个数。 recommend_count Long 间隔周期推荐回答个数。 notmatch_count Long 间隔周期未匹配个数。 invalid_count Long 间隔周期无效问题个数。 chat_count Long 间隔周期闲聊匹配个数。 direct_rate Double 间隔周期直接回答比率,保留小数点后三位。 recommend_rate Double 间隔周期推荐回答比率,保留小数点后三位。 notmatch_rate Double 间隔周期未匹配比率,保留小数点后三位。 chat_rate Double 间隔周期闲聊匹配比率,保留小数点后三位。 invalid_rate Double 间隔周期无效问题比率,保留小数点后三位。 dialog_count Long 多轮会话次数。 dialog_rate Double 多轮会话比例。 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • 请求示例 获取热点问题列表 GET https://cbs-ext.cn-north-4.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/qa-pairs/hots Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/qa-pairs/hots?start_time={start_time}&end_time={end_time}&top={top}&domain={domain}" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} response = requests.get(url, headers=headers, json=body, verify=False) print(response.text) Java语言请求代码示例 import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class CBSDemo { public void cbsDemo() { try { //endpoint、projectId、qabot_id等需要替换成实际信息。 URL url = new URL("https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/qa-pairs/hots?start_time={start_time}&end_time={end_time}&top={top}&domain_id={domain_id}"); String token = "用户获取得到的实际token值"; HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setDoInput(true); connection.setDoOutput(false); connection.addRequestProperty("Content-Type", "application/json"); connection.addRequestProperty("X-Auth-Token", token); InputStream is = connection.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8")); while (br.ready()) { System.out.println(br.readLine()); } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { CBSDemo CBSDemo = new CBSDemo(); CBSDemo.cbsDemo(); } }
共100000条