停车场收费系统智慧屏应用
SDK 对接的车场使用智慧屏,满足下列几个前提条件,可实现断网时的进出场及支付。
1、车场登录云平台,在设备管理中添加本地使用的通道(如果已有使用中的通道,可调用接口2.14上传本地的通道至云端)
2、车场账号登录小程序“车场云管家”,在“车场信息”中给指定通道添加智慧屏,建立屏与通道的连接
3、车场软件更换SDK 的 3.2.0.0 及以上版本,与智慧屏在同一个局域网中,获取指定通道的智慧屏 ip(接口 7.1),并初始化连接智慧屏(接口 7.2),之后可推送出场订单(接口 7.3)、获取扫码枪数据(接口 7.4)等操作
获取智慧屏 ip(收费系统调用SDK)
应用场景:
车场登录“云车场管家”小程序给指定通道绑定了智慧屏之后,可调用该接口获取智慧屏的 ip 地址
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | screen_info | 是 |
data_target | 上传位置 | String | cloud | 是 |
channel_id | 通道编号 | String | A11 | 是 |
示例:
{"service_name": "screen_info","data_target":"cloud","channel_id": "A11"}
同步返回:
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | screen_info | 是 |
state | 初始化状态,0 失败 1 成功 | Number | 1 | 是 |
errmsg | 返回描述 | String | 查询成功 | 是 |
device_ip | 智慧屏 ip | String | 192.168.199.199 | 否 |
device_id | 智慧屏设备号 | String | 9528166666999999 | 否 |
device_name | 智慧屏名称 | String | 东门出口 | 否 |
park_id | 车场编号 | String | 21000 | 是 |
channel_id | 通道编号 | String | A11 | 是 |
示例:
{"device_ip":"192.168.199.199","device_name":"东门出口","device_id":"9528166666999999","service_name":"screen_info","park_id":"21000","errmsg":"获取成功","state":1,"channel_id":"A11"}
初始化连接智慧屏(收费系统调用SDK)
应用场景:
车场获取到指定通道的智慧屏的 ip 地址后,调用该接口与智慧屏建立连接
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | init_screen | 是 |
data_target | 上传位置 | String | wisdom_screen | 是 |
channel_id | 通道编号 | String | A11 | 是 |
device_ip | 设备IP | String | 192.168.199.199 | 是 |
示例:
{ "service_name": "init_screen","data_target": "wisdom_screen","device_ip": "192.168.199.199", "channel_id": "A11"}
初始化同步返回:
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | init_screen | 是 |
state | 初始化状态,0 失败 1 成功 | Number | 1 | 是 |
errmsg | 返回描述 | String | success | 是 |
示例:
{"errmsg":"success","service_name":"init_screen","state":1}
推送出场订单(收费系统调用SDK)
应用场景:
车辆出场,计费系统核算出价格后,调用该接口推送订单详情显示到智慧屏,车主可扫描该信息里的支付二维码进行支付
注:如果长时间未收到支付成功回调,建议车场及时发送其他信息(比如完成页 10秒后会刷新回到主页),避免该信息一直显示,被其他车主误扫
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称,出场消息 | String | out | 是 |
data_target | 上传位置 | String | wisdom_screen | 是 |
channel_id | 通道编号 | String | A11 | 是 |
type | 1:月卡,2:无需缴费,3:缴费成功,4:待支付缴费金额信息 | Number | 4 | 是 |
car_number | 车牌号 | String | 京ABC9991 | 是 |
total | 总金额 | String | 2.15 | 否 ( type=3,4时 必传 ) |
out_pic | 出场图片的base64 编码格式, | String | data:image/jpg;base64,/9j/4AAQSkZJRgABAQAASABIAAD/4RnnRXhpZ... | 否 |
in_pic | 进场图片的 base64 编码格式 ,前缀“data:image/jpg;base64,” | String | data:image/jpg;base64,/9j/4AAQSkZJRgABAQAASABIAAD/4RnnRXhpZ... | 否 |
price | 需要缴费的金额 | String | 0.01 | 否( type=4 必传 ) |
reduce_amount | 减免金额 ,需带单位“元” | String | 4.56元 | 否( type=4 必传 ) |
in_time | 入场时间 'yyyy-MM-dd HH:mm:ss' | String | 2020-10-16 08:08:08 | 否 |
duration | 停车时长,单位分钟 | String | 22 | 否( type=4 必传 ) |
code | 出口支付码地址,按接口 7.5 生成 | String | http://s.bolink.club/unionapi/thirdtopayorder?params=[1602751210742%2C0.01%2C临BF4E338%2C20.15%2C1602815671%2C200160%2C21782%2CA11%2C1602815671]&sign=d2cdd57437f520735fe27c0ef50a0199 | 否( type=4 必传 ) |
prepay | 已预付金额 | String | 0.01 | 否( type=4 必传 ) |
state | 结果状态,1 成功,0 失败 | Number | 1 | 是 |
tts | 语音播报内容 | string | 64 | 否 |
示例:
{"service_name":"out","data_target":"wisdom_screen","type":4,"car_number":"京ABC9991","channel_id":"A11","total":"2.15","price":"0.01","reduce_amount":"4.56元","in_time":"2020-10-16 08:08:08","duration":"22","code":"http://s.bolink.club/unionapi/thirdtopayorder?params=[1602751210742%2C0.01%2C临BF4E338%2C20.15%2C1602815671%2C200160%2C21782%2CA11%2C1602815671]&sign=d2cdd57437f520735fe27c0ef50a0199 ","prepay":"0.01","state":1,"tts":"京ABC123,请缴费2.15元"}
初始化同步返回:
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | out | 是 |
state | 初始化状态,0 失败 1 成功 | Number | 1 | 是 |
errmsg | 返回描述 | String | success | 是 |
接收被扫数据(SDK回调收费系统)
应用场景:
车场推送出场订单到智慧屏后
1、车主可出示付款码被扫,车场接收该支付码再调用接口 2.2 上传 pay_type=auth_code发起扣费;
2、车主支付完成后,在断网情况下,车场无法收到接口 3.4 下发的支付成功消息,此时车主可出示手机上的支付成功二维码被扫,车场收到该信息后可抬杆放行
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称,被扫 | String | sweepcode | 是 |
type | 被扫码类型 | Number | 1 、手机付款码 ; 2 、支付成功二维码被扫 | 是 |
pay_info | 支付成功二维码 | String | 否(type=2 时必传) | |
authcode | 微信或支付宝的付款码 | String | 234567874567654 | 否(type=1 时必传) |
channel_id | 通道号 | String | A11 | 是 |
示例:
{"service_name":"sweepcode","type":1,"channel_id":"A11","authcode":"234567874567654"}
初始化同步返回:
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | sweepcode | 是 |
state | 初始化状态,0 失败 1 成功 | Number | 1 | 是 |
errmsg | 返回描述 | String | success | 是 |
示例:
{"errmsg":"success","service_name":"init_screen","state":1}
车场生成出口支付码
应用场景:
车场调用接口 7.3 推送出场订单到智慧屏,type 为 4 时 信息中包含该订单的支付信息链接,调用该接口生成这个支付链接,在智慧屏展示为二维码形式,方便车主扫码支付
注:
1、请求地址 https://s.bolink.club/unionapi/thirdtopayorder
2、sign签名规则是 params 的信息 直接拼接厂商秘钥 ukey 进行md5加密
3、params 有序 数组格式,utf-8编码后传入(获取sign 签名时无需 utf-8 编码)
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
params | 有序数组格式(utf-8编码后传入) | String | [A1_2C1600858624,2.12,京A11111,0.1,1600863147,200279,21000,A1,1600863147] | 是 |
sign | 签名,32位小写 | String | a7cd3d7c8f30a3e32435aefc88650887 | 是 |
示例:
sign 获取:
[A1_2C1627291675,2.12,京DTTT222,0.1,1627291740,200002,21840,A1,1627350591]EA2D90FEEF1E9F8E 进行MD5加密后取32位小写,得到:542b570d75859a64e3642edfc4285334
params 参数拼接:A1_2C1627291675,2.12,京DTTT222,0.1,1627291740,200002,21840,A1,1627350591 进行 utf-8 编码,得到:
A1_2C1627291675%2C2.12%2C%E4%BA%ACDTTT222%2C0.1%2C1627291740%2C200002%2C21840%2CA1%2C1627350591
备注:params 参数依次为
名称 | 是否必传字段 | 示例 | 空值 |
---|---|---|---|
订单编号 | 是 | A1_2C1600858624 | 不可空 |
价格 | 是,单位 元 ,最多两位小数 | 2.12 | 不可(0元直接放行不需扫码) |
车牌号 | 是 | 京A11111 | 不可空 |
优惠金额 | 是 | 0.01 | 0 |
入场时间 | 是(unix时间戳格式到秒) | 1600863147 | 不可空 |
厂商编号 | 是 | 200279 | 不可空 |
车场编号 | 是 | 21000 | 不可空 |
通道编号 | 是 | A1 | 不可空 |
当前时间 | 是(unix时间戳格式到秒) | 1600863147 | 不可空, 1 分钟内有效,超时需重新生成 code |
推送语音播报
应用场景:
车场向指定通道的智慧屏推送语音播报
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | tts | 是 |
data_target | 上传位置 | String | wisdom_screen | 是 |
channel_id | 通道编号 | String | A11 | 是 |
content | 语音播报内容 | String | 请使用微信支付宝扫码查询 | 是 |
示例:
{ "service_name": "tts","data_target": "wisdom_screen","channel_id":"A11","content": "请使用微信支付宝扫码查询"}
推送进场订单
应用场景:车辆进场,车场调用该接口推送车辆详情显示到智慧屏。可在智慧屏入口显示车牌和欢迎光临等文字同时语音播报
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称,进场消息 | String | in | 是 |
data_target | 上传位置 | String | wisdom_screen | 是 |
channel_id | 通道编号 | String | A11 | 是 |
car_number | 车牌号 | String | 京ABC9991 | 是 |
in_time | 入场时间,'yyyy-MM-dd HH:mm:ss' | String | 2021/11/05 21:09:09 | 否 |
text | 文本显示内容 | String | 您好,欢迎光临 | 否 |
tts | 语音播报内容 | String | 您好,欢迎光临 | 否 |
示例:
{ "service_name": "in","data_target": "wisdom_screen","car_number": "京HJ9900","channel_id": "1890","in_time": "2021-11-05 08:08:08","tts": "您好,欢迎光临","text": "您好,欢迎光临"}
同步返回:
字段信息:
名称 | 说明 | 类型 | 示例 | 是否必传字段 |
---|---|---|---|---|
service_name | 接口名称 | String | in | 是 |
state | 初始化状态,0 失败 1 成功 | Number | 1 | 是 |
errmsg | 返回描述 | String | success | 是 |
- 上一篇:倍加信停车场在线支付,支持的银行清单 2022/12/13
- 下一篇:倍加信停车场系统宁夏交警数据上报 2022/12/12