微信html5页面获取设备信息
新增分组
接口说明
新建设备分组,每个帐号下最多只有1000个分组。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/add?access_token=ACCESS_TOKENPOST数据格式:json
POST数据例子:
{
"group_name":"test"
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
group_name | 是 | 分组名称,不超过100汉字或200个英文字母 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
"group_id" : 123,
"group_name" : "test"
},
"errcode": 0,
"errmsg": "success."
}
参数说明
参数 | 说明 |
group_id | 分组唯一标识,全局唯一 |
group_name | 分组名 |
编辑分组信息
接口说明
编辑设备分组信息,目前只能修改分组名。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/update?access_token=ACCESS_TOKENPOST数据格式:json
POST数据例子:
{
"group_id":123,
"group_name":"test update"
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
group_id | 是 | 分组唯一标识,全局唯一 |
group_name | 是 | 分组名称,不超过100汉字或200个英文字母 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
},
"errcode": 0,
"errmsg": "success."
}
删除分组
接口说明
删除设备分组,若分组中还存在设备,则不能删除成功。需把设备移除以后,才能删除。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/delete?access_token=ACCESS_TOKENPOST数据格式:json
POST数据例子:
{
"group_id":123
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
group_id | 是 | 分组唯一标识,全局唯一 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
},
"errcode": 0,
"errmsg": "success."
}
查询分组列表
接口说明
查询账号下所有的分组。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/getlist? access_token=ACCESS_TOKEN
POST数据格式:json
POST数据例子:
{
"begin": 0,
"count" 10
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
begin | 是 | 分组列表的起始索引值 |
count | 是 | 待查询的分组数量,不能超过1000个 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
"total_count": 100,
"groups":[
{
"group_id" : 123,
"group_name" : "test1"
},
{
"group_id" : 124,
"group_name" : "test2"
}
]
},
"errcode": 0,
"errmsg": "success."
}
参数说明
参数 | 说明 | |
total_count | 是 | 此账号下现有的总分组数 |
groups | 是 | 分组列表 |
group_id | 是 | 分组唯一标识,全局唯一 |
group_name | 是 | 分组名 |
查询分组详情
接口说明
查询分组详情,包括分组名,分组id,分组里的设备列表。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/getdetail?access_token=ACCESS_TOKENPOST数据格式:json
POST数据例子:
{
"group_id":123
"begin":0,
"count":100
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
group_id | 是 | 分组唯一标识,全局唯一 |
begin | 是 | 分组里设备的起始索引值 |
count | 是 | 待查询的分组里设备的数量,不能超过1000个 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
"group_id" : 123,
"group_name" : "test",
"total_count": 100,
"devices" :[
{
"device_id" : 123456,
"uuid" : "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major" : 10001,
"minor" : 10001,
"comment" : "test device1",
"poi_id" : 12345,
},
{
"device_id" : 123457,
"uuid" : "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major" : 10001,
"minor" : 10002,
"comment" : "test device2",
"poi_id" : 12345,
}
]
},
"errcode": 0,
"errmsg": "success."
}
参数说明
参数 | 说明 |
group_id | 分组唯一标识,全局唯一 |
group_name | 分组名 |
total_count | 此分组现有的总设备数 |
devices | 分组下的设备列表 |
device_id | 设备编号,设备全局唯一ID |
uuid, major, minor | uuid, major, minor |
comment | 设备的备注信息 |
poi_id | 设备关联的门店ID,关联门店后,在门店1KM的范围内有优先摇出信息的机会。门店相关信息具体可查看门店相关的接口文档 |
添加设备到分组
接口说明
添加设备到分组,每个分组能够持有的设备上限为10000,并且每次添加操作的添加上限为1000。只有在摇周边申请的设备才能添加到分组。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/adddevice?access_token=ACCESS_TOKENPOST数据格式:json
POST数据例子:
{
"group_id": 123,
"device_identifiers":[
{
"device_id":10100,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major":10001,
"minor":10002
}
]
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
device_identifiers | 是 | 设备id列表 |
device_id | 是 | 设备编号,若填了UUID、major、minor,即可不填设备编号,二者选其一 |
UUID、major、minor | 是 | UUID、major、minor,三个信息需填写完成,若填了设备编号,即可不填此信息,二者选其一 |
group_id | 是 | 分组唯一标识,全局唯一 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
},
"errcode": 0,
"errmsg": "success."
}
从分组中移除设备
接口说明
从分组中移除设备,每次删除操作的上限为1000。
接口调用说明
http请求方式: POST(请使用https协议)https://api.weixin.qq.com/shakearound/device/group/deletedevice?access_token=ACCESS_TOKENPOST数据格式:json
POST数据例子:
{
"group_id": 123,
"device_identifiers":[
{
"device_id":10100,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major":10001,
"minor":10002
}
]
}
参数说明
参数 | 是否必须 | 说明 |
access_token | 是 | 调用接口凭证 |
device_identifiers | 是 | 设备id列表 |
device_id | 是 | 设备编号,若填了UUID、major、minor,即可不填设备编号,二者选其一 |
UUID、major、minor | 是 | UUID、major、minor,三个信息需填写完成,若填了设备编号,即可不填此信息,二者选其一 |
group_id | 是 | 分组唯一标识,全局唯一 |
返回说明
正常时的返回JSON数据包示例:
{
"data": {
},
"errcode": 0,
"errmsg": "success."
}
H5页面获取设备信息 JS API
目录
接口说明
H5页面获取设备信息 JS API是为了扩展摇周边应用的场景,让开发者能够在自己的H5应用上通过接入微信JS-SDK,实现搜索周边Beacon信号的一套api。在调用此接口之前,需要先把设备分组,微信客户端只会返回已在分组中的设备信息,如何把设备分组,请查看上述分组相关的接口描述。
H5页面获取设备信息JSAPI包括startSearchBeacons、stopSearchBeacons、onSearchBeacons三个接口,只支持6.2.5以上的微信版本调用,需使用微信JS-SDK调用,且调用的公众账号需与创建分组的公众账号一致。在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.1.0.js,查看具体JS-SDK调用方法。
接口说明
查找周边设备,目的是为有一定开发能力的商户提供查找自己周边设备的接口,在微信内置浏览器中被访问的网页,可使用该JS代码调起查找商家自己周边的设备,方便商家利用此接口来检查周边是否存在自己的设备。 微信客户端只要检测到有信号的设备即返回设备信息,时间间隔为1S,android与iOS皆批量返回检测到有信息的设备。
接口调用说明
示例:
wx.startSearchBeacons({
ticket:"",
complete:function(argv){
//回调函数
}
});
参数说明
参数 | 是否必须 | 说明 |
ticket | 否 | 摇周边的业务ticket,系统自动添加在摇出来的页面链接后面 |
返回说明
打开成功返回:“startSearchBeacons:ok”;
打开后未stop再次打开 :“startSearchBeacons:already started”;
蓝牙未打开返回 :“startSearchBeacons:bluetooth power off”;
地理位置服务未打开返回: “startSearchBeacons:location service disable”;
系统不支持返回 :“startSearchBeacons:system unsupported”。
接口说明
关闭查找周边设备。
接口调用说明
示例:
wx.stopSearchBeacons({
complete:function(res){
//回调函数
}
});
返回说明
关闭成功返回“stopSearchBeacons:ok”;
接口说明
监听周边设备onSearchBeacons接口是在startSearchBeacons接口开启后回调的,该接口返回该商家注册的在周边的相关设备。
接口调用说明
示例:
wx.onSearchBeacons({
complete:function(argv){
//回调函数
}
});
返回说明
onSearchBeacons:
{
"beacons":[
{
"major":10008,
"minor":57686,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"accuracy":"0.235344",
"rssi":"-66",
"proximity":"1",
"heading":"288.1355"
},
{
"major":10008,
"minor":57687,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"accuracy":"0.349124",
"rssi":"-49",
"proximity":"2",
"heading":"288.1355"
}
]
}
参数说明
参数 | 说明 |
UUID、major、minor | UUID、major、minor |
accuracy | 距离,单位为米 |
proximity | 精度,0:CLProximityUnknown, 1:CLProximityImmediate, 2:CLProximityNear, 3:CLProximityFar |
rssi | 接收信号的强度指示 |
heading | 接收信号时设备的方向(安卓设备返回有此字段,iOS无);iOS设备若需要获取方向,可以利用HTML5标准API获取,查看示例 |
更多建议: