diff --git a/src/common/multi_terminal_login/multi_terminal_login.go b/src/common/multi_terminal_login/multi_terminal_login.go index 02245cf7e2205a6bd1844c05c6d2ec9728d1f406..8da527274e215a6f9c4678a3d7a4d6427302902b 100644 --- a/src/common/multi_terminal_login/multi_terminal_login.go +++ b/src/common/multi_terminal_login/multi_terminal_login.go @@ -5,6 +5,7 @@ import ( "Open_IM/src/common/constant" "Open_IM/src/common/db" pbChat "Open_IM/src/proto/chat" + "Open_IM/src/push/content_struct" "Open_IM/src/push/logic" "Open_IM/src/utils" ) @@ -63,7 +64,7 @@ func PushMessageToTheTerminal(uid string, platform int32) { logic.SendMsgByWS(&pbChat.WSToMsgSvrChatMsg{ SendID: uid, RecvID: uid, - Content: "Your account is already logged on other terminal,please confirm", + Content: content_struct.NewContentStructString(1, "", "Your account is already logged on other terminal,please confirm"), SendTime: utils.GetCurrentTimestampBySecond(), MsgFrom: constant.SysMsgType, ContentType: constant.KickOnlineTip, diff --git a/src/push/content_struct/content.go b/src/push/content_struct/content.go new file mode 100644 index 0000000000000000000000000000000000000000..b97e3217f4e9010706c0a563ceb6da47fafec8d6 --- /dev/null +++ b/src/push/content_struct/content.go @@ -0,0 +1,25 @@ +/* +** description(""). +** copyright('open-im,www.open-im.io'). +** author("fg,Gordon@tuoyun.net"). +** time(2021/5/27 11:24). + */ +package content_struct + +import "encoding/json" + +type Content struct { + IsDisplay int32 `json:"isDisplay"` + ID string `json:"id"` + Text string `json:"text"` +} + +func NewContentStructString(isDisplay int32, ID string, text string) string { + c := Content{IsDisplay: isDisplay, ID: ID, Text: text} + return c.contentToString() +} +func (c *Content) contentToString() string { + data, _ := json.Marshal(c) + dataString := string(data) + return dataString +} diff --git a/src/rpc/friend/friend/add_friend.go b/src/rpc/friend/friend/add_friend.go index 28deae6edf6ed91af89a068d29ca8fa01affe475..f0b3a2bce3e08e97237873f34ea33b98ed4c7a59 100644 --- a/src/rpc/friend/friend/add_friend.go +++ b/src/rpc/friend/friend/add_friend.go @@ -7,6 +7,7 @@ import ( "Open_IM/src/common/log" pbChat "Open_IM/src/proto/chat" pbFriend "Open_IM/src/proto/friend" + "Open_IM/src/push/content_struct" "Open_IM/src/push/logic" "Open_IM/src/utils" "context" @@ -35,7 +36,7 @@ func (s *friendServer) AddFriend(ctx context.Context, req *pbFriend.AddFriendReq logic.SendMsgByWS(&pbChat.WSToMsgSvrChatMsg{ SendID: senderInfo.UID, RecvID: receiverInfo.UID, - Content: senderInfo.Name + " asked to add you as a friend", + Content: content_struct.NewContentStructString(0, "", senderInfo.Name+" asked to add you as a friend"), SendTime: utils.GetCurrentTimestampBySecond(), MsgFrom: constant.SysMsgType, ContentType: constant.AddFriendTip, diff --git a/src/rpc/friend/friend/add_friend_response.go b/src/rpc/friend/friend/add_friend_response.go index 31963e0b4572308c0c56f0b8761b9b6dbffcd882..b7c1638e76a507175f871c580537b873bdd2be41 100644 --- a/src/rpc/friend/friend/add_friend_response.go +++ b/src/rpc/friend/friend/add_friend_response.go @@ -7,6 +7,7 @@ import ( "Open_IM/src/common/log" pbChat "Open_IM/src/proto/chat" pbFriend "Open_IM/src/proto/friend" + "Open_IM/src/push/content_struct" "Open_IM/src/push/logic" "Open_IM/src/utils" "context" @@ -45,7 +46,7 @@ func (s *friendServer) AddedFriend(ctx context.Context, req *pbFriend.AddedFrien logic.SendMsgByWS(&pbChat.WSToMsgSvrChatMsg{ SendID: claims.UID, RecvID: req.Uid, - Content: senderInfo.Name + " agreed to add you as a friend.", + Content: content_struct.NewContentStructString(0, "", senderInfo.Name+" agreed to add you as a friend."), SendTime: utils.GetCurrentTimestampBySecond(), MsgFrom: constant.SysMsgType, //Notification message identification ContentType: constant.AgreeAddFriendTip, //Add friend flag diff --git a/src/utils/map.go b/src/utils/map.go index bec647464711c1c6d092bcc0ed6db230f57f9eec..c52cebf6734338274f4f1a218d9dc7f18bb757ff 100644 --- a/src/utils/map.go +++ b/src/utils/map.go @@ -106,8 +106,7 @@ func MapToJsonString(param map[string]interface{}) string { dataString := string(dataType) return dataString } -func JsonStringToMap(str string) map[string]interface{} { - var tempMap map[string]interface{} +func JsonStringToMap(str string) (tempMap map[string]interface{}) { _ = json.Unmarshal([]byte(str), &tempMap) return tempMap }