金桔蓝牙网关蓝牙连接协议说明

下发蓝牙链接

http://127.0.0.1:8888/ac/station?cmd=setblelink_type&mac=10.00.00.63.42.42&stationId=10002095&type=test2

参数说明:

字段描述
cmd命令类型,固定为setblelink_type
mac设备的mac地址
stationId用哪个网关进行连接
type连接的类型名,就是刚刚保存的test2

下发连接后,基站会反馈此次下发蓝牙连接的执行结果,通过推送接口推送(注意下发命令通过http接口的,依然会通过推送接口推送此反馈消息)

{ 
    "Gateway": "10000060", 
    "NodeId": "00000000", 
    "SystemId": "10990145", 
    "Type": "ble_set_link_result", 
    "addr": "100000614242", 
    "set_result": "OK"
}

字段描述:

字段描述
Gateway基站的ID
NodeId忽略
SystemIdACserver的系统id
Type此消息类型固定为ble_set_link_result
addr该蓝牙连接的mac地址
set_result该命令的执行结果,该类型有三个结果:OK-执行成功;ALREADY-该mac地址已经在建立蓝牙连接的列表中,不需要再建立连接了;OUT_OF_NUMBER-蓝牙连接的数量超过基站的最大连接数,不能为该设备建立蓝牙连接。

下发蓝牙发送:

HTTP请求接口:
http://127.0.0.1:8888/ac/station?cmd=blelinksend&mac=39.99.99.99.44.42&stationId=10000060&data=11,22,34,55
字段描述:

字段描述
cmd命令类型,固定为blelinksend
mac设备的mac地址
stationId用哪个网关进行连接
data需要发送的内容,是英文逗号分开的十六进制数据

下发蓝牙读取:

HTTP请求接口:
http://127.0.0.1:8888/ac/station?cmd=blelinkread&mac=39.99.99.99.44.42&stationId=10000060&rxuuid=0001

字段描述
cmd命令类型,固定为blelinkread
mac设备的mac地址
stationId用哪个网关进行连接
rxuuid连接的读取的uuid特征码

下发蓝牙断开:

http://127.0.0.1:8888/ac/station?cmd=setbledisconnect&mac=39.99.99.99.44.42&stationId=10000060

字段描述
cmd命令类型,固定setbledisconnect
mac设备的mac地址
stationId用哪个网关进行连接

下发连接后,基站会反馈此次下发蓝牙连接的执行结果,通过推送接口推送(注意下发命令通过http接口的,依然会通过推送接口推送此反馈消息)

{ 
    "Gateway": "10000060", 
    "NodeId": "00000000", 
    "SystemId": "10990145", 
    "Type": "ble_set_disconnect_result", 
    "addr": "100000614349", 
    "link_status": "NOLINK", 
    "set_result": "OK"
}

参数描述:

字段描述
Gateway基站的ID
NodeId忽略
SystemIdACserver的系统id
Type此消息类型固定为ble_set_disconnect_result
addr该蓝牙连接的mac地址
set_result该命令的执行结果,该类型有两个结果:OK-执行成功;NO_ADDR-该mac地址不在蓝牙连接的列表中(不一定建立连接,不在列表中)。
link_status断开连接前,该基站是不是对该设备建立了连接,该类型有两个结果:NOLINK-没有建立蓝牙连接;CONNECTED-已经建立了蓝牙连接。

上传蓝牙连接成功消息

上传成功消息有两种,一种是ble_evt_bleconnect 此消息是建立了蓝牙物理链接,但是此时并未找到服务,所以并不能发送和读取数据;另一种是ble_evt_connected 此消息是找到服务,此时开始可以进行发送数据和接收数据。
蓝牙成功消息:

{ 
    "Gateway": "10000060", 
    "NodeId": "10000061", 
    "SystemId": "10990145", 
    "Type": "ble_evt_bleconnect", 
    "mac": "100000614242"
}

服务链接成功消息:

{ 
    "Gateway": "10000060", 
    "NodeId": "10000061", 
    "SystemId": "10990145", 
    "Type": "ble_evt_connected", 
    "data_length": "247", 
    "link": 0, 
    "mac": "100000614242", 
    "services": [ 
        { 
            "type": "VENDOR", 
            "uuid": "0001"
        }, 
        { 
            "type": "SIG", 
            "uuid": "0001"
        }, 
        { 
            "Characteristic": [ 
                { 
                    "auth_signed_wr": 0, 
                    "broadcast": 0, 
                    "indicate": 0, 
                    "notify": 0, 
                    "read": 0, 
                    "type": "VENDOR", 
                    "uuid": "0004", 
                    "write": 1, 
                    "write_wo_resp": 1
                }, 
                { 
                    "auth_signed_wr": 0, 
                    "broadcast": 0, 
                    "indicate": 0, 
                    "notify": 1, 
                    "read": 0, 
                    "type": "VENDOR", 
                    "uuid": "0005", 
                    "write": 0, 
                    "write_wo_resp": 0
                }
            ], 
            "type": "VENDOR", 
            "uuid": "F001"
        }
    ]
}

服务链接成功消息下面,有services字段,将扫描到的服务列表上传,一般可以可忽略。

蓝牙接收消息:

{ 
    "Gateway": "10000060", 
    "NodeId": "10000061", 
    "SystemId": "10990145", 
    "Type": "ble_evt_rxd", 
    "data": "01,02,03,04", 
    "mac": "100000614242"
}

此消息为通知服务uuid收到的节点上传的数据,data字段里包含了上传的十六进制数据,用逗号分开。
蓝牙读取消息:

{ 
    "Gateway": "10000060", 
    "NodeId": "10000061", 
    "SystemId": "10990145", 
    "Type": "ble_evt_read", 
    "data": "01,02,03,04", 
    "mac": "100000614242"
}

此消息为读取服务uuid收到的节点上传的数据,data字段里包含了上传的十六进制数据,用逗号分开。

蓝牙连接超时消息:

{ 
    "Gateway": "10000060", 
    "NodeId": "10000061", 
    "SystemId": "10990145", 
    "Type": "ble_evt_timeout", 
    "mac": "100000614242", 
    "status": "connected"
}

此消息为连接时限超过设定的超时时间,status字段代表了是否是处于连接状态的连接超时。

蓝牙连接断开消息:
{ 
    "Gateway": "10000060", 
    "NodeId": "10000061", 
    "SystemId": "10990145", 
    "Type": "ble_evt_disconnected", 
    "mac": "100000614242", 
    "reason": "22"
}

此消息为断开蓝牙消息,reason为内部调试使用,客户可忽略。

获取蓝牙网关连接信息

调用接口:
http://127.0.0.1:8888/ac/station?cmd=station_read_connection_info&ids=10000060
推送数据推送:

{ 
    "Gateway": "10000060", 
    "NodeId": "00000000", 
    "SystemId": "10990145", 
    "Type": "ble_station_connection_info", 
    "conn": [ 
        { 
            "addr": "3F,FF,FF,FF,44,42", 
            "addtime": "2020-11-20 12:21:58", 
            "conn_status": "connected", 
            "data_len": 247, 
            "timeout": "2020-11-20 10:18:37"
        }
    ]
}
字段描述
conn字段里包含当前连接的数组:
addr连接蓝牙设备的地址
addtime连接蓝牙设备的开始时间
timeout连接蓝牙设备的超时时间
conn_status当前状态是不是已经建立连接
data_len该连接单次发送的最大字节数
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值