资讯动态

微信小程序之Wi-Fi-小程序打通接口文档

日期:2017-12-27 作者:管理员 来源:互联网

微信小程序之Wi-Fi-小程序打通接口文档,微信小程序用户连Wi-Fi后长期逗留在场所内,可以在连接Wi-Fi后进入微信点击微信聊首页欢迎语,即可进入预先设置的小程序中获得资讯或服务,查询门店WiFi信息接口和连Wi-Fi完成页跳转小程序。


目录:

1、连Wi-Fi完成页跳小程序
2、商户主页跳转小程序
3、查询门店Wi-Fi信息接口

1、连Wi-Fi完成页跳转小程序

设置联网完成页接口

场景介绍:
设置需要跳转的小程序,连网完成点击“完成”按钮,即可进入设置的小程序。

注:只能跳转与公众号关联的小程序。

接口调用
接口调用说明

协议:https
请求方式: POST  
请求URL: https://api.weixin.qq.com/bizwifi/finishpage/set?access_token=ACCESS_TOKEN  
POST数据格式:JSON

请求参数说明

参数 是否必填 说明
access_token 调用接口凭证
POST数据 JSON数据

POST数据

数据示例:

{
  "shop_id": 429620,
  "finishpage_url": "",  
  "wxa_user_name": "gh_966b66e00888",  
  "wxa_path": "pages/index/index",  
  "finishpage_type": 1  
}

字段说明

字段 是否必填 说明
shop_name 门店名称
finishpage_url 连网完成页URL,finishpage_type为0时有效
wxa_user_name 连网完成页跳转小程序原始id,finishpage_type为1时有效,要求小程序与公众号有绑定关系
wxa_path 连网完成页跳转小程序路径,finishpage_type为1时有效,需要做urlencode
finishpage_type 连网完成页跳转类型,0为H5,1为小程序

##2、设置顶部banner跳转小程序接口

场景介绍:

用户连Wi-Fi后长期逗留在场所内,可以在连接Wi-Fi后进入微信点击微信聊首页欢迎语,即可进入预先设置的小程序中获得资讯或服务。

注:只能跳转与公众号关联的小程序。

接口调用

接口调用说明

协议:https
请求方式: POST  
请求URL:https://api.weixin.qq.com/bizwifi/homepage/set?access_token=ACCESS_TOKEN  
POST数据格式:JSON

请求参数说明

参数 是否必填 说明
access_token 调用接口凭证
POST数据 JSON数据

POST数据

数据示例:

{
    "shop_id": 2200766,  
    "template_id": 2,  
    "struct": {  
        "wxa_user_name": "gh_5cb1b4334f3a",  
        "wxa_path": "index.html?query=abc"  
    }
}

字段说明

字段 是否必填 说明
shop_id 门店ID
template_id 2-关联小程序(支持门店小程序)
struct 连网完成页跳转小程序原始id,finishpage_type为1时有效,要求小程序与公众号有绑定关系
wxa_user_name 账号原始ID
wxa_path 小程序页面路径

3、查询门店WiFi信息接口

场景介绍

接口调用说明

协议:https  
http请求方式: POST  
请求URL:https://api.weixin.qq.com/bizwifi/shop/get?access_token=ACCESS_TOKEN  
POST数据格式:JSON

请求参数说明

参数 是否必填 说明
access_token 调用接口凭证
POST数据 JSON数据

POST数据

数据示例:

{  
  "errcode": 0,  
  "data": {  
    "shop_name": "南山店",  
    "ssid": " WX123",  
    "ssid_list": [  
      "WX123",  
      "WX456"  
    ],  
    "ssid_password_list": [  
      {  
        "ssid": "WX123",  
        "password": "123456789"  
      },  
      {  
        "ssid": "WX456",  
        "password": "21332465dge"  
      }  
    ],  
    "password": "123456789",  
    "protocol_type": 4,  
    "ap_count": 2,  
    "template_id": 1,  
    "homepage_url": "http://www.weixin.qq.com/",  
    "bar_type": 1,  
    "sid":"",  
    "poi_id":"285633617",  
    "homepage_wxa_user_name":"",  
    "homepage_wxa_path":"",  
    "finishpage_url":"",  
    "finishpage_wxa_user_name":"gh_966b66e00888",  
    "finishpage_wxa_path":"pages/index/index",  
    "finishpage_type":1,  
  }  
}

