private void doWapBolt(String imsi1, String eventType1, Long time1){
        String imsi = imsi1;
        String eventType = eventType1;
        long time = time1;
        if (time < nowTime - timeInterval) return;
        if (eventType.equals(EventTypeConst.EVENT_WAP_CONN)) {
//            if (userMap.containsKey(imsi)) {
//                userMap.remove(imsi);
//            }
            UserData userData = new UserData(time, new HashSet<Long>());
            userMap.put(imsi, userData);
//                connTime = time;
        } else if (eventType.equals(EventTypeConst.EVENT_WAP_USE)) {
            UserData userData = (UserData) userMap.get(imsi);
            if (userData == null){
                userData = new UserData(0, new HashSet<Long>());
                userMap.put(imsi, userData);
            }
//            if (userData.getTimeUseSet() == null) {
//                userData.setTimeUseSet(new HashSet<Long>());
//            }
//            if (userData.getConnTime() == 0L) {
//                userData.setConnTime(time);
//            }


            HashSet<Long> timeUseSet = (HashSet<Long>) userData.getTimeUseSet();
            timeUseSet.add(time);
            removeOutTime(timeUseSet, time);
//            userData.setTimeUseSet(timeUseSet);
            boolean match = checkUser(userData, time);
            if (match) {
                userMap.remove(imsi);
                countLogger.info(String.format("%s:%s/%s", imsi, TimeUtil.getTime(time), time));
//                System.out.println(String.format("match: %s, signal time:%s; on time: %s/%s", imsi, StringUtils.join(getTimeArr(timeUseSet.toArray()), ","), TimeUtil.getTime(time), time));
//                outputCollector.emit(WAPSTREAM, new Values(imsi, time));
//                System.out.println(String.format("Send sms to:%s on signal time:%s/%s ", imsi, TimeUtil.getTime(time), time));
            } else {
//                userMap.put(imsi, userData);
//                System.out.println(String.format("add time: %s : %s; on time: %s/%s", imsi, StringUtils.join(getTimeArr(timeUseSet.toArray()), ","), TimeUtil.getTime(time), time));
            }
        } else if (eventType.equals(EventTypeConst.EVENT_WAP_DISCONN)) {
            userMap.remove(imsi);
            // 考虑乱序，只删除断开连接信令时间之前的信令
//            System.out.println(String.format("remove from userMap: %s, on time: %s/%s", imsi, TimeUtil.getTime(time), time));
        } else {
            // do nothing
        }
    }