mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-06-28 05:18:14 +08:00
获取用户设置
This commit is contained in:
parent
153b438f2c
commit
9376a2946f
@ -173,6 +173,8 @@ func newGinRouter(ctx context.Context, client discovery.SvcDiscoveryRegistry, co
|
||||
userRouterGroup.POST("/set_group_invite_setting", u.SetGroupInviteSetting)
|
||||
// 设置用户全局阅后即焚时长(秒),0 表示关闭
|
||||
userRouterGroup.POST("/set_user_msg_burn_duration", u.SetUserMsgBurnDuration)
|
||||
// 批量查询阅后即焚、手机号可见性、音视频接收、全局/会话消息接收、群邀请等设置
|
||||
userRouterGroup.POST("/get_user_privacy_settings", u.GetUserPrivacySettings)
|
||||
// 根据手机号精确查找用户(phoneSearchVisibility=true 时遵守 phone_visibility 设置)
|
||||
userRouterGroup.POST("/get_user_by_phone", u.GetUserByPhone)
|
||||
// 根据昵称精确查询用户(可多结果,与 getPaginationUsers 模糊搜索不同)
|
||||
|
||||
@ -359,6 +359,10 @@ func (u *UserApi) SetUserMsgBurnDuration(c *gin.Context) {
|
||||
a2r.Call(c, user.UserClient.SetUserMsgBurnDuration, u.Client)
|
||||
}
|
||||
|
||||
func (u *UserApi) GetUserPrivacySettings(c *gin.Context) {
|
||||
a2r.Call(c, user.UserClient.GetUserPrivacySettings, u.Client)
|
||||
}
|
||||
|
||||
func (u *UserApi) GetUserByPhone(c *gin.Context) {
|
||||
a2r.Call(c, user.UserClient.GetUserByPhone, u.Client)
|
||||
}
|
||||
|
||||
@ -455,6 +455,29 @@ func (s *userServer) SetUserMsgBurnDuration(ctx context.Context, req *pbuser.Set
|
||||
return &pbuser.SetUserMsgBurnDurationResp{}, nil
|
||||
}
|
||||
|
||||
// GetUserPrivacySettings 返回当前登录用户(ctx opUserID)的隐私与接收相关设置。
|
||||
func (s *userServer) GetUserPrivacySettings(ctx context.Context, req *pbuser.GetUserPrivacySettingsReq) (*pbuser.GetUserPrivacySettingsResp, error) {
|
||||
userID := mcontext.GetOpUserID(ctx)
|
||||
if userID == "" {
|
||||
return nil, errs.ErrArgs.WrapMsg("opUserID is required")
|
||||
}
|
||||
users, err := s.db.FindWithError(ctx, []string{userID})
|
||||
if err != nil {
|
||||
log.ZError(ctx, "GetUserPrivacySettings: user not found or db error", err,
|
||||
"opUserID", userID)
|
||||
return nil, err
|
||||
}
|
||||
u := users[0]
|
||||
return &pbuser.GetUserPrivacySettingsResp{
|
||||
MsgBurnDuration: u.MsgBurnDuration,
|
||||
PhoneVisibility: u.PhoneVisibility,
|
||||
CallAcceptSetting: u.CallAcceptSetting,
|
||||
GlobalRecvMsgOpt: u.GlobalRecvMsgOpt,
|
||||
MsgReceiveSetting: u.MsgReceiveSetting,
|
||||
GroupInviteSetting: u.GroupInviteSetting,
|
||||
}, nil
|
||||
}
|
||||
|
||||
// GetUserByPhone 根据精确手机号查询用户。
|
||||
//
|
||||
// phone_visibility 仅控制用户资料中手机号字段是否展示,不影响搜索本身:
|
||||
|
||||
2
protocol
2
protocol
@ -1 +1 @@
|
||||
Subproject commit 49fe436a9a00d4b5a2e86f728cdd34156bed1164
|
||||
Subproject commit 9c1ea89b54286e04a376bdd4fa56a96e5b08766f
|
||||
Loading…
x
Reference in New Issue
Block a user