接入说明¶
通讯方式说明¶
通讯方式 | 说明 | 优点 | 缺点 |
---|---|---|---|
传统蓝牙 | 需要先进行配对,配对成功之后进行蓝牙socket通讯 | 对接简单,蓝牙地址固定 | 不支持IOS设备,通讯距离短且穿墙能力弱 |
低功耗蓝牙 | 搜索POS的虚拟蓝牙地址,连接虚拟地址,然后搜索虚拟读写服务,通过读写服务发送接收数据 | 支持IOS设备,通讯安全 | 不支持Android4.0以下设备,通讯距离短且穿墙能力弱 |
局域网 | 简单理解为同一路由器下的两个设备通讯 | 对接简单,无设备限制 | 网络环境要求较高 |
云消息 | 通过IOT进行消息中转 | 对接简单,无设备限制,无终端网络限制 | 交易结果无法同步返回 |
通讯参数配置¶
- 传统蓝牙
配置 通讯UUIID
为
String STR_UUID = "00001101-0000-1000-8000-00805F9B34FB";
- 低功耗蓝牙
配置 服务UUID
为
UUID SERVER_UUID = UUID.fromString("F14581B6-7938-45BA-A8E8-4CF5F6DEB648");
ParcelUuid SERVER_PARCE_UUID = ParcelUuid.fromString("F14581B6-7938-45BA-A8E8-4CF5F6DEB648");
配置 写特征UUID
为
UUID MIS_RECEIVE_UUID = UUID.fromString("49535343-1E4D-4BD9-BA61-23C647249616");
配置 读特征UUID
为
UUID MIS_SEND_UUID = UUID.fromString("49535343-8841-43F4-A8D4-ECBE34729BB3");
由于低功耗蓝牙通讯数据长度有限制,固需要对通讯数据打包为byte数组,设置单次数据通讯字节长度为20。
打包规则: [0x02],[数组长度HEX高位],[数组长度HEX低位]…[0x03],[lrc]
- 局域网
智能POS设置开启 ServerSocket端口
为 6000
- 云消息
按照云消息接口组装参数并调用接口唤醒POS进行交易。
云消息接口¶
- 请求地址
https://spin.cloudpnr.com/topposm/cloudmis
- 公共请求参数
请求报文头HEADER - 「接口规则-参数规定-报文头」 ,请求报文体BODY - 「接口规则-参数规定-报文体」 ,响应报文体 - 「接口规则-参数规定-响应报文体」 - 请求参数(data)
参数 | 中文名 | 类型 | 必填 | 最大长度 | 说明 |
---|---|---|---|---|---|
device_id | 终端设备号 | String | Y | 21 | 终端设备号 |
huifu_id | 商户号 | String | Y | 32 | 商户号 |
json_data | 交易信息 | String | Y | 交易信息 |
同步返回参数¶
参数中文名称 | 参数名称 | 数据格式 | 是否必须 | 说明 |
---|---|---|---|---|
推送状态 | code | 定长8位String | 必须 | |
推送结果描述 | message | 变长String | 必须 | 返回码的对应中文描述 |