REQ-3201: 运营push
This commit is contained in:
parent
294c9091e1
commit
642abd40f0
@ -2,8 +2,10 @@ package cn.axzo.msg.center.inside.notices.service.impl;
|
||||
|
||||
|
||||
import cn.axzo.msg.center.api.MessagePushApi;
|
||||
import cn.axzo.msg.center.api.request.BuildNimPayloadRequest;
|
||||
import cn.axzo.msg.center.api.request.MsgBody4Guest;
|
||||
import cn.axzo.msg.center.inside.notices.service.IYouMengMessageService;
|
||||
import cn.axzo.msg.center.nimpush.NimPushService;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -20,6 +22,8 @@ public class MessagePushApiImpl implements MessagePushApi {
|
||||
|
||||
@Autowired
|
||||
private IYouMengMessageService youMengMessageService;
|
||||
@Autowired
|
||||
private NimPushService nimPushService;
|
||||
|
||||
@Override
|
||||
public CommonResponse<Void> sendPushMessage(MsgBody4Guest msgBody) {
|
||||
@ -27,4 +31,12 @@ public class MessagePushApiImpl implements MessagePushApi {
|
||||
youMengMessageService.sendPushMessage(msgBody);
|
||||
return CommonResponse.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommonResponse<String> buildNimPayload(BuildNimPayloadRequest request) {
|
||||
log.info("buildNimPayload, request={}", request);
|
||||
String payload = nimPushService.buildPayloadString(request, request.getPushPeer());
|
||||
return CommonResponse.success(payload);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -21,10 +21,10 @@ import cn.axzo.msg.center.message.service.impl.v3.ModelV3Parser;
|
||||
import cn.axzo.msg.center.message.service.impl.v3.UrlParser;
|
||||
import cn.axzo.msg.center.nimpush.NimPushService;
|
||||
import cn.axzo.msg.center.nimpush.PushChannel;
|
||||
import cn.axzo.msg.center.nimpush.PushPeer;
|
||||
import cn.axzo.msg.center.nimpush.device.PushDeviceSnapshots;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.Intent;
|
||||
import cn.axzo.msg.center.push.PushData;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import cn.axzo.msg.center.service.dto.PersonV3DTO;
|
||||
import cn.axzo.msg.center.service.enums.Channel;
|
||||
import cn.axzo.msg.center.service.enums.OrganizationTypeEnum;
|
||||
|
||||
@ -16,10 +16,10 @@ import cn.axzo.msg.center.message.service.impl.v3.ModelV3Parser;
|
||||
import cn.axzo.msg.center.message.service.impl.v3.ModelV3Service;
|
||||
import cn.axzo.msg.center.message.service.impl.v3.UrlParser;
|
||||
import cn.axzo.msg.center.nimpush.NimPushService;
|
||||
import cn.axzo.msg.center.nimpush.PushPeer;
|
||||
import cn.axzo.msg.center.nimpush.device.PushDeviceSnapshots;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.Intent;
|
||||
import cn.axzo.msg.center.push.PushData;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import cn.axzo.msg.center.service.domain.card.AppVersionConfig;
|
||||
import cn.axzo.msg.center.service.dto.PeerPerson;
|
||||
import cn.axzo.msg.center.service.enums.MessageChannel;
|
||||
|
||||
@ -16,12 +16,12 @@ import cn.axzo.msg.center.message.service.impl.v3.ModelV3Parser;
|
||||
import cn.axzo.msg.center.nimpush.NimPushService;
|
||||
import cn.axzo.msg.center.nimpush.PushChannel;
|
||||
import cn.axzo.msg.center.nimpush.PushExecutorConfig;
|
||||
import cn.axzo.msg.center.nimpush.PushPeer;
|
||||
import cn.axzo.msg.center.nimpush.PushPriorityController;
|
||||
import cn.axzo.msg.center.nimpush.device.PushDevice;
|
||||
import cn.axzo.msg.center.nimpush.device.PushDeviceService;
|
||||
import cn.axzo.msg.center.nimpush.device.PushDeviceSnapshots;
|
||||
import cn.axzo.msg.center.push.PushData;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
|
||||
import cn.axzo.msg.center.service.pending.response.v3.model.ParsedModelV3;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
|
||||
@ -8,6 +8,7 @@ import cn.axzo.msg.center.nimpush.payload.intent.Intent;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.IntentValue;
|
||||
import cn.axzo.msg.center.push.PushData;
|
||||
import cn.axzo.msg.center.push.PushMessage;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import cn.axzo.msg.center.service.domain.UrlConfig;
|
||||
import cn.axzo.msg.center.service.domain.UrlConfigVisitor;
|
||||
import cn.axzo.msg.center.service.domain.UrlConfigWalker;
|
||||
|
||||
@ -2,9 +2,9 @@ package cn.axzo.msg.center.nimpush.payload;
|
||||
|
||||
import cn.axzo.msg.center.common.utils.BizAssertions;
|
||||
import cn.axzo.msg.center.nimpush.PushContent;
|
||||
import cn.axzo.msg.center.nimpush.PushPeer;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.Intent;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.IntentValue;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
package cn.axzo.msg.center.nimpush.payload;
|
||||
|
||||
import cn.axzo.msg.center.nimpush.PushContent;
|
||||
import cn.axzo.msg.center.nimpush.PushPeer;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.Intent;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.IntentValue;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.JsonIntent;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
package cn.axzo.msg.center.nimpush.payload;
|
||||
|
||||
import cn.axzo.msg.center.nimpush.PushContent;
|
||||
import cn.axzo.msg.center.nimpush.PushPeer;
|
||||
import cn.axzo.msg.center.nimpush.payload.intent.Intent;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
|
||||
/**
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package cn.axzo.msg.center.api;
|
||||
|
||||
import cn.axzo.msg.center.api.fallback.MessagePushApiFallbackFactory;
|
||||
import cn.axzo.msg.center.api.request.BuildNimPayloadRequest;
|
||||
import cn.axzo.msg.center.api.request.MsgBody4Guest;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -24,4 +25,10 @@ public interface MessagePushApi {
|
||||
@PostMapping("umeng/pushMsg")
|
||||
CommonResponse<Void> sendPushMessage(@RequestBody MsgBody4Guest msgBody);
|
||||
|
||||
/**
|
||||
* 构建云信push payload
|
||||
*/
|
||||
@PostMapping("push/nim/buildNimPayload")
|
||||
CommonResponse<String> buildNimPayload(@RequestBody BuildNimPayloadRequest request);
|
||||
|
||||
}
|
||||
|
||||
@ -1,27 +0,0 @@
|
||||
package cn.axzo.msg.center.api.fallback;
|
||||
|
||||
import cn.axzo.msg.center.api.MessagePushApi;
|
||||
import cn.axzo.msg.center.api.request.MsgBody4Guest;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import lombok.Setter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* @author jiachao
|
||||
* @date 2021/5/24
|
||||
*/
|
||||
@Slf4j
|
||||
@Component
|
||||
public class MessagePushApiFallback implements MessagePushApi {
|
||||
|
||||
@Setter
|
||||
private Throwable throwable;
|
||||
|
||||
@Override
|
||||
public CommonResponse<Void> sendPushMessage(MsgBody4Guest msgBody) {
|
||||
log.info("发送推送失败,接口异常:msgBody={}", JSONUtil.toJsonStr(msgBody));
|
||||
return CommonResponse.fail("发送推送失败,接口异常");
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
package cn.axzo.msg.center.api.request;
|
||||
|
||||
import cn.axzo.msg.center.push.PushData;
|
||||
import cn.axzo.msg.center.push.PushMessage;
|
||||
import cn.axzo.msg.center.service.domain.PushPeer;
|
||||
import cn.axzo.msg.center.service.domain.UrlConfig;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* @author yanglin
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
public class BuildNimPayloadRequest implements PushMessage {
|
||||
|
||||
private String pushTitle;
|
||||
|
||||
private String pushContent;
|
||||
|
||||
private UrlConfig pushUrl;
|
||||
|
||||
private PushData pushData;
|
||||
|
||||
private PushPeer pushPeer;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.axzo.msg.center.nimpush;
|
||||
package cn.axzo.msg.center.service.domain;
|
||||
|
||||
import cn.axzo.im.center.api.vo.ApiChannel;
|
||||
import cn.axzo.im.center.common.enums.AppTypeEnum;
|
||||
Loading…
Reference in New Issue
Block a user