Get desktop application:
View/edit binary Protocol Buffers messages
UserRegister 用户注册 二次开发人员可以传递自定义参数 如果不满足你的需求 你可以修改该proto文件
UserRegisterReq 用户注册请求
用户id 唯一
注册时间 13位时间戳 如果不传 默认为当前时间
昵称
头像url
账号信息 你可以存放password、email、phone等等
个人信息 你可以存放性别、年龄、生日等等
扩展信息 你可以存放等级、积分、金币等等
验证信息 你可以存放smsCode、emailCode等等
UserRegisterResp 用户注册响应
UserDestroy 用户注销 注销逻辑可以从这里修改
UserDestroyReq 用户注销请求
// 用户id 唯一
UserDestroyResp 用户注销响应
UserAccessToken 用户登录 登录逻辑可以从这里修改 默认是密码/手机号登录
UserAccessTokenReq 用户登录请求
账号信息 你可以存放password、email、phone等等
验证信息 你可以存放smsCode、emailCode等等
过期时间 13位时间戳
UserAccessTokenResp 用户登录响应
用户id 唯一
用户token
RefreshUserAccessToken 刷新用户token 刷新逻辑可以从这里修改
RefreshUserAccessTokenReq 刷新用户token请求
用户id 唯一
RefreshUserAccessTokenResp 刷新用户token响应
RevokeUserAccessToken 注销用户token 注销逻辑可以从这里修改
RevokeUserAccessTokenReq 注销用户token
RevokeUserAccessTokenResp 注销用户token
UpdateUserAccountMap 更新用户账号信息 更新账号信息逻辑可以从这里修改 默认:如果是修改密码,需要旧密码或手机验证码。如果修改绑定手机号,需要验证新手机号的验证码
UpdateUserAccountMapReq 更新用户账号信息请求
账号信息 你可以存放password、email、phone等等
验证信息 你可以存放oldPassword、smsCode、emailCode等等
UpdateUserAccountMapResp 更新用户账号信息响应
ResetUserAccountMap 重置用户账号信息 重置账号信息逻辑可以从这里修改
ResetUserAccountMapReq 重置用户账号信息请求
账号信息 你可以存放password、email、phone等等
验证信息 你可以存放smsCode、emailCode等等
ResetUserAccountMapResp 重置用户账号信息响应
CreateRobot 创建机器人 创建机器人逻辑可以从这里修改
CreateRobotReq 创建机器人请求
机器人id 唯一
昵称
头像url
CreateRobotResp 创建机器人响应
机器人token
UserAfterOnline 用户上线回调 用户上线回调逻辑可以从这里修改
UserAfterOnlineReq 用户上线回调请求
UserAfterOnlineResp 用户上线回调响应
UserAfterOffline 用户下线回调 用户下线回调逻辑可以从这里修改
UserAfterOfflineReq 用户下线回调请求
用户id 唯一
UserAfterOfflineResp 用户下线回调响应
UserBeforeConnect 用户连接前的回调 用户连接前的回调逻辑可以从这里修改
UserBeforeConnectReq 服务端连接前的回调
用户id 唯一
用户token
UserBeforeConnectResp 服务端连接前的回调
是否允许建立连接
如果不允许建立连接,返回的错误码
如果不允许建立连接,返回的错误信息
成功的话返回用户id
UserBeforeRequest 用户请求前的回调 用户请求前的回调逻辑可以从这里修改
UserBeforeRequestReq 用户请求前的回调请求
请求路径
UserBeforeRequestResp 用户请求前的回调响应
用户id
UserAfterKeepAlive 用户保活回调 用户保活回调逻辑可以从这里修改
UserAfterKeepAliveReq 用户保活回调请求
UserAfterKeepAliveResp 用户保活回调响应
GetCaptcha 获取图形验证码 二次开发人员可以自行实现
GetCaptchaReq 获取图形验证码请求
过期时间
字符是否包含英文
字符是否包含数字
宽度
高度
字符数量
GetCaptchaResp 获取图形验证码响应
验证码id
图形验证码
CaptchaVerify 验证图形验证码 二次开发人员可以自行实现
CaptchaVerifyReq 验证图形验证码请求
验证码id
验证码
是否立刻删除 删除后再次验证会失败
CaptchaVerifyResp 验证图形验证码响应
ConversationSettingUpdate 更新会话设置
ListJoinedConversations 列出加入的会话
Cursor 游标
Limit 限制
EmailCodeSend 发送邮件 二次开发人员可以自行实现
EmailCodeSendReq 发送邮件请求
邮件地址
场景
过期时间
EmailCodeSendResp 发送邮件响应
EmailCodeVerify 验证邮件 二次开发人员可以自行实现
EmailCodeVerifyReq 验证邮件请求
邮件地址
场景
验证码
是否立刻删除 删除后再次验证会失败
EmailCodeVerifyResp 验证邮件响应
FriendApply 添加好友
Message 附加消息
Answer 附加回答
FriendApplyHandle 处理好友申请
Agree 是否同意
同意后发送的第一条消息
ListFriendApply 列出好友申请
Cursor 游标
Limit 限制
Cursor 游标
CountFriend 统计好友数量
CountFriendReq 统计好友数量
GatewayGetUserConnection 获取用户的连接 二次开发人员不建议修改此处逻辑
GatewayGetUserConnectionReq 获取用户的连接
GatewayBatchGetUserConnection 批量获取用户的连接 二次开发人员建议不修改此处逻辑
GatewayBatchGetUserConnectionReq 批量获取用户的连接
GatewayGetConnectionByFilter 通过条件获取用户的连接 二次开发人员可以增加过滤条件
GatewayGetConnectionByFilterReq 根据过滤条件获取连接
GatewayWriteDataToWs 向用户的连接写入数据 二次开发人员不建议修改此处逻辑
GatewayWriteDataToWsReq 写入数据到ws连接
GatewayWriteDataToWsWrapper 向用户的连接写入数据 二次开发人员不建议修改此处逻辑
GatewayWriteDataToWsWrapperReq 写入数据到ws连接
GatewayKickWs 踢出用户的连接 二次开发人员可以在此处修改踢出用户连接的逻辑 比如踢出连接之前,先给用户发送一条消息
GatewayKickWsReq 踢出ws连接
KeepAlive 保持连接 客户端必须每隔 config.Websocket.KeepAliveSecond 秒发送一次心跳包 二次开发人员可以在这里修改逻辑,比如一致性算法安全校验等
GatewayKeepAliveReq 保持连接
VerifyConnection 验证连接 客户端拿着自己的公钥,请求网关,网关返回自己的公钥
VerifyConnectionReq 验证连接 客户端拿着自己的公钥,请求网关,网关返回自己的公钥
AuthenticationConnection 验证连接 客户端拿着userId token,鉴权连接
AuthenticationConnectionReq 验证连接 客户端拿着userId token,鉴权连接
GroupCreate 创建群组
CountJoinGroup 统计加入的群组数量
CountJoinGroupReq 统计加入的群组数量
CountCreateGroup 统计创建的群组数量
CountCreateGroupReq 统计创建的群组数量
GroupSubscribe 群组订阅
ListGroupSubscribers 列出群组订阅者
ListGroupSubscribersReq 列出群组订阅者
GroupId 群组id
Cursor 游标
Limit 限制
UpdateUserProfileMap 更新用户个人信息 更新个人信息逻辑可以从这里修改
UpdateUserProfileMapReq 更新用户个人信息请求
个人信息 你可以存放性别、年龄、生日等等
UpdateUserProfileMapResp 更新用户个人信息响应
UpdateUserExtraMap 更新用户扩展信息 更新扩展信息逻辑可以从这里修改
UpdateUserExtraMapReq 更新用户扩展信息请求
扩展信息 你可以存放等级、积分、金币等等
UpdateUserExtraMapResp 更新用户扩展信息响应
UpdateUserCountMap 更新用户计数信息 更新计数信息逻辑可以从这里修改
UpdateUserCountMapReq 更新用户计数信息请求
是否统计 统计后同步到数据库
UpdateUserCountMapResp 更新用户计数信息响应
GetSelfUserInfo 获取自己的用户信息 获取自己的用户信息逻辑可以从这里修改
GetSelfUserInfoReq 获取自己的用户信息请求
GetSelfUserInfoResp 获取自己的用户信息响应
用户id 唯一
注册时间 13位时间戳 如果不传 默认为当前时间
昵称
头像url
账号信息 你可以存放password、email、phone等等
个人信息 你可以存放性别、年龄、生日等等
扩展信息 你可以存放等级、积分、金币等等
GetUserInfo 获取用户信息 获取用户信息逻辑可以从这里修改
GetUserInfoReq 获取用户信息请求
用户id 唯一
GetUserInfoResp 获取用户信息响应
用户id 唯一
注册时间 13位时间戳 如果不传 默认为当前时间
昵称
头像url
个人信息 你可以存放性别、年龄、生日等等
GetUserModelById 获取用户模型 获取用户模型逻辑可以从这里修改
GetUserModelReq 获取用户模型请求
用户id 唯一
GetUserModelByIdResp 获取用户模型响应
用户模型json
用户设置json 他是map[string]usermodel.UserSetting的json
GetUserModelByIds 批量获取用户模型 批量获取用户模型逻辑可以从这里修改
GetUserModelByIdsReq 批量获取用户模型请求
用户id列表
GetUserModelByIdsResp 批量获取用户模型响应
用户模型json列表
用户设置json列表 value是map[string]usermodel.UserSetting的json
MessageInsert 插入消息 二次开发时,需要实现该接口
MessageInsertReq 插入消息请求
消息
MessageInsertResp 插入消息响应
MessageSend 发送消息
MessageSendReq 发送消息请求
消息
禁止走队列
MessageSendResp 发送消息响应
MessageBatchSend 批量发送消息
MessageBatchSendReq 批量发送消息请求
消息
禁止走队列
MessageBatchSendResp 批量发送消息响应
MessagePush 推送消息
MessagePushReq 推送消息请求
消息
MessagePushResp 推送消息响应
NoticeSend 通知发送
NoticeBatchSend 通知批量发送
ListNotice 获取通知列表
会话id
SortGt 排序大于
Limit 限制条数
SmsCodeSend 发送短信 二次开发人员可以自行实现
SmsCodeSendReq 发送短信请求
手机号
手机国家区号
短信场景
过期时间
SmsCodeSendResp 发送短信响应
SmsCodeVerify 验证短信 二次开发人员可以自行实现
SmsCodeVerifyReq 验证短信请求
手机号
手机国家区号
短信场景
验证码
是否立刻删除 删除后再次验证会失败
SmsCodeVerifyResp 验证短信响应
SubscriptionSubscribe 订阅号订阅
SubscriptionAfterOnline 订阅号在做用户上线后的操作
SubscriptionAfterOffline 订阅号在做用户下线后的操作
SubscriptionAfterOffline 订阅号在做用户下线后的操作
UpsertUserSubscription 更新用户订阅的订阅号
SubscriptionId 订阅号id
DeleteUserSubscription 删除用户订阅的订阅号
SubscriptionId 订阅号id
ListSubscriptionSubscribers 列出订阅号订阅者
SubscriptionId 订阅号id
Cursor 游标
Limit 限制
WorldPostSubmit 世界圈帖子发布
AlertActionData alert提示 永远有一个关闭按钮 以下描述的是另一个操作按钮
标题
消息
按钮类型
按钮标签
按钮数据
Used in:
无按钮
跳转url
ConversationSettingKey 会话设置key
Used in:
是否置顶
是否免打扰
是否屏蔽
是否折叠
自己设置的会话备注
在会话中的昵称
ConversationType 会话类型
Used in:
, , , ,单聊
群聊
订阅号
FriendApplyStatus 好友申请状态
Used in:
Applying 申请中
Accepted 已同意
Rejected 已拒绝
GatewayApiRequest http/私有协议 请求
GatewayApiResponse http/私有协议 响应
Used in:
Used in:
, , ,GatewayWriteDataContent 写入数据内容
Used in:
,写入数据类型
响应
主动推送message
主动推送notice
Used as response type in: gatewayService.GatewayWriteDataToWs, gatewayService.GatewayWriteDataToWsWrapper
GatewayWriteDataType 写入数据类型
Used in:
返回响应
主动推送message
主动推送notice
Used in:
是否携带用户设置列表
用户设置key列表 如果withUserSettings为false 则该字段无效
Used in:
是否携带用户设置列表
用户设置key列表 如果withUserSettings为false 则该字段无效
Filter 过滤器
Used in:
Option 选项
Used in:
包含我发出的申请
List 列表
Used in:
ApplyId 申请id
FromUserId 申请人id
ToUserId 被申请人id
Message 附加消息
Answer 附加回答
Filter 过滤器
Used in:
subscribeTimeGte 订阅时间大于等于
Option 选项
Used in:
(message has no fields)
Cursor 游标 List 列表
Used in:
UserId 用户id
SubscribeTime 订阅时间
Filter 过滤器
Used in:
使用setting中的字段过滤
Used in:
Used in:
等于
不等于
Option 选项
Used in:
IncludeSelfMemberInfo 是否包含自己的成员信息
List 列表
Used in:
ConversationId 会话id
Used in:
Used in:
会话id
会话类型
Filter 过滤器
Used in:
subscribeTimeGte 订阅时间大于等于
Option 选项
Used in:
(message has no fields)
Cursor 游标 List 列表
Used in:
UserId 用户id
SubscribeTime 订阅时间
LongConnection ws连接
Used in:
, , , ,Message 消息
Used in:
, , , ,MessageId 消息id 由服务端插入时生成
UUID 客户端生成的id 由客户端生成 在客户端保证唯一性
发送到哪个会话
单聊: 那么该值为接受者的id;群聊:那么该值为群id;订阅号:那么该值为订阅号id
会话类型
有可能是系统 那么该值为空
消息内容
消息类型
发送时间 由客户端生成
插入时间 由服务端生成
在会话中的消息顺序
extraMap, example: {"platformSource": "windows"}
选项
Used in:
服务端是否保存该消息
客户端是否保存该消息
是否需要解密 (端对端加密技术,服务端无法解密)
消息是否需要计入未读数
发送者
Used in:
发送者id
发送者名称
发送者头像
extra
MessageContentText 图文消息
items 图文消息
Used in:
类型
文本
@用户信息
Used in:
用户id
用户名称, 渲染时先获取用户本地信息中的备注,如果没有备注,那么就显示该名称
图片
Used in:
图片地址
宽度
高度
Used in:
文本
图片
@
MessageContentType 消息内容类型
Used in:
图文
Markdown
图片
语音
视频
正在输入
已读
撤回
Notice 通知
Used in:
, ,通知id 因为通知永远都是服务端发送给客户端的,所以通知id一定唯一。
发送到哪个会话
单聊: 那么该值为发送者和接受者的id;群聊:那么该值为群id;订阅号:那么该值为订阅号id
会话类型
通知内容
通知类型
通知的更新时间
排序
NoticeContentJoinNewGroup 通知内容-加入新群
NoticeContentNewFriendRequest 通知内容-新的好友请求
(message has no fields)
NoticeContentOnlineStatus 通知内容-用户在线状态
用户id
是在线还是离线
NoticeContentType 通知内容类型
Used in:
有新的好友请求
加入到了新群
在线状态
Used as request type in: noticeService.NoticeSend
Used as field type in:
追加用户
是否广播
Platform 平台枚举
Used in:
ios
android
web
windows
mac
linux
ipad
android pad
RequestHeader 请求头
Used in:
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,应用id
用户id
客户端ip
安装后向服务器注册的UUID
平台
设备型号
操作系统版本
app版本
额外信息
ResponseActionType 客户端收到响应后做的动作类型
Used in:
无动作
toast提示
alert提示
二次认证 一段时间内没有进行二次验证 而且此次是高危操作 此时客户端应该弹出二次验证界面 验证短信验证码
ResponseCode
Used in:
成功
无效的数据
未授权
禁止访问
无效的方法
超时
服务器错误
ResponseHeader 响应头
Used in:
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,错误码
动作类型
动作数据 json字符串
额外信息
ToastActionData toast提示 客户端根据level显示不同的颜色 可能持续不同的时间
级别
消息
Used in:
信息
警告
错误
Used in:
加
减
固定
Used in:
好友数量
加入群数量
创建群数量
UserSubscription 用户订阅的订阅号
Used in:
WebsocketCustomCloseCode websocket关闭码 You can define custom codes in the 3000-4999 range. The 3000-3999 range is reserved for use by libraries, frameworks and applications. The 4000-4999 range is reserved for private use.
Used in:
,pb必须有一个默认值
正常关闭
离开
协议错误
不支持的数据
没有收到状态
异常关闭
认证失败
重复连接
服务器内部错误
心跳超时