本地使用文档(无需AC)

(支持C1000,S1000,S1100,S2000,X1000,E1000)
我们将蓝牙路由器统称为AP

一、产品介绍:

        产品为蓝牙路由器(AP),可对蓝牙设备以建连和扫描的方式进行控制或数据交换,不同型号设备建连数量从8台-40台不等。

二、网络拓扑图:

三、产品特性:

        原理:上行通过api控制AP执行蓝牙层动作,下行蓝牙层与设备交互,并将获取到的数据通过API接口反馈

四、联网方式

        4.1:以太网:通过以太网线直接连接到AP的网口,AP将会自动接入接入互联网,AP的IP地址默认通过DHCP方式获取。
        4.2:wifi:只支持2.4G网络,不支持portal认证方式
        4.3:3G,4G(暂不支持5G):插入3G/4G无线网卡到USB插口,AP将会自动接入互联网, 目前大陆支持中兴MF823 Hilink版

        优先级:以太网>wifi>3G4G(即:插上网线后,优先通过以太网方式进行dhcp分配地址)

五、使用说明(如何用AP获取蓝牙设备的数据)

5.1进入到AP配置页面,如何设置静态IP?

        1.找到路由器的IP地址,AP出厂没有设置静态ip,通过网线直连到电脑所在的网络内,所在网络dhcp分配一个ip地址,在网络内通过路由器外壳下方的MAC地址找到Ip地址,在浏览器(必须是chrome浏览器)中输入IP地址即可进到配置页面,并在里面选择你想要配置的信息(配置页面默认用户名,密码为 admin admin)
        2.设置静态ip,进入到配置页面后在上方networks选项中的wired,选择static

5.2打开本地使用的功能

        进入到配置页面后,在上部的common选项中有local api接口,打开保存后即可进行本地使用。

5.3获取到蓝牙设备的数据

        打开本地使用模式后,先检验下是否可以收到数据,在浏览器中输入http://AP的ip地址/gap/nodes?event=1 ,若有数据,即证明可进行本地使用
        5.3.1扫描获取广播包的数据
        调用API接口,在浏览器中输入AP的扫描接口http://AP的ip地址/gap/nodes?event=1,直接查看数据,如下:

        5.3.2建连获取数据
建连方式获取数据可通过以下几种方式:
                1.蓝牙调试工具(推荐)
        http://www.bluetooth.tech/debugger/
        点击下载蓝牙调试工具说明文档
                2.Postman

         在postman中可实现一个虚拟服务器,向某个路径发送post,get请求。
                3.直接调用AP的API接口
        在代码层用api接口实现对蓝牙路由器的控制。(第六章有文档)

5.4如何将数据传输到服务器

        我们使用API对蓝牙路由器进行控制,并获取蓝牙设备的数据后,数据会返回到http请求的回调函数中,我们再将数据通过网路请求的方式发送到指定服务器即可。

六、API文档(成功获取数据后使用API文档进行开发)

6.1 api接口文档地址

https://cassiasdk.docs.apiary.io/
找到APIs的章节即为所有AP的api文档

Scan(sse)

http://192.168.199.218/gap/nodes/?event=1&mac=&chip=&filter_name=&filter_mac=&filter_uuid=

Connect(post)(6.5有此代码示例)

http://192.168.199.218/gap/nodes/<node>/connection?mac=&chip=

      post请求的data: ({
            "timeout": "1",//此字段可不写(默认5s),最小值为1
            "type" :"public" // `public` or `random`
        })
Disconnect(delete)

http://192.168.199.218/gap/nodes/<node>/connection?mac=

Connect_list(get)

http://192.168.199.218/gap/nodes/?connection_state=connected&mac=

Discover services & characteristics & desciptors(get)

http://192.168.199.218/gatt/nodes/<node>/services/characteristics/descriptors?mac=

Get device connection state(sse)

http://192.168.199.218/gap/nodes/?connection_state=connected&mac=

Write by handle(get)

http://192.168.199.218/gatt/nodes/<node>/handle/<handle>/value/<value>/?mac=

Notify(sse)

http://192.168.199.218/gatt/nodes/?event=1&mac=&

Pair(post)(此接口为新增)

http://192.168.199.218/management/nodes/<node>/pair

        post请求的data: ({
            "bond": 1,
            "legacy-oob":  0,
            "io-capability": 'KeyboardDisplay'
        })

**注:若此设备不支持配对,则http请求会返回失败

Pair-input(post)(此接口为新增)

http://192.168.199.218/management/nodes/<node>/pair-input

        post请求的data: ({
            "passkey": passkey //passkey为配对码
        })
Unpair(delete)(此接口为新增)

http://192.168.199.218/management/nodes/<node>/bond


此为连接API的说明
6.2 AP连接数量

AP的链接数量与不同的产品型号有关,在8-40个不等

6.3 sample支持语言:

C#,node.js,java,ios,下面为nodes.Js与java的sample下载地址
https://github.com/CassiaNetworks/CassiaHubSDKSamples/tree/master/samples

6.4 连接特性:

        Api串行连接(扫描广播包不需要),即:一个AP向多个蓝牙设备发起连接或断连请求时, 需要对终端进行串行连接/断连,等待上个请求结果回复后,再向下个路由器进行操作。而其他接口均可并发进行

6.5 API开发实例:

连接实例:
        Alt text

若返回OK则表示连接成功

扫描(sse)实例:
        Alt text