mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-11-04 19:32:17 +08:00
online cache
This commit is contained in:
parent
1bfaf3e2d9
commit
dcd874979e
@ -118,12 +118,12 @@ func (u *userMap) DeleteClients(userID string, clients []*Client) (isDeleteUser
|
|||||||
tmp := result.Clients
|
tmp := result.Clients
|
||||||
result.Clients = result.Clients[:0]
|
result.Clients = result.Clients[:0]
|
||||||
for _, client := range tmp {
|
for _, client := range tmp {
|
||||||
if _, ok := deleteAddr[client.ctx.GetRemoteAddr()]; ok {
|
if _, delCli := deleteAddr[client.ctx.GetRemoteAddr()]; delCli {
|
||||||
continue
|
|
||||||
}
|
|
||||||
offline = append(offline, int32(client.PlatformID))
|
offline = append(offline, int32(client.PlatformID))
|
||||||
|
} else {
|
||||||
result.Clients = append(result.Clients, client)
|
result.Clients = append(result.Clients, client)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
defer u.push(userID, result, offline)
|
defer u.push(userID, result, offline)
|
||||||
if len(result.Clients) > 0 {
|
if len(result.Clients) > 0 {
|
||||||
return false
|
return false
|
||||||
|
|||||||
@ -51,11 +51,8 @@ func NewOnlineCache(user rpcclient.UserRpcClient, group *GroupLocalCache, rdb re
|
|||||||
log.ZError(ctx, "OnlineCache redis subscribe parseUserOnlineStatus", err, "payload", message.Payload, "channel", message.Channel)
|
log.ZError(ctx, "OnlineCache redis subscribe parseUserOnlineStatus", err, "payload", message.Payload, "channel", message.Channel)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
log.ZDebug(ctx, "OnlineCache setUserOnline", "userID", userID, "platformIDs", platformIDs, "payload", message.Payload)
|
storageCache := x.setUserOnline(userID, platformIDs)
|
||||||
x.setUserOnline(userID, platformIDs)
|
log.ZDebug(ctx, "OnlineCache setUserOnline", "userID", userID, "platformIDs", platformIDs, "payload", message.Payload, "storageCache", storageCache)
|
||||||
//if err := x.setUserOnline(ctx, userID, platformIDs); err != nil {
|
|
||||||
// log.ZError(ctx, "redis subscribe setUserOnline", err, "payload", message.Payload, "channel", message.Channel)
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
return x
|
return x
|
||||||
@ -115,10 +112,10 @@ func (o *OnlineCache) GetGroupOnline(ctx context.Context, groupID string) ([]str
|
|||||||
onlineUserIDs = append(onlineUserIDs, userID)
|
onlineUserIDs = append(onlineUserIDs, userID)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
log.ZDebug(ctx, "OnlineCache GetGroupOnline", "groupID", groupID, "onlineUserIDs", onlineUserIDs)
|
log.ZDebug(ctx, "OnlineCache GetGroupOnline", "groupID", groupID, "onlineUserIDs", onlineUserIDs, "allUserID", userIDs)
|
||||||
return onlineUserIDs, nil
|
return onlineUserIDs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *OnlineCache) setUserOnline(userID string, platformIDs []int32) {
|
func (o *OnlineCache) setUserOnline(userID string, platformIDs []int32) bool {
|
||||||
o.local.SetHas(o.getUserOnlineKey(userID), platformIDs)
|
return o.local.SetHas(o.getUserOnlineKey(userID), platformIDs)
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user