字段说明

字段 是否必填 说明
shop_name 门店名称
ssid 无线网络设备的ssid,未添加设备为空,多个ssid时显示第一个
ssid_list 无线网络设备的ssid列表,返回数组格式
ssid_password_list ssid和密码的列表,数组格式。当为密码型设备时,密码才有值
password 设备密码,当设备类型为密码型时返回
protocol_type 门店内设备的设备类型,0-未添加设备,4-密码型设备,31-portal型设备
ap_count 门店内设备总数
template_id 商家主页(bar条)模板类型 0 默认页 1 自定义h5 2 跳转小程序
homepage_url 商家主页(bar条)链接
bar_type 顶部常驻入口上显示的文本内容:0--欢迎光临+公众号名称;1--欢迎光临+门店名称;2--已连接+公众号名称+WiFi;3--已连接+门店名称+Wi-Fi
finishpage_url 连网完成页链接,finishpage_type为0时有效
sid 商户自己的id,与门店poi_id对应关系,建议在添加门店时候建立关联关系,具体请参考“微信门店接口”
poi_id 门店ID(适用于微信卡券、微信门店业务),具体定义参考微信门店,与shop_id一一对应。
homepage_wxa_user_name 商家主页(bar条)跳转的小程序原始id,template_id为2时有效
finishpage_wxa_user_name 完成页跳转的小程序原始id,finishpage_type为1时有效
inishpage_wxa_path 完成页跳转的小程序路径,需要做urlencode,finishpage_type为1时有效
finishpage_type 完成页跳转类型 0为H5;1为小程序

在小程序中支持搜索周边的 Wi-Fi,同时可以针对指定 Wi-Fi,传入密码发起连接。

该系列接口为系统原生能力,如需查看“微信连Wi-Fi”能力及配置跳转小程序,请参考文档。

连接指定 Wi-Fi 接口调用时序:

  • Android: startWifi —> connectWifi —> onWifiConnected

  • iOS(仅iOS 11及以上版本支持):
    startWifi —> connectWifi —> onWifiConnected

连周边 Wi-Fi 接口调用时序:

  • Android startWifi —> getWifiList —> onGetWifiList —> connectWifi —> onWifiConnected

  • iOS(iOS 11.0及11.1版本因系统原因暂不支持):
    startWifi —> getWifiList —> onGetWifiList —> setWifiList —> onWifiConnected

注意:

  • Wi-Fi 相关接口暂不可用 wx.canIUse 接口判断。

  • Android 6.0 以上版本,在没有打开定位开关的时候会导致设备不能正常获取周边的 Wi-Fi 信息。

wx.startWifi(OBJECT)

基础库 1.6.0 开始支持,低版本需做兼容处理

初始化 Wi-Fi 模块。

OBJECT参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.startWifi({
  success: function(res) { console.log(res.errMsg)
  }
})

wx.stopWifi(OBJECT)

基础库 1.6.0 开始支持,低版本需做兼容处理

关闭 Wi-Fi 模块。

OBJECT参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.stopWifi({
  success: function(res) { console.log(res.errMsg)
  }
})

wx.connectWifi(OBJECT)

基础库 1.6.0 开始支持,低版本需做兼容处理

连接 Wi-Fi。若已知 Wi-Fi 信息,可以直接利用该接口连接。仅 Android 与 iOS 11 以上版本支持。

OBJECT参数说明:

参数 类型 必填 说明
SSID String Wi-Fi 设备ssid
BSSID String Wi-Fi 设备bssid
password String Wi-Fi 设备密码
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码:

wx.connectWifi({
  SSID: '',
  BSSID: '',
  success: function(res) { console.log(res.errMsg)
  }
})

wx.getWifiList(OBJECT)

基础库 1.6.0 开始支持,低版本需做兼容处理

请求获取 Wi-Fi 列表,在 onGetWifiList 注册的回调中返回 wifiList 数据。iOS 将跳转到系统的 Wi-Fi 界面,Android 不会跳转。 iOS 11.0 及 iOS 11.1 两个版本因系统问题,该方法失效。但在 iOS 11.2 中已修复。

