feat: 防打扰 功能预留
This commit is contained in:
@@ -329,53 +329,62 @@ public class MessageFragment extends TFragment implements ModuleProxy, MessageLi
|
||||
* ********************** implements ModuleProxy *********************
|
||||
*/
|
||||
@Override
|
||||
public boolean sendMessage(IMMessage message) {
|
||||
if (!isAllowSendMessage(message)) {
|
||||
public boolean sendMessage(IMMessage imMessage) {
|
||||
if (!isAllowSendMessage(imMessage)) {
|
||||
return false;
|
||||
}
|
||||
//todo do 消息防打扰, 发送消息前 请求接口
|
||||
// IMCustomModel.get().isSend(imMessage.getSessionId())
|
||||
// .doOnSuccess(s -> {
|
||||
appendTeamMemberPush(imMessage);
|
||||
IMMessage message = changeToRobotMsg(imMessage);
|
||||
Map<String, Object> payload = new HashMap<>();
|
||||
payload.put("skiptype", PushMessageHandler.PAYLOAD_SKIPTYPE_PRIVATE_MSG);
|
||||
try {
|
||||
JSONObject dataObj = new JSONObject();
|
||||
dataObj.putOpt("uid", message.getFromAccount()).putOpt("content", message.getContent());
|
||||
payload.put("data", dataObj);
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
appendTeamMemberPush(message);
|
||||
message = changeToRobotMsg(message);
|
||||
Map<String, Object> payload = new HashMap<>();
|
||||
payload.put("skiptype", PushMessageHandler.PAYLOAD_SKIPTYPE_PRIVATE_MSG);
|
||||
try {
|
||||
JSONObject dataObj = new JSONObject();
|
||||
dataObj.putOpt("uid", message.getFromAccount()).putOpt("content", message.getContent());
|
||||
payload.put("data", dataObj);
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
payload.put("vivoField", vivoField());
|
||||
payload.put("hwField", hwField(message));
|
||||
message.setPushPayload(payload);
|
||||
|
||||
payload.put("vivoField", vivoField());
|
||||
payload.put("hwField", hwField(message));
|
||||
message.setPushPayload(payload);
|
||||
final IMMessage msg = message;
|
||||
appendPushConfig(message);
|
||||
// send message to server and save to db
|
||||
IMMessage finalMessage = message;
|
||||
NIMClient.getService(MsgService.class).sendMessage(message, false).setCallback(new RequestCallback<Void>() {
|
||||
@Override
|
||||
public void onSuccess(Void param) {
|
||||
|
||||
final IMMessage msg = message;
|
||||
appendPushConfig(message);
|
||||
// send message to server and save to db
|
||||
IMMessage finalMessage = message;
|
||||
NIMClient.getService(MsgService.class).sendMessage(message, false).setCallback(new RequestCallback<Void>() {
|
||||
@Override
|
||||
public void onSuccess(Void param) {
|
||||
}
|
||||
|
||||
}
|
||||
@Override
|
||||
public void onFailed(int code) {
|
||||
sendFailWithBlackList(code, msg);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailed(int code) {
|
||||
sendFailWithBlackList(code, msg);
|
||||
}
|
||||
@Override
|
||||
public void onException(Throwable exception) {
|
||||
|
||||
@Override
|
||||
public void onException(Throwable exception) {
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
messageListPanel.onMsgSend(message);
|
||||
|
||||
if (aitManager != null) {
|
||||
aitManager.reset();
|
||||
}
|
||||
// })
|
||||
// .doOnError(throwable -> {
|
||||
// SingleToastUtil.showToast(throwable.getMessage());
|
||||
// })
|
||||
// .subscribe();
|
||||
|
||||
messageListPanel.onMsgSend(message);
|
||||
|
||||
if (aitManager != null) {
|
||||
aitManager.reset();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@@ -30,6 +30,11 @@ public class IMCustomModel extends BaseMvpModel {
|
||||
.compose(RxHelper.handleBeanData())
|
||||
.compose(RxHelper.handleSchedulers());
|
||||
}
|
||||
public Single<String> isSend(String receiverUid) {
|
||||
return api.isSend(receiverUid)
|
||||
.compose(RxHelper.handleStringData())
|
||||
.compose(RxHelper.handleSchedulers());
|
||||
}
|
||||
|
||||
private interface Api {
|
||||
/**
|
||||
@@ -38,5 +43,13 @@ public class IMCustomModel extends BaseMvpModel {
|
||||
*/
|
||||
@GET("/privateChat/limit")
|
||||
Single<ServiceResult<PrivateChatLimitInfo>> getPrivateChatLimit(@Query("receiverUid") String receiverUid);
|
||||
|
||||
|
||||
/**
|
||||
* 获取是否可以发送私聊
|
||||
* @return
|
||||
*/
|
||||
@GET("/privateChat/limit")
|
||||
Single<ServiceResult<String>> isSend(@Query("receiverUid") String receiverUid);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user