Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
im-microservice
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Li Feifei
im-microservice
Commits
2e1b7f2f
Commit
2e1b7f2f
authored
Jul 15, 2020
by
李洪
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
删除验证
parent
41583da8
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
398 additions
and
919 deletions
+398
-919
common.validator.pb.go
pb/common.validator.pb.go
+0
-37
im_chat_room_user.pb.go
pb/im_chat_room_user.pb.go
+107
-164
im_chat_room_user.validator.pb.go
pb/im_chat_room_user.validator.pb.go
+1
-26
im_user.pb.go
pb/im_user.pb.go
+242
-389
im_user.validator.pb.go
pb/im_user.validator.pb.go
+7
-32
im_user.go
sevice/im_user/im_user.go
+15
-73
im_user_db.go
sevice/im_user/im_user_db.go
+1
-1
im_user_login_db.go
sevice/im_user/im_user_login_db.go
+0
-156
im_chat_room_user.proto
u-proto/im_chat_room_user.proto
+14
-19
im_user.proto
u-proto/im_user.proto
+11
-22
No files found.
pb/common.validator.pb.go
deleted
100644 → 0
View file @
41583da8
// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: u-proto/common.proto
package
pb
import
(
fmt
"fmt"
_
"github.com/gogo/protobuf/gogoproto"
proto
"github.com/golang/protobuf/proto"
_
"github.com/mwitkow/go-proto-validators"
github_com_mwitkow_go_proto_validators
"github.com/mwitkow/go-proto-validators"
math
"math"
)
// Reference imports to suppress errors if they are not otherwise used.
var
_
=
proto
.
Marshal
var
_
=
fmt
.
Errorf
var
_
=
math
.
Inf
func
(
this
*
Common
)
Validate
()
error
{
if
this
.
Appkey
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Appkey"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Appkey
))
}
if
this
.
Nonce
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Nonce"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Nonce
))
}
if
this
.
Curtime
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Curtime"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Curtime
))
}
if
this
.
Checksum
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Checksum"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Checksum
))
}
return
nil
}
func
(
this
*
Page
)
Validate
()
error
{
return
nil
}
pb/im_chat_room_user.pb.go
View file @
2e1b7f2f
...
@@ -36,9 +36,8 @@ type RoomUserAddOpeRequest struct {
...
@@ -36,9 +36,8 @@ type RoomUserAddOpeRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common,omitempty"`
RoomId
int64
`protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
RoomId
int64
`protobuf:"varint,2,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
Operator
string
`protobuf:"bytes,2,opt,name=Operator,proto3" json:"Operator,omitempty"`
Operator
string
`protobuf:"bytes,3,opt,name=Operator,proto3" json:"Operator,omitempty"`
}
}
func
(
x
*
RoomUserAddOpeRequest
)
Reset
()
{
func
(
x
*
RoomUserAddOpeRequest
)
Reset
()
{
...
@@ -73,13 +72,6 @@ func (*RoomUserAddOpeRequest) Descriptor() ([]byte, []int) {
...
@@ -73,13 +72,6 @@ func (*RoomUserAddOpeRequest) Descriptor() ([]byte, []int) {
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
0
}
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
0
}
}
}
func
(
x
*
RoomUserAddOpeRequest
)
GetCommon
()
*
Common
{
if
x
!=
nil
{
return
x
.
Common
}
return
nil
}
func
(
x
*
RoomUserAddOpeRequest
)
GetRoomId
()
int64
{
func
(
x
*
RoomUserAddOpeRequest
)
GetRoomId
()
int64
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
RoomId
return
x
.
RoomId
...
@@ -100,9 +92,8 @@ type RoomUserAddRequest struct {
...
@@ -100,9 +92,8 @@ type RoomUserAddRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common,omitempty"`
RoomId
int64
`protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
RoomId
int64
`protobuf:"varint,2,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,4,opt,name=Accid,proto3" json:"Accid,omitempty"`
}
}
func
(
x
*
RoomUserAddRequest
)
Reset
()
{
func
(
x
*
RoomUserAddRequest
)
Reset
()
{
...
@@ -137,13 +128,6 @@ func (*RoomUserAddRequest) Descriptor() ([]byte, []int) {
...
@@ -137,13 +128,6 @@ func (*RoomUserAddRequest) Descriptor() ([]byte, []int) {
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
1
}
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
1
}
}
}
func
(
x
*
RoomUserAddRequest
)
GetCommon
()
*
Common
{
if
x
!=
nil
{
return
x
.
Common
}
return
nil
}
func
(
x
*
RoomUserAddRequest
)
GetRoomId
()
int64
{
func
(
x
*
RoomUserAddRequest
)
GetRoomId
()
int64
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
RoomId
return
x
.
RoomId
...
@@ -164,11 +148,10 @@ type RoomUserSetRoleRequest struct {
...
@@ -164,11 +148,10 @@ type RoomUserSetRoleRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common,omitempty"`
RoomId
int64
`protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
RoomId
int64
`protobuf:"varint,2,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
Operator
string
`protobuf:"bytes,2,opt,name=Operator,proto3" json:"Operator,omitempty"`
Operator
string
`protobuf:"bytes,3,opt,name=Operator,proto3" json:"Operator,omitempty"`
Accid
string
`protobuf:"bytes,3,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,4,opt,name=Accid,proto3" json:"Accid,omitempty"`
Role
int64
`protobuf:"varint,4,opt,name=Role,proto3" json:"Role,omitempty"`
Role
int64
`protobuf:"varint,5,opt,name=Role,proto3" json:"Role,omitempty"`
}
}
func
(
x
*
RoomUserSetRoleRequest
)
Reset
()
{
func
(
x
*
RoomUserSetRoleRequest
)
Reset
()
{
...
@@ -203,13 +186,6 @@ func (*RoomUserSetRoleRequest) Descriptor() ([]byte, []int) {
...
@@ -203,13 +186,6 @@ func (*RoomUserSetRoleRequest) Descriptor() ([]byte, []int) {
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
2
}
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
2
}
}
}
func
(
x
*
RoomUserSetRoleRequest
)
GetCommon
()
*
Common
{
if
x
!=
nil
{
return
x
.
Common
}
return
nil
}
func
(
x
*
RoomUserSetRoleRequest
)
GetRoomId
()
int64
{
func
(
x
*
RoomUserSetRoleRequest
)
GetRoomId
()
int64
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
RoomId
return
x
.
RoomId
...
@@ -316,9 +292,8 @@ type RoomUserOneRequest struct {
...
@@ -316,9 +292,8 @@ type RoomUserOneRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common,omitempty"`
RoomId
int64
`protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
RoomId
int64
`protobuf:"varint,2,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,3,opt,name=Accid,proto3" json:"Accid,omitempty"`
}
}
func
(
x
*
RoomUserOneRequest
)
Reset
()
{
func
(
x
*
RoomUserOneRequest
)
Reset
()
{
...
@@ -353,13 +328,6 @@ func (*RoomUserOneRequest) Descriptor() ([]byte, []int) {
...
@@ -353,13 +328,6 @@ func (*RoomUserOneRequest) Descriptor() ([]byte, []int) {
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
4
}
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
4
}
}
}
func
(
x
*
RoomUserOneRequest
)
GetCommon
()
*
Common
{
if
x
!=
nil
{
return
x
.
Common
}
return
nil
}
func
(
x
*
RoomUserOneRequest
)
GetRoomId
()
int64
{
func
(
x
*
RoomUserOneRequest
)
GetRoomId
()
int64
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
RoomId
return
x
.
RoomId
...
@@ -476,11 +444,10 @@ type RoomUserListRequest struct {
...
@@ -476,11 +444,10 @@ type RoomUserListRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common,omitempty"`
Page
int64
`protobuf:"varint,1,opt,name=Page,proto3" json:"Page,omitempty"`
Page
int64
`protobuf:"varint,2,opt,name=Page,proto3" json:"Page,omitempty"`
RoomId
int64
`protobuf:"varint,2,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
RoomId
int64
`protobuf:"varint,3,opt,name=RoomId,proto3" json:"RoomId,omitempty"`
Role
int64
`protobuf:"varint,3,opt,name=Role,proto3" json:"Role,omitempty"`
Role
int64
`protobuf:"varint,4,opt,name=Role,proto3" json:"Role,omitempty"`
Accid
string
`protobuf:"bytes,4,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,5,opt,name=Accid,proto3" json:"Accid,omitempty"`
}
}
func
(
x
*
RoomUserListRequest
)
Reset
()
{
func
(
x
*
RoomUserListRequest
)
Reset
()
{
...
@@ -515,13 +482,6 @@ func (*RoomUserListRequest) Descriptor() ([]byte, []int) {
...
@@ -515,13 +482,6 @@ func (*RoomUserListRequest) Descriptor() ([]byte, []int) {
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
6
}
return
file_u_proto_im_chat_room_user_proto_rawDescGZIP
(),
[]
int
{
6
}
}
}
func
(
x
*
RoomUserListRequest
)
GetCommon
()
*
Common
{
if
x
!=
nil
{
return
x
.
Common
}
return
nil
}
func
(
x
*
RoomUserListRequest
)
GetPage
()
int64
{
func
(
x
*
RoomUserListRequest
)
GetPage
()
int64
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Page
return
x
.
Page
...
@@ -655,47 +615,38 @@ var file_u_proto_im_chat_room_user_proto_rawDesc = []byte{
...
@@ -655,47 +615,38 @@ var file_u_proto_im_chat_room_user_proto_rawDesc = []byte{
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x6d
,
0x77
,
0x69
,
0x74
,
0x6b
,
0x6f
,
0x77
,
0x2f
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x6d
,
0x77
,
0x69
,
0x74
,
0x6b
,
0x6f
,
0x77
,
0x2f
,
0x67
,
0x6f
,
0x2d
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2d
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x67
,
0x6f
,
0x2d
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2d
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x73
,
0x2f
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x72
,
0x73
,
0x2f
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x22
,
0x7f
,
0x0a
,
0x15
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x6f
,
0x74
,
0x6f
,
0x22
,
0x5b
,
0x0a
,
0x15
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x64
,
0x64
,
0x4f
,
0x70
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x64
,
0x64
,
0x4f
,
0x70
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x22
,
0x0a
,
0x08
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x12
,
0x22
,
0x0a
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x18
,
0x03
,
0x20
,
0x01
,
0x22
,
0x52
,
0x0a
,
0x12
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x64
,
0x64
,
0x52
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x22
,
0x76
,
0x0a
,
0x12
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x41
,
0x64
,
0x64
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x1e
,
0x63
,
0x63
,
0x69
,
0x64
,
0x22
,
0x98
,
0x01
,
0x0a
,
0x16
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x06
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x1c
,
0x1e
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x22
,
0xbc
,
0x01
,
0x0a
,
0x22
,
0x0a
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x16
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x74
,
0x6f
,
0x72
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x01
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x52
,
0x64
,
0x12
,
0x1c
,
0x0a
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x08
,
0xe2
,
0xdf
,
0x1f
,
0x04
,
0x10
,
0x00
,
0x18
,
0x05
,
0x52
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x22
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x22
,
0x0a
,
0x08
,
0x4f
,
0x6d
,
0x0a
,
0x0d
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x12
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x1c
,
0x0a
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x08
,
0xe2
,
0xdf
,
0x1f
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x52
,
0x6f
,
0x04
,
0x10
,
0x00
,
0x18
,
0x05
,
0x52
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x22
,
0x6d
,
0x0a
,
0x0d
,
0x52
,
0x6c
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x22
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x0a
,
0x12
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x01
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x22
,
0x76
,
0x0a
,
0x12
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x20
,
0x01
,
0x28
,
0x03
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x10
,
0x00
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x0
3
,
0x20
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x0
2
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x22
,
0xc0
,
0x01
,
0x0a
,
0x10
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x69
,
0x64
,
0x22
,
0xc0
,
0x01
,
0x0a
,
0x10
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
...
@@ -709,50 +660,48 @@ var file_u_proto_im_chat_room_user_proto_rawDesc = []byte{
...
@@ -709,50 +660,48 @@ var file_u_proto_im_chat_room_user_proto_rawDesc = []byte{
0x69
,
0x6d
,
0x65
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x55
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x55
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x55
,
0x70
,
0x64
,
0x61
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x55
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x22
,
0x8f
,
0x01
,
0x0a
,
0x13
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x22
,
0x6b
,
0x0a
,
0x13
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x50
,
0x61
,
0x67
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x50
,
0x61
,
0x67
,
0x65
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x6e
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x50
,
0x61
,
0x67
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x04
,
0x50
,
0x61
,
0x67
,
0x65
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x18
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x03
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x06
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x49
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x52
,
0x6f
,
0x6c
,
0x69
,
0x64
,
0x22
,
0x63
,
0x0a
,
0x11
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x28
,
0x0a
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x18
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x22
,
0x63
,
0x0a
,
0x11
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x01
,
0x20
,
0x03
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x28
,
0x0a
,
0x04
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x52
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x18
,
0x01
,
0x20
,
0x03
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x74
,
0x12
,
0x24
,
0x0a
,
0x08
,
0x50
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x65
,
0x18
,
0x02
,
0x20
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x08
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x50
,
0x61
,
0x67
,
0x65
,
0x52
,
0x08
,
0x50
,
0x52
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x24
,
0x0a
,
0x08
,
0x50
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x65
,
0x22
,
0x12
,
0x0a
,
0x10
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x74
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x08
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x50
,
0x61
,
0x73
,
0x65
,
0x72
,
0x44
,
0x65
,
0x6c
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x32
,
0xa1
,
0x03
,
0x0a
,
0x0c
,
0x67
,
0x65
,
0x52
,
0x08
,
0x50
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x65
,
0x22
,
0x12
,
0x0a
,
0x10
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x12
,
0x3d
,
0x0a
,
0x0b
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x44
,
0x65
,
0x6c
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x41
,
0x64
,
0x64
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x12
,
0x19
,
0x2e
,
0x70
,
0x62
,
0x32
,
0xa1
,
0x03
,
0x0a
,
0x0c
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x64
,
0x64
,
0x4f
,
0x70
,
0x65
,
0x52
,
0x72
,
0x12
,
0x3d
,
0x0a
,
0x0b
,
0x41
,
0x64
,
0x64
,
0x4f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x12
,
0x19
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x64
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3e
,
0x0a
,
0x0f
,
0x43
,
0x64
,
0x4f
,
0x70
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x64
,
0x64
,
0x12
,
0x16
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x41
,
0x64
,
0x64
,
0x52
,
0x12
,
0x3e
,
0x0a
,
0x0f
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x41
,
0x64
,
0x64
,
0x12
,
0x16
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x46
,
0x0a
,
0x13
,
0x43
,
0x72
,
0x41
,
0x64
,
0x64
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x6f
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x6c
,
0x65
,
0x12
,
0x1a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x12
,
0x46
,
0x0a
,
0x13
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x11
,
0x53
,
0x65
,
0x74
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x12
,
0x1a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x6f
,
0x6c
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x79
,
0x22
,
0x00
,
0x12
,
0x41
,
0x0a
,
0x0f
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x12
,
0x16
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x72
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x41
,
0x0a
,
0x0f
,
0x43
,
0x68
,
0x61
,
0x74
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x14
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x12
,
0x16
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x44
,
0x0a
,
0x10
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x17
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x44
,
0x0a
,
0x10
,
0x43
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x15
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x17
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x41
,
0x0a
,
0x0f
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x15
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x44
,
0x65
,
0x6c
,
0x12
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x16
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x00
,
0x12
,
0x41
,
0x0a
,
0x0f
,
0x43
,
0x68
,
0x61
,
0x74
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x72
,
0x44
,
0x65
,
0x6c
,
0x12
,
0x16
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x44
,
0x65
,
0x6c
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x62
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x14
,
0x2e
,
0x70
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
0x62
,
0x2e
,
0x52
,
0x6f
,
0x6f
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x44
,
0x65
,
0x6c
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
}
}
var
(
var
(
...
@@ -778,34 +727,28 @@ var file_u_proto_im_chat_room_user_proto_goTypes = []interface{}{
...
@@ -778,34 +727,28 @@ var file_u_proto_im_chat_room_user_proto_goTypes = []interface{}{
(
*
RoomUserListRequest
)(
nil
),
// 6: pb.RoomUserListRequest
(
*
RoomUserListRequest
)(
nil
),
// 6: pb.RoomUserListRequest
(
*
RoomUserListReply
)(
nil
),
// 7: pb.RoomUserListReply
(
*
RoomUserListReply
)(
nil
),
// 7: pb.RoomUserListReply
(
*
RoomUserDelReply
)(
nil
),
// 8: pb.RoomUserDelReply
(
*
RoomUserDelReply
)(
nil
),
// 8: pb.RoomUserDelReply
(
*
Common
)(
nil
),
// 9: pb.Common
(
*
Page
)(
nil
),
// 9: pb.Page
(
*
Page
)(
nil
),
// 10: pb.Page
}
}
var
file_u_proto_im_chat_room_user_proto_depIdxs
=
[]
int32
{
var
file_u_proto_im_chat_room_user_proto_depIdxs
=
[]
int32
{
9
,
// 0: pb.RoomUserAddOpeRequest.Common:type_name -> pb.Common
5
,
// 0: pb.RoomUserListReply.List:type_name -> pb.RoomUserOneReply
9
,
// 1: pb.RoomUserAddRequest.Common:type_name -> pb.Common
9
,
// 1: pb.RoomUserListReply.Paginate:type_name -> pb.Page
9
,
// 2: pb.RoomUserSetRoleRequest.Common:type_name -> pb.Common
0
,
// 2: pb.ChatRoomUser.AddOperator:input_type -> pb.RoomUserAddOpeRequest
9
,
// 3: pb.RoomUserOneRequest.Common:type_name -> pb.Common
1
,
// 3: pb.ChatRoomUser.ChatRoomUserAdd:input_type -> pb.RoomUserAddRequest
9
,
// 4: pb.RoomUserListRequest.Common:type_name -> pb.Common
2
,
// 4: pb.ChatRoomUser.ChatRoomUserSetRole:input_type -> pb.RoomUserSetRoleRequest
5
,
// 5: pb.RoomUserListReply.List:type_name -> pb.RoomUserOneReply
4
,
// 5: pb.ChatRoomUser.ChatRoomUserOne:input_type -> pb.RoomUserOneRequest
10
,
// 6: pb.RoomUserListReply.Paginate:type_name -> pb.Page
6
,
// 6: pb.ChatRoomUser.ChatRoomUserList:input_type -> pb.RoomUserListRequest
0
,
// 7: pb.ChatRoomUser.AddOperator:input_type -> pb.RoomUserAddOpeRequest
4
,
// 7: pb.ChatRoomUser.ChatRoomUserDel:input_type -> pb.RoomUserOneRequest
1
,
// 8: pb.ChatRoomUser.ChatRoomUserAdd:input_type -> pb.RoomUserAddRequest
3
,
// 8: pb.ChatRoomUser.AddOperator:output_type -> pb.RoomUserReply
2
,
// 9: pb.ChatRoomUser.ChatRoomUserSetRole:input_type -> pb.RoomUserSetRoleRequest
3
,
// 9: pb.ChatRoomUser.ChatRoomUserAdd:output_type -> pb.RoomUserReply
4
,
// 10: pb.ChatRoomUser.ChatRoomUserOne:input_type -> pb.RoomUserOneRequest
3
,
// 10: pb.ChatRoomUser.ChatRoomUserSetRole:output_type -> pb.RoomUserReply
6
,
// 11: pb.ChatRoomUser.ChatRoomUserList:input_type -> pb.RoomUserListRequest
5
,
// 11: pb.ChatRoomUser.ChatRoomUserOne:output_type -> pb.RoomUserOneReply
4
,
// 12: pb.ChatRoomUser.ChatRoomUserDel:input_type -> pb.RoomUserOneRequest
7
,
// 12: pb.ChatRoomUser.ChatRoomUserList:output_type -> pb.RoomUserListReply
3
,
// 13: pb.ChatRoomUser.AddOperator:output_type -> pb.RoomUserReply
8
,
// 13: pb.ChatRoomUser.ChatRoomUserDel:output_type -> pb.RoomUserDelReply
3
,
// 14: pb.ChatRoomUser.ChatRoomUserAdd:output_type -> pb.RoomUserReply
8
,
// [8:14] is the sub-list for method output_type
3
,
// 15: pb.ChatRoomUser.ChatRoomUserSetRole:output_type -> pb.RoomUserReply
2
,
// [2:8] is the sub-list for method input_type
5
,
// 16: pb.ChatRoomUser.ChatRoomUserOne:output_type -> pb.RoomUserOneReply
2
,
// [2:2] is the sub-list for extension type_name
7
,
// 17: pb.ChatRoomUser.ChatRoomUserList:output_type -> pb.RoomUserListReply
2
,
// [2:2] is the sub-list for extension extendee
8
,
// 18: pb.ChatRoomUser.ChatRoomUserDel:output_type -> pb.RoomUserDelReply
0
,
// [0:2] is the sub-list for field type_name
13
,
// [13:19] is the sub-list for method output_type
7
,
// [7:13] is the sub-list for method input_type
7
,
// [7:7] is the sub-list for extension type_name
7
,
// [7:7] is the sub-list for extension extendee
0
,
// [0:7] is the sub-list for field type_name
}
}
func
init
()
{
file_u_proto_im_chat_room_user_proto_init
()
}
func
init
()
{
file_u_proto_im_chat_room_user_proto_init
()
}
...
...
pb/im_chat_room_user.validator.pb.go
View file @
2e1b7f2f
...
@@ -5,10 +5,10 @@ package pb
...
@@ -5,10 +5,10 @@ package pb
import
(
import
(
fmt
"fmt"
fmt
"fmt"
math
"math"
proto
"github.com/golang/protobuf/proto"
proto
"github.com/golang/protobuf/proto"
_
"github.com/mwitkow/go-proto-validators"
_
"github.com/mwitkow/go-proto-validators"
github_com_mwitkow_go_proto_validators
"github.com/mwitkow/go-proto-validators"
github_com_mwitkow_go_proto_validators
"github.com/mwitkow/go-proto-validators"
math
"math"
)
)
// Reference imports to suppress errors if they are not otherwise used.
// Reference imports to suppress errors if they are not otherwise used.
...
@@ -17,11 +17,6 @@ var _ = fmt.Errorf
...
@@ -17,11 +17,6 @@ var _ = fmt.Errorf
var
_
=
math
.
Inf
var
_
=
math
.
Inf
func
(
this
*
RoomUserAddOpeRequest
)
Validate
()
error
{
func
(
this
*
RoomUserAddOpeRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
if
!
(
this
.
RoomId
>
0
)
{
if
!
(
this
.
RoomId
>
0
)
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
}
}
...
@@ -31,11 +26,6 @@ func (this *RoomUserAddOpeRequest) Validate() error {
...
@@ -31,11 +26,6 @@ func (this *RoomUserAddOpeRequest) Validate() error {
return
nil
return
nil
}
}
func
(
this
*
RoomUserAddRequest
)
Validate
()
error
{
func
(
this
*
RoomUserAddRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
if
!
(
this
.
RoomId
>
0
)
{
if
!
(
this
.
RoomId
>
0
)
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
}
}
...
@@ -45,11 +35,6 @@ func (this *RoomUserAddRequest) Validate() error {
...
@@ -45,11 +35,6 @@ func (this *RoomUserAddRequest) Validate() error {
return
nil
return
nil
}
}
func
(
this
*
RoomUserSetRoleRequest
)
Validate
()
error
{
func
(
this
*
RoomUserSetRoleRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
if
!
(
this
.
RoomId
>
0
)
{
if
!
(
this
.
RoomId
>
0
)
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
}
}
...
@@ -71,11 +56,6 @@ func (this *RoomUserReply) Validate() error {
...
@@ -71,11 +56,6 @@ func (this *RoomUserReply) Validate() error {
return
nil
return
nil
}
}
func
(
this
*
RoomUserOneRequest
)
Validate
()
error
{
func
(
this
*
RoomUserOneRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
if
!
(
this
.
RoomId
>
0
)
{
if
!
(
this
.
RoomId
>
0
)
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"RoomId"
,
fmt
.
Errorf
(
`value '%v' must be greater than '0'`
,
this
.
RoomId
))
}
}
...
@@ -88,11 +68,6 @@ func (this *RoomUserOneReply) Validate() error {
...
@@ -88,11 +68,6 @@ func (this *RoomUserOneReply) Validate() error {
return
nil
return
nil
}
}
func
(
this
*
RoomUserListRequest
)
Validate
()
error
{
func
(
this
*
RoomUserListRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
return
nil
return
nil
}
}
func
(
this
*
RoomUserListReply
)
Validate
()
error
{
func
(
this
*
RoomUserListReply
)
Validate
()
error
{
...
...
pb/im_user.pb.go
View file @
2e1b7f2f
...
@@ -36,17 +36,17 @@ type ImUserRequest struct {
...
@@ -36,17 +36,17 @@ type ImUserRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common
,omitempty"`
Appkey
string
`protobuf:"bytes,1,opt,name=Appkey,proto3" json:"Appkey
,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Name
string
`protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
Name
string
`protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
Icon
string
`protobuf:"bytes,4,opt,name=Icon,proto3" json:"Icon,omitempty"`
Icon
string
`protobuf:"bytes,4,opt,name=Icon,proto3" json:"Icon,omitempty"`
Token
string
`protobuf:"bytes,5,opt,name=Token,proto3" json:"Token,omitempty"`
Token
string
`protobuf:"bytes,5,opt,name=Token,proto3" json:"Token,omitempty"`
Sign
string
`protobuf:"bytes,6,opt,name=Sign,proto3" json:"Sign,omitempty"`
Sign
string
`protobuf:"bytes,6,opt,name=Sign,proto3" json:"Sign,omitempty"`
Email
string
`protobuf:"bytes,7,opt,name=Email,proto3" json:"Email,omitempty"`
Email
string
`protobuf:"bytes,7,opt,name=Email,proto3" json:"Email,omitempty"`
Birth
string
`protobuf:"bytes,8,opt,name=Birth,proto3" json:"Birth,omitempty"`
Birth
string
`protobuf:"bytes,8,opt,name=Birth,proto3" json:"Birth,omitempty"`
Mobile
string
`protobuf:"bytes,9,opt,name=Mobile,proto3" json:"Mobile,omitempty"`
Mobile
string
`protobuf:"bytes,9,opt,name=Mobile,proto3" json:"Mobile,omitempty"`
Gender
int64
`protobuf:"varint,10,opt,name=Gender,proto3" json:"Gender,omitempty"`
Gender
int64
`protobuf:"varint,10,opt,name=Gender,proto3" json:"Gender,omitempty"`
Ex
string
`protobuf:"bytes,11,opt,name=Ex,proto3" json:"Ex,omitempty"`
Ex
string
`protobuf:"bytes,11,opt,name=Ex,proto3" json:"Ex,omitempty"`
}
}
func
(
x
*
ImUserRequest
)
Reset
()
{
func
(
x
*
ImUserRequest
)
Reset
()
{
...
@@ -81,11 +81,11 @@ func (*ImUserRequest) Descriptor() ([]byte, []int) {
...
@@ -81,11 +81,11 @@ func (*ImUserRequest) Descriptor() ([]byte, []int) {
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
0
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
0
}
}
}
func
(
x
*
ImUserRequest
)
Get
Common
()
*
Common
{
func
(
x
*
ImUserRequest
)
Get
Appkey
()
string
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Common
return
x
.
Appkey
}
}
return
nil
return
""
}
}
func
(
x
*
ImUserRequest
)
GetAccid
()
string
{
func
(
x
*
ImUserRequest
)
GetAccid
()
string
{
...
@@ -164,9 +164,10 @@ type ImUserRegReply struct {
...
@@ -164,9 +164,10 @@ type ImUserRegReply struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Token
string
`protobuf:"bytes,1,opt,name=Token,proto3" json:"Token,omitempty"`
Token
string
`protobuf:"bytes,1,opt,name=Token,proto3" json:"Token,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Name
string
`protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
Appkey
string
`protobuf:"bytes,3,opt,name=Appkey,proto3" json:"Appkey,omitempty"`
Name
string
`protobuf:"bytes,4,opt,name=Name,proto3" json:"Name,omitempty"`
}
}
func
(
x
*
ImUserRegReply
)
Reset
()
{
func
(
x
*
ImUserRegReply
)
Reset
()
{
...
@@ -215,73 +216,16 @@ func (x *ImUserRegReply) GetAccid() string {
...
@@ -215,73 +216,16 @@ func (x *ImUserRegReply) GetAccid() string {
return
""
return
""
}
}
func
(
x
*
ImUserRegReply
)
Get
Name
()
string
{
func
(
x
*
ImUserRegReply
)
Get
Appkey
()
string
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Name
return
x
.
Appkey
}
return
""
}
//用户登录退出
type
ImUserLoginRequest
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Platform
string
`protobuf:"bytes,3,opt,name=Platform,proto3" json:"Platform,omitempty"`
}
func
(
x
*
ImUserLoginRequest
)
Reset
()
{
*
x
=
ImUserLoginRequest
{}
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
2
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
func
(
x
*
ImUserLoginRequest
)
String
()
string
{
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
*
ImUserLoginRequest
)
ProtoMessage
()
{}
func
(
x
*
ImUserLoginRequest
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
2
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
// Deprecated: Use ImUserLoginRequest.ProtoReflect.Descriptor instead.
func
(
*
ImUserLoginRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
2
}
}
func
(
x
*
ImUserLoginRequest
)
GetCommon
()
*
Common
{
if
x
!=
nil
{
return
x
.
Common
}
return
nil
}
func
(
x
*
ImUserLoginRequest
)
GetAccid
()
string
{
if
x
!=
nil
{
return
x
.
Accid
}
}
return
""
return
""
}
}
func
(
x
*
ImUser
LoginRequest
)
GetPlatform
()
string
{
func
(
x
*
ImUser
RegReply
)
GetName
()
string
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Platform
return
x
.
Name
}
}
return
""
return
""
}
}
...
@@ -292,15 +236,15 @@ type ImUserSetRequest struct {
...
@@ -292,15 +236,15 @@ type ImUserSetRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common
,omitempty"`
Appkey
string
`protobuf:"bytes,1,opt,name=Appkey,proto3" json:"Appkey
,omitempty"`
Mute
bool
`protobuf:"varint,2,opt,name=Mute,proto3" json:"Mute,omitempty"`
Mute
bool
`protobuf:"varint,2,opt,name=Mute,proto3" json:"Mute,omitempty"`
Accid
string
`protobuf:"bytes,3,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,3,opt,name=Accid,proto3" json:"Accid,omitempty"`
}
}
func
(
x
*
ImUserSetRequest
)
Reset
()
{
func
(
x
*
ImUserSetRequest
)
Reset
()
{
*
x
=
ImUserSetRequest
{}
*
x
=
ImUserSetRequest
{}
if
protoimpl
.
UnsafeEnabled
{
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
3
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
2
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
ms
.
StoreMessageInfo
(
mi
)
}
}
...
@@ -313,7 +257,7 @@ func (x *ImUserSetRequest) String() string {
...
@@ -313,7 +257,7 @@ func (x *ImUserSetRequest) String() string {
func
(
*
ImUserSetRequest
)
ProtoMessage
()
{}
func
(
*
ImUserSetRequest
)
ProtoMessage
()
{}
func
(
x
*
ImUserSetRequest
)
ProtoReflect
()
protoreflect
.
Message
{
func
(
x
*
ImUserSetRequest
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
3
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
2
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
if
ms
.
LoadMessageInfo
()
==
nil
{
...
@@ -326,14 +270,14 @@ func (x *ImUserSetRequest) ProtoReflect() protoreflect.Message {
...
@@ -326,14 +270,14 @@ func (x *ImUserSetRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ImUserSetRequest.ProtoReflect.Descriptor instead.
// Deprecated: Use ImUserSetRequest.ProtoReflect.Descriptor instead.
func
(
*
ImUserSetRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ImUserSetRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
3
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
2
}
}
}
func
(
x
*
ImUserSetRequest
)
Get
Common
()
*
Common
{
func
(
x
*
ImUserSetRequest
)
Get
Appkey
()
string
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Common
return
x
.
Appkey
}
}
return
nil
return
""
}
}
func
(
x
*
ImUserSetRequest
)
GetMute
()
bool
{
func
(
x
*
ImUserSetRequest
)
GetMute
()
bool
{
...
@@ -355,12 +299,15 @@ type ImUserSetReply struct {
...
@@ -355,12 +299,15 @@ type ImUserSetReply struct {
state
protoimpl
.
MessageState
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Code
int64
`protobuf:"varint,1,opt,name=Code,proto3" json:"Code,omitempty"`
Msg
string
`protobuf:"bytes,2,opt,name=Msg,proto3" json:"Msg,omitempty"`
}
}
func
(
x
*
ImUserSetReply
)
Reset
()
{
func
(
x
*
ImUserSetReply
)
Reset
()
{
*
x
=
ImUserSetReply
{}
*
x
=
ImUserSetReply
{}
if
protoimpl
.
UnsafeEnabled
{
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
4
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
3
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
ms
.
StoreMessageInfo
(
mi
)
}
}
...
@@ -373,7 +320,7 @@ func (x *ImUserSetReply) String() string {
...
@@ -373,7 +320,7 @@ func (x *ImUserSetReply) String() string {
func
(
*
ImUserSetReply
)
ProtoMessage
()
{}
func
(
*
ImUserSetReply
)
ProtoMessage
()
{}
func
(
x
*
ImUserSetReply
)
ProtoReflect
()
protoreflect
.
Message
{
func
(
x
*
ImUserSetReply
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
4
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
3
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
if
ms
.
LoadMessageInfo
()
==
nil
{
...
@@ -386,7 +333,21 @@ func (x *ImUserSetReply) ProtoReflect() protoreflect.Message {
...
@@ -386,7 +333,21 @@ func (x *ImUserSetReply) ProtoReflect() protoreflect.Message {
// Deprecated: Use ImUserSetReply.ProtoReflect.Descriptor instead.
// Deprecated: Use ImUserSetReply.ProtoReflect.Descriptor instead.
func
(
*
ImUserSetReply
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ImUserSetReply
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
4
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
3
}
}
func
(
x
*
ImUserSetReply
)
GetCode
()
int64
{
if
x
!=
nil
{
return
x
.
Code
}
return
0
}
func
(
x
*
ImUserSetReply
)
GetMsg
()
string
{
if
x
!=
nil
{
return
x
.
Msg
}
return
""
}
}
//获取单个用户信息
//获取单个用户信息
...
@@ -395,14 +356,14 @@ type ImUserOneRequest struct {
...
@@ -395,14 +356,14 @@ type ImUserOneRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common
,omitempty"`
Appkey
string
`protobuf:"bytes,1,opt,name=Appkey,proto3" json:"Appkey
,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,2,opt,name=Accid,proto3" json:"Accid,omitempty"`
}
}
func
(
x
*
ImUserOneRequest
)
Reset
()
{
func
(
x
*
ImUserOneRequest
)
Reset
()
{
*
x
=
ImUserOneRequest
{}
*
x
=
ImUserOneRequest
{}
if
protoimpl
.
UnsafeEnabled
{
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
5
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
4
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
ms
.
StoreMessageInfo
(
mi
)
}
}
...
@@ -415,7 +376,7 @@ func (x *ImUserOneRequest) String() string {
...
@@ -415,7 +376,7 @@ func (x *ImUserOneRequest) String() string {
func
(
*
ImUserOneRequest
)
ProtoMessage
()
{}
func
(
*
ImUserOneRequest
)
ProtoMessage
()
{}
func
(
x
*
ImUserOneRequest
)
ProtoReflect
()
protoreflect
.
Message
{
func
(
x
*
ImUserOneRequest
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
5
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
4
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
if
ms
.
LoadMessageInfo
()
==
nil
{
...
@@ -428,14 +389,14 @@ func (x *ImUserOneRequest) ProtoReflect() protoreflect.Message {
...
@@ -428,14 +389,14 @@ func (x *ImUserOneRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ImUserOneRequest.ProtoReflect.Descriptor instead.
// Deprecated: Use ImUserOneRequest.ProtoReflect.Descriptor instead.
func
(
*
ImUserOneRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ImUserOneRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
5
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
4
}
}
}
func
(
x
*
ImUserOneRequest
)
Get
Common
()
*
Common
{
func
(
x
*
ImUserOneRequest
)
Get
Appkey
()
string
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Common
return
x
.
Appkey
}
}
return
nil
return
""
}
}
func
(
x
*
ImUserOneRequest
)
GetAccid
()
string
{
func
(
x
*
ImUserOneRequest
)
GetAccid
()
string
{
...
@@ -470,7 +431,7 @@ type ImUserOneReply struct {
...
@@ -470,7 +431,7 @@ type ImUserOneReply struct {
func
(
x
*
ImUserOneReply
)
Reset
()
{
func
(
x
*
ImUserOneReply
)
Reset
()
{
*
x
=
ImUserOneReply
{}
*
x
=
ImUserOneReply
{}
if
protoimpl
.
UnsafeEnabled
{
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
6
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
5
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
ms
.
StoreMessageInfo
(
mi
)
}
}
...
@@ -483,7 +444,7 @@ func (x *ImUserOneReply) String() string {
...
@@ -483,7 +444,7 @@ func (x *ImUserOneReply) String() string {
func
(
*
ImUserOneReply
)
ProtoMessage
()
{}
func
(
*
ImUserOneReply
)
ProtoMessage
()
{}
func
(
x
*
ImUserOneReply
)
ProtoReflect
()
protoreflect
.
Message
{
func
(
x
*
ImUserOneReply
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
6
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
5
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
if
ms
.
LoadMessageInfo
()
==
nil
{
...
@@ -496,7 +457,7 @@ func (x *ImUserOneReply) ProtoReflect() protoreflect.Message {
...
@@ -496,7 +457,7 @@ func (x *ImUserOneReply) ProtoReflect() protoreflect.Message {
// Deprecated: Use ImUserOneReply.ProtoReflect.Descriptor instead.
// Deprecated: Use ImUserOneReply.ProtoReflect.Descriptor instead.
func
(
*
ImUserOneReply
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ImUserOneReply
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
6
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
5
}
}
}
func
(
x
*
ImUserOneReply
)
GetId
()
int64
{
func
(
x
*
ImUserOneReply
)
GetId
()
int64
{
...
@@ -610,23 +571,23 @@ type ImUserListRequest struct {
...
@@ -610,23 +571,23 @@ type ImUserListRequest struct {
sizeCache
protoimpl
.
SizeCache
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
unknownFields
protoimpl
.
UnknownFields
Common
*
Common
`protobuf:"bytes,1,opt,name=Common,proto3" json:"Common
,omitempty"`
Appkey
string
`protobuf:"bytes,1,opt,name=Appkey,proto3" json:"Appkey
,omitempty"`
Page
int64
`protobuf:"varint,2,opt,name=Page,proto3" json:"Page,omitempty"`
Page
int64
`protobuf:"varint,2,opt,name=Page,proto3" json:"Page,omitempty"`
Accid
string
`protobuf:"bytes,3,opt,name=Accid,proto3" json:"Accid,omitempty"`
Accid
string
`protobuf:"bytes,3,opt,name=Accid,proto3" json:"Accid,omitempty"`
Mobile
string
`protobuf:"bytes,4,opt,name=Mobile,proto3" json:"Mobile,omitempty"`
Mobile
string
`protobuf:"bytes,4,opt,name=Mobile,proto3" json:"Mobile,omitempty"`
Name
string
`protobuf:"bytes,5,opt,name=Name,proto3" json:"Name,omitempty"`
Name
string
`protobuf:"bytes,5,opt,name=Name,proto3" json:"Name,omitempty"`
Valid
int64
`protobuf:"varint,6,opt,name=Valid,proto3" json:"Valid,omitempty"`
Valid
int64
`protobuf:"varint,6,opt,name=Valid,proto3" json:"Valid,omitempty"`
MuteEstoppel
int64
`protobuf:"varint,7,opt,name=MuteEstoppel,proto3" json:"MuteEstoppel,omitempty"`
MuteEstoppel
int64
`protobuf:"varint,7,opt,name=MuteEstoppel,proto3" json:"MuteEstoppel,omitempty"`
MuteAudioVideo
int64
`protobuf:"varint,8,opt,name=MuteAudioVideo,proto3" json:"MuteAudioVideo,omitempty"`
MuteAudioVideo
int64
`protobuf:"varint,8,opt,name=MuteAudioVideo,proto3" json:"MuteAudioVideo,omitempty"`
Gender
int64
`protobuf:"varint,9,opt,name=Gender,proto3" json:"Gender,omitempty"`
Gender
int64
`protobuf:"varint,9,opt,name=Gender,proto3" json:"Gender,omitempty"`
Createtime
string
`protobuf:"bytes,10,opt,name=Createtime,proto3" json:"Createtime,omitempty"`
Createtime
string
`protobuf:"bytes,10,opt,name=Createtime,proto3" json:"Createtime,omitempty"`
Edition
string
`protobuf:"bytes,11,opt,name=Edition,proto3" json:"Edition,omitempty"`
Edition
string
`protobuf:"bytes,11,opt,name=Edition,proto3" json:"Edition,omitempty"`
}
}
func
(
x
*
ImUserListRequest
)
Reset
()
{
func
(
x
*
ImUserListRequest
)
Reset
()
{
*
x
=
ImUserListRequest
{}
*
x
=
ImUserListRequest
{}
if
protoimpl
.
UnsafeEnabled
{
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
7
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
6
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
ms
.
StoreMessageInfo
(
mi
)
}
}
...
@@ -639,7 +600,7 @@ func (x *ImUserListRequest) String() string {
...
@@ -639,7 +600,7 @@ func (x *ImUserListRequest) String() string {
func
(
*
ImUserListRequest
)
ProtoMessage
()
{}
func
(
*
ImUserListRequest
)
ProtoMessage
()
{}
func
(
x
*
ImUserListRequest
)
ProtoReflect
()
protoreflect
.
Message
{
func
(
x
*
ImUserListRequest
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
7
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
6
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
if
ms
.
LoadMessageInfo
()
==
nil
{
...
@@ -652,14 +613,14 @@ func (x *ImUserListRequest) ProtoReflect() protoreflect.Message {
...
@@ -652,14 +613,14 @@ func (x *ImUserListRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ImUserListRequest.ProtoReflect.Descriptor instead.
// Deprecated: Use ImUserListRequest.ProtoReflect.Descriptor instead.
func
(
*
ImUserListRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ImUserListRequest
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
7
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
6
}
}
}
func
(
x
*
ImUserListRequest
)
Get
Common
()
*
Common
{
func
(
x
*
ImUserListRequest
)
Get
Appkey
()
string
{
if
x
!=
nil
{
if
x
!=
nil
{
return
x
.
Common
return
x
.
Appkey
}
}
return
nil
return
""
}
}
func
(
x
*
ImUserListRequest
)
GetPage
()
int64
{
func
(
x
*
ImUserListRequest
)
GetPage
()
int64
{
...
@@ -744,7 +705,7 @@ type ImUserListReply struct {
...
@@ -744,7 +705,7 @@ type ImUserListReply struct {
func
(
x
*
ImUserListReply
)
Reset
()
{
func
(
x
*
ImUserListReply
)
Reset
()
{
*
x
=
ImUserListReply
{}
*
x
=
ImUserListReply
{}
if
protoimpl
.
UnsafeEnabled
{
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
8
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
7
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
ms
.
StoreMessageInfo
(
mi
)
}
}
...
@@ -757,7 +718,7 @@ func (x *ImUserListReply) String() string {
...
@@ -757,7 +718,7 @@ func (x *ImUserListReply) String() string {
func
(
*
ImUserListReply
)
ProtoMessage
()
{}
func
(
*
ImUserListReply
)
ProtoMessage
()
{}
func
(
x
*
ImUserListReply
)
ProtoReflect
()
protoreflect
.
Message
{
func
(
x
*
ImUserListReply
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
8
]
mi
:=
&
file_u_proto_im_user_proto_msgTypes
[
7
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
if
ms
.
LoadMessageInfo
()
==
nil
{
...
@@ -770,7 +731,7 @@ func (x *ImUserListReply) ProtoReflect() protoreflect.Message {
...
@@ -770,7 +731,7 @@ func (x *ImUserListReply) ProtoReflect() protoreflect.Message {
// Deprecated: Use ImUserListReply.ProtoReflect.Descriptor instead.
// Deprecated: Use ImUserListReply.ProtoReflect.Descriptor instead.
func
(
*
ImUserListReply
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ImUserListReply
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
8
}
return
file_u_proto_im_user_proto_rawDescGZIP
(),
[]
int
{
7
}
}
}
func
(
x
*
ImUserListReply
)
GetList
()
[]
*
ImUserOneReply
{
func
(
x
*
ImUserListReply
)
GetList
()
[]
*
ImUserOneReply
{
...
@@ -796,132 +757,119 @@ var file_u_proto_im_user_proto_rawDesc = []byte{
...
@@ -796,132 +757,119 @@ var file_u_proto_im_user_proto_rawDesc = []byte{
0x6f
,
0x1a
,
0x36
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x6d
,
0x77
,
0x6f
,
0x1a
,
0x36
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x6d
,
0x77
,
0x69
,
0x74
,
0x6b
,
0x6f
,
0x77
,
0x2f
,
0x67
,
0x6f
,
0x2d
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2d
,
0x76
,
0x69
,
0x74
,
0x6b
,
0x6f
,
0x77
,
0x2f
,
0x67
,
0x6f
,
0x2d
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2d
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x73
,
0x2f
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x73
,
0x2f
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x22
,
0x8f
,
0x02
,
0x0a
,
0x0d
,
0x49
,
0x6d
,
0x74
,
0x6f
,
0x72
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x22
,
0x8b
,
0x02
,
0x0a
,
0x0d
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x41
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x02
,
0x58
,
0x01
,
0x52
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x12
,
0x0a
,
0x65
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x49
,
0x63
,
0x6f
,
0x6e
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x49
,
0x63
,
0x6f
,
0x6e
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x49
,
0x63
,
0x6f
,
0x04
,
0x49
,
0x63
,
0x6f
,
0x6e
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x18
,
0x05
,
0x6e
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x53
,
0x52
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x53
,
0x69
,
0x67
,
0x6e
,
0x18
,
0x69
,
0x67
,
0x6e
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x53
,
0x69
,
0x67
,
0x6e
,
0x12
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x53
,
0x69
,
0x67
,
0x6e
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x45
,
0x14
,
0x0a
,
0x05
,
0x45
,
0x6d
,
0x61
,
0x69
,
0x6c
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x6d
,
0x61
,
0x69
,
0x6c
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x45
,
0x6d
,
0x61
,
0x69
,
0x45
,
0x6d
,
0x61
,
0x69
,
0x6c
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x18
,
0x08
,
0x6c
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x09
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x4d
,
0x52
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x65
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x18
,
0x0a
,
0x20
,
0x16
,
0x0a
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x18
,
0x0a
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x01
,
0x28
,
0x03
,
0x52
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x45
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x45
,
0x78
,
0x18
,
0x0b
,
0x20
,
0x78
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x02
,
0x45
,
0x78
,
0x22
,
0x50
,
0x0a
,
0x0e
,
0x49
,
0x01
,
0x28
,
0x09
,
0x52
,
0x02
,
0x45
,
0x78
,
0x22
,
0x68
,
0x0a
,
0x0e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x67
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x14
,
0x0a
,
0x72
,
0x52
,
0x65
,
0x67
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x54
,
0x6f
,
0x65
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x12
,
0x6b
,
0x65
,
0x6e
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x65
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x22
,
0x7a
,
0x0a
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x12
,
0x0a
,
0x12
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x52
,
0x65
,
0x71
,
0x75
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x65
,
0x22
,
0x64
,
0x0a
,
0x10
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x06
,
0x41
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x18
,
0x02
,
0x20
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x22
,
0x0a
,
0x08
,
0x50
,
0x6c
,
0x61
,
0x74
,
0x66
,
0x6f
,
0x72
,
0x01
,
0x28
,
0x08
,
0x52
,
0x04
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x6d
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x08
,
0x50
,
0x6c
,
0x61
,
0x74
,
0x66
,
0x6f
,
0x72
,
0x6d
,
0x22
,
0x68
,
0x0a
,
0x10
,
0x49
,
0x6d
,
0x55
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x22
,
0x36
,
0x0a
,
0x0e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x43
,
0x6f
,
0x64
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x43
,
0x6f
,
0x64
,
0x65
,
0x12
,
0x10
,
0x0a
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x03
,
0x4d
,
0x73
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x03
,
0x4d
,
0x73
,
0x67
,
0x22
,
0x6e
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x50
,
0x0a
,
0x10
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x04
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x65
,
0x73
,
0x74
,
0x12
,
0x1e
,
0x0a
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x01
,
0x20
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x06
,
0x41
,
0x70
,
0x70
,
0x63
,
0x69
,
0x64
,
0x22
,
0x10
,
0x0a
,
0x0e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x1c
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x54
,
0x0a
,
0x10
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x64
,
0x22
,
0xfe
,
0x02
,
0x0a
,
0x0e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x1c
,
0x0a
,
0x52
,
0x02
,
0x49
,
0x64
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x02
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x06
,
0xe2
,
0xdf
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x1f
,
0x02
,
0x58
,
0x01
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x22
,
0xfe
,
0x02
,
0x0a
,
0x0e
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x0e
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x0a
,
0x02
,
0x49
,
0x64
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x02
,
0x49
,
0x64
,
0x12
,
0x16
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x53
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x05
,
0x0a
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x53
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x45
,
0x6d
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x61
,
0x69
,
0x6c
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x45
,
0x6d
,
0x61
,
0x69
,
0x6c
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x53
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x14
,
0x53
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x45
,
0x6d
,
0x61
,
0x69
,
0x6c
,
0x18
,
0x06
,
0x20
,
0x0a
,
0x05
,
0x56
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x05
,
0x56
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x45
,
0x6d
,
0x61
,
0x69
,
0x6c
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x42
,
0x69
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x12
,
0x22
,
0x0a
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x74
,
0x68
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x42
,
0x69
,
0x72
,
0x74
,
0x68
,
0x70
,
0x70
,
0x65
,
0x6c
,
0x18
,
0x0a
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x09
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x65
,
0x6c
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x52
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x56
,
0x61
,
0x6c
,
0x69
,
0x41
,
0x75
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x03
,
0x64
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x05
,
0x56
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x12
,
0x22
,
0x52
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x41
,
0x75
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x0a
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x65
,
0x6c
,
0x18
,
0x0a
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x45
,
0x78
,
0x18
,
0x0c
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x02
,
0x45
,
0x78
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x18
,
0x0d
,
0x20
,
0x01
,
0x28
,
0x03
,
0x65
,
0x6c
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x41
,
0x75
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x52
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x0e
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x43
,
0x72
,
0x41
,
0x75
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x12
,
0x0e
,
0x0a
,
0x02
,
0x45
,
0x78
,
0x65
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x12
,
0x18
,
0x0a
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x18
,
0x0c
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x02
,
0x45
,
0x78
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x47
,
0x65
,
0x69
,
0x6f
,
0x6e
,
0x18
,
0x0f
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x18
,
0x0d
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x6f
,
0x6e
,
0x22
,
0xb5
,
0x02
,
0x0a
,
0x11
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x65
,
0x72
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x18
,
0x0e
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x65
,
0x79
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x41
,
0x70
,
0x70
,
0x6b
,
0x65
,
0x79
,
0x6d
,
0x65
,
0x12
,
0x18
,
0x0a
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x18
,
0x0f
,
0x20
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x50
,
0x61
,
0x67
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x01
,
0x28
,
0x09
,
0x52
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x22
,
0xc1
,
0x02
,
0x0a
,
0x50
,
0x61
,
0x67
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x11
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x73
,
0x74
,
0x12
,
0x22
,
0x0a
,
0x06
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x52
,
0x06
,
0x6c
,
0x65
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x43
,
0x6f
,
0x6d
,
0x6d
,
0x6f
,
0x6e
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x50
,
0x61
,
0x67
,
0x65
,
0x18
,
0x02
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x56
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x18
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x04
,
0x50
,
0x61
,
0x67
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x41
,
0x63
,
0x06
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x05
,
0x56
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x12
,
0x22
,
0x0a
,
0x0c
,
0x63
,
0x69
,
0x64
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x41
,
0x63
,
0x63
,
0x69
,
0x64
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x65
,
0x6c
,
0x18
,
0x07
,
0x20
,
0x01
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x28
,
0x03
,
0x52
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x65
,
0x6c
,
0x52
,
0x06
,
0x4d
,
0x6f
,
0x62
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x41
,
0x75
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x65
,
0x6f
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x41
,
0x75
,
0x56
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x05
,
0x56
,
0x61
,
0x6c
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x69
,
0x64
,
0x12
,
0x22
,
0x0a
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x65
,
0x72
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x65
,
0x6c
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0c
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x45
,
0x73
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x0a
,
0x74
,
0x6f
,
0x70
,
0x70
,
0x65
,
0x6c
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x41
,
0x75
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0e
,
0x12
,
0x18
,
0x0a
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x4d
,
0x75
,
0x74
,
0x65
,
0x41
,
0x75
,
0x64
,
0x69
,
0x6f
,
0x56
,
0x69
,
0x64
,
0x65
,
0x6f
,
0x12
,
0x16
,
0x09
,
0x52
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x22
,
0x5f
,
0x0a
,
0x0f
,
0x49
,
0x6d
,
0x0a
,
0x06
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x06
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x26
,
0x0a
,
0x47
,
0x65
,
0x6e
,
0x64
,
0x65
,
0x72
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x74
,
0x65
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x18
,
0x01
,
0x20
,
0x03
,
0x28
,
0x0b
,
0x32
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x0a
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0a
,
0x43
,
0x72
,
0x65
,
0x61
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x52
,
0x74
,
0x65
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x12
,
0x18
,
0x0a
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x24
,
0x0a
,
0x08
,
0x50
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x6e
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x07
,
0x45
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x08
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x50
,
0x61
,
0x67
,
0x22
,
0x5f
,
0x0a
,
0x0f
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x65
,
0x52
,
0x08
,
0x50
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x65
,
0x32
,
0xf4
,
0x02
,
0x0a
,
0x06
,
0x70
,
0x6c
,
0x79
,
0x12
,
0x26
,
0x0a
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x18
,
0x01
,
0x20
,
0x03
,
0x28
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x12
,
0x39
,
0x0a
,
0x0e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x0b
,
0x32
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x67
,
0x69
,
0x73
,
0x74
,
0x65
,
0x72
,
0x12
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x52
,
0x04
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x24
,
0x0a
,
0x08
,
0x50
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x08
,
0x2e
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x67
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x70
,
0x62
,
0x2e
,
0x50
,
0x61
,
0x67
,
0x65
,
0x52
,
0x08
,
0x50
,
0x61
,
0x67
,
0x69
,
0x6e
,
0x61
,
0x74
,
0x00
,
0x12
,
0x35
,
0x0a
,
0x0a
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x61
,
0x76
,
0x65
,
0x12
,
0x65
,
0x32
,
0xf1
,
0x03
,
0x0a
,
0x06
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x12
,
0x39
,
0x0a
,
0x0e
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x67
,
0x69
,
0x73
,
0x74
,
0x65
,
0x72
,
0x12
,
0x11
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x42
,
0x0a
,
0x14
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x52
,
0x65
,
0x67
,
0x65
,
0x72
,
0x46
,
0x6f
,
0x72
,
0x62
,
0x69
,
0x64
,
0x64
,
0x65
,
0x6e
,
0x57
,
0x6f
,
0x72
,
0x64
,
0x73
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x35
,
0x0a
,
0x0a
,
0x49
,
0x6d
,
0x75
,
0x73
,
0x65
,
0x12
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x72
,
0x53
,
0x61
,
0x76
,
0x65
,
0x12
,
0x11
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x72
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3f
,
0x0a
,
0x11
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3b
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x46
,
0x6f
,
0x72
,
0x62
,
0x69
,
0x64
,
0x64
,
0x65
,
0x6e
,
0x41
,
0x0a
,
0x0b
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x12
,
0x16
,
0x2e
,
0x56
,
0x12
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x52
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x37
,
0x0a
,
0x72
,
0x52
,
0x65
,
0x67
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3e
,
0x0a
,
0x0e
,
0x49
,
0x09
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x12
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x4f
,
0x75
,
0x74
,
0x12
,
0x16
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x52
,
0x65
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3a
,
0x0a
,
0x0a
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x42
,
0x0a
,
0x14
,
0x49
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x15
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x46
,
0x6f
,
0x72
,
0x62
,
0x69
,
0x64
,
0x64
,
0x65
,
0x6e
,
0x57
,
0x6f
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x13
,
0x2e
,
0x70
,
0x62
,
0x72
,
0x64
,
0x73
,
0x12
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x65
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x22
,
0x00
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3f
,
0x0a
,
0x11
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x46
,
0x6f
,
0x72
,
0x62
,
0x69
,
0x64
,
0x64
,
0x65
,
0x6e
,
0x41
,
0x56
,
0x12
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x53
,
0x65
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x37
,
0x0a
,
0x09
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x12
,
0x14
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x12
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4f
,
0x6e
,
0x65
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x12
,
0x3a
,
0x0a
,
0x0a
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x12
,
0x15
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x13
,
0x2e
,
0x70
,
0x62
,
0x2e
,
0x49
,
0x6d
,
0x55
,
0x73
,
0x65
,
0x72
,
0x4c
,
0x69
,
0x73
,
0x74
,
0x52
,
0x65
,
0x70
,
0x6c
,
0x79
,
0x22
,
0x00
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
}
}
var
(
var
(
...
@@ -936,49 +884,38 @@ func file_u_proto_im_user_proto_rawDescGZIP() []byte {
...
@@ -936,49 +884,38 @@ func file_u_proto_im_user_proto_rawDescGZIP() []byte {
return
file_u_proto_im_user_proto_rawDescData
return
file_u_proto_im_user_proto_rawDescData
}
}
var
file_u_proto_im_user_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
9
)
var
file_u_proto_im_user_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
8
)
var
file_u_proto_im_user_proto_goTypes
=
[]
interface
{}{
var
file_u_proto_im_user_proto_goTypes
=
[]
interface
{}{
(
*
ImUserRequest
)(
nil
),
// 0: pb.ImUserRequest
(
*
ImUserRequest
)(
nil
),
// 0: pb.ImUserRequest
(
*
ImUserRegReply
)(
nil
),
// 1: pb.ImUserRegReply
(
*
ImUserRegReply
)(
nil
),
// 1: pb.ImUserRegReply
(
*
ImUserLoginRequest
)(
nil
),
// 2: pb.ImUserLoginRequest
(
*
ImUserSetRequest
)(
nil
),
// 2: pb.ImUserSetRequest
(
*
ImUserSetRequest
)(
nil
),
// 3: pb.ImUserSetRequest
(
*
ImUserSetReply
)(
nil
),
// 3: pb.ImUserSetReply
(
*
ImUserSetReply
)(
nil
),
// 4: pb.ImUserSetReply
(
*
ImUserOneRequest
)(
nil
),
// 4: pb.ImUserOneRequest
(
*
ImUserOneRequest
)(
nil
),
// 5: pb.ImUserOneRequest
(
*
ImUserOneReply
)(
nil
),
// 5: pb.ImUserOneReply
(
*
ImUserOneReply
)(
nil
),
// 6: pb.ImUserOneReply
(
*
ImUserListRequest
)(
nil
),
// 6: pb.ImUserListRequest
(
*
ImUserListRequest
)(
nil
),
// 7: pb.ImUserListRequest
(
*
ImUserListReply
)(
nil
),
// 7: pb.ImUserListReply
(
*
ImUserListReply
)(
nil
),
// 8: pb.ImUserListReply
(
*
Page
)(
nil
),
// 8: pb.Page
(
*
Common
)(
nil
),
// 9: pb.Common
(
*
Page
)(
nil
),
// 10: pb.Page
}
}
var
file_u_proto_im_user_proto_depIdxs
=
[]
int32
{
var
file_u_proto_im_user_proto_depIdxs
=
[]
int32
{
9
,
// 0: pb.ImUserRequest.Common:type_name -> pb.Common
5
,
// 0: pb.ImUserListReply.List:type_name -> pb.ImUserOneReply
9
,
// 1: pb.ImUserLoginRequest.Common:type_name -> pb.Common
8
,
// 1: pb.ImUserListReply.Paginate:type_name -> pb.Page
9
,
// 2: pb.ImUserSetRequest.Common:type_name -> pb.Common
0
,
// 2: pb.ImUser.ImUserRegister:input_type -> pb.ImUserRequest
9
,
// 3: pb.ImUserOneRequest.Common:type_name -> pb.Common
0
,
// 3: pb.ImUser.ImUserSave:input_type -> pb.ImUserRequest
9
,
// 4: pb.ImUserListRequest.Common:type_name -> pb.Common
2
,
// 4: pb.ImUser.ImUserForbiddenWords:input_type -> pb.ImUserSetRequest
6
,
// 5: pb.ImUserListReply.List:type_name -> pb.ImUserOneReply
2
,
// 5: pb.ImUser.ImUserForbiddenAV:input_type -> pb.ImUserSetRequest
10
,
// 6: pb.ImUserListReply.Paginate:type_name -> pb.Page
4
,
// 6: pb.ImUser.ImUserOne:input_type -> pb.ImUserOneRequest
0
,
// 7: pb.ImUser.ImUserRegister:input_type -> pb.ImUserRequest
6
,
// 7: pb.ImUser.ImUserList:input_type -> pb.ImUserListRequest
0
,
// 8: pb.ImUser.ImuserSave:input_type -> pb.ImUserRequest
1
,
// 8: pb.ImUser.ImUserRegister:output_type -> pb.ImUserRegReply
2
,
// 9: pb.ImUser.ImUserLogin:input_type -> pb.ImUserLoginRequest
3
,
// 9: pb.ImUser.ImUserSave:output_type -> pb.ImUserSetReply
2
,
// 10: pb.ImUser.ImUserLoginOut:input_type -> pb.ImUserLoginRequest
3
,
// 10: pb.ImUser.ImUserForbiddenWords:output_type -> pb.ImUserSetReply
3
,
// 11: pb.ImUser.ImUserForbiddenWords:input_type -> pb.ImUserSetRequest
3
,
// 11: pb.ImUser.ImUserForbiddenAV:output_type -> pb.ImUserSetReply
3
,
// 12: pb.ImUser.ImUserForbiddenAV:input_type -> pb.ImUserSetRequest
5
,
// 12: pb.ImUser.ImUserOne:output_type -> pb.ImUserOneReply
5
,
// 13: pb.ImUser.ImUserOne:input_type -> pb.ImUserOneRequest
7
,
// 13: pb.ImUser.ImUserList:output_type -> pb.ImUserListReply
7
,
// 14: pb.ImUser.ImUserList:input_type -> pb.ImUserListRequest
8
,
// [8:14] is the sub-list for method output_type
1
,
// 15: pb.ImUser.ImUserRegister:output_type -> pb.ImUserRegReply
2
,
// [2:8] is the sub-list for method input_type
4
,
// 16: pb.ImUser.ImuserSave:output_type -> pb.ImUserSetReply
2
,
// [2:2] is the sub-list for extension type_name
1
,
// 17: pb.ImUser.ImUserLogin:output_type -> pb.ImUserRegReply
2
,
// [2:2] is the sub-list for extension extendee
4
,
// 18: pb.ImUser.ImUserLoginOut:output_type -> pb.ImUserSetReply
0
,
// [0:2] is the sub-list for field type_name
4
,
// 19: pb.ImUser.ImUserForbiddenWords:output_type -> pb.ImUserSetReply
4
,
// 20: pb.ImUser.ImUserForbiddenAV:output_type -> pb.ImUserSetReply
6
,
// 21: pb.ImUser.ImUserOne:output_type -> pb.ImUserOneReply
8
,
// 22: pb.ImUser.ImUserList:output_type -> pb.ImUserListReply
15
,
// [15:23] is the sub-list for method output_type
7
,
// [7:15] is the sub-list for method input_type
7
,
// [7:7] is the sub-list for extension type_name
7
,
// [7:7] is the sub-list for extension extendee
0
,
// [0:7] is the sub-list for field type_name
}
}
func
init
()
{
file_u_proto_im_user_proto_init
()
}
func
init
()
{
file_u_proto_im_user_proto_init
()
}
...
@@ -1013,18 +950,6 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1013,18 +950,6 @@ func file_u_proto_im_user_proto_init() {
}
}
}
}
file_u_proto_im_user_proto_msgTypes
[
2
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
file_u_proto_im_user_proto_msgTypes
[
2
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserLoginRequest
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_u_proto_im_user_proto_msgTypes
[
3
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserSetRequest
);
i
{
switch
v
:=
v
.
(
*
ImUserSetRequest
);
i
{
case
0
:
case
0
:
return
&
v
.
state
return
&
v
.
state
...
@@ -1036,7 +961,7 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1036,7 +961,7 @@ func file_u_proto_im_user_proto_init() {
return
nil
return
nil
}
}
}
}
file_u_proto_im_user_proto_msgTypes
[
4
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
file_u_proto_im_user_proto_msgTypes
[
3
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserSetReply
);
i
{
switch
v
:=
v
.
(
*
ImUserSetReply
);
i
{
case
0
:
case
0
:
return
&
v
.
state
return
&
v
.
state
...
@@ -1048,7 +973,7 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1048,7 +973,7 @@ func file_u_proto_im_user_proto_init() {
return
nil
return
nil
}
}
}
}
file_u_proto_im_user_proto_msgTypes
[
5
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
file_u_proto_im_user_proto_msgTypes
[
4
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserOneRequest
);
i
{
switch
v
:=
v
.
(
*
ImUserOneRequest
);
i
{
case
0
:
case
0
:
return
&
v
.
state
return
&
v
.
state
...
@@ -1060,7 +985,7 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1060,7 +985,7 @@ func file_u_proto_im_user_proto_init() {
return
nil
return
nil
}
}
}
}
file_u_proto_im_user_proto_msgTypes
[
6
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
file_u_proto_im_user_proto_msgTypes
[
5
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserOneReply
);
i
{
switch
v
:=
v
.
(
*
ImUserOneReply
);
i
{
case
0
:
case
0
:
return
&
v
.
state
return
&
v
.
state
...
@@ -1072,7 +997,7 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1072,7 +997,7 @@ func file_u_proto_im_user_proto_init() {
return
nil
return
nil
}
}
}
}
file_u_proto_im_user_proto_msgTypes
[
7
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
file_u_proto_im_user_proto_msgTypes
[
6
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserListRequest
);
i
{
switch
v
:=
v
.
(
*
ImUserListRequest
);
i
{
case
0
:
case
0
:
return
&
v
.
state
return
&
v
.
state
...
@@ -1084,7 +1009,7 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1084,7 +1009,7 @@ func file_u_proto_im_user_proto_init() {
return
nil
return
nil
}
}
}
}
file_u_proto_im_user_proto_msgTypes
[
8
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
file_u_proto_im_user_proto_msgTypes
[
7
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
ImUserListReply
);
i
{
switch
v
:=
v
.
(
*
ImUserListReply
);
i
{
case
0
:
case
0
:
return
&
v
.
state
return
&
v
.
state
...
@@ -1103,7 +1028,7 @@ func file_u_proto_im_user_proto_init() {
...
@@ -1103,7 +1028,7 @@ func file_u_proto_im_user_proto_init() {
GoPackagePath
:
reflect
.
TypeOf
(
x
{})
.
PkgPath
(),
GoPackagePath
:
reflect
.
TypeOf
(
x
{})
.
PkgPath
(),
RawDescriptor
:
file_u_proto_im_user_proto_rawDesc
,
RawDescriptor
:
file_u_proto_im_user_proto_rawDesc
,
NumEnums
:
0
,
NumEnums
:
0
,
NumMessages
:
9
,
NumMessages
:
8
,
NumExtensions
:
0
,
NumExtensions
:
0
,
NumServices
:
1
,
NumServices
:
1
,
},
},
...
@@ -1130,9 +1055,7 @@ const _ = grpc.SupportPackageIsVersion6
...
@@ -1130,9 +1055,7 @@ const _ = grpc.SupportPackageIsVersion6
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type
ImUserClient
interface
{
type
ImUserClient
interface
{
ImUserRegister
(
ctx
context
.
Context
,
in
*
ImUserRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserRegReply
,
error
)
ImUserRegister
(
ctx
context
.
Context
,
in
*
ImUserRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserRegReply
,
error
)
ImuserSave
(
ctx
context
.
Context
,
in
*
ImUserRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserSave
(
ctx
context
.
Context
,
in
*
ImUserRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserLogin
(
ctx
context
.
Context
,
in
*
ImUserLoginRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserRegReply
,
error
)
ImUserLoginOut
(
ctx
context
.
Context
,
in
*
ImUserLoginRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenWords
(
ctx
context
.
Context
,
in
*
ImUserSetRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenWords
(
ctx
context
.
Context
,
in
*
ImUserSetRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenAV
(
ctx
context
.
Context
,
in
*
ImUserSetRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenAV
(
ctx
context
.
Context
,
in
*
ImUserSetRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
ImUserOne
(
ctx
context
.
Context
,
in
*
ImUserOneRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserOneReply
,
error
)
ImUserOne
(
ctx
context
.
Context
,
in
*
ImUserOneRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserOneReply
,
error
)
...
@@ -1156,27 +1079,9 @@ func (c *imUserClient) ImUserRegister(ctx context.Context, in *ImUserRequest, op
...
@@ -1156,27 +1079,9 @@ func (c *imUserClient) ImUserRegister(ctx context.Context, in *ImUserRequest, op
return
out
,
nil
return
out
,
nil
}
}
func
(
c
*
imUserClient
)
Im
u
serSave
(
ctx
context
.
Context
,
in
*
ImUserRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
{
func
(
c
*
imUserClient
)
Im
U
serSave
(
ctx
context
.
Context
,
in
*
ImUserRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
{
out
:=
new
(
ImUserSetReply
)
out
:=
new
(
ImUserSetReply
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/pb.ImUser/ImuserSave"
,
in
,
out
,
opts
...
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/pb.ImUser/ImUserSave"
,
in
,
out
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
func
(
c
*
imUserClient
)
ImUserLogin
(
ctx
context
.
Context
,
in
*
ImUserLoginRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserRegReply
,
error
)
{
out
:=
new
(
ImUserRegReply
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/pb.ImUser/ImUserLogin"
,
in
,
out
,
opts
...
)
if
err
!=
nil
{
return
nil
,
err
}
return
out
,
nil
}
func
(
c
*
imUserClient
)
ImUserLoginOut
(
ctx
context
.
Context
,
in
*
ImUserLoginRequest
,
opts
...
grpc
.
CallOption
)
(
*
ImUserSetReply
,
error
)
{
out
:=
new
(
ImUserSetReply
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/pb.ImUser/ImUserLoginOut"
,
in
,
out
,
opts
...
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -1222,9 +1127,7 @@ func (c *imUserClient) ImUserList(ctx context.Context, in *ImUserListRequest, op
...
@@ -1222,9 +1127,7 @@ func (c *imUserClient) ImUserList(ctx context.Context, in *ImUserListRequest, op
// ImUserServer is the server API for ImUser service.
// ImUserServer is the server API for ImUser service.
type
ImUserServer
interface
{
type
ImUserServer
interface
{
ImUserRegister
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserRegReply
,
error
)
ImUserRegister
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserRegReply
,
error
)
ImuserSave
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserSetReply
,
error
)
ImUserSave
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserSetReply
,
error
)
ImUserLogin
(
context
.
Context
,
*
ImUserLoginRequest
)
(
*
ImUserRegReply
,
error
)
ImUserLoginOut
(
context
.
Context
,
*
ImUserLoginRequest
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenWords
(
context
.
Context
,
*
ImUserSetRequest
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenWords
(
context
.
Context
,
*
ImUserSetRequest
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenAV
(
context
.
Context
,
*
ImUserSetRequest
)
(
*
ImUserSetReply
,
error
)
ImUserForbiddenAV
(
context
.
Context
,
*
ImUserSetRequest
)
(
*
ImUserSetReply
,
error
)
ImUserOne
(
context
.
Context
,
*
ImUserOneRequest
)
(
*
ImUserOneReply
,
error
)
ImUserOne
(
context
.
Context
,
*
ImUserOneRequest
)
(
*
ImUserOneReply
,
error
)
...
@@ -1238,14 +1141,8 @@ type UnimplementedImUserServer struct {
...
@@ -1238,14 +1141,8 @@ type UnimplementedImUserServer struct {
func
(
*
UnimplementedImUserServer
)
ImUserRegister
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserRegReply
,
error
)
{
func
(
*
UnimplementedImUserServer
)
ImUserRegister
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserRegReply
,
error
)
{
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserRegister not implemented"
)
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserRegister not implemented"
)
}
}
func
(
*
UnimplementedImUserServer
)
ImuserSave
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserSetReply
,
error
)
{
func
(
*
UnimplementedImUserServer
)
ImUserSave
(
context
.
Context
,
*
ImUserRequest
)
(
*
ImUserSetReply
,
error
)
{
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImuserSave not implemented"
)
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserSave not implemented"
)
}
func
(
*
UnimplementedImUserServer
)
ImUserLogin
(
context
.
Context
,
*
ImUserLoginRequest
)
(
*
ImUserRegReply
,
error
)
{
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserLogin not implemented"
)
}
func
(
*
UnimplementedImUserServer
)
ImUserLoginOut
(
context
.
Context
,
*
ImUserLoginRequest
)
(
*
ImUserSetReply
,
error
)
{
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserLoginOut not implemented"
)
}
}
func
(
*
UnimplementedImUserServer
)
ImUserForbiddenWords
(
context
.
Context
,
*
ImUserSetRequest
)
(
*
ImUserSetReply
,
error
)
{
func
(
*
UnimplementedImUserServer
)
ImUserForbiddenWords
(
context
.
Context
,
*
ImUserSetRequest
)
(
*
ImUserSetReply
,
error
)
{
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserForbiddenWords not implemented"
)
return
nil
,
status
.
Errorf
(
codes
.
Unimplemented
,
"method ImUserForbiddenWords not implemented"
)
...
@@ -1282,56 +1179,20 @@ func _ImUser_ImUserRegister_Handler(srv interface{}, ctx context.Context, dec fu
...
@@ -1282,56 +1179,20 @@ func _ImUser_ImUserRegister_Handler(srv interface{}, ctx context.Context, dec fu
return
interceptor
(
ctx
,
in
,
info
,
handler
)
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
}
func
_ImUser_Im
u
serSave_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
func
_ImUser_Im
U
serSave_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
ImUserRequest
)
in
:=
new
(
ImUserRequest
)
if
err
:=
dec
(
in
);
err
!=
nil
{
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
if
interceptor
==
nil
{
if
interceptor
==
nil
{
return
srv
.
(
ImUserServer
)
.
ImuserSave
(
ctx
,
in
)
return
srv
.
(
ImUserServer
)
.
ImUserSave
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/pb.ImUser/ImuserSave"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
ImUserServer
)
.
ImuserSave
(
ctx
,
req
.
(
*
ImUserRequest
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
func
_ImUser_ImUserLogin_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
ImUserLoginRequest
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
ImUserServer
)
.
ImUserLogin
(
ctx
,
in
)
}
}
info
:=
&
grpc
.
UnaryServerInfo
{
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
Server
:
srv
,
FullMethod
:
"/pb.ImUser/ImUser
Login
"
,
FullMethod
:
"/pb.ImUser/ImUser
Save
"
,
}
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
ImUserServer
)
.
ImUserLogin
(
ctx
,
req
.
(
*
ImUserLoginRequest
))
return
srv
.
(
ImUserServer
)
.
ImUserSave
(
ctx
,
req
.
(
*
ImUserRequest
))
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
func
_ImUser_ImUserLoginOut_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
ImUserLoginRequest
)
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
}
if
interceptor
==
nil
{
return
srv
.
(
ImUserServer
)
.
ImUserLoginOut
(
ctx
,
in
)
}
info
:=
&
grpc
.
UnaryServerInfo
{
Server
:
srv
,
FullMethod
:
"/pb.ImUser/ImUserLoginOut"
,
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
ImUserServer
)
.
ImUserLoginOut
(
ctx
,
req
.
(
*
ImUserLoginRequest
))
}
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
}
...
@@ -1417,16 +1278,8 @@ var _ImUser_serviceDesc = grpc.ServiceDesc{
...
@@ -1417,16 +1278,8 @@ var _ImUser_serviceDesc = grpc.ServiceDesc{
Handler
:
_ImUser_ImUserRegister_Handler
,
Handler
:
_ImUser_ImUserRegister_Handler
,
},
},
{
{
MethodName
:
"ImuserSave"
,
MethodName
:
"ImUserSave"
,
Handler
:
_ImUser_ImuserSave_Handler
,
Handler
:
_ImUser_ImUserSave_Handler
,
},
{
MethodName
:
"ImUserLogin"
,
Handler
:
_ImUser_ImUserLogin_Handler
,
},
{
MethodName
:
"ImUserLoginOut"
,
Handler
:
_ImUser_ImUserLoginOut_Handler
,
},
},
{
{
MethodName
:
"ImUserForbiddenWords"
,
MethodName
:
"ImUserForbiddenWords"
,
...
...
pb/im_user.validator.pb.go
View file @
2e1b7f2f
...
@@ -5,10 +5,10 @@ package pb
...
@@ -5,10 +5,10 @@ package pb
import
(
import
(
fmt
"fmt"
fmt
"fmt"
math
"math"
proto
"github.com/golang/protobuf/proto"
proto
"github.com/golang/protobuf/proto"
_
"github.com/mwitkow/go-proto-validators"
_
"github.com/mwitkow/go-proto-validators"
github_com_mwitkow_go_proto_validators
"github.com/mwitkow/go-proto-validators"
github_com_mwitkow_go_proto_validators
"github.com/mwitkow/go-proto-validators"
math
"math"
)
)
// Reference imports to suppress errors if they are not otherwise used.
// Reference imports to suppress errors if they are not otherwise used.
...
@@ -17,10 +17,8 @@ var _ = fmt.Errorf
...
@@ -17,10 +17,8 @@ var _ = fmt.Errorf
var
_
=
math
.
Inf
var
_
=
math
.
Inf
func
(
this
*
ImUserRequest
)
Validate
()
error
{
func
(
this
*
ImUserRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
this
.
Appkey
==
""
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Appkey"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Appkey
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
}
if
this
.
Accid
==
""
{
if
this
.
Accid
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
...
@@ -30,25 +28,9 @@ func (this *ImUserRequest) Validate() error {
...
@@ -30,25 +28,9 @@ func (this *ImUserRequest) Validate() error {
func
(
this
*
ImUserRegReply
)
Validate
()
error
{
func
(
this
*
ImUserRegReply
)
Validate
()
error
{
return
nil
return
nil
}
}
func
(
this
*
ImUserLoginRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
if
this
.
Accid
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
}
if
this
.
Platform
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Platform"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Platform
))
}
return
nil
}
func
(
this
*
ImUserSetRequest
)
Validate
()
error
{
func
(
this
*
ImUserSetRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
this
.
Appkey
==
""
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Appkey"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Appkey
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
}
if
this
.
Accid
==
""
{
if
this
.
Accid
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
...
@@ -59,10 +41,8 @@ func (this *ImUserSetReply) Validate() error {
...
@@ -59,10 +41,8 @@ func (this *ImUserSetReply) Validate() error {
return
nil
return
nil
}
}
func
(
this
*
ImUserOneRequest
)
Validate
()
error
{
func
(
this
*
ImUserOneRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
this
.
Appkey
==
""
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Appkey"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Appkey
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
}
if
this
.
Accid
==
""
{
if
this
.
Accid
==
""
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Accid"
,
fmt
.
Errorf
(
`value '%v' must not be an empty string`
,
this
.
Accid
))
...
@@ -73,11 +53,6 @@ func (this *ImUserOneReply) Validate() error {
...
@@ -73,11 +53,6 @@ func (this *ImUserOneReply) Validate() error {
return
nil
return
nil
}
}
func
(
this
*
ImUserListRequest
)
Validate
()
error
{
func
(
this
*
ImUserListRequest
)
Validate
()
error
{
if
this
.
Common
!=
nil
{
if
err
:=
github_com_mwitkow_go_proto_validators
.
CallValidatorIfExists
(
this
.
Common
);
err
!=
nil
{
return
github_com_mwitkow_go_proto_validators
.
FieldError
(
"Common"
,
err
)
}
}
return
nil
return
nil
}
}
func
(
this
*
ImUserListReply
)
Validate
()
error
{
func
(
this
*
ImUserListReply
)
Validate
()
error
{
...
...
sevice/im_user/im_user.go
View file @
2e1b7f2f
...
@@ -14,23 +14,6 @@ type ImUserServer struct {
...
@@ -14,23 +14,6 @@ type ImUserServer struct {
pb
.
UnimplementedImUserServer
pb
.
UnimplementedImUserServer
}
}
type
ImUser
struct
{
Name
string
Mobile
string
Code
string
Platform
string
}
type
ImUserSet
struct
{
Accid
string
Mute
bool
}
type
ImUserQ
struct
{
Accid
string
Platform
string
}
//注册
//注册
func
(
u
*
ImUserServer
)
ImUserRegister
(
ctx
context
.
Context
,
in
*
pb
.
ImUserRequest
)
(
reply
*
pb
.
ImUserRegReply
,
err
error
)
{
func
(
u
*
ImUserServer
)
ImUserRegister
(
ctx
context
.
Context
,
in
*
pb
.
ImUserRequest
)
(
reply
*
pb
.
ImUserRegReply
,
err
error
)
{
// 请求超时
// 请求超时
...
@@ -39,7 +22,7 @@ func (u *ImUserServer) ImUserRegister(ctx context.Context, in *pb.ImUserRequest)
...
@@ -39,7 +22,7 @@ func (u *ImUserServer) ImUserRegister(ctx context.Context, in *pb.ImUserRequest)
return
return
}
}
// 是否已经注册过, 如果已经注册返回用户信息
// 是否已经注册过, 如果已经注册返回用户信息
if
c_user
,
_
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
);
c_user
.
Accid
!=
""
{
if
c_user
,
_
:=
GetImUserByAccidAppkey
(
in
.
Accid
,
i
n
.
Appkey
);
c_user
.
Accid
!=
""
{
err
=
status
.
Error
(
10438
,
"用户已存在"
)
err
=
status
.
Error
(
10438
,
"用户已存在"
)
return
return
}
}
...
@@ -57,14 +40,14 @@ func (u *ImUserServer) ImUserRegister(ctx context.Context, in *pb.ImUserRequest)
...
@@ -57,14 +40,14 @@ func (u *ImUserServer) ImUserRegister(ctx context.Context, in *pb.ImUserRequest)
}
}
//修改用户信息
//修改用户信息
func
(
u
*
ImUserServer
)
Im
u
serSave
(
ctx
context
.
Context
,
in
*
pb
.
ImUserRequest
)
(
reply
*
pb
.
ImUserSetReply
,
err
error
)
{
func
(
u
*
ImUserServer
)
Im
U
serSave
(
ctx
context
.
Context
,
in
*
pb
.
ImUserRequest
)
(
reply
*
pb
.
ImUserSetReply
,
err
error
)
{
// 请求超时
// 请求超时
if
ctx
.
Err
()
==
context
.
Canceled
{
if
ctx
.
Err
()
==
context
.
Canceled
{
err
=
status
.
New
(
codes
.
Canceled
,
"Client cancelled, abandoning."
)
.
Err
()
err
=
status
.
New
(
codes
.
Canceled
,
"Client cancelled, abandoning."
)
.
Err
()
return
return
}
}
//查询用户是否存在
//查询用户是否存在
c_user
,
_
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
)
c_user
,
_
:=
GetImUserByAccidAppkey
(
in
.
Accid
,
i
n
.
Appkey
)
if
c_user
.
Token
==
""
{
if
c_user
.
Token
==
""
{
err
=
status
.
Error
(
404
,
"用户不存在"
)
err
=
status
.
Error
(
404
,
"用户不存在"
)
return
return
...
@@ -96,61 +79,16 @@ func (u *ImUserServer) ImuserSave(ctx context.Context, in *pb.ImUserRequest) (re
...
@@ -96,61 +79,16 @@ func (u *ImUserServer) ImuserSave(ctx context.Context, in *pb.ImUserRequest) (re
m
[
"ex"
]
=
in
.
Ex
m
[
"ex"
]
=
in
.
Ex
}
}
if
res
,
_
:=
UpdateImUser
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
,
m
);
res
!=
1
{
if
res
,
_
:=
UpdateImUser
(
in
.
Accid
,
i
n
.
Appkey
,
m
);
res
!=
1
{
err
=
status
.
Error
(
500
,
"修改用户信息失败"
)
err
=
status
.
Error
(
500
,
"修改用户信息失败"
)
return
return
}
}
reply
=
&
pb
.
ImUserSetReply
{}
reply
=
&
pb
.
ImUserSetReply
{}
reply
.
Code
=
200
reply
.
Msg
=
"修改成功"
return
return
}
}
//用户登录
func
(
u
*
ImUserServer
)
ImUserLogin
(
ctx
context
.
Context
,
in
*
pb
.
ImUserLoginRequest
)
(
reply
*
pb
.
ImUserRegReply
,
err
error
)
{
// 请求超时
if
ctx
.
Err
()
==
context
.
Canceled
{
err
=
status
.
New
(
codes
.
Canceled
,
"Client cancelled, abandoning."
)
.
Err
()
return
}
//获取用户信息
c_user
,
_
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Common
.
Appkey
)
if
c_user
.
Token
==
""
{
err
=
status
.
Error
(
404
,
"用户不存在"
)
return
}
//用户登录处理
err
=
LoginHandle
(
in
)
if
err
!=
nil
{
//err = status.Error(500, "用户登录时间更新失败")
return
}
reply
=
&
pb
.
ImUserRegReply
{}
reply
.
Token
=
c_user
.
Token
reply
.
Accid
=
c_user
.
Accid
reply
.
Name
=
c_user
.
Name
return
}
//用户退出
func
(
u
*
ImUserServer
)
ImUserLoginOut
(
ctx
context
.
Context
,
in
*
pb
.
ImUserLoginRequest
)
(
reply
*
pb
.
ImUserSetReply
,
err
error
)
{
// 请求超时
if
ctx
.
Err
()
==
context
.
Canceled
{
err
=
status
.
New
(
codes
.
Canceled
,
"Client cancelled, abandoning."
)
.
Err
()
return
}
c_user
,
_
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Common
.
Appkey
)
if
c_user
.
Accid
==
""
{
err
=
status
.
Error
(
404
,
"用户不存在"
)
return
}
err
=
LoginOutHandle
(
in
)
if
err
!=
nil
{
return
}
reply
=
&
pb
.
ImUserSetReply
{}
return
reply
,
nil
}
//用户禁言
//用户禁言
func
(
u
*
ImUserServer
)
ImUserForbiddenWords
(
ctx
context
.
Context
,
in
*
pb
.
ImUserSetRequest
)
(
reply
*
pb
.
ImUserSetReply
,
err
error
)
{
func
(
u
*
ImUserServer
)
ImUserForbiddenWords
(
ctx
context
.
Context
,
in
*
pb
.
ImUserSetRequest
)
(
reply
*
pb
.
ImUserSetReply
,
err
error
)
{
// 请求超时
// 请求超时
...
@@ -163,7 +101,7 @@ func (u *ImUserServer) ImUserForbiddenWords(ctx context.Context, in *pb.ImUserSe
...
@@ -163,7 +101,7 @@ func (u *ImUserServer) ImUserForbiddenWords(ctx context.Context, in *pb.ImUserSe
mute
=
1
mute
=
1
}
}
//检测该用户
//检测该用户
c_user
,
err
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
)
c_user
,
err
:=
GetImUserByAccidAppkey
(
in
.
Accid
,
i
n
.
Appkey
)
if
err
!=
nil
{
if
err
!=
nil
{
err
=
status
.
Error
(
404
,
"该用户不存在"
)
err
=
status
.
Error
(
404
,
"该用户不存在"
)
return
return
...
@@ -175,11 +113,13 @@ func (u *ImUserServer) ImUserForbiddenWords(ctx context.Context, in *pb.ImUserSe
...
@@ -175,11 +113,13 @@ func (u *ImUserServer) ImUserForbiddenWords(ctx context.Context, in *pb.ImUserSe
m
:=
make
(
map
[
string
]
interface
{})
m
:=
make
(
map
[
string
]
interface
{})
m
[
"mute_estoppel"
]
=
mute
m
[
"mute_estoppel"
]
=
mute
if
res
,
_
:=
UpdateImUser
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
,
m
);
res
!=
1
{
if
res
,
_
:=
UpdateImUser
(
in
.
Accid
,
i
n
.
Appkey
,
m
);
res
!=
1
{
err
=
status
.
Error
(
500
,
"用户禁言失败"
)
err
=
status
.
Error
(
500
,
"用户禁言失败"
)
return
return
}
}
reply
=
&
pb
.
ImUserSetReply
{}
reply
=
&
pb
.
ImUserSetReply
{}
reply
.
Code
=
200
reply
.
Msg
=
"设置成功"
return
return
}
}
...
@@ -195,7 +135,7 @@ func (u *ImUserServer) ImUserForbiddenAV(ctx context.Context, in *pb.ImUserSetRe
...
@@ -195,7 +135,7 @@ func (u *ImUserServer) ImUserForbiddenAV(ctx context.Context, in *pb.ImUserSetRe
mute
=
1
mute
=
1
}
}
//检测该用户
//检测该用户
c_user
,
err
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
)
c_user
,
err
:=
GetImUserByAccidAppkey
(
in
.
Accid
,
i
n
.
Appkey
)
if
err
!=
nil
{
if
err
!=
nil
{
err
=
status
.
Error
(
404
,
"该用户不存在"
)
err
=
status
.
Error
(
404
,
"该用户不存在"
)
return
return
...
@@ -207,12 +147,14 @@ func (u *ImUserServer) ImUserForbiddenAV(ctx context.Context, in *pb.ImUserSetRe
...
@@ -207,12 +147,14 @@ func (u *ImUserServer) ImUserForbiddenAV(ctx context.Context, in *pb.ImUserSetRe
m
:=
make
(
map
[
string
]
interface
{})
m
:=
make
(
map
[
string
]
interface
{})
m
[
"mute_audio_video"
]
=
mute
m
[
"mute_audio_video"
]
=
mute
if
res
,
_
:=
UpdateImUser
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
,
m
);
res
!=
1
{
if
res
,
_
:=
UpdateImUser
(
in
.
Accid
,
i
n
.
Appkey
,
m
);
res
!=
1
{
err
=
status
.
Error
(
500
,
"用户禁音视频失败"
)
err
=
status
.
Error
(
500
,
"用户禁音视频失败"
)
return
return
}
}
reply
=
&
pb
.
ImUserSetReply
{}
reply
=
&
pb
.
ImUserSetReply
{}
reply
.
Code
=
200
reply
.
Msg
=
"设置成功"
return
return
}
}
...
@@ -224,7 +166,7 @@ func (u *ImUserServer) ImUserOne(ctx context.Context, in *pb.ImUserOneRequest) (
...
@@ -224,7 +166,7 @@ func (u *ImUserServer) ImUserOne(ctx context.Context, in *pb.ImUserOneRequest) (
return
return
}
}
reply
=
&
pb
.
ImUserOneReply
{}
reply
=
&
pb
.
ImUserOneReply
{}
c_user
,
err
:=
GetImUserByAccidAppkey
(
in
.
GetAccid
(),
in
.
Commo
n
.
Appkey
)
c_user
,
err
:=
GetImUserByAccidAppkey
(
in
.
Accid
,
i
n
.
Appkey
)
if
err
!=
nil
{
if
err
!=
nil
{
return
return
}
}
...
...
sevice/im_user/im_user_db.go
View file @
2e1b7f2f
...
@@ -59,7 +59,7 @@ func CreateImUser(in *pb.ImUserRequest) (db.ImUser, error) {
...
@@ -59,7 +59,7 @@ func CreateImUser(in *pb.ImUserRequest) (db.ImUser, error) {
token
:=
createToken
()
token
:=
createToken
()
var
c_user
db
.
ImUser
var
c_user
db
.
ImUser
c_user
.
Accid
=
in
.
GetAccid
()
c_user
.
Accid
=
in
.
GetAccid
()
c_user
.
Appkey
=
in
.
Common
.
Appkey
c_user
.
Appkey
=
in
.
Appkey
c_user
.
Name
=
in
.
GetName
()
c_user
.
Name
=
in
.
GetName
()
c_user
.
Icon
=
in
.
GetIcon
()
c_user
.
Icon
=
in
.
GetIcon
()
c_user
.
Token
=
token
c_user
.
Token
=
token
...
...
sevice/im_user/im_user_login_db.go
deleted
100644 → 0
View file @
41583da8
package
im_user
import
(
"im-microservice/pb"
//"fmt"
//"errors"
"bytes"
"encoding/json"
"im-microservice/helper"
//"im-microservice/pb"
//"github.com/astaxie/beego/orm"
"google.golang.org/grpc/status"
)
//用户登录处理
func
LoginHandle
(
in
*
pb
.
ImUserLoginRequest
)
error
{
loginMap
:=
make
(
map
[
int
]
map
[
string
]
interface
{})
loginOne
:=
map
[
string
]
interface
{}{
"platform"
:
in
.
Platform
,
"Updatetime"
:
helper
.
GetNowTime
(),
}
num
:=
1
//查询该设备平台是否已经存在数据
var
buffer
bytes
.
Buffer
buffer
.
WriteString
(
in
.
Accid
)
buffer
.
WriteString
(
"_"
)
buffer
.
WriteString
(
in
.
Common
.
Appkey
)
fieldKey
:=
buffer
.
String
()
jsonStr
,
err
:=
helper
.
GetRedis
(
fieldKey
)
if
err
==
nil
{
//不是第一次登录了
json
.
Unmarshal
([]
byte
(
jsonStr
),
&
loginMap
)
for
_
,
m
:=
range
loginMap
{
if
m
[
"platform"
]
==
in
.
Platform
{
err
=
status
.
Error
(
417
,
"该种设备已经登录了"
)
return
err
}
num
+=
1
}
}
loginMap
[
num
]
=
loginOne
loginJson
,
_
:=
json
.
Marshal
(
loginMap
)
err
=
helper
.
SetRedis
(
fieldKey
,
string
(
loginJson
))
if
err
!=
nil
{
return
err
}
return
nil
}
//用户退出处理
func
LoginOutHandle
(
in
*
pb
.
ImUserLoginRequest
)
error
{
loginMap
:=
make
(
map
[
int
]
map
[
string
]
interface
{})
var
buffer
bytes
.
Buffer
buffer
.
WriteString
(
in
.
Accid
)
buffer
.
WriteString
(
"_"
)
buffer
.
WriteString
(
in
.
Common
.
Appkey
)
fieldKey
:=
buffer
.
String
()
jsonStr
,
err
:=
helper
.
GetRedis
(
fieldKey
)
if
jsonStr
==
""
{
err
=
status
.
Error
(
404
,
"没有登录信息"
)
return
err
}
json
.
Unmarshal
([]
byte
(
jsonStr
),
&
loginMap
)
var
num
int
n
:=
0
for
k
,
m
:=
range
loginMap
{
if
m
[
"platform"
]
==
in
.
Platform
{
num
=
k
}
n
+=
1
}
if
n
==
1
{
err
=
helper
.
DelRedis
(
fieldKey
)
return
err
}
delete
(
loginMap
,
num
)
loginJson
,
_
:=
json
.
Marshal
(
loginMap
)
err
=
helper
.
SetRedis
(
fieldKey
,
string
(
loginJson
))
if
err
!=
nil
{
return
err
}
return
nil
}
// //用户登录处理
// func LoginHandle(in *pb.ImUserLoginRequest) (db.ImUserLogin, error) {
// //查询该设备平台是否已经存在数据
// var buffer bytes.Buffer
// buffer.WriteString(in.Accid)
// buffer.WriteString("_")
// buffer.WriteString(in.Common.Appkey)
// log_user, err := helper.GetRedis(buffer.String())
// if err != nil {
// //插入数据
// log_user.LoginStatus = 1
// log_user.Platform = platform
// log_user.Updatetime = helper.GetNowTime()
// log_user.UserId = user_id
// _, err := db.MysqlClient.Insert(&log_user)
// if err != nil {
// return log_user, err
// }
// } else {
// //修改数据
// if err := UpdateLogin(user_id, platform, 1); err != nil {
// return log_user, err
// }
// log_user.LoginStatus = 1
// }
// return log_user, nil
// }
// //用户退出
// func LoginOutHandle(user_id int64, platform string) (db.ImUserLogin, error) {
// //查询登录信息
// log_user, err := GetLogin(user_id, platform)
// if err != nil {
// err = status.Error(500, "用户还没有登录信息")
// return log_user, err
// }
// //修改
// if err := UpdateLogin(user_id, platform, 0); err != nil {
// return log_user, err
// }
// return log_user, nil
// }
// //查询
// func GetLogin(user_id int64, platform string) (db.ImUserLogin, error) {
// var log_user db.ImUserLogin
// err := db.MysqlClient.QueryTable(ul_table_name).Filter(ul_user_id, user_id).Filter(ul_platform, platform).One(&log_user)
// if err != nil {
// return log_user, err
// }
// return log_user, nil
// }
// //修改
// func UpdateLogin(user_id int64, platform string, login_status int64) error {
// orm_params := make(orm.Params)
// orm_params[ul_login_status] = login_status
// orm_params[ul_updatetime] = helper.GetNowTime()
// _, err := db.MysqlClient.QueryTable(ul_table_name).Filter(ul_user_id, user_id).Filter(ul_platform, platform).Update(orm_params)
// if err != nil {
// err = status.Error(500, err.Error())
// return err
// }
// return err
// }
u-proto/im_chat_room_user.proto
View file @
2e1b7f2f
...
@@ -7,25 +7,22 @@ import "github.com/mwitkow/go-proto-validators/validator.proto";
...
@@ -7,25 +7,22 @@ import "github.com/mwitkow/go-proto-validators/validator.proto";
//添加操作者(创建者)
//添加操作者(创建者)
message
RoomUserAddOpeRequest
{
message
RoomUserAddOpeRequest
{
Common
Common
=
1
;
int64
RoomId
=
1
[(
validator.field
)
=
{
int_gt
:
0
}];
int64
RoomId
=
2
[(
validator.field
)
=
{
int_gt
:
0
}];
string
Operator
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Operator
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
}
}
//添加用户
//添加用户
message
RoomUserAddRequest
{
message
RoomUserAddRequest
{
Common
Common
=
1
;
int64
RoomId
=
1
[(
validator.field
)
=
{
int_gt
:
0
}];
int64
RoomId
=
2
[(
validator.field
)
=
{
int_gt
:
0
}];
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
4
[(
validator.field
)
=
{
string_not_empty
:
true
}];
}
}
//设置权限
//设置权限
message
RoomUserSetRoleRequest
{
message
RoomUserSetRoleRequest
{
Common
Common
=
1
;
int64
RoomId
=
1
[(
validator.field
)
=
{
int_gt
:
0
}];
int64
RoomId
=
2
[(
validator.field
)
=
{
int_gt
:
0
}];
string
Operator
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Operator
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
4
[(
validator.field
)
=
{
string_not_empty
:
true
}];
int64
Role
=
4
[(
validator.field
)
=
{
int_gt
:
0
,
int_lt
:
5
}];
int64
Role
=
5
[(
validator.field
)
=
{
int_gt
:
0
,
int_lt
:
5
}];
}
}
...
@@ -39,9 +36,8 @@ message RoomUserReply {
...
@@ -39,9 +36,8 @@ message RoomUserReply {
//获取房间单个用户属性
//获取房间单个用户属性
message
RoomUserOneRequest
{
message
RoomUserOneRequest
{
Common
Common
=
1
;
int64
RoomId
=
1
[(
validator.field
)
=
{
int_gt
:
0
}];
int64
RoomId
=
2
[(
validator.field
)
=
{
int_gt
:
0
}];
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
}
}
//返回房间单个用户属性
//返回房间单个用户属性
message
RoomUserOneReply
{
message
RoomUserOneReply
{
...
@@ -57,11 +53,10 @@ message RoomUserOneReply {
...
@@ -57,11 +53,10 @@ message RoomUserOneReply {
//获取房间用户列表
//获取房间用户列表
message
RoomUserListRequest
{
message
RoomUserListRequest
{
Common
Common
=
1
;
int64
Page
=
1
;
int64
Page
=
2
;
int64
RoomId
=
2
;
int64
RoomId
=
3
;
int64
Role
=
3
;
int64
Role
=
4
;
string
Accid
=
4
;
string
Accid
=
5
;
}
}
//返回房间用户列表
//返回房间用户列表
message
RoomUserListReply
{
message
RoomUserListReply
{
...
...
u-proto/im_user.proto
View file @
2e1b7f2f
...
@@ -3,12 +3,11 @@ syntax = "proto3";
...
@@ -3,12 +3,11 @@ syntax = "proto3";
package
pb
;
package
pb
;
import
"u-proto/common.proto"
;
import
"u-proto/common.proto"
;
import
"u-proto/google/api/annotations.proto"
;
import
"github.com/mwitkow/go-proto-validators/validator.proto"
;
import
"github.com/mwitkow/go-proto-validators/validator.proto"
;
//用户注册修改
//用户注册修改
message
ImUserRequest
{
message
ImUserRequest
{
Common
Common
=
1
;
string
Appkey
=
1
[(
validator.field
)
=
{
string_not_empty
:
true
}]
;
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Name
=
3
;
string
Name
=
3
;
string
Icon
=
4
;
string
Icon
=
4
;
...
@@ -25,30 +24,27 @@ message ImUserRequest {
...
@@ -25,30 +24,27 @@ message ImUserRequest {
message
ImUserRegReply
{
message
ImUserRegReply
{
string
Token
=
1
;
string
Token
=
1
;
string
Accid
=
2
;
string
Accid
=
2
;
string
Name
=
3
;
string
Appkey
=
3
;
string
Name
=
4
;
}
}
//用户登录退出
message
ImUserLoginRequest
{
Common
Common
=
1
;
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Platform
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
}
//用户设置禁言,禁音视频
//用户设置禁言,禁音视频
message
ImUserSetRequest
{
message
ImUserSetRequest
{
Common
Common
=
1
;
string
Appkey
=
1
[(
validator.field
)
=
{
string_not_empty
:
true
}]
;
bool
Mute
=
2
;
bool
Mute
=
2
;
string
Accid
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
3
[(
validator.field
)
=
{
string_not_empty
:
true
}];
}
}
//修改返回
//修改返回
message
ImUserSetReply
{}
message
ImUserSetReply
{
int64
Code
=
1
;
string
Msg
=
2
;
}
//获取单个用户信息
//获取单个用户信息
message
ImUserOneRequest
{
message
ImUserOneRequest
{
Common
Common
=
1
;
string
Appkey
=
1
[(
validator.field
)
=
{
string_not_empty
:
true
}]
;
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
string
Accid
=
2
[(
validator.field
)
=
{
string_not_empty
:
true
}];
}
}
...
@@ -72,7 +68,7 @@ message ImUserOneReply {
...
@@ -72,7 +68,7 @@ message ImUserOneReply {
//获取用户列表
//获取用户列表
message
ImUserListRequest
{
message
ImUserListRequest
{
Common
Common
=
1
;
string
Appkey
=
1
;
int64
Page
=
2
;
int64
Page
=
2
;
string
Accid
=
3
;
string
Accid
=
3
;
string
Mobile
=
4
;
string
Mobile
=
4
;
...
@@ -92,14 +88,7 @@ message ImUserListReply{
...
@@ -92,14 +88,7 @@ message ImUserListReply{
service
ImUser
{
service
ImUser
{
rpc
ImUserRegister
(
ImUserRequest
)
returns
(
ImUserRegReply
)
{}
rpc
ImUserRegister
(
ImUserRequest
)
returns
(
ImUserRegReply
)
{}
rpc
ImuserSave
(
ImUserRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserSave
(
ImUserRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserLogin
(
ImUserLoginRequest
)
returns
(
ImUserRegReply
)
{
option
(
google.api.http
)
=
{
post
:
"/api/v1/im_login"
,
body
:
"*"
};
}
rpc
ImUserLoginOut
(
ImUserLoginRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserForbiddenWords
(
ImUserSetRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserForbiddenWords
(
ImUserSetRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserForbiddenAV
(
ImUserSetRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserForbiddenAV
(
ImUserSetRequest
)
returns
(
ImUserSetReply
)
{}
rpc
ImUserOne
(
ImUserOneRequest
)
returns
(
ImUserOneReply
)
{}
rpc
ImUserOne
(
ImUserOneRequest
)
returns
(
ImUserOneReply
)
{}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment