revoke message

This commit is contained in:
Gordon 2022-09-29 18:31:36 +08:00
parent 879ad86e0f
commit 9b3dee6aa4

View File

@ -161,24 +161,25 @@ func (rpc *rpcChat) messageVerification(data *pbChat.SendMsgReq) (bool, int32, s
return false, 201, err.Error(), nil return false, 201, err.Error(), nil
} }
if data.MsgData.ContentType == constant.AdvancedRevoke { if data.MsgData.ContentType == constant.AdvancedRevoke {
revokeMesage := new(MessageRevoked) revokeMessage := new(MessageRevoked)
err := utils.JsonStringToStruct(string(data.MsgData.Content), revokeMesage) err := utils.JsonStringToStruct(string(data.MsgData.Content), revokeMessage)
if err != nil { if err != nil {
log.Error(data.OperationID, "json unmarshal err:", err.Error()) log.Error(data.OperationID, "json unmarshal err:", err.Error())
return false, 201, err.Error(), nil return false, 201, err.Error(), nil
} }
req := pbChat.GetSuperGroupMsgReq{OperationID: data.OperationID, Seq: revokeMesage.Seq, GroupID: data.MsgData.GroupID} log.Debug(data.OperationID, "revoke message is", revokeMessage)
req := pbChat.GetSuperGroupMsgReq{OperationID: data.OperationID, Seq: revokeMessage.Seq, GroupID: data.MsgData.GroupID}
resp, err := rpc.GetSuperGroupMsg(context.Background(), &req) resp, err := rpc.GetSuperGroupMsg(context.Background(), &req)
if err != nil { if err != nil {
log.Error(data.OperationID, "GetSuperGroupMsgReq err:", err.Error()) log.Error(data.OperationID, "GetSuperGroupMsgReq err:", err.Error())
} else if resp.ErrCode != 0 { } else if resp.ErrCode != 0 {
log.Error(data.OperationID, "GetSuperGroupMsgReq err:", err.Error()) log.Error(data.OperationID, "GetSuperGroupMsgReq err:", err.Error())
} else { } else {
if resp.MsgData != nil && resp.MsgData.ClientMsgID == revokeMesage.ClientMsgID && resp.MsgData.Seq == revokeMesage.Seq { if resp.MsgData != nil && resp.MsgData.ClientMsgID == revokeMessage.ClientMsgID && resp.MsgData.Seq == revokeMessage.Seq {
revokeMesage.SourceMessageSendTime = resp.MsgData.SendTime revokeMessage.SourceMessageSendTime = resp.MsgData.SendTime
revokeMesage.SourceMessageSenderNickname = resp.MsgData.SenderNickname revokeMessage.SourceMessageSenderNickname = resp.MsgData.SenderNickname
revokeMesage.SourceMessageSendID = resp.MsgData.SendID revokeMessage.SourceMessageSendID = resp.MsgData.SendID
data.MsgData.Content = []byte(utils.StructToJsonString(revokeMesage)) data.MsgData.Content = []byte(utils.StructToJsonString(revokeMessage))
} else { } else {
return false, 201, errors.New("msg err").Error(), nil return false, 201, errors.New("msg err").Error(), nil
} }