package com.yeshi.fanli.util.push;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import javax.annotation.Resource;
|
|
import com.yeshi.fanli.entity.xinge.MessageInfo;
|
import com.yeshi.fanli.entity.xinge.PushRecord;
|
import com.yeshi.fanli.log.LogHelper;
|
import com.yeshi.fanli.service.inter.push.PushService;
|
import com.yeshi.fanli.util.Constant;
|
import com.yeshi.fanli.util.StringUtil;
|
|
import net.sf.json.JSONObject;
|
|
public class PushUtils {
|
|
@Resource
|
private PushService pushService;
|
|
/**
|
* 小米全推
|
*
|
* @param info
|
* @param json
|
* @param pushRecord
|
* @return
|
* @throws Exception
|
*/
|
public static int allPushXiaoMi(MessageInfo info, JSONObject json, PushRecord pushRecord) throws Exception {
|
|
if (Constant.IS_TEST)
|
return 1;
|
|
JSONObject mapXm = JSONObject.fromObject(json);
|
String android = XiaoMiPushUtil.allPushAndroidForXM(info, mapXm);
|
|
LogHelper.userInfo("安卓推送测试:" + android);
|
pushRecord.setAndroidPushId(android);
|
|
if (android != null) {
|
return 1;
|
} else {
|
return 4;
|
}
|
}
|
|
/**
|
* IOS 全推送
|
*
|
* @param info
|
* @param json
|
* @param pushRecord
|
* @param type
|
* @param deviceTokenList
|
* @return
|
* @throws Exception
|
*/
|
public static int allPushIOS(MessageInfo info, PushRecord pushRecord, String url, int type,
|
List<String> deviceTokenList,String pwd) throws Exception {
|
|
/*
|
* com.yeshi.fanli.entity.system.System b_IOS =
|
* systemService.getSystem("IOS",
|
* Constant.systemCommonConfig.getIosBundleId());
|
*/
|
|
if (Constant.IS_TEST)
|
return 1;
|
|
String IOS = IOSPushUtil.allPushIOS(deviceTokenList, info, url, type,pwd);
|
LogHelper.userInfo("IOS的推送日志:" + IOS);
|
pushRecord.setIosPushId(IOS);
|
|
if (IOS != null) {
|
return 1;
|
} else {
|
return 4;
|
}
|
}
|
|
/**
|
* 小米单推
|
*
|
* @param info
|
* @param json
|
* @return
|
*/
|
public static int singlePushXiaoMi(MessageInfo info, JSONObject json,List<String> regIds, PushRecord pushRecord) {
|
// if (Constant.IS_TEST)
|
// return 1;
|
|
JSONObject mapXm = JSONObject.fromObject(json);
|
|
String android = XiaoMiPushUtil.singlePushAndroidForXM(info, mapXm,regIds, null);
|
|
LogHelper.userInfo("安卓推送测试:" + android);
|
pushRecord.setAndroidPushId(android);
|
|
if (android != null) {
|
return 1;
|
} else {
|
return 4;
|
}
|
}
|
|
public static int singlePushXiaoMiByRegisterId(MessageInfo info, JSONObject json, PushRecord pushRecord,
|
String regId) {
|
if (Constant.IS_TEST)
|
return 1;
|
|
JSONObject mapXm = JSONObject.fromObject(json);
|
|
List<String> regIdList = new ArrayList<>();
|
regIdList.add(regId);
|
String android = XiaoMiPushUtil.pushBatchAndroidForXM(info, mapXm, regIdList);
|
|
LogHelper.userInfo("安卓推送测试:" + android);
|
pushRecord.setAndroidPushId(android);
|
|
if (android != null) {
|
return 1;
|
} else {
|
return 4;
|
}
|
}
|
|
/**
|
* IOS 单推
|
*
|
* @param info
|
* @param url
|
* @param type
|
* @param deviceTokenList
|
* @return
|
*/
|
public static String singlePushIOS(MessageInfo info, PushRecord pushRecord, String url, int type,
|
List<String> deviceTokenList, String pwd) {
|
if (Constant.IS_TEST)
|
return null;
|
if (deviceTokenList != null && deviceTokenList.size() > 0) {
|
for (String deviceToken : deviceTokenList) {
|
if (!StringUtil.isNullOrEmpty(deviceToken)) {
|
try {
|
List<String> deviceList = new ArrayList<>();
|
deviceList.add(deviceToken);
|
String IOS = IOSPushUtil.allPushIOS(deviceList, info, url, type,pwd);
|
pushRecord.setIosPushId(IOS);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
|
}
|
}
|
|
return null;
|
}
|
|
}
|