概 述
1 范围
本文件适用于安徽省充换电基础设施综合监管服务平台与电动 汽车充换电运营服务平台、以及其它服务平台之间的信息交换。内 容包括数据传输与安全、数据接口定义。
2 规范性引用文件
下列文件中的内容通过文中的规范性引用而构成本文件必不可 少的条款;其中,注日期的引用文件,仅该日期对应的版本适用于 本文件;不注日期的引用文件,其最新版本(包括所有的修改单) 适用于本文件。
GB/T 29317 电动汽车充换电设施术语
GB/T 20271-2006 信息安全技术 信息系统安全通用技术要求
GB/T 25070-2019 信息安全技术 网络安全等级保护安全设计 技术要求
T/CEC 102-2021 电动汽车充换电服务信息交换
GB/T25000.12-2017系统与软件工程系统与软件质量要求和评价 (SQuaRE)第12部分:数据质量模型
GB/T25000.24-2017系统与软件工程系统与软件质量要求和评价 (SQuaRE)第24部分:数据质量测量
GB/T36344-2018信息技术数据质量评价指标
3 术语与定义
(1)安徽省充换电基础设施综合监管服务平台:与电动汽车充换电 运营服务平台进行信息交换的独立运行平台。为省级政府和行业管理提供监督、评价和推广等功能的信息服务系统,简称省级监管平 台。
(2)电动汽车充换电服务运营商:为电动汽车用户提供充换电服务 的提供者。简称充换电服务运营商。
(3)电动汽车充换电运营服务平台:对电动汽车信息及电动汽车基 础设施信息进行采集、处理和运行管理,向用户提供充换电服务、
业务管理及信息服务功能的支撑系统。简称运营服务平台。
(4)电动汽车充换电服务资源信息:电动汽车充换电服务中涉及基 本信息,包括设备标识、名称、位置、坐标、服务公示信息以及状 态等。
(5)电动汽车充换电服务档案信息:电动汽车充换电服务中涉及档 案信息,包括充换电运营商、充换电站、充电设备、充电设备接口等的注册信息。
(6)电动汽车充换电服务状态信息:电动汽车充换电服务中涉及的 状态信息和运行数据,包括充换电设备接口状态信息、电池状态信息以及充换电过程数据等。
(7)电动汽车充换电服务订单信息:电动汽车用户接收充换电服务 的订单信息,包括订单编号、充电设备接口ID、开始时间、结束时间、总电费、总服务费、总电量、总金额、结束原因、SOC等。
(8)基础设施运营商:提供电动汽车充换电基础设施服务的运营商, 亦称为:“设备所属方 ”、“场站属主 ”、“设备运营商 ”。
(9)数据提供方:向安徽省充换电基础设施综合监管服务平台报送 数据的各类充换电服务运营商平台。
(10)数据需求方:安徽省充换电基础设施综合监管服务平台。
第一章 数据传输与安全
本部分明确了平台信息交换的数据传输和安全防护的一般原则 , 包含信息交换的数据传输体系、平台认证要求、密钥的管理和使用要求。
1 数据传输体系
1.1 数据传输流程
电动汽车充换电服务信息交换应符合GB/T 9387.1中关于会话连 接的要求,一般需要经过平台认证、请求和应答3个步骤。
1.2 数据传输接口
所有数据传输接口均应采用HTTP(S)接口,每个接口的URL均采 用如下格式定义:
http (s)://[域名]/evcs/v[版本号]/[接口名称]
1、域名:接口提供方平台域名。
2、版本号:代表接口版本号,不同的版本地址对应相应版本代 码。系统升级期间,新旧版本可同时存在,待所有接入方都切换到 新接口,旧版本接口即可下线。从而达到平滑升级的目的。
3、接口名称:所请求/调用接口的名称,具体接口名称见T/CEC 102.2和T/CEC 102.3。
为保证各接口的功能明确清晰,每个URL只允许对应一种功能。
1.3 接口调用方式
接口均应使用HTTP(S)/POST方式传输参数,采用JSON的方式,
传输过程中应包含消息头和消息主体两部分。数据应采用UTF-8编码, JSON格式。
1.4 消息头规范
消息头一般需包含内容类型和授权信息(Authorization)。
内容类型(Content-Type)字段用于标识请求中的消息主体的编码方式,本标准中所规范的信息交换内容均应采用JSON的方式,参数 信息采用UTF-8编码,因此需要配置消息头中的Content-Type 为
application/json;charset=UTF-8。
授权信息(Authorization)字段用于证明客户端有权查看某个资源 , 本标准中所规范的授权信息采用令牌(Token)的方式,因此需要在配置消息头中的Authorization 为Bearer Token。
1.5 消息主体规范
1.5.1 服务申请
平台标识(PlatformID)、参数内容(Data)、时间戳(TimeS tamp)、自增序列(Seq)和数字签名(Sig)组成。
示例:
{
"PlatformID": "123ABC456", "Data":
"IfkgbRIvET0MvpZcHmvnfyZEKV5hvPnzxqunTNmPC/kZes8/ry5dRyAu", "TimeStamp": "20190701030508",
"Seq": "0001",
"Sig": "42E65AAE6E8BAB4CEFA538E7687CFAB5" }
1.5.2 参数返回
数据传输接口的返回参数一般由返回值(Ret)、返回信息(Ms g)、参数内容(Data)和数字签名(Sig)组成。
Ret:必填字段,返回参数编码应符合表2的规定。
Msg:必填字段,有错误表示具体错误信息,无错误返回成功信 息。
Data:参数内容,返回参数应符合T/CEC 102系列文件的规定。
1.5.3 批量数据传输
数据传输接口中的Data字段可为数组型的JSON格式,数据发送 方可通过该字段实现批量数据的传输。
2 平台认证要求
2.1 基本要求
平台信息交换应具备平台认证服务,提供平台之间的鉴权认证 功能。平台之间在信息交换前,需要完成平台认证,获得平台交换 能力。
省级监管平台、运营商平台须提供严格的系统安全保密机制, 保障信息交换接口安全、稳定、可靠地运行,包括信息的存取控制 、应用系统操作的安全等。基本要求:
1、采用身份认证、访问控制、数据加密、数字签名等安全措施 ;
2、采用安全可靠并且普遍使用的加密算法;
3、密钥的存贮和交易信息的加密/解密需要在安全的环境中;
4、数据安全保密应遵循国家和行业标准;
5、应能定期或应对突发进行密钥更新和启用;
6、具备对报文进行来源正确性鉴别的机制(HMAC)。
2.2 认证方式及规则
2.2.1 认证方法
认证宜采取身份认证和访问控制相结合方式,相关流程参见下图。
身份认证可采取用户名/口令认证、密钥认证或数字证书认证等方式;访问控制可采取IP访问控制、时间访问控制等多种结合手段。
用户身份认证成功后授予Token,每次向服务端请求资源时应带着服务端签发的Token,服务端验证Token成功后,才返回请求的数据。
Token的有效期由服务方确定,最长不应超过7天,Token丢失或失效后应再次发起认证服务。
3 认证接口规范Token
此接口用于平台之间认证Token的申请,Token作为全局唯一凭证,调用各接口时均需要使用。
3.1 接口定义
接口名称:query_token
使用方法:由服务端实现此接口,由需求端调用
3.2 输入参数
3.3 返回值
4 密钥的管理和使用
4.1 基本要求
各平台应符合GB/T 25070、GB/T 20271、GB/T 22239中关于数 据安全传输控制要求。
各平台应提供严格的系统安全保密机制,保障信息交换接口安 全、稳定、可靠地运行,包括信息的存取控制、应用系统操作的安全等。
密码算法用于密钥的产生、分发、HMAC以及加密等安全功能,相关的算法模块在其生命周期内不应被修改、导出至安全环境外部。
指定功能的密钥仅能做指定功能使用,不应被其他任何功能使用。
4.2 密钥的分类
交互前应分配标识、对接方密钥、消息密钥、消息密钥初始化 向量和签名密钥。并应符合下列要求:
1、唯一标识(PlatformID): 固定9位,对接方的组织机构代 码九位,作为唯一标识。
2、密钥(PlatformSecret):可采用16H、32H、48H和64H,由 0-F字符组成,为申请认证使用。
3、消息密钥(DataSecret): 可采用16H、32H、48H和64H,由 0-F字符组成,用于对所有接口中Data信息进行加密。
4、消息密钥初始化向量(DataSecretIV):固定16位,用户 AES加密过程的混合加密。
5、签名密钥(SigSecret): 可采用16H、32H、48H和64H,由 0-F字符组成,为签名的加密密钥。
4.3 密钥的管理
4.3.1 密钥的产生
数据密钥应具备随机产生特性,密钥产生后应检查密钥的有效性,弱密钥和半弱密钥应被剔除。
加入信息交换时,必须申请独立的密钥文件,密钥可双方协商产生。
4.3.2 密钥的分发
密钥的分发应由安全方式进行,可通过线下分发、联机报文或数字信封的方式加密传输。
4.3.3 密钥的存储
密钥宜保存在硬件加密机内。如果出现在硬件加密机外,则密钥应以密文方式出现。
密钥注入、密钥管理和密钥档案的保管应由专人负责。使用密钥和销毁密钥要在监督下进行并应有使用、销毁记录。
4.3.4 密钥的销毁
当新密钥产生后,生命期结束的旧密钥应从数据库和内存中清除,防止被替换使用;同时所有可能重新构造此密钥的信息也应清除。新密钥成功启用和旧密钥自动销毁的记录将被更新。
4.4 密钥的使用
4.4.1 数据的加解密处理
消息发送方需要对Data字段中涉及交易及隐私等数据利用消息 密钥(DataSecret)进行加密。
消息接收方收到消息之后,根据消息密钥(DataSecret)对消息体中的Data数据进行解密,校验参数合法性等后续业务处理。
4.4.2 参数签名规范
参数签名采用HMAC-MD5算法,采用MD5作为散列函数,通过签名密钥(SigSecret)对整个消息主体进行加密,然后采用MD5信息摘要的方式形成新的密文,参数签名应大写。
参数签名顺序按照消息体顺序拼接后执行,入参拼接顺序为唯一标识标识(PlatformID)、参数内容(Data)、时间戳(TimeStamp) 、 自增序列(Seq),出参拼接顺序为返回值(Ret)、返回信息(M sg)、参数内容(Data)。
5 数据加解密方式
5.1 数据加解密方法
数据传输的加密使用对称加密算法AES 128位加密,加密模式采用CBC,填充模式采用PKCS5Padding方式。
5.2 数据加解密示例
示例密钥:1234567890abcdef
示例初始向量:1234567890abcdef
示例明文信息:
{"total":1,"stationStatusInfo": {"operationID":"123456789"," stationID":"111111111111111","connectorStatusInfos": {"conne ctorID":1,"equipmentID":"10000000000000000000001","status": 4,"currentA":0,"currentB":0,"currentC":0,"voltageA":0,"volt
a geB":0,"voltageC":0,"SOC":10,}}} 示例密文:
il7B0BSEjFdzpyKzfOFpvg/Se1CP802RItKYFPfSLRxJ3jf0bVl9hvYOEkt PAYW2nd7S8MBcyHYyacHKbISq5iTmDzG+ivnR+SZJv3USNTYVMz9rCQVSxd 0cLlqsJauko79NnwQJbzDTyLooYoIwz75qBOH2/xOMirpeEqRJrF/EQjWek JmGk9RtboXePu2rka+Xm51syBPhiXJAq0GfbfaFu9tNqs/e2Vjja/ltE1M0 l qvxfXQ6da6HrThsm5id4ClZFIi0acRfrsPLRixS/IQYtksxghvJwbqOsbI sITail9Ayy4tKcogeEZiOO+4Ed264NSKmk7l3wKwJLAFjCFogBx8GE3OBz4 pqcAn/ydA=
6 参数签名方式
6.1 HMAC-MD5 参数签名方法6.1 HMAC-MD5 参数签名方法
HMAC(K,M)=H(K⊕opad ∣H(K⊕ipad ∣M))
其中:K是密钥(PlatformSecret),长度可为64字节,若小于 该长度,在密钥后面用“0 ”补齐。
M是消息内容; H是散列函数;
opad和ipad分别是由若干个0x5c和0x36组成的字符串; ⊕表示异或运算;
∣表示连接操作。
6.2 HMAC-MD5 参数签名流程
1、在签名密钥(SigSecret)后面添加0来创建一个长为64字节 的字符串(str);
2、 将上一步生成的字符串(str)与ipad(0x36)做异或运算,形 成结果字符串(istr);
3、将消息内容data附加到第二步的结果字符串(istr)的末尾;
4、做MD5运算于第三步生成的数据流(istr);
5、将第一步生成的字符串(str)与opad(0x5c)做异或运算,形 成结果字符串(ostr);
6、再将第四步的结果(istr)附加到第五步的结果字符串(ostr) 的末尾;
7、做MD5运算于第六步生成的数据流(ostr),输出最终结果 (out)。
6.3 参数签名示例
示例签名密钥:1234567890abcdef
示例运营商标识(PlatformID):123456789 示例参数信息(Data):
il7B0BSEjFdzpyKzfOFpvg/Se1CP802RItKYFPfSLRxJ3jf0bVl9hvYOEkt PAYW2nd7S8MBcyHYyacHKbISq5iTmDzG+ivnR+SZJv3USNTYVMz9rCQVSxd 0cLlqsJauko79NnwQJbzDTyLooYoIwz75qBOH2/xOMirpeEqRJrF/EQjWek JmGk9RtboXePu2rka+Xm51syBPhiXJAq0GfbfaFu9tNqs/e2Vjja/ltE1M0 l qvxfXQ6da6HrThsm5id4ClZFIi0acRfrsPLRixS/IQYtksxghvJwbqOsbI sITail9Ayy4tKcogeEZiOO+4Ed264NSKmk7l3wKwJLAFjCFogBx8GE3OBz4 pqcAn/ydA=
示例时间戳(TimeStamp):20160729142400 示例自增序列(Seq):0001
示例签名(Sig):745166E8C43C84D37FFEC0F529C4136Fss。
7 秘钥使用
发起HTTP请求的一方,称为请求方;接收HTTP请求的一方,称 为响应方。数据对接时,双方会互发请求,Request中的PlatformID
为请求方的PlatformID,双方加解密和计算签名都使用响应方的密钥 ; 一条HTTP的完整链条如下:
1、请求方将要发送的参数进行json序列化,然后使用响应方的 消息秘钥和初始化向量进行加密,将加密后的结果写入到Data字段。
2、请求方使用 响应方的签名秘钥 对PlatformID+ Data +TimeStamp + Seq 组成的字符串计算签名,将结果写入到Sig字段。
3、响应方收到请求数据后,token验证通过后,使用和第2步相 同的方式计算Sig,和参数中的Sig对比是否相同。
4、Sig验证通过后,使用响应方的消息秘钥和初始化向量解密Data字段,获取真正的请求参数。
5、响应方处理完毕后,将要返回的内容进行json 序列化,然 后使用响应方的消息秘钥和初始化向量 进行加密,将加密后的结果写入到Data字段
6、Response中的Sig,由于CEC的标准协议中并无具体说明,一般不再计算;如果计算,需要双方约定计算规则。
第二章 公共数据交换接口
1 查询运营商信息
此接口用于查询充换电服务运营商、基础设施运营商、各类生产商、企业机构等信息。
1.1 接口定义
接口名称:supervise_query_operator_info
使用方法:由数据提供方实现此接口,数据需求方调用。
接口频率:每天一次或多次
超时时间:120秒
1.2 输入参数
1.3 返回值
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"PageNo":1,
"PageCount" :1, "ItemSize" :20,
"OperatorInfos" [ {
"OperatorID" :"123456789",
"OperatorUSCID" :"123456789123456789", "OperatorName" :"xxxxxx",
"OperatorTel1" :"xxxxxxxxxxx",
"OperatorTel2" :"xxxxxxxxxxx",
"OperatorRegAddress":"xxxxxxxxxxx", "OperatorNote" :"xxxxxxxxxxx"
},
{
...
} ]
} },
"Sig" : "7130B533249635CD17F113B1D55C2911" }
1.4 运营商信息
2 查询充换电站信息
此接口用于主动查询充换电站信息、充电设备信息、充电设备接口信息。
2.1 接口定义
接口名称:supervise_query_stations_info
使用方法:由数据提供方实现此接口,数据需求方调用。
接口频率:每天一次或多次
超时时间:120秒
2.2 输入参数
2.3 返回值
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"ItemSize" : 1,
"PageCount" : 1,
"PageNo": 1,
"StationInfos" : {
"OperationID" : "123456789",
"StationID": "000000000000001",
"StationName" : "\u5145\u7535\u7ad9\u540d\u79f0", "EquipmentOwnerID" : "123456789",
"CountryCode" : "CN",
"AreaCode" : "441781",
"Address" : "\u5730\u5740", "Construction" : 1,
。。。。。。
参考SupStationInfo对象
。。。。。。
"Pictures" : [
"http:\/\/www.xxx.com\/uploads\/plugs\/e5\/eb\/cd\/f0469308d9bbd99496618d6 d87",
"http:\/\/www.xxx.com\/uploads\/plugs\/7c\/0c\/81\/a8ed867ffdfb597abaf9982b2c" ],
"EquipmentInfos": [ {
"EquipmentID" : "10000000000000000000003",
"ManufacturerID": "123456789", "EquipmentModel": "p3",
。。。。。
参考SupEquipmentInfo对象
。。。。。。
"ConnectorInfos": [ {
"ConnectorID" : "1", "ConnectorType" : 1,
"VoltageUpperLimits": 220, "VoltageLowerLimits": 220, "Power" : 3.3
。。。。。。
参考SupConnectorInfo对象
。。。。。。
} ]
} ]
} }
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
2.4 充换电站信息
2.5 充电设备信息
2.6 充电设备接口信息
3 查询充换电站状态信息
此接口用于数据需求方批量查询数据提供方的充换电站状态信息。
3.1 接口定义
接口名称:supervise_query_station_status
使用方法:由数据提供方实现此接口,数据需求方调用。
接口频率:每天一次或多次
超时时间: 120秒
3.2 输入参数
3.3 返回值
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"StationStatusInfos": [ {
"StationID" :"111111111111111", "OperatorID":"123456789",
"ConnectorStatusInfos" : [ {
"ConnectorID" :"1", "Status":4,
。。。。。。
参考SupStationStatusInfo对象 }
]
} ]
} },
"Sig" : "7130B533249635CD17F113B1D55C2911" }
3.4 充换电站状态信息
3.5 充电设备接口状态信息
4 推送充电设备接口状态信息
此接口用于充电设备接口状态信息发生变化时,推送最新的状态信息给数据需求方;推送失败时将推送失败的数据按小时级频率重试推送,直到推送成功。
4.1 接口定义
接口名称: supervise_notification_station_status
使用方法:由数据需求方实现此接口,数据提供方调用。
频率:变化推送。
超时时间: 120秒
4.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data": {
{
"OperatorID":"123456789".
" ConnectorID:"1000001001",
。。。。。。
参考SupConnectorStatusInfo表 }
},
"Sig": "7130B533249635CD17F113B1D55C2911" }
4.3 返回值
5 推送充电状态信息
此接口用于数据提供方向数据需求方推送充电设备的充电状态; 推送失败时将推送失败的数据按小时级频率重试推送,直到推送成功。
5.1 接口定义
接口名称:supervise_notification_equip_charge_status 使用方法:由数据需求方实现此接口,数据提供方调用。
频率:开始充电实时推送一次、充电过程中50-60秒推送一次、 充电结束实时推送一次。
超时时间: 120秒
5.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"OrderNo" :"1234567891111000001", "LicensePlate" :"xxxxxx",
"VIN" :"xxx",
。。。。。。
参考SupEquipChargeStatus对象 }
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
5.3 返回值
5.4 充电状态信息
6 推送充换电站用能统计信息
此接口用于数据提供方向数据需求方推送充换电站用能统计信 息,统计时间规则以订单结束时间为基准(即订单结束时间在统计 开始时间与统计结束时间区间内)统计开始时间与结束时间取值为前一日的00:00:00至23:59:59;数据不可重复推送,推送失败时将 推送失败的数据按小时级频率重试推送,直到推送成功。
6.1 接口定义
接口名称:supervise_notification_operation_stats_info
接口使用方法:由数据需求方实现此接口,数据提供方调用
频率:次日凌晨1点前推送前一天的运行统计信息。
6.2 输入参数
示例:
{
"StationStatsInfos" :[ {
"StationID":"10001",
"OperatorID" :"123456789",
。。。。。。
参考SupStationStatsInfo对象 "EquipmentStatsInfos" : [
{
"EquipmentID" :"10001001",
。。。。。。
参考SupEquipmentStatsInfo对象
"ConnectorStatsInfos" : [
"ConnectorID" :"1000001001001",
。。。。。。
参考SupConnectorStatsInfo对象 ]
} ]
} ]
}
6.3 返回值
6.4 充换电站用能统计信息
第三章 充电数据交换接口
1 推送充电站充电订单信息
此接口用于数据提供方向数据需求方推送充电订单信息;充电订单在充电结束时实时推送,同一订单只可推送一次,禁止重复推送;推送失败时将推送失败的数据按小时级频率重试推送,直到推送成功。
1.1 接口定义
接口名称:supervise_notification_charge_order_info
使用方法:由数据需求方实现此接口,数据提供方调用。
频率:实时推送。
超时时间: 120秒
1.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"OperatorID":"123456789", "StationID" :"100001",
。。。。。。
参考SupChargeOrderInfo对象 }
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
1.3 返回值
1.4 充电站充电订单信息
第四章 换电数据交换接口
1 查询电池箱信息
此接口用于查询电池箱信息。
1.1 接口定义
接口名称:supervise_query_battery_pack_info
使用方法:由数据提供方实现此接口,数据需求方调用。
接口频率:每天一次或多次。
超时时间: 120秒
1.2 输入参数
1.3 返回值
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"ItemSize" : 1, "PageCount": 1, "PageNo" : 1,
"BatteryPackInfo" : [ {
"OperatorID":"123456789",
"BatteryPackID" :"111111111111",
"SupportCarModel" : ["xxx","xxxx","xxxxx"]
。。。。。。
参考SupBatteryPackInfo对象 }
] }
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
1.4 电池箱信息
2 推送电池箱信息
此接口用于换电站电池箱信息发生变化时,推送至数据需求方平台,推送失败时按小时级频率重试推送,将最新的数据信息推送到数据需求方。
2.1 接口定义
接口名称:supervise_notification_battery_pack_info
使用方法:数据需求方实现此接口,数据提供方调用。
接口频率:变化推送。
超时时间: 120秒
2.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"OperatorID" :"123456789",
"BatteryPackID" :"xxxxxxxxxx0001",
"BatteryPackOwnerID" :"123456789",
"BatteryPackOwnerName" :"xxxxxxxxx", "BatteryPackCapacity" :"100.000",
"CarModelNum" :10,
"SupportCarModel" : ["xxxx","xxxxx"] }
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
2.3 返回值
3 推送电池箱状态信息
此接口用于充换电站电池箱动态信息发生变化时,推送至数据需求方平台,推送失败时按十分钟级频率重试推送,将最新的数据信息推送到数据需求方。
3.1 接口定义
接口名称:supervise_notification_battery_status_info
使用方法:数据需求方实现此接口,数据提供方调用。
接口频率:变化推送。
超时时间: 120秒
3.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data" : { {
"OperatorID" :"123456789",
"StationID" :"100001",
"BatteryPackID" :"xxxxxxxxxx0001",
"OwnerID" :"123456789",
"OwnerName" :"xxxxxxxxx", "BatteryStatus" :3,
......}
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
3.3 返回值
3.4 电池状态信息
4 推送换电站充电订单信息
此接口用于数据提供方向数据需求方推送充电订单信息;充电订单在充电结束时实时推送,同一订单只可推送一次,禁止重复推送;推送失败时将推送失败的数据按小时级频率重试推送,直到推送成功。
4.1 接口定义
接口名称:
supervise_swap_notification_charge_order_info
使用方法:由数据需求方实现此接口,数据提供方调用。
接口频率:实时。
超时时间: 120秒
4.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"OperatorID":"123456789", "StationID" :"100001",
。。。。。。
参考SupChargeOrderInfo对象
} },
"Sig" : "7130B533249635CD17F113B1D55C2911" }
4.3 返回值
4.4 换电站充电订单信息
5 推送换电订单信息
此接口用于推送换电站换电订单信息至数据需求方,同一订单不可重复推送,推送失败时将推送失败的数据按小时级频率重试推送,直到推送成功。
5.1 接口定义
接口名称:supervise_swap_notification_order_info
使用方法:由数据需求方实现此接口,数据提供方调用。
频率:实时。
超时时间: 120秒
5.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "", "Data" : {
{
"OperatorID":"123456789", "StationID" :"100001",
。。。。。。
参考SupSwapOrderInfo对象 }
},
"Sig" : "7130B533249635CD17F113B1D55C2911" }
5.3 返回值
5.4 换电订单信息
6 推送换电车辆信息
此接口用于推送换电车辆信息到数据需求方;推送失败时将推 送失败的数据按小时级频率重试推送,直到推送成功。
6.1 接口定义
接口名称:supervise_swap_notification_vehicle_Info
使用方法:由数据需求方实现此接口,由数据提供方调用。
接口频率:实时推送
超时时间: 120秒
6.2 输入参数
示例:
{
"Ret" : 0, "Msg" : "",
"Data" : {
"VehicleNo" :"234455",
。。。。。。
参考VehicleInfo对象 },
"Sig" : "7130B533249635CD17F113B1D55C2911" }