奥升充电|互联互通协议解析(4)——常见问题

一、名词解释

1.1 运营商ID(组织机构代码)

运营商ID是9位组织机构代码,是三证合一后18位的统一社会信用代码的第9~17位。

1.2 密钥

联调需要用到四个密钥,分别是:

  • 运营商密钥(OperatorSecret);
  • 消息密钥(DataSecret);
  • 消息密钥初始化向量(DataSecretIV);
  • 签名密钥(SigSecret)。

1.3 推送地址

        Token接口、数据推送及业务交换的服务器地址(建议使用HTTPS)

1.4 错误码

        涉及充电业务时,会有错误原因对应的错误代码,如启动失败原因。

1.5 桩编码

        一个或多个接口(枪)对应一个桩,编号以接口为维度。

二、常见联调问题

2.1 Token问题

  • 请求token接口是所有商户都需要对接的第一个接口,Token作为全局唯一凭证,调用各接口和H5页面时均需要使用。作为双方获取身份认证的接口,双方均需要实现;
  • Token有效时间一般为2小时,可以设置<2小时的缓存机制,或者在token错误时重新再获取;
  • Token有效期内若调接口重新获取了新的token,原来未过期的token也应该是有效的,直至过期失效;
  • 入参说明:data里面的运营商ID, 谁请求填谁的

2.2 签名问题

  • 签名必须大写
  • 用加密后的data值拼接
  • 生成机制:OperatorID、Data、TimeStamp、Seq四部分的值按顺序拼接,结合签名密钥生成。详细说明见中电联第四部分。

2.3 Ret值报错问题

(1)4001-签名错误
a. 将加密密钥误当成签名密钥。
b. 加密算法不一致或者错误。
(2)4002-token错误
a. 双方密钥配置不统一。
b. token接口不通导致token获取不到。
c. data加密前请求入参的商户密钥填写错误。
d. 运营商ID填错,谁请求填谁的。
e. 若Token有效期内重新获取了新的token,那么原来未过期的token也应该是有效的,直至过期失效。
(3)4003-POST参数不合法
a. 缺少必须的示例OperatorID,sig,TimeStamp,Data,Seq五个参数。
(4)4004-请求的业务参数不合法
a. 缺少各接口定义的必要参数
b. Data加密前的参数不合法,例如调启动充电接口时订单号不能超过27位。
(5)500-系统错误
a. 环境问题
(6)Ret只能整形

2.4 格式问题

  • 入参和返回值,都要加密后放入data中,详细说明请参照中电联标准第四部分AES128位加密和MD5签名。
  • 消息体中必须包括OperatorID、Data、TimeStamp、Seq、Sig,缺一不可。
  • 各个接口的入参和出参见中电联标准文档。《标准》中的所有Data段原文仅为实例,实际上传输时都是密文。
  • 先加密后签名,先验证签名后解密,

2.5 加密方式

  • 数据传输的加密使用对称加密算法AES 128位加密,加密模式采用CBC,填充模式采用PKCS5Padding方式。

  • 签名算法使用HMAC-MD5。详见中电联标准第四部分。

三、接口常见问题

1) 请求token接口
a. 联调第一步,平台之间认证Token的申请,Token作为全局唯一凭证,调用各接口和H5页面时均需要使用。
b. 该接口作为双方获取身份认证的接口,双方均需要实现。
c. Token一般有效时间为2小时,可以设置<2小时的缓存机制,或者在token错误时重新再获取。
d. 若Token有效期内重新获取了新的token,那么原来未过期的token也应该是有效的,直至过期失效。
e. 入参说明:运营商ID 谁请求填谁的。


2) 查询电站信息接口
a. 入参:如有400个电站,PageSize填1的话 ,就是400页, 如果填10的话,就是40页, 如果填100的话,就是4页。
b. 电站信息不建议一条一条的轮询接口,建议一页100条,并将静态信息做缓存。
c. 建议每天定时同步静态数据,电站数据的更新时间为每日凌晨5点,请在5点之后同步数据。
d. 输入参数中PageSize,PageNo缺一不可,并且PageSize最大值为100。
e. LastQueryTime建议为空,即全量查询。如果时间距现在较短,由于最近没有电站信息更新,可能会查不到数据。
f. 电站信息中的电费服务费描述,是结算价。


3) 查询设备实时状态接口
a. 注意StationIDs是字符串数组类型,数组长度不超过50,请严格按照类型传输。
b. 该接口仅作为终端状态初始化时使用,每天可全量拉取1次,终端状态请采用设备状态变化推送的方式更新。(建议每天查一次,推送为主)。


4) 推送设备实时状态接口
a. 终端状态发生变化时,立即推送。
b. 状态变化推送接口响应时间最大为3s,超时不重试。
c. 如果推送过去的终端在系统中不存在,请不要做业务校验,直接扔掉即可,不要在外层报错,即ret=0,data中的值可以按实际返回,比如:检测不到该终端等。
d. 如需此接口必须提供接受推送接口,接口在中电联标准文档第二部分


5) 查询统计信息接口
a. 查询时间间隔最长一个月。
6) 查询业务策略接口
a. 请求接口返回值为空,则可能没有该终端权限。
b. 请求时报参数格式错误,校验不通过:查询业务策略流水号,前九位为请求方的组织机构代码。
c. 业务策略中的电费服务费描述,是原价。


7) 请求设备认证接口
a. 只有已插枪状态的设备才能认证通过,其他状态均会失败,失败原因见错误码。
b. 请求报参数格式错误,校验不通过:设备认证流水号,前九位为请求方的组织机构代码。
c. 调用时机:启动充电之前,首先要进行设备认证,确保插枪状态。


8) 请求启动充电接口
a. 订单号前九位必须是请求方组织机构代码。
b. 同步返回结果并不是实际启动结果,只代表这个接口指令请求是否成功。具体是否成功以异步结果(推送启动充电结果)为准。
c. 启动失败原因,根据提示查看错误码对应原因。
d. 启动充电超时时间为直流终端95秒,交流终端50秒。
e. 只有状态为2:已插枪的设备才可以启动充电。
f. 请求报参数格式错误,校验不通过:订单号不能超过27位。
g. 请求启动充电中二维码其他信息为空即可。


9) 推送启动充电结果接口
a. 推送失败后不会重试,如果长时间收不到,可以通过查询充电中订单接口作为补偿,订单状态为2代表充电成功,5代表失败。
b. 如需此接口必须提供接受推送接口,接口在中电联标准文档第三部分。
c. Identcode为启动失败原因,根据提示查看错误码对应原因。


10) 查询充电中状态接口
a. 不显示soc:直流有,交流没有。
b. 查询订单返回状态5:未知,订单号为NULL,其他参数为0.启动失败,没有这笔订单。
c. 启动充电后不要立即查询,建议间隔十几秒后查询。
d. 此接口作为推送充电状态的补偿接口,不建议频繁调用。


11) 推送充电中状态接口
a. 充电过程中,默认每五分钟推送一次,推送失败,不会重试。
b. 启动充电后默认五分钟后推送第一次充电中数据。
c. 由于推送是队列机制,有可能在订单结束时还收到充电中推送的情况,忽略即可。
d. 如需此接口必须提供接受推送接口,接口在中电联标准文档第三部分。


12) 请求结束充电接口
a. 停止同步返回失败,根据提示查看错误码进行解决。
b. 同步返回结果并不是实际启动结果,只代表这个接口指令请求是否成功,具体是否成功以异步结果(推送结束充电结果)为准。
c. 请求一次即可,不要重复结束,若没有收到异步通知,可以通过查询充电状态确定是否执行停止成功。


13) 推送结束充电结果接口
a. 订单实际结束是否成功以该接口为准,失败原因见错误码。
b. 推送失败后不会重试,如果长时间收不到,可以通过查询充电中订单接口作为补偿,订单状态为4代表已结束,2代表仍在充电中。
c. 任何形式的结束充电,均会导致订单结束,并推送结束充电结果。
d. 如需此接口必须提供接受推送接口,接口在中电联标准文档第三部分。


14) 推送结束订单接口
a. 订单的结束原因可以参见错误码。
b. 任何形式的结束充电,均会导致订单结束,并推送结束充电结果和充电订单,一旦收到充电订单推送,即标志充电已结束。
c. 如需此接口必须提供接受推送接口,接口在中电联标准文档第三部分

参考标准

  • T/CEC 102.1-2016 电动汽车充换电服务信息交换 第1部分:总则

  • T/CEC 102.2-2016 电动汽车充换电服务信息交换 第2部分: 公共信息交换规范

  • T/CEC 102.3-2016 电动汽车充换电服务信息交换 第3部分: 业务信息交换规范

  • T/CEC 102.4-2016 电动汽车充换电服务信息交换 第4部分: 数据传输及安全

相关链接

奥升充电|互联互通协议解析(1)——平台认证-CSDN博客

奥升充电|互联互通协议解析(2)——公共信息交换规范-CSDN博客

奥升充电|互联互通协议解析(3)——业务信息交换规范-CSDN博客

奥升充电|互联互通协议解析(4)——常见问题-CSDN博客

奥升新能源技术服务平台icon-default.png?t=N7T8https://orise.trytowish.cn/

仓库后端前端小程序
Github充电平台微服务源码充电管理后台源码充电小程序源码
GitCode充电平台微服务源码充电管理后台源码充电小程序源码
Gitee充电平台微服务源码
充电平台微服务源码(备用)
充电管理后台源码充电小程序源码

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值