让你家的WIFI装逼

一、新建门店javascript

添加功能插件--》门店管理--》新建门店(如今是能够随便建的,免费能够作测试)css

二、WIFI链接html

添加功能插件--》微信链接WIFI--》设备管理--》添加设备java

2.一、在这里咱们能够看到添加门店web

2.二、两种类型选择
json

2.2.一、密码型浏览器

直接输入WIFI名和密码(注意WIFI用户名和密码必须其中一个是WX开头)服务器

效果图:直接生成二维码,扫码后复制密码直接链接微信

2.2.二、portal型app

(这里生成的参数,代码中须要配置)

注意官网提出:

(注意:签名须从后台传递(其实也能够直接用JS的MD5加密))

注意:连接WIFI的URL不能在微信中打开,必须在浏览器中打开,而后点击连接,会自动跳转到微信)

 md5.js的连接:https://yunpan.cn/cqfjUBTjr634w  访问密码 85b6

<%
request.setAttribute("ctx", request.getContextPath());
%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="utf-8"%>
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>微信连Wi-Fi</title>
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="format-detection" content="telephone=no">
    <script type="text/javascript">
        /**
         * 微信连Wi-Fi协议3.1供运营商portal呼起微信浏览器使用
         */
        var loadIframe = null;
        var noResponse = null;
        var callUpTimestamp = 0;

        function putNoResponse(ev){
             clearTimeout(noResponse);
        }

         function errorJump()
         {
             var now = new Date().getTime();
             if((now - callUpTimestamp) > 4*1000){
                 return;
             }
             alert('该浏览器不支持自动跳转微信请手动打开微信\n若是已跳转请忽略此提示');
         }

         myHandler = function(error) {
             errorJump();
         };

         function createIframe(){
             var iframe = document.createElement("iframe");
             iframe.style.cssText = "display:none;width:0px;height:0px;";
             document.body.appendChild(iframe);
             loadIframe = iframe;
         }
        //注册回调函数
        function jsonpCallback(result){
            if(result && result.success){
                //成功的回调函数
                alert('WeChat will call up : ' + result.success + '  data:' + result.data);
                var ua=navigator.userAgent;
                if (ua.indexOf("iPhone") != -1 ||ua.indexOf("iPod")!=-1||ua.indexOf("iPad") != -1) {   //iPhone
                    document.location = result.data;
                }else{

                    if('false'=='true'){
                        alert('[强制]该浏览器不支持自动跳转微信请手动打开微信\n若是已跳转请忽略此提示');
                        return;
                    }

                    createIframe();
                    callUpTimestamp = new Date().getTime();
                    loadIframe.src=result.data;
                    noResponse = setTimeout(function(){
                        errorJump();
                      },3000);
                }
            }else if(result && !result.success){
                alert(result.data);
            }
        }

        function Wechat_GotoRedirect(appId, extend, timestamp, sign, shopId, authUrl, mac, ssid, bssid){

            //将回调函数名称带到服务器端
            var url = "https://wifi.weixin.qq.com/operator/callWechatBrowser.xhtml?appId=" + appId
                                                                                + "&extend=" + extend
                                                                                + "&timestamp=" + timestamp
                                                                                + "&sign=" + sign;

            //若是sign后面的参数有值,则是新3.1发起的流程
            if(authUrl && shopId){
                url = "https://wifi.weixin.qq.com/operator/callWechat.xhtml?appId=" + appId
                                                                                + "&extend=" + extend
                                                                                + "&timestamp=" + timestamp
                                                                                + "&sign=" + sign
                                                                                + "&shopId=" + shopId
                                                                                + "&authUrl=" + encodeURIComponent(authUrl)
                                                                                + "&mac=" + mac
                                                                                + "&ssid=" + ssid
                                                                                + "&bssid=" + bssid;

            }

            //经过dom操做建立script节点实现异步请求
            var script = document.createElement('script');
            script.setAttribute('src', url);
            document.getElementsByTagName('head')[0].appendChild(script);
        }
    </script>
    <link rel="stylesheet" href="https://wifi.weixin.qq.com/resources/css/style-simple-follow.css"/>
</head>
<body>
<div>
    <div>
        <img src="https://wifi.weixin.qq.com/resources/images/background.jpg" alt=""/>
        <div></div>
        <div>
            <img src="https://wifi.weixin.qq.com/resources/images/t.weixin.logo.png" alt=""/>
            <p></p>
            <p>欢迎您</p>
        </div>
    </div>
    <div>
        <p>欢迎使用微信连Wi-Fi</p>
        <a onclick="callWechatBrowser()">一键打开微信连Wi-Fi</a>
    </div>
</div>
</body>
<script type="text/javascript" src="${ctx}/wifi/js/md5.js"></script>
<script type="text/javascript">
    var appId          = "appId";
    var secretkey      = "secretkey";
    var extend         = "curtain";       //开发者自定义参数集合
    var timestamp      = new Date().getTime();    //时间戳(毫秒)
    var shop_id        = "4544921";               //AP设备所在门店的ID
    var authUrl        = "外网URL";        //认证服务端URL
    var mac            = "A4:5E:60:28:82:8C";     //用户手机mac地址 安卓设备必需
    var ssid           = "WXCURTAIN";         //AP设备信号名称,非必须
    var bssid          = "18:67:B0:A8:BE:93";     //AP设备mac地址,非必须

    function callWechatBrowser(){
        var sign = hex_md5(appId + extend + timestamp + shop_id + authUrl + mac + ssid + bssid + secretkey);
        Wechat_GotoRedirect(appId, extend, timestamp, sign, shop_id, authUrl, mac, ssid, bssid);
    }
</script>

<script type="text/javascript">
    document.addEventListener('visibilitychange', putNoResponse, false);
</script>
</html>

效果图:

注意:

联网成功后能够作些处理,好比发卡券。红包。作些推广等等。可是目前只支持认证的公众号(不然,未认证的只能是默认的欢迎页面)

相关文章
相关标签/搜索