微信小店
微信门店
微信智能接口
微信设备功能

Html 5页面获取设备信息

出自微信公众平台开发者文档
跳转到: 导航, 搜索

接口说明

H5页面获取设备信息时,需先将设备进行分组管理。客户端在检测周边的设备信息时,若有归属分组的设备,则拉取这个设备所在分组的所有的设备,并持续地在H5页面返回当前能检测到的归属于这个分组的设备的UUID、major、minor和距离。

目录

新增分组

接口说明

新建设备分组,每个帐号下最多只有1000个分组。

接口调用说明

http请求方式: POST(请使用https协议)
https://api.weixin.qq.com/shakearound/device/group/add?access_token=ACCESS_TOKEN
POST数据格式: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_TOKEN
POST数据格式: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_TOKEN
POST数据格式: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_TOKEN
POST数据格式: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_TOKEN
POST数据格式: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_TOKEN
POST数据格式: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调用方法

开启查找周边ibeacon设备接口

接口说明

查找周边设备,目的是为有一定开发能力的商户提供查找自己周边设备的接口,在微信内置浏览器中被访问的网页,可使用该JS代码调起查找商家自己周边的设备,方便商家利用此接口来检查周边是否存在自己的设备。

微信客户端只要检测到有信号的设备即返回设备信息,在持续检测到有信号设备的情况下,间隔1S返回信息(部分Android机型由于rom原因间隔可能大于1S)。android与iOS皆批量返回检测到有信息的设备。

使用过程中,只需要验证startSearchBeacons、stopSearchBeacons两个接口的权限。因为onSearchBeacons接口是一个回调接口,只有当startSearchBeacons调用返回成功了,onSearchBeacons才有可能有回调。因此在设计此接口时,把onSearchBeacons接口的权限校验前置到了startSearchBeacons接口。换言之,只要startSearchBeacons接口权限校验通过了,那么onSearchBeacons接口的权限也就有了。

接口调用说明

示例:
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”。

关闭查找周边ibeacon设备接口

接口说明

关闭查找周边设备。

接口调用说明

示例:
wx.stopSearchBeacons({
   complete:function(res){
   //回调函数
   }
});


返回说明

关闭成功返回“stopSearchBeacons:ok”;

监听周边ibeacon设备接口

接口说明

监听周边设备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 距离,单位为米;当距离较远时,iOS会直接返回-1
proximity 精度,0:CLProximityUnknown, 1:CLProximityImmediate, 2:CLProximityNear, 3:CLProximityFar
rssi 接收信号的强度指示,单位是dBm;当距离较远时,iOS会直接返回0
heading 接收信号时设备的方向(安卓设备返回有此字段,iOS无);iOS设备若需要获取方向,可以利用HTML5标准API获取,查看示例