diff --git a/pom.xml b/pom.xml
index 4c14c71..76a25ad 100644
--- a/pom.xml
+++ b/pom.xml
@@ -234,33 +234,9 @@
- com.gexin.platform
- gexin-rp-fastjson
- 1.0.0.7
-
-
-
- com.google.protobuf
- protobuf-java
- 2.5.0
-
-
-
- com.gexin.platform
- gexin-rp-sdk-base
- 4.0.0.37
-
-
-
- com.gexin.platform
- gexin-rp-sdk-http
- 4.1.1.4
-
-
-
- com.gexin.platform
- gexin-rp-sdk-template
- 4.0.0.29
+ com.getui.push
+ restful-sdk
+ 1.0.6.0
diff --git a/src/main/java/com/ifish7/mq/push/AliyunPushApi.java b/src/main/java/com/ifish7/mq/push/AliyunPushApi.java
index 568f062..a58763c 100644
--- a/src/main/java/com/ifish7/mq/push/AliyunPushApi.java
+++ b/src/main/java/com/ifish7/mq/push/AliyunPushApi.java
@@ -9,15 +9,18 @@ import com.aliyuncs.push.model.v20160801.PushRequest;
import com.aliyuncs.push.model.v20160801.PushResponse;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-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.notify.Notify;
-import com.gexin.rp.sdk.dto.GtReq;
-import com.gexin.rp.sdk.http.IGtPush;
-import com.gexin.rp.sdk.template.NotificationTemplate;
-import com.gexin.rp.sdk.template.TransmissionTemplate;
-import com.gexin.rp.sdk.template.style.Style0;
+import com.getui.push.v2.sdk.ApiHelper;
+import com.getui.push.v2.sdk.GtApiConfiguration;
+import com.getui.push.v2.sdk.api.PushApi;
+import com.getui.push.v2.sdk.common.ApiResult;
+import com.getui.push.v2.sdk.dto.req.Audience;
+import com.getui.push.v2.sdk.dto.req.message.PushChannel;
+import com.getui.push.v2.sdk.dto.req.message.PushDTO;
+import com.getui.push.v2.sdk.dto.req.message.PushMessage;
+import com.getui.push.v2.sdk.dto.req.message.android.AndroidDTO;
+import com.getui.push.v2.sdk.dto.req.message.android.GTNotification;
+import com.getui.push.v2.sdk.dto.req.message.android.ThirdNotification;
+import com.getui.push.v2.sdk.dto.req.message.android.Ups;
import com.ifish7.mq.business.user.entity.TblAliyunDeviceInfo;
import com.ifish7.mq.business.user.entity.TblPushList;
import com.ifish7.mq.business.user.service.ITblAliyunDeviceInfoService;
@@ -27,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import java.security.MessageDigest;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
@@ -41,8 +45,6 @@ public class AliyunPushApi {
private final DefaultAcsClient client;
- private final IGtPush iGtPush = new IGtPush(HOST_HTTPS, "099ng3u5ud5pVGqsH0GlK", "w3yLh3Ng4j5JYqGYH7C7o9");
-
public AliyunPushApi(String regionId,String accessKeyId,String accessKeySecret){
client = new DefaultAcsClient(DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret));
@@ -53,8 +55,6 @@ public class AliyunPushApi {
//推送类型
private static final String PUSH_TYPE = "NOTICE";
- private static final String HOST_HTTPS = "https://api.getui.com/apiex.htm";
-
@Value("${android_app_key}")
private String androidAppKey;
@@ -154,33 +154,75 @@ public class AliyunPushApi {
}
}
- private void gtPush(TblPushList pushList, TblAliyunDeviceInfo aliyunDeviceInfo) {
- SingleMessage singleMessage = new SingleMessage();
- Notify notify = new Notify();
- notify.setTitle(pushList.getPushTitle());
- notify.setContent(pushList.getPushContext());
- notify.addExtKVToAll("/android/notification/importance","NORMAL");
- notify.addXMExtKV("/extra.channel_id", "131247");
-
- TransmissionTemplate transmissionTemplate = new TransmissionTemplate();
- transmissionTemplate.setTransmissionType(2); // 透传消息接受方式设置:1:立即启动APP 2:客户端收到消息后需要自行处理
-
- transmissionTemplate.setAppId(gtAppId);
- transmissionTemplate.setAppkey(gtAppKey);
- transmissionTemplate.set3rdNotifyInfo(notify);
- singleMessage.setData(transmissionTemplate);
- singleMessage.setOffline(true);
- singleMessage.setOfflineExpireTime(72 * 3600000L);
- Target target = new Target();
- target.setAppId(gtAppId);
- target.setClientId(aliyunDeviceInfo.getAliyunDeviceId());
- IPushResult pushResult = iGtPush.pushMessageToSingle(singleMessage, target);
- Map response = pushResult.getResponse();
- log.info("gtPush request : " + JSONObject.toJSONString(singleMessage) + " , response : " + JSONObject.toJSONString(response));
+ public static ApiHelper apiHelper = null;
+ public static PushApi pushApi = null;
+ static {
+ System.setProperty("http.maxConnections", "200");
+ GtApiConfiguration apiConfiguration = new GtApiConfiguration();
+ //填写应用配置
+ apiConfiguration.setAppId("C2ZpsHzexi5UKuUKyW0Ig");
+ apiConfiguration.setAppKey("099ng3u5ud5pVGqsH0GlK");
+ apiConfiguration.setMasterSecret("w3yLh3Ng4j5JYqGYH7C7o9");
+ // 接口调用前缀,请查看文档: 接口调用规范 -> 接口前缀
+ apiConfiguration.setDomain("https://restapi.getui.com/v2/");
+ apiHelper = ApiHelper.build(apiConfiguration);
+ pushApi = apiHelper.creatApi(PushApi.class);
}
+ private void gtPush(TblPushList pushList, TblAliyunDeviceInfo aliyunDeviceInfo) {
+
+ //根据cid进行单推
+ PushDTO pushDTO = new PushDTO<>();
+ // 设置推送参数
+ pushDTO.setRequestId(System.currentTimeMillis() + "");
+ PushMessage pushMessage = new PushMessage();
+ pushDTO.setPushMessage(pushMessage);
+ GTNotification notification = new GTNotification();
+ pushMessage.setNotification(notification);
+ notification.setTitle(pushList.getPushTitle());
+ notification.setBody(pushList.getPushContext());
+ notification.setClickType("startapp");
+
+ PushChannel pushChannel = new PushChannel();
+ pushDTO.setPushChannel(pushChannel);
+ /*配置安卓厂商参数*/
+ AndroidDTO androidDTO = new AndroidDTO();
+ Ups ups = new Ups();
+ ThirdNotification thirdNotification = new ThirdNotification();
+ thirdNotification.setTitle(pushList.getPushTitle());
+ thirdNotification.setBody(pushList.getPushContext());
+ thirdNotification.setClickType("startapp");
+ ups.setNotification(thirdNotification);
+ Map> options = new HashMap<>();
+ Map HO = new HashMap<>();
+ HO.put("/android/notification/importance", "NORMAL");
+ options.put("HO", HO);
+ Map HW = new HashMap<>();
+ HW.put("/message/android/category", "WORK");
+ options.put("HW", HW);
+ Map XM = new HashMap<>();
+ XM.put("/extra.channel_id", "131247");
+ options.put("XM", XM);
+ Map OP = new HashMap<>();
+ OP.put("/channel_id", "push_oplus_category_content");
+ options.put("OP", OP);
+ ups.setOptions(options);
+ androidDTO.setUps(ups);
+ pushChannel.setAndroid(androidDTO);
+ Audience audience = new Audience();
+ pushDTO.setAudience(audience);
+ audience.addCid(aliyunDeviceInfo.getAliyunDeviceId());
+ // 进行cid单推
+ ApiResult