OBJECT参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

wx.onGetWifiList(CALLBACK)

基础库 1.6.0 开始支持,低版本需做兼容处理

监听在获取到 Wi-Fi 列表数据时的事件,在回调中将返回 wifiList。

CALLBACK 返回参数说明:

参数 类型 说明
wifiList Array Wi-Fi 列表数据

Wi-Fi 列表项说明:

参数 类型 说明
SSID String Wi-Fi 的SSID
BSSID String Wi-Fi 的BSSID
secure Boolean Wi-Fi 是否安全
signalStrength Number Wi-Fi 信号强度

wx.setWifiList(OBJECT)

基础库 1.6.0 开始支持,低版本需做兼容处理

iOS特有接口 在 onGetWifiList 回调后,利用接口设置 wifiList 中 AP 的相关信息。

注意:

  1. 该接口只能在 onGetWifiList 回调之后才能调用。

  2. 此时客户端会挂起,等待小程序设置 Wi-Fi 信息,请务必尽快调用该接口,若无数据请传入一个空数组。

  3. 有可能随着周边 Wi-Fi 列表的刷新,单个流程内收到多次带有存在重复的 Wi-Fi 列表的回调。

OBJECT参数说明:

参数 类型 必填 说明
wifiList Array 提供预设的 Wi-Fi 信息列表
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

Wi-Fi 信息列表项说明:

参数 类型 说明
SSID String Wi-Fi 设备ssid
BSSID String Wi-Fi 设备bssid
password String Wi-Fi 设备密码

示例代码:

wx.onGetWifiList({
  success: function(res) { if (res.wifiList.length) {
      wx.setWifiList({
        wifiList: [{
          SSID: res.wifiList[0].SSID,
          BSSID: res.wifiList[0].BSSID,
          password: '123456' }]
      })
    } else {
      wx.setWifiList({
        wifiList: []
      })
    }
  }
})
wx.getWifiList()

wx.onWifiConnected(CALLBACK)

基础库 1.6.0 开始支持,低版本需做兼容处理

监听连接上 Wi-Fi 的事件。

CALLBACK 返回参数说明:

参数 类型 说明
wifi Object Wi-Fi 信息

wifi对象说明:

参数 类型 说明
SSID String Wi-Fi 的SSID
BSSID String Wi-Fi 的BSSID
secure Boolean Wi-Fi 是否安全
signalStrength Number Wi-Fi 信号强度

wx.getConnectedWifi(OBJECT)

基础库 1.6.0 开始支持,低版本需做兼容处理

获取已连接中的 Wi-Fi 信息

OBJECT参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明:

参数 类型 说明
wifi Object Wi-Fi 信息

wifi对象说明:

参数 类型 说明
SSID String Wi-Fi 的SSID
BSSID String Wi-Fi 的BSSID
secure Boolean Wi-Fi 是否安全
signalStrength Number Wi-Fi 信号强度

errCode列表

每个接口调用的时候,都会返回 errCode 字段。

错误码 说明 备注
0 ok 正常
12000 not init 未先调用startWifi接口
12001 system not support 当前系统不支持相关能力
12002 password error Wi-Fi 密码错误
12003 connection timeout 连接超时
12004 duplicate request 重复连接 Wi-Fi
12005 wifi not turned on Android特有,未打开 Wi-Fi 开关
12006 gps not turned on Android特有,未打开 GPS 定位开关
12007 user denied 用户拒绝授权链接 Wi-Fi
12008 invalid SSID 无效SSID
12009 system config err 系统运营商配置拒绝连接 Wi-Fi
12010 system internal error 系统其他错误,需要在errmsg打印具体的错误原因
12011 weapp in background 应用在后台无法配置 Wi-Fi


二维码
扫二维码手机查看该文章
当前网址:http://xyvt.cn/wechat/462.html

相关资讯


Copyright © 2007-2024 珠海市网讯互联信息科技有限公司 xyvt.cn 版权所有
粤公网安备44040202000391号 粤ICP备19117377号 网站地图 站点地图
在线客服
hdgfbdz@gmail.com链接链接链接链接链接