发送文本消息
这个提交包含在:
父节点
0fb7bd3bf5
当前提交
b323e3e248
@ -164,7 +164,7 @@ public class ImManager implements IMInterface {
|
||||
SendAckMessage sendAckMessage = GsonImplHelp.get().toObject(msg, SendAckMessage.class);
|
||||
|
||||
Message m = new Message();
|
||||
m.obj = sendAckMessage.getAckId();
|
||||
m.obj = sendAckMessage;
|
||||
m.what = 10002;
|
||||
handler.sendMessage(m);
|
||||
|
||||
@ -319,9 +319,9 @@ public class ImManager implements IMInterface {
|
||||
@Override
|
||||
public void handleMessage(@NonNull Message msg) {
|
||||
super.handleMessage(msg);
|
||||
String msgId = (String) msg.obj;
|
||||
switch (msg.what) {
|
||||
case 10001:
|
||||
String msgId = (String) msg.obj;
|
||||
IMSDKCallback callback = msgListenerMap.get(msgId);
|
||||
if (null != callback) {
|
||||
callback.failed(207, "发送超时");
|
||||
@ -333,13 +333,18 @@ public class ImManager implements IMInterface {
|
||||
}
|
||||
break;
|
||||
case 10002:
|
||||
IMSDKCallback callback1 = msgListenerMap.get(msgId);
|
||||
SendAckMessage sendAckMessage = (SendAckMessage) msg.obj;
|
||||
String msgId1 = sendAckMessage.getAckId();
|
||||
IMSDKCallback callback1 = msgListenerMap.get(msgId1);
|
||||
if (null != callback1) {
|
||||
for (MsgListener listener : msgListeners) {
|
||||
listener.statusChange(msgId, 0);
|
||||
if (sendAckMessage.getAckStatus() == 0)
|
||||
listener.statusChange(msgId1, 0);
|
||||
else listener.statusChange(msgId1, -1);
|
||||
}
|
||||
callback1.success();
|
||||
msgListenerMap.remove(msgId);
|
||||
if (sendAckMessage.getAckStatus() == 0) callback1.success();
|
||||
else callback1.failed(208, "服务端转发失败");
|
||||
msgListenerMap.remove(msgId1);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@ -9,6 +9,10 @@ public class SendAckMessage extends PacketMessage {
|
||||
super(PacketType.SEND_ACK);
|
||||
}
|
||||
private String ackId;
|
||||
/**
|
||||
* 0-成功;-1-失败;
|
||||
*/
|
||||
private int ackStatus;
|
||||
|
||||
public String getAckId() {
|
||||
return ackId;
|
||||
@ -17,4 +21,12 @@ public class SendAckMessage extends PacketMessage {
|
||||
public void setAckId(String ackId) {
|
||||
this.ackId = ackId;
|
||||
}
|
||||
|
||||
public int getAckStatus() {
|
||||
return ackStatus;
|
||||
}
|
||||
|
||||
public void setAckStatus(int ackStatus) {
|
||||
this.ackStatus = ackStatus;
|
||||
}
|
||||
}
|
||||
|
||||
正在加载...
在新工单中引用
屏蔽一个用户