mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-06-24 02:28:11 +08:00
107 lines
3.6 KiB
Go
107 lines
3.6 KiB
Go
// Copyright © 2023 OpenIM. All rights reserved.
|
||
//
|
||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||
// you may not use this file except in compliance with the License.
|
||
// You may obtain a copy of the License at
|
||
//
|
||
// http://www.apache.org/licenses/LICENSE-2.0
|
||
//
|
||
// Unless required by applicable law or agreed to in writing, software
|
||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
// See the License for the specific language governing permissions and
|
||
// limitations under the License.
|
||
|
||
package model
|
||
|
||
import (
|
||
"time"
|
||
)
|
||
|
||
// PhoneVisibility 手机号可见性枚举。
|
||
// 0=所有人可见, 1=仅好友可见, 2=完全隐藏
|
||
const (
|
||
PhoneVisibilityPublic int32 = 0
|
||
PhoneVisibilityFriends int32 = 1
|
||
PhoneVisibilityHidden int32 = 2
|
||
)
|
||
|
||
// CallAcceptSetting 音视频通话接受权限枚举。
|
||
// 0=所有人可发起, 1=仅好友可发起, 2=不接受任何通话
|
||
const (
|
||
CallAcceptSettingPublic int32 = 0
|
||
CallAcceptSettingFriends int32 = 1
|
||
CallAcceptSettingNobody int32 = 2
|
||
)
|
||
|
||
// MsgReceiveSetting 会话消息接收权限枚举。
|
||
// 0=所有人可发送, 1=仅好友可发送, 2=所有人不可发送
|
||
const (
|
||
MsgReceiveSettingPublic int32 = 0
|
||
MsgReceiveSettingFriends int32 = 1
|
||
MsgReceiveSettingNobody int32 = 2
|
||
)
|
||
|
||
// GroupInviteSetting 群邀请权限枚举。
|
||
// 0=所有人可邀请, 1=仅好友可邀请, 2=所有人不可邀请
|
||
const (
|
||
GroupInviteSettingPublic int32 = 0
|
||
GroupInviteSettingFriends int32 = 1
|
||
GroupInviteSettingNobody int32 = 2
|
||
)
|
||
|
||
// UserStatus 用户账号状态枚举。
|
||
// 0=正常;1=冻结(可登录,不能收发消息);2=黑名单(不可登录,自动踢下线,不能收发消息)
|
||
const (
|
||
UserStatusNormal int32 = 0
|
||
UserStatusFrozen int32 = 1
|
||
UserStatusBlacklist int32 = 2
|
||
)
|
||
|
||
// DefaultDeleteAccountIntervalSec 删除账号等待间隔的系统默认值(18 个月,按 30 天/月折算)。
|
||
// 注册时写入 MongoDB 的初始值;用户未显式修改时即为此值。
|
||
const DefaultDeleteAccountIntervalSec int32 = 18 * 30 * 24 * 3600
|
||
|
||
type User struct {
|
||
UserID string `bson:"user_id"`
|
||
Nickname string `bson:"nickname"`
|
||
FaceURL string `bson:"face_url"`
|
||
Ex string `bson:"ex"`
|
||
AppMangerLevel int32 `bson:"app_manger_level"`
|
||
GlobalRecvMsgOpt int32 `bson:"global_recv_msg_opt"`
|
||
CreateTime time.Time `bson:"create_time"`
|
||
FirstName string `bson:"first_name"`
|
||
LastName string `bson:"last_name"`
|
||
FullName string `bson:"full_name"`
|
||
Phone string `bson:"phone"`
|
||
AreaCode string `bson:"area_code"`
|
||
PhoneVisibility int32 `bson:"phone_visibility"`
|
||
CallAcceptSetting int32 `bson:"call_accept_setting"`
|
||
MsgReceiveSetting int32 `bson:"msg_receive_setting"`
|
||
GroupInviteSetting int32 `bson:"group_invite_setting"`
|
||
// CallRingtoneURL 用户自定义来电铃声 URL;对方来电时播放此铃声
|
||
CallRingtoneURL string `bson:"call_ringtone_url"`
|
||
// Status 账号状态:0=正常,1=冻结,2=黑名单
|
||
Status int32 `bson:"status"`
|
||
// MsgBurnDuration 用户全局消息阅后即焚时长(秒);0 表示关闭
|
||
MsgBurnDuration int32 `bson:"msg_burn_duration"`
|
||
// DeleteAccountInterval 删除账号间隔(秒);0 表示关闭
|
||
DeleteAccountInterval int32 `bson:"delete_account_interval"`
|
||
}
|
||
|
||
func (u *User) GetNickname() string {
|
||
return u.Nickname
|
||
}
|
||
|
||
func (u *User) GetFaceURL() string {
|
||
return u.FaceURL
|
||
}
|
||
|
||
func (u *User) GetUserID() string {
|
||
return u.UserID
|
||
}
|
||
|
||
func (u *User) GetEx() string {
|
||
return u.Ex
|
||
}
|