微信连wifi3.1总结

一、用户前期的准备工作。

在微信公众平台(以下简称mp平台)开通微信连Wi-Fi插件,并进行以下操作,来获取门店Wi-Fi信息:
  1. 进入【设备管理】->【添加设备】页面
  2. 选择设备所属门店(如果没有门店,根据提示,在门店管理界面添加门店)
  3. 选择设备类型:portal型设备—设备改造后接入
  4. 设置网络名称(SSID)
  5. 点击“添加”按钮
  6. 复制门店Wi-Fi信息,包含:门店名称,SSID,shopId,appId,secretKey(前往爱快云平台,将该信息填写到微信连wifi3.1的协议配置中并保存)
  7. 扫码绑定成为Wi-Fi管理员

二、微信连wifi3.1流程概要(以下简称wifi3.1)

wifi3.1时序图

这里写图片描述
上一个版本的微信连wifi,最终放行参数只需要连接认证ap客户端的ip地址,所以在测试时一切从简,透传参数只带客户端ip,不带任何签名验证之类的参数。
根据时序图,我来简单的理一下现在的放行顺序

  1. 用户手动选择ssid,并连接,触发portal页,选择微信认证。
  2. 进入唤起微信客户端的中间页,具体唤起流程如下:
    中间页调用微信提供的js方法Wechat_GotoRedirect()方法来唤起微信。
    调用该方法示例:
    Wechat_GotoRedirect(
    appId,         //用户在爱快云平台保存的appID
    extend,        //放行用户需要的相关参数,暂时只有ip
    timestamp,     //当前时间戳,毫秒级
    sign,          //本地生成签名,供微信服务器验证
    shopId,        //用户在爱快云平台保存的shopID
    authUrl,       //认证地址,爱快云服务器认证地址(给微信服务器返回302)
    mac,           //认证用户客户端mac
    ssid,          //ap的ssid
    bssid          //ap的bssid
    ); 
    签名算法
    //最后参与计算的secretKey是用户在爱快云平台保存的参数。这里所提到的用户保存参数均来源于用户在mp平台获取的四个参数
    sign = MD5(appId + extend + timestamp + shopId + authUrl + mac + ssid + bssid + secretKey);
  1. 微信服务器端签名验证通过之后,将唤起微信客户端,微信客户端被呼起后,将自动向Portal传递过来的authUrl提交extend,微信客户端将视authUrl的http返回,提示用户连网成功与否:
  2. 微信访问authUrl的形式:http://www.foo.com/portal/auth.html?extend=xxx&openId=xxx&tid=xxx
    extend为放行参数(目前是认证客户机IP),其余参数暂不用处理。
  3. 向authUrl发起请求时,认证服务器若返回200,则认为服务认证成功,微信客户端界面将变为完成页,并默认勾选关注,用户点击“完成”按钮后,将跳转到商家主页;若认证服务器需要转移认证请求,可以返回302,并将转跳目标的完整的authUrl给到微信客户端,微信客户端将向新的authUrl重新发起一次请求,302跳转仅支持一次。对于非200和302,或者超过次数的302返回,视为连接失败。
  4. 目前我设计的流程是 authUrl为5号机上的一个地址来处理微信客户端的请求。将extend参数取出,重新组装一个302跳转地址(http://portal.ikuai8.com/wechat/login.php?ip=extend)返回给微信客户端,微信客户端将会重新请求这个路由器内部地址。返回http状态码200表示认证通过,否则表示认证失败。

三、爱快云平台配置和唤起微信中间页的生成

  1. 配置保存
    用户填写mp平台获取的门店信息
  2. 根据配置生成中间页
    通过模板生成脚本获取用户参数来生成中间页,详细过程暂不表述,然后下发路由器。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值