mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-24 02:16:16 +08:00
msg
This commit is contained in:
parent
83541fbbc8
commit
0a227f8731
@ -1,327 +0,0 @@
|
||||
package convert
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation"
|
||||
discoveryRegistry "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry"
|
||||
sdk "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/check"
|
||||
utils "github.com/OpenIMSDK/open_utils"
|
||||
)
|
||||
|
||||
type DBBlack struct {
|
||||
*relation.BlackModel
|
||||
}
|
||||
|
||||
func (*PBBlack) PB2DB(blacks []*sdk.BlackInfo) (DBBlacks []*relation.BlackModel, err error) {
|
||||
for _, v := range blacks {
|
||||
u, err := NewPBBlack(v).Convert()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
DBBlacks = append(DBBlacks, u)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (db *DBBlack) DB2PB(ctx context.Context, blacks []*relation.BlackModel) (PBBlacks []*sdk.BlackInfo, err error) {
|
||||
userIDs := make([]string, 0)
|
||||
for _, v := range blacks {
|
||||
userIDs = append(userIDs, v.BlockUserID)
|
||||
}
|
||||
if len(blacks) > 0 {
|
||||
userIDs = append(userIDs, blacks[0].OwnerUserID)
|
||||
}
|
||||
|
||||
users, err := db.userCheck.GetUsersInfoMap(ctx, userIDs, true)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for _, v := range blacks {
|
||||
pbBlack := &sdk.BlackInfo{BlackUserInfo: &sdk.PublicUserInfo{}}
|
||||
pbBlack.OwnerUserID = v.OwnerUserID
|
||||
pbBlack.AddSource = v.AddSource
|
||||
pbBlack.CreateTime = v.CreateTime.Unix()
|
||||
pbBlack.Ex = v.Ex
|
||||
utils.CopyStructFields(pbBlack.BlackUserInfo, users[v.BlockUserID])
|
||||
PBBlacks = append(PBBlacks, pbBlack)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func NewDBBlack(black *relation.BlackModel, zk discoveryRegistry.SvcDiscoveryRegistry) *DBBlack {
|
||||
return &DBBlack{BlackModel: black, userCheck: check.NewUserCheck(zk)}
|
||||
}
|
||||
|
||||
type PBBlack struct {
|
||||
*sdk.BlackInfo
|
||||
}
|
||||
|
||||
func NewPBBlack(blackInfo *sdk.BlackInfo) *PBBlack {
|
||||
return &PBBlack{BlackInfo: blackInfo}
|
||||
}
|
||||
|
||||
func (pb *PBBlack) Convert() (*relation.BlackModel, error) {
|
||||
dbBlack := &relation.BlackModel{}
|
||||
dbBlack.BlockUserID = pb.BlackUserInfo.UserID
|
||||
dbBlack.CreateTime = utils.UnixSecondToTime(pb.CreateTime)
|
||||
return dbBlack, nil
|
||||
}
|
||||
func (db *DBBlack) Convert(ctx context.Context) (*sdk.BlackInfo, error) {
|
||||
pbBlack := &sdk.BlackInfo{}
|
||||
utils.CopyStructFields(pbBlack, db)
|
||||
pbBlack.CreateTime = db.CreateTime.Unix()
|
||||
user, err := db.userCheck.GetUserInfo(ctx, db.BlockUserID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
utils.CopyStructFields(pbBlack.BlackUserInfo, user)
|
||||
return pbBlack, nil
|
||||
}
|
||||
|
||||
type DBGroup struct {
|
||||
*relation.GroupModel
|
||||
groupCheck *check.GroupChecker
|
||||
}
|
||||
|
||||
func (*PBGroup) PB2DB(groups []*sdk.GroupInfo) (DBGroups []*relation.GroupModel, err error) {
|
||||
for _, v := range groups {
|
||||
u, err := NewPBGroup(v).Convert()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
DBGroups = append(DBGroups, u)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//func (db *DBGroup) DB2PB(ctx context.Context, zk discoveryRegistry.SvcDiscoveryRegistry, groups []*relation.GroupModel) (PBGroups []*sdk.GroupInfo, err error) {
|
||||
// for _, v := range groups {
|
||||
// u, err := NewDBGroup(v, zk).Convert(ctx)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// PBGroups = append(PBGroups, u)
|
||||
// }
|
||||
// return
|
||||
//}
|
||||
|
||||
func NewDBGroup(groupModel *relation.GroupModel, zk discoveryRegistry.SvcDiscoveryRegistry) *DBGroup {
|
||||
return &DBGroup{GroupModel: groupModel, groupCheck: check.NewGroupChecker(zk)}
|
||||
}
|
||||
|
||||
type PBGroup struct {
|
||||
*sdk.GroupInfo
|
||||
}
|
||||
|
||||
func NewPBGroup(groupInfo *sdk.GroupInfo) *PBGroup {
|
||||
return &PBGroup{GroupInfo: groupInfo}
|
||||
}
|
||||
|
||||
func (pb *PBGroup) Convert() (*relation.GroupModel, error) {
|
||||
dst := &relation.GroupModel{}
|
||||
err := utils.CopyStructFields(dst, pb)
|
||||
return dst, err
|
||||
}
|
||||
func (db *DBGroup) Convert(ctx context.Context) (*sdk.GroupInfo, error) {
|
||||
dst := &sdk.GroupInfo{}
|
||||
utils.CopyStructFields(dst, db)
|
||||
user, err := db.groupCheck.GetOwnerInfo(ctx, db.GroupID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
dst.OwnerUserID = user.UserID
|
||||
|
||||
g, err := db.groupCheck.GetGroupInfo(ctx, db.GroupID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
dst.MemberCount = g.MemberCount
|
||||
dst.CreateTime = db.CreateTime.Unix()
|
||||
dst.NotificationUpdateTime = db.NotificationUpdateTime.Unix()
|
||||
if db.NotificationUpdateTime.Unix() < 0 {
|
||||
dst.NotificationUpdateTime = 0
|
||||
}
|
||||
return dst, nil
|
||||
}
|
||||
|
||||
type DBGroupMember struct {
|
||||
*relation.GroupMemberModel
|
||||
userCheck *check.UserCheck
|
||||
}
|
||||
|
||||
func (*PBGroupMember) PB2DB(groupMembers []*sdk.GroupMemberFullInfo) (DBGroupMembers []*relation.GroupMemberModel, err error) {
|
||||
for _, v := range groupMembers {
|
||||
u, err := NewPBGroupMember(v).Convert()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
DBGroupMembers = append(DBGroupMembers, u)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//func (*DBGroupMember) DB2PB(ctx context.Context, groupMembers []*relation.GroupMemberModel) (PBGroupMembers []*sdk.GroupMemberFullInfo, err error) {
|
||||
// for _, v := range groupMembers {
|
||||
// u, err := NewDBGroupMember(v).Convert(ctx)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// PBGroupMembers = append(PBGroupMembers, u)
|
||||
// }
|
||||
// return
|
||||
//}
|
||||
|
||||
func NewDBGroupMember(groupMember *relation.GroupMemberModel) *DBGroupMember {
|
||||
return &DBGroupMember{GroupMemberModel: groupMember}
|
||||
}
|
||||
|
||||
type PBGroupMember struct {
|
||||
*sdk.GroupMemberFullInfo
|
||||
}
|
||||
|
||||
func NewPBGroupMember(groupMemberFullInfo *sdk.GroupMemberFullInfo) *PBGroupMember {
|
||||
return &PBGroupMember{GroupMemberFullInfo: groupMemberFullInfo}
|
||||
}
|
||||
|
||||
func (pb *PBGroupMember) Convert() (*relation.GroupMemberModel, error) {
|
||||
dst := &relation.GroupMemberModel{}
|
||||
utils.CopyStructFields(dst, pb)
|
||||
dst.JoinTime = utils.UnixSecondToTime(int64(pb.JoinTime))
|
||||
dst.MuteEndTime = utils.UnixSecondToTime(int64(pb.MuteEndTime))
|
||||
return dst, nil
|
||||
}
|
||||
func (db *DBGroupMember) Convert(ctx context.Context) (*sdk.GroupMemberFullInfo, error) {
|
||||
dst := &sdk.GroupMemberFullInfo{}
|
||||
utils.CopyStructFields(dst, db)
|
||||
|
||||
user, err := db.userCheck.GetUserInfo(ctx, db.UserID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
dst.AppMangerLevel = user.AppMangerLevel
|
||||
|
||||
dst.JoinTime = db.JoinTime.Unix()
|
||||
if db.JoinTime.Unix() < 0 {
|
||||
dst.JoinTime = 0
|
||||
}
|
||||
dst.MuteEndTime = db.MuteEndTime.Unix()
|
||||
if dst.MuteEndTime < time.Now().Unix() {
|
||||
dst.MuteEndTime = 0
|
||||
}
|
||||
return dst, nil
|
||||
}
|
||||
|
||||
type DBGroupRequest struct {
|
||||
*relation.GroupRequestModel
|
||||
}
|
||||
|
||||
func (*PBGroupRequest) PB2DB(groupRequests []*sdk.GroupRequest) (DBGroupRequests []*relation.GroupRequestModel, err error) {
|
||||
for _, v := range groupRequests {
|
||||
u, err := NewPBGroupRequest(v).Convert()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
DBGroupRequests = append(DBGroupRequests, u)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//func (*DBGroupRequest) DB2PB(groupRequests []*relation.GroupRequestModel) (PBGroupRequests []*sdk.GroupRequest, err error) {
|
||||
// for _, v := range groupRequests {
|
||||
// u, err := NewDBGroupRequest(v).Convert()
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// PBGroupRequests = append(PBGroupRequests, u)
|
||||
// }
|
||||
// return
|
||||
//}
|
||||
|
||||
func NewDBGroupRequest(groupRequest *relation.GroupRequestModel) *DBGroupRequest {
|
||||
return &DBGroupRequest{GroupRequestModel: groupRequest}
|
||||
}
|
||||
|
||||
type PBGroupRequest struct {
|
||||
*sdk.GroupRequest
|
||||
}
|
||||
|
||||
func NewPBGroupRequest(groupRequest *sdk.GroupRequest) *PBGroupRequest {
|
||||
return &PBGroupRequest{GroupRequest: groupRequest}
|
||||
}
|
||||
|
||||
func (pb *PBGroupRequest) Convert() (*relation.GroupRequestModel, error) {
|
||||
dst := &relation.GroupRequestModel{}
|
||||
utils.CopyStructFields(dst, pb)
|
||||
dst.ReqTime = utils.UnixSecondToTime(int64(pb.ReqTime))
|
||||
dst.HandledTime = utils.UnixSecondToTime(int64(pb.HandleTime))
|
||||
return dst, nil
|
||||
}
|
||||
func (db *DBGroupRequest) Convert() (*sdk.GroupRequest, error) {
|
||||
dst := &sdk.GroupRequest{}
|
||||
utils.CopyStructFields(dst, db)
|
||||
dst.ReqTime = db.ReqTime.Unix()
|
||||
dst.HandleTime = db.HandledTime.Unix()
|
||||
return dst, nil
|
||||
}
|
||||
|
||||
type DBUser struct {
|
||||
*relation.UserModel
|
||||
}
|
||||
|
||||
func NewDBUser(user *relation.UserModel) *DBUser {
|
||||
return &DBUser{UserModel: user}
|
||||
}
|
||||
|
||||
type PBUser struct {
|
||||
*sdk.UserInfo
|
||||
}
|
||||
|
||||
func NewPBUser(userInfo *sdk.UserInfo) *PBUser {
|
||||
return &PBUser{UserInfo: userInfo}
|
||||
}
|
||||
|
||||
func (*PBUser) PB2DB(users []*sdk.UserInfo) (DBUsers []*relation.UserModel, err error) {
|
||||
for _, v := range users {
|
||||
u, err := NewPBUser(v).Convert()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
DBUsers = append(DBUsers, u)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (*DBUser) DB2PB(users []*relation.UserModel) (PBUsers []*sdk.UserInfo, err error) {
|
||||
for _, v := range users {
|
||||
u, err := NewDBUser(v).Convert()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
PBUsers = append(PBUsers, u)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (pb *PBUser) Convert() (*relation.UserModel, error) {
|
||||
dst := &relation.UserModel{}
|
||||
utils.CopyStructFields(dst, pb)
|
||||
dst.CreateTime = utils.UnixSecondToTime(pb.CreateTime)
|
||||
return dst, nil
|
||||
}
|
||||
|
||||
func (db *DBUser) Convert() (*sdk.UserInfo, error) {
|
||||
dst := &sdk.UserInfo{}
|
||||
utils.CopyStructFields(dst, db)
|
||||
dst.CreateTime = db.CreateTime.Unix()
|
||||
return dst, nil
|
||||
}
|
||||
|
||||
func (db *DBUser) ConvertPublic() (*sdk.PublicUserInfo, error) {
|
||||
dst := &sdk.PublicUserInfo{}
|
||||
utils.CopyStructFields(dst, db)
|
||||
return dst, nil
|
||||
}
|
@ -64,131 +64,6 @@ func (c *MsgClient) Notification(ctx context.Context, notificationMsg *Notificat
|
||||
msg.Options = make(map[string]bool, 7)
|
||||
msg.SenderNickname = notificationMsg.SenderNickname
|
||||
msg.SenderFaceURL = notificationMsg.SenderFaceURL
|
||||
switch notificationMsg.SessionType {
|
||||
case constant.GroupChatType, constant.SuperGroupChatType:
|
||||
msg.RecvID = ""
|
||||
msg.GroupID = notificationMsg.RecvID
|
||||
}
|
||||
offlineInfo.IOSBadgeCount = config.Config.IOSPush.BadgeCount
|
||||
offlineInfo.IOSPushSound = config.Config.IOSPush.PushSound
|
||||
switch msg.ContentType {
|
||||
case constant.GroupCreatedNotification:
|
||||
title = config.Config.Notification.GroupCreated.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupCreated.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupCreated.OfflinePush.Ext
|
||||
case constant.GroupInfoSetNotification:
|
||||
title = config.Config.Notification.GroupInfoSet.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupInfoSet.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupInfoSet.OfflinePush.Ext
|
||||
case constant.JoinGroupApplicationNotification:
|
||||
title = config.Config.Notification.JoinGroupApplication.OfflinePush.Title
|
||||
desc = config.Config.Notification.JoinGroupApplication.OfflinePush.Desc
|
||||
ex = config.Config.Notification.JoinGroupApplication.OfflinePush.Ext
|
||||
case constant.MemberQuitNotification:
|
||||
title = config.Config.Notification.MemberQuit.OfflinePush.Title
|
||||
desc = config.Config.Notification.MemberQuit.OfflinePush.Desc
|
||||
ex = config.Config.Notification.MemberQuit.OfflinePush.Ext
|
||||
case constant.GroupApplicationAcceptedNotification:
|
||||
title = config.Config.Notification.GroupApplicationAccepted.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupApplicationAccepted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupApplicationAccepted.OfflinePush.Ext
|
||||
case constant.GroupApplicationRejectedNotification:
|
||||
title = config.Config.Notification.GroupApplicationRejected.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupApplicationRejected.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupApplicationRejected.OfflinePush.Ext
|
||||
case constant.GroupOwnerTransferredNotification:
|
||||
title = config.Config.Notification.GroupOwnerTransferred.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupOwnerTransferred.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupOwnerTransferred.OfflinePush.Ext
|
||||
case constant.MemberKickedNotification:
|
||||
title = config.Config.Notification.MemberKicked.OfflinePush.Title
|
||||
desc = config.Config.Notification.MemberKicked.OfflinePush.Desc
|
||||
ex = config.Config.Notification.MemberKicked.OfflinePush.Ext
|
||||
case constant.MemberInvitedNotification:
|
||||
title = config.Config.Notification.MemberInvited.OfflinePush.Title
|
||||
desc = config.Config.Notification.MemberInvited.OfflinePush.Desc
|
||||
ex = config.Config.Notification.MemberInvited.OfflinePush.Ext
|
||||
case constant.MemberEnterNotification:
|
||||
title = config.Config.Notification.MemberEnter.OfflinePush.Title
|
||||
desc = config.Config.Notification.MemberEnter.OfflinePush.Desc
|
||||
ex = config.Config.Notification.MemberEnter.OfflinePush.Ext
|
||||
case constant.UserInfoUpdatedNotification:
|
||||
title = config.Config.Notification.UserInfoUpdated.OfflinePush.Title
|
||||
desc = config.Config.Notification.UserInfoUpdated.OfflinePush.Desc
|
||||
ex = config.Config.Notification.UserInfoUpdated.OfflinePush.Ext
|
||||
case constant.FriendApplicationNotification:
|
||||
title = config.Config.Notification.FriendApplication.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendApplication.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendApplication.OfflinePush.Ext
|
||||
case constant.FriendApplicationApprovedNotification:
|
||||
title = config.Config.Notification.FriendApplicationApproved.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendApplicationApproved.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendApplicationApproved.OfflinePush.Ext
|
||||
case constant.FriendApplicationRejectedNotification:
|
||||
title = config.Config.Notification.FriendApplicationRejected.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendApplicationRejected.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendApplicationRejected.OfflinePush.Ext
|
||||
case constant.FriendAddedNotification:
|
||||
title = config.Config.Notification.FriendAdded.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendAdded.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendAdded.OfflinePush.Ext
|
||||
case constant.FriendDeletedNotification:
|
||||
title = config.Config.Notification.FriendDeleted.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendDeleted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendDeleted.OfflinePush.Ext
|
||||
case constant.FriendRemarkSetNotification:
|
||||
title = config.Config.Notification.FriendRemarkSet.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendRemarkSet.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendRemarkSet.OfflinePush.Ext
|
||||
case constant.BlackAddedNotification:
|
||||
title = config.Config.Notification.BlackAdded.OfflinePush.Title
|
||||
desc = config.Config.Notification.BlackAdded.OfflinePush.Desc
|
||||
ex = config.Config.Notification.BlackAdded.OfflinePush.Ext
|
||||
case constant.BlackDeletedNotification:
|
||||
title = config.Config.Notification.BlackDeleted.OfflinePush.Title
|
||||
desc = config.Config.Notification.BlackDeleted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.BlackDeleted.OfflinePush.Ext
|
||||
case constant.ConversationOptChangeNotification:
|
||||
title = config.Config.Notification.ConversationOptUpdate.OfflinePush.Title
|
||||
desc = config.Config.Notification.ConversationOptUpdate.OfflinePush.Desc
|
||||
ex = config.Config.Notification.ConversationOptUpdate.OfflinePush.Ext
|
||||
|
||||
case constant.GroupDismissedNotification:
|
||||
title = config.Config.Notification.GroupDismissed.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupDismissed.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupDismissed.OfflinePush.Ext
|
||||
|
||||
case constant.GroupMutedNotification:
|
||||
title = config.Config.Notification.GroupMuted.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupMuted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupMuted.OfflinePush.Ext
|
||||
case constant.GroupCancelMutedNotification:
|
||||
title = config.Config.Notification.GroupCancelMuted.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupCancelMuted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupCancelMuted.OfflinePush.Ext
|
||||
case constant.GroupMemberMutedNotification:
|
||||
title = config.Config.Notification.GroupMemberMuted.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupMemberMuted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupMemberMuted.OfflinePush.Ext
|
||||
case constant.GroupMemberCancelMutedNotification:
|
||||
title = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.Ext
|
||||
case constant.GroupMemberInfoSetNotification:
|
||||
title = config.Config.Notification.GroupMemberInfoSet.OfflinePush.Title
|
||||
desc = config.Config.Notification.GroupMemberInfoSet.OfflinePush.Desc
|
||||
ex = config.Config.Notification.GroupMemberInfoSet.OfflinePush.Ext
|
||||
case constant.ConversationPrivateChatNotification:
|
||||
title = config.Config.Notification.ConversationSetPrivate.OfflinePush.Title
|
||||
desc = config.Config.Notification.ConversationSetPrivate.OfflinePush.Desc
|
||||
ex = config.Config.Notification.ConversationSetPrivate.OfflinePush.Ext
|
||||
case constant.FriendInfoUpdatedNotification:
|
||||
title = config.Config.Notification.FriendInfoUpdated.OfflinePush.Title
|
||||
desc = config.Config.Notification.FriendInfoUpdated.OfflinePush.Desc
|
||||
ex = config.Config.Notification.FriendInfoUpdated.OfflinePush.Ext
|
||||
case constant.DeleteMessageNotification:
|
||||
case constant.ConversationUnreadNotification, constant.SuperGroupUpdateNotification:
|
||||
}
|
||||
utils.SetSwitchFromOptions(msg.Options, constant.IsUnreadCount, unReadCount)
|
||||
utils.SetSwitchFromOptions(msg.Options, constant.IsOfflinePush, pushEnable)
|
||||
offlineInfo.Title = title
|
||||
|
Loading…
x
Reference in New Issue
Block a user