pull/756/head
pluto 2 years ago
parent afc119182e
commit f38c41efc8

@ -251,9 +251,11 @@ func (s *userServer) GetAllUserID(ctx context.Context, req *pbuser.GetAllUserIDR
// SubscribeOrCancelUsersStatus Subscribe online or cancel online users. // SubscribeOrCancelUsersStatus Subscribe online or cancel online users.
func (s *userServer) SubscribeOrCancelUsersStatus(ctx context.Context, req *pbuser.SubscribeOrCancelUsersStatusReq) (resp *pbuser.SubscribeOrCancelUsersStatusResp, err error) { func (s *userServer) SubscribeOrCancelUsersStatus(ctx context.Context, req *pbuser.SubscribeOrCancelUsersStatusReq) (resp *pbuser.SubscribeOrCancelUsersStatusResp, err error) {
if req.Genre == constant.SubscriberUser { if req.Genre == constant.SubscriberUser {
log.ZDebug(ctx, "SubscribeUsersStatus pre")
err = s.UserDatabase.SubscribeUsersStatus(ctx, req.UserID, req.UserIDs) err = s.UserDatabase.SubscribeUsersStatus(ctx, req.UserID, req.UserIDs)
var status []*pbuser.OnlineStatus var status []*pbuser.OnlineStatus
status, err = s.UserDatabase.GetUserStatus(ctx, req.UserIDs) status, err = s.UserDatabase.GetUserStatus(ctx, req.UserIDs)
log.ZDebug(ctx, "SubscribeUsersStatus after")
if err != nil { if err != nil {
return nil, err return nil, err
} }

@ -18,6 +18,7 @@ import (
"context" "context"
unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation"
"github.com/OpenIMSDK/protocol/user" "github.com/OpenIMSDK/protocol/user"
"github.com/OpenIMSDK/tools/log"
"time" "time"
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache"
@ -180,6 +181,7 @@ func (u *userDatabase) CountRangeEverydayTotal(ctx context.Context, start time.T
// SubscribeUsersStatus Subscribe or unsubscribe a user's presence status // SubscribeUsersStatus Subscribe or unsubscribe a user's presence status
func (u *userDatabase) SubscribeUsersStatus(ctx context.Context, userID string, userIDs []string) error { func (u *userDatabase) SubscribeUsersStatus(ctx context.Context, userID string, userIDs []string) error {
err := u.mongoDB.AddSubscriptionList(ctx, userID, userIDs) err := u.mongoDB.AddSubscriptionList(ctx, userID, userIDs)
log.ZDebug(ctx, "----mongo---controller-----")
return err return err
} }
@ -210,6 +212,7 @@ func (u *userDatabase) GetSubscribedList(ctx context.Context, userID string) ([]
// GetUserStatus get user status // GetUserStatus get user status
func (u *userDatabase) GetUserStatus(ctx context.Context, userIDs []string) ([]*user.OnlineStatus, error) { func (u *userDatabase) GetUserStatus(ctx context.Context, userIDs []string) ([]*user.OnlineStatus, error) {
onlineStatusList, err := u.cache.GetUserStatus(ctx, userIDs) onlineStatusList, err := u.cache.GetUserStatus(ctx, userIDs)
log.ZDebug(ctx, "========redis status========")
return onlineStatusList, err return onlineStatusList, err
} }

Loading…
Cancel
Save