package com.jysoft.unipush;
import com.aostarit.mobile.client.message.api.client.MsgQueryClient;
import com.aostarit.mobile.client.message.api.client.MsgRequestClient;
import com.aostarit.mobile.client.message.api.client.MsgSendClient;
import com.aostarit.mobile.client.message.api.config.WxMsgConfig;
import com.aostarit.mobile.client.message.api.entity.SendMsgParams;
import com.aostarit.mobile.client.message.api.entity.WxSendMsgResult;
import com.gexin.fastjson.JSON;
import com.gexin.fastjson.JSONArray;
import com.gexin.rp.sdk.base.IAliasResult;
import com.gexin.rp.sdk.base.IBatch;
import com.gexin.rp.sdk.base.IPushResult;
import com.gexin.rp.sdk.base.impl.SingleMessage;
import com.gexin.rp.sdk.base.impl.Target;
import com.gexin.rp.sdk.base.impl.Transparent.Notification;
import com.gexin.rp.sdk.base.notify.Notify;
import com.gexin.rp.sdk.base.payload.APNPayload;
import com.gexin.rp.sdk.template.AbstractTemplate;
import com.gexin.rp.sdk.template.NotificationTemplate;
import com.gexin.rp.sdk.template.StartActivityTemplate;
import com.gexin.rp.sdk.template.TransmissionTemplate;
import com.jysoft.igwmessage.ExecutorsUtils;
import com.jysoft.igwmessage.MsgClientUtils;
import com.jysoft.unipush.template.PushStyle;
import com.jysoft.unipush.template.PushTemplate;
import com.nationalelectirc.Constant.Constant;
import com.nationalelectirc.utils.RestResult;
import com.nationalelectric.greenH5.GreenBaseController;
import com.nationalelectric.greenH5.po.GreenNotice;
import com.sgcc.uap.mdd.model.utils.StringUtil;
import com.sgcc.uap.persistence.IHibernateDao;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import static com.jysoft.unipush.constant.AppInfo.*;
/**
* unipush工具类
*
* @author wangjianxing
* @see
* @since 2020-07-17
*/
public class AliasManage{
/**
* clientid绑定alias
*
* @author wangjianxing
* @see
* @since 2020-07-17
*/
public static void bindAlias(String clientId,String alias){
//根据alias获取历史绑定的clientId
try{
IAliasResult ret = push.bindAlias(APPID, alias, clientId);
System.out.println("绑定结果:" + ret.getResponse());
ret = push.queryClientId(APPID, alias);
System.out.println("根据别名获取的CID:" + ret.getResponse().get("cidlist"));
}catch(Exception e){
e.printStackTrace();
}
}
/**
* 批量单推
*
* 当单推任务较多时,推荐使用该接口,可以减少与服务端的交互次数。
*/
public static void pushToSingleBatch(List