Pārlūkot izejas kodu

用户查询房间

wfz 3 gadi atpakaļ
vecāks
revīzija
470330e9a3

+ 467 - 150
api/chat/chat.pb.go

@@ -100,6 +100,243 @@ func (x *PartnerFindRoomListRequest) GetIsWithinSevenDay() bool {
 	return false
 }
 
+type UserFindRoomListRequest struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	NextId           int64  `protobuf:"varint,1,opt,name=nextId,proto3" json:"nextId"`
+	Offset           int64  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset"`
+	IdentifyId       string `protobuf:"bytes,3,opt,name=IdentifyId,proto3" json:"IdentifyId"`
+	IsWithinSevenDay bool   `protobuf:"varint,4,opt,name=isWithinSevenDay,proto3" json:"isWithinSevenDay"` // 是否在七日内
+}
+
+func (x *UserFindRoomListRequest) Reset() {
+	*x = UserFindRoomListRequest{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_chat_proto_msgTypes[1]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *UserFindRoomListRequest) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UserFindRoomListRequest) ProtoMessage() {}
+
+func (x *UserFindRoomListRequest) ProtoReflect() protoreflect.Message {
+	mi := &file_chat_proto_msgTypes[1]
+	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 UserFindRoomListRequest.ProtoReflect.Descriptor instead.
+func (*UserFindRoomListRequest) Descriptor() ([]byte, []int) {
+	return file_chat_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *UserFindRoomListRequest) GetNextId() int64 {
+	if x != nil {
+		return x.NextId
+	}
+	return 0
+}
+
+func (x *UserFindRoomListRequest) GetOffset() int64 {
+	if x != nil {
+		return x.Offset
+	}
+	return 0
+}
+
+func (x *UserFindRoomListRequest) GetIdentifyId() string {
+	if x != nil {
+		return x.IdentifyId
+	}
+	return ""
+}
+
+func (x *UserFindRoomListRequest) GetIsWithinSevenDay() bool {
+	if x != nil {
+		return x.IsWithinSevenDay
+	}
+	return false
+}
+
+type UserFindRoomListReply struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	List   []*UserRoomInfo `protobuf:"bytes,1,rep,name=list,proto3" json:"list"`
+	NextId int64           `protobuf:"varint,2,opt,name=nextId,proto3" json:"nextId"`
+}
+
+func (x *UserFindRoomListReply) Reset() {
+	*x = UserFindRoomListReply{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_chat_proto_msgTypes[2]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *UserFindRoomListReply) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UserFindRoomListReply) ProtoMessage() {}
+
+func (x *UserFindRoomListReply) ProtoReflect() protoreflect.Message {
+	mi := &file_chat_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 UserFindRoomListReply.ProtoReflect.Descriptor instead.
+func (*UserFindRoomListReply) Descriptor() ([]byte, []int) {
+	return file_chat_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *UserFindRoomListReply) GetList() []*UserRoomInfo {
+	if x != nil {
+		return x.List
+	}
+	return nil
+}
+
+func (x *UserFindRoomListReply) GetNextId() int64 {
+	if x != nil {
+		return x.NextId
+	}
+	return 0
+}
+
+type UserRoomInfo struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	PersonId    string `protobuf:"bytes,2,opt,name=personId,proto3" json:"personId"`        // 用户ID
+	UnreadNum   int64  `protobuf:"varint,3,opt,name=unreadNum,proto3" json:"unreadNum"`     // 用户未读数
+	LastContent string `protobuf:"bytes,4,opt,name=lastContent,proto3" json:"lastContent"`  // 上次发送内容
+	LastTime    int64  `protobuf:"varint,5,opt,name=lastTime,proto3" json:"lastTime"`       // 上次发送时间
+	Likeability int64  `protobuf:"varint,6,opt,name=likeability,proto3" json:"likeability"` // 好感度
+	Sex         int64  `protobuf:"varint,8,opt,name=sex,proto3" json:"sex"`                 // 性别
+	AvatarUrl   string `protobuf:"bytes,9,opt,name=AvatarUrl,proto3" json:"AvatarUrl"`      // 头像
+	Nickname    string `protobuf:"bytes,10,opt,name=nickname,proto3" json:"nickname"`       // 昵称
+	Age         int64  `protobuf:"varint,11,opt,name=age,proto3" json:"age"`                // 年龄
+}
+
+func (x *UserRoomInfo) Reset() {
+	*x = UserRoomInfo{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_chat_proto_msgTypes[3]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *UserRoomInfo) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UserRoomInfo) ProtoMessage() {}
+
+func (x *UserRoomInfo) ProtoReflect() protoreflect.Message {
+	mi := &file_chat_proto_msgTypes[3]
+	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 UserRoomInfo.ProtoReflect.Descriptor instead.
+func (*UserRoomInfo) Descriptor() ([]byte, []int) {
+	return file_chat_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *UserRoomInfo) GetPersonId() string {
+	if x != nil {
+		return x.PersonId
+	}
+	return ""
+}
+
+func (x *UserRoomInfo) GetUnreadNum() int64 {
+	if x != nil {
+		return x.UnreadNum
+	}
+	return 0
+}
+
+func (x *UserRoomInfo) GetLastContent() string {
+	if x != nil {
+		return x.LastContent
+	}
+	return ""
+}
+
+func (x *UserRoomInfo) GetLastTime() int64 {
+	if x != nil {
+		return x.LastTime
+	}
+	return 0
+}
+
+func (x *UserRoomInfo) GetLikeability() int64 {
+	if x != nil {
+		return x.Likeability
+	}
+	return 0
+}
+
+func (x *UserRoomInfo) GetSex() int64 {
+	if x != nil {
+		return x.Sex
+	}
+	return 0
+}
+
+func (x *UserRoomInfo) GetAvatarUrl() string {
+	if x != nil {
+		return x.AvatarUrl
+	}
+	return ""
+}
+
+func (x *UserRoomInfo) GetNickname() string {
+	if x != nil {
+		return x.Nickname
+	}
+	return ""
+}
+
+func (x *UserRoomInfo) GetAge() int64 {
+	if x != nil {
+		return x.Age
+	}
+	return 0
+}
+
 type PartnerFindRoomListReply struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
@@ -112,7 +349,7 @@ type PartnerFindRoomListReply struct {
 func (x *PartnerFindRoomListReply) Reset() {
 	*x = PartnerFindRoomListReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[1]
+		mi := &file_chat_proto_msgTypes[4]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -125,7 +362,7 @@ func (x *PartnerFindRoomListReply) String() string {
 func (*PartnerFindRoomListReply) ProtoMessage() {}
 
 func (x *PartnerFindRoomListReply) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[1]
+	mi := &file_chat_proto_msgTypes[4]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -138,7 +375,7 @@ func (x *PartnerFindRoomListReply) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use PartnerFindRoomListReply.ProtoReflect.Descriptor instead.
 func (*PartnerFindRoomListReply) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{1}
+	return file_chat_proto_rawDescGZIP(), []int{4}
 }
 
 func (x *PartnerFindRoomListReply) GetList() []*PartnerRoomInfo {
@@ -176,7 +413,7 @@ type PartnerRoomInfo struct {
 func (x *PartnerRoomInfo) Reset() {
 	*x = PartnerRoomInfo{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[2]
+		mi := &file_chat_proto_msgTypes[5]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -189,7 +426,7 @@ func (x *PartnerRoomInfo) String() string {
 func (*PartnerRoomInfo) ProtoMessage() {}
 
 func (x *PartnerRoomInfo) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[2]
+	mi := &file_chat_proto_msgTypes[5]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -202,7 +439,7 @@ func (x *PartnerRoomInfo) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use PartnerRoomInfo.ProtoReflect.Descriptor instead.
 func (*PartnerRoomInfo) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{2}
+	return file_chat_proto_rawDescGZIP(), []int{5}
 }
 
 func (x *PartnerRoomInfo) GetPersonSendNum() int64 {
@@ -298,7 +535,7 @@ type CreateChatRoomParam struct {
 func (x *CreateChatRoomParam) Reset() {
 	*x = CreateChatRoomParam{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[3]
+		mi := &file_chat_proto_msgTypes[6]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -311,7 +548,7 @@ func (x *CreateChatRoomParam) String() string {
 func (*CreateChatRoomParam) ProtoMessage() {}
 
 func (x *CreateChatRoomParam) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[3]
+	mi := &file_chat_proto_msgTypes[6]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -324,7 +561,7 @@ func (x *CreateChatRoomParam) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use CreateChatRoomParam.ProtoReflect.Descriptor instead.
 func (*CreateChatRoomParam) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{3}
+	return file_chat_proto_rawDescGZIP(), []int{6}
 }
 
 func (x *CreateChatRoomParam) GetPersonId1() string {
@@ -385,7 +622,7 @@ type ReceiveRequest struct {
 func (x *ReceiveRequest) Reset() {
 	*x = ReceiveRequest{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[4]
+		mi := &file_chat_proto_msgTypes[7]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -398,7 +635,7 @@ func (x *ReceiveRequest) String() string {
 func (*ReceiveRequest) ProtoMessage() {}
 
 func (x *ReceiveRequest) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[4]
+	mi := &file_chat_proto_msgTypes[7]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -411,7 +648,7 @@ func (x *ReceiveRequest) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ReceiveRequest.ProtoReflect.Descriptor instead.
 func (*ReceiveRequest) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{4}
+	return file_chat_proto_rawDescGZIP(), []int{7}
 }
 
 func (x *ReceiveRequest) GetMethod() string {
@@ -465,7 +702,7 @@ type ReceiveReply struct {
 func (x *ReceiveReply) Reset() {
 	*x = ReceiveReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[5]
+		mi := &file_chat_proto_msgTypes[8]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -478,7 +715,7 @@ func (x *ReceiveReply) String() string {
 func (*ReceiveReply) ProtoMessage() {}
 
 func (x *ReceiveReply) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[5]
+	mi := &file_chat_proto_msgTypes[8]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -491,7 +728,7 @@ func (x *ReceiveReply) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ReceiveReply.ProtoReflect.Descriptor instead.
 func (*ReceiveReply) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{5}
+	return file_chat_proto_rawDescGZIP(), []int{8}
 }
 
 type CheckUserPartnerIsRelationshipReply struct {
@@ -506,7 +743,7 @@ type CheckUserPartnerIsRelationshipReply struct {
 func (x *CheckUserPartnerIsRelationshipReply) Reset() {
 	*x = CheckUserPartnerIsRelationshipReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[6]
+		mi := &file_chat_proto_msgTypes[9]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -519,7 +756,7 @@ func (x *CheckUserPartnerIsRelationshipReply) String() string {
 func (*CheckUserPartnerIsRelationshipReply) ProtoMessage() {}
 
 func (x *CheckUserPartnerIsRelationshipReply) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[6]
+	mi := &file_chat_proto_msgTypes[9]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -532,7 +769,7 @@ func (x *CheckUserPartnerIsRelationshipReply) ProtoReflect() protoreflect.Messag
 
 // Deprecated: Use CheckUserPartnerIsRelationshipReply.ProtoReflect.Descriptor instead.
 func (*CheckUserPartnerIsRelationshipReply) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{6}
+	return file_chat_proto_rawDescGZIP(), []int{9}
 }
 
 func (x *CheckUserPartnerIsRelationshipReply) GetIsBuildRelationship() bool {
@@ -560,7 +797,7 @@ type RoomReply struct {
 func (x *RoomReply) Reset() {
 	*x = RoomReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_chat_proto_msgTypes[7]
+		mi := &file_chat_proto_msgTypes[10]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -573,7 +810,7 @@ func (x *RoomReply) String() string {
 func (*RoomReply) ProtoMessage() {}
 
 func (x *RoomReply) ProtoReflect() protoreflect.Message {
-	mi := &file_chat_proto_msgTypes[7]
+	mi := &file_chat_proto_msgTypes[10]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -586,7 +823,7 @@ func (x *RoomReply) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use RoomReply.ProtoReflect.Descriptor instead.
 func (*RoomReply) Descriptor() ([]byte, []int) {
-	return file_chat_proto_rawDescGZIP(), []int{7}
+	return file_chat_proto_rawDescGZIP(), []int{10}
 }
 
 func (x *RoomReply) GetRoomId() int64 {
@@ -614,102 +851,140 @@ var file_chat_proto_rawDesc = []byte{
 	0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x73, 0x57, 0x69, 0x74, 0x68,
 	0x69, 0x6e, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
 	0x52, 0x10, 0x69, 0x73, 0x57, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44,
-	0x61, 0x79, 0x22, 0x61, 0x0a, 0x18, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e,
-	0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x2d,
-	0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61,
-	0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x52,
-	0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a,
-	0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e,
-	0x65, 0x78, 0x74, 0x49, 0x64, 0x22, 0xbb, 0x02, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65,
-	0x72, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x65, 0x72,
-	0x73, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
-	0x52, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x12,
-	0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75,
-	0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
-	0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73,
-	0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
-	0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c,
-	0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c,
-	0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x65, 0x6e, 0x65, 0x66,
-	0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x65, 0x6e, 0x65, 0x66, 0x69,
-	0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01,
-	0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x76, 0x61, 0x74, 0x61,
-	0x72, 0x55, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x76, 0x61, 0x74,
-	0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d,
-	0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d,
-	0x65, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03,
-	0x61, 0x67, 0x65, 0x22, 0xf1, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68,
-	0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x70,
-	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
-	0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x31, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x72,
-	0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x49, 0x44, 0x31, 0x18, 0x02,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65, 0x6e,
-	0x74, 0x69, 0x66, 0x79, 0x49, 0x44, 0x31, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f,
-	0x6e, 0x54, 0x79, 0x70, 0x65, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x31, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x65, 0x72,
-	0x73, 0x6f, 0x6e, 0x49, 0x64, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x32, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x72, 0x73, 0x6f,
-	0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x49, 0x44, 0x32, 0x18, 0x05, 0x20, 0x01,
+	0x61, 0x79, 0x22, 0x95, 0x01, 0x0a, 0x17, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52,
+	0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
+	0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
+	0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
+	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1e,
+	0x0a, 0x0a, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x0a, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x49, 0x64, 0x12, 0x2a,
+	0x0a, 0x10, 0x69, 0x73, 0x57, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44,
+	0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x57, 0x69, 0x74, 0x68,
+	0x69, 0x6e, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x22, 0x5b, 0x0a, 0x15, 0x55, 0x73,
+	0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
+	0x70, 0x6c, 0x79, 0x12, 0x2a, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28,
+	0x0b, 0x32, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x55, 0x73, 0x65,
+	0x72, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x12,
+	0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
+	0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x22, 0x86, 0x02, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72,
+	0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75,
+	0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e,
+	0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
+	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+	0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65,
+	0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65,
+	0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18,
+	0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x61, 0x62, 0x69, 0x6c, 0x69,
+	0x74, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52,
+	0x03, 0x73, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72,
+	0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55,
+	0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10,
+	0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x61, 0x67, 0x65,
+	0x22, 0x61, 0x0a, 0x18, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52,
+	0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x2d, 0x0a, 0x04,
+	0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x70, 0x69,
+	0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x52, 0x6f, 0x6f,
+	0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e,
+	0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x65, 0x78,
+	0x74, 0x49, 0x64, 0x22, 0xbb, 0x02, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x52,
+	0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x6f,
+	0x6e, 0x53, 0x65, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
+	0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a,
+	0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x72,
+	0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x6e,
+	0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x43,
+	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61,
+	0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x73,
+	0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c, 0x61, 0x73,
+	0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x65, 0x6e, 0x65, 0x66, 0x69, 0x74,
+	0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x65, 0x6e, 0x65, 0x66, 0x69, 0x74, 0x12,
+	0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74,
+	0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03,
+	0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55,
+	0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72,
+	0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+	0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+	0x10, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x61, 0x67,
+	0x65, 0x22, 0xf1, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74,
+	0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x65, 0x72,
+	0x73, 0x6f, 0x6e, 0x49, 0x64, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x31, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x72, 0x73, 0x6f,
+	0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x49, 0x44, 0x31, 0x18, 0x02, 0x20, 0x01,
 	0x28, 0x09, 0x52, 0x11, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
-	0x66, 0x79, 0x49, 0x44, 0x32, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54,
-	0x79, 0x70, 0x65, 0x32, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73,
-	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x32, 0x22, 0xac, 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x63, 0x65,
-	0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65,
-	0x74, 0x68, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68,
-	0x6f, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
-	0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x62, 0x73, 0x6f, 0x63,
-	0x6b, 0x65, 0x74, 0x54, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x65,
-	0x62, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x54, 0x61, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
-	0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x0e, 0x0a, 0x0c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
-	0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x6f, 0x0a, 0x23, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
-	0x73, 0x65, 0x72, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x61,
-	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x30, 0x0a,
-	0x13, 0x69, 0x73, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
-	0x73, 0x68, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, 0x42, 0x75,
-	0x69, 0x6c, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x12,
-	0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0x23, 0x0a, 0x09, 0x52, 0x6f, 0x6f, 0x6d, 0x52,
-	0x65, 0x70, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x32, 0xc3, 0x03, 0x0a,
-	0x04, 0x43, 0x68, 0x61, 0x74, 0x12, 0x72, 0x0a, 0x1e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73,
-	0x65, 0x72, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x61, 0x74,
-	0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x12, 0x21, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f,
-	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x6e, 0x64, 0x50, 0x61, 0x72, 0x74,
-	0x6e, 0x65, 0x72, 0x49, 0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x2d, 0x2e, 0x61, 0x70, 0x69,
-	0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x50,
-	0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
-	0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x44, 0x0a, 0x0e, 0x43, 0x72, 0x65,
-	0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x1d, 0x2e, 0x61, 0x70,
-	0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61,
-	0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x13, 0x2e, 0x61, 0x70, 0x69,
-	0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12,
-	0x5f, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x65, 0x72,
-	0x73, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f,
-	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64,
-	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e,
-	0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e,
-	0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79,
-	0x12, 0x61, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52,
-	0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68,
-	0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f,
-	0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e,
-	0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72,
-	0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c,
-	0x79, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x07, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x12, 0x18,
-	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
-	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
-	0x68, 0x61, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79,
-	0x22, 0x00, 0x42, 0x3d, 0x0a, 0x08, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x50, 0x01,
-	0x5a, 0x2f, 0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d,
-	0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x62, 0x75, 0x66, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x3b, 0x63, 0x68, 0x61,
-	0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x66, 0x79, 0x49, 0x44, 0x31, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54,
+	0x79, 0x70, 0x65, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x31, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x65, 0x72, 0x73, 0x6f,
+	0x6e, 0x49, 0x64, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x49, 0x64, 0x32, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49,
+	0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x49, 0x44, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x11, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79,
+	0x49, 0x44, 0x32, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70,
+	0x65, 0x32, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e,
+	0x54, 0x79, 0x70, 0x65, 0x32, 0x22, 0xac, 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
+	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68,
+	0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+	0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04,
+	0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x02, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x62, 0x73, 0x6f, 0x63, 0x6b, 0x65,
+	0x74, 0x54, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x65, 0x62, 0x73,
+	0x6f, 0x63, 0x6b, 0x65, 0x74, 0x54, 0x61, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x49, 0x64, 0x22, 0x0e, 0x0a, 0x0c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52,
+	0x65, 0x70, 0x6c, 0x79, 0x22, 0x6f, 0x0a, 0x23, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
+	0x72, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69,
+	0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x30, 0x0a, 0x13, 0x69,
+	0x73, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68,
+	0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, 0x42, 0x75, 0x69, 0x6c,
+	0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x12, 0x16, 0x0a,
+	0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72,
+	0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0x23, 0x0a, 0x09, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x70,
+	0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
+	0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x32, 0x9d, 0x04, 0x0a, 0x04, 0x43,
+	0x68, 0x61, 0x74, 0x12, 0x72, 0x0a, 0x1e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
+	0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x73, 0x68, 0x69, 0x70, 0x12, 0x21, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
+	0x6f, 0x6e, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x6e, 0x64, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65,
+	0x72, 0x49, 0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x2d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
+	0x68, 0x61, 0x74, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x72,
+	0x74, 0x6e, 0x65, 0x72, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68,
+	0x69, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x44, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74,
+	0x65, 0x43, 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e,
+	0x63, 0x68, 0x61, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x52,
+	0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x13, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
+	0x68, 0x61, 0x74, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x5f, 0x0a,
+	0x14, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f,
+	0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
+	0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x61, 0x70,
+	0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50,
+	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x61,
+	0x0a, 0x13, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f,
+	0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74,
+	0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x61, 0x70,
+	0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69,
+	0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22,
+	0x00, 0x12, 0x58, 0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f,
+	0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74,
+	0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73,
+	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
+	0x68, 0x61, 0x74, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x07, 0x52,
+	0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61,
+	0x74, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+	0x1a, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x65,
+	0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x42, 0x3d, 0x0a, 0x08, 0x61, 0x70,
+	0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x50, 0x01, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b,
+	0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f,
+	0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x70, 0x69, 0x2f,
+	0x63, 0x68, 0x61, 0x74, 0x3b, 0x63, 0x68, 0x61, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+	0x33,
 }
 
 var (
@@ -724,37 +999,43 @@ func file_chat_proto_rawDescGZIP() []byte {
 	return file_chat_proto_rawDescData
 }
 
-var file_chat_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
+var file_chat_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
 var file_chat_proto_goTypes = []interface{}{
 	(*PartnerFindRoomListRequest)(nil),          // 0: api.chat.PartnerFindRoomListRequest
-	(*PartnerFindRoomListReply)(nil),            // 1: api.chat.PartnerFindRoomListReply
-	(*PartnerRoomInfo)(nil),                     // 2: api.chat.PartnerRoomInfo
-	(*CreateChatRoomParam)(nil),                 // 3: api.chat.CreateChatRoomParam
-	(*ReceiveRequest)(nil),                      // 4: api.chat.ReceiveRequest
-	(*ReceiveReply)(nil),                        // 5: api.chat.ReceiveReply
-	(*CheckUserPartnerIsRelationshipReply)(nil), // 6: api.chat.CheckUserPartnerIsRelationshipReply
-	(*RoomReply)(nil),                           // 7: api.chat.RoomReply
-	(*common.UserAndPartnerIdParam)(nil),        // 8: api.common.UserAndPartnerIdParam
-	(*common.ListPageAndPersonRequest)(nil),     // 9: api.common.ListPageAndPersonRequest
-	(*common.OnlinePersonListReply)(nil),        // 10: api.common.OnlinePersonListReply
+	(*UserFindRoomListRequest)(nil),             // 1: api.chat.UserFindRoomListRequest
+	(*UserFindRoomListReply)(nil),               // 2: api.chat.UserFindRoomListReply
+	(*UserRoomInfo)(nil),                        // 3: api.chat.UserRoomInfo
+	(*PartnerFindRoomListReply)(nil),            // 4: api.chat.PartnerFindRoomListReply
+	(*PartnerRoomInfo)(nil),                     // 5: api.chat.PartnerRoomInfo
+	(*CreateChatRoomParam)(nil),                 // 6: api.chat.CreateChatRoomParam
+	(*ReceiveRequest)(nil),                      // 7: api.chat.ReceiveRequest
+	(*ReceiveReply)(nil),                        // 8: api.chat.ReceiveReply
+	(*CheckUserPartnerIsRelationshipReply)(nil), // 9: api.chat.CheckUserPartnerIsRelationshipReply
+	(*RoomReply)(nil),                           // 10: api.chat.RoomReply
+	(*common.UserAndPartnerIdParam)(nil),        // 11: api.common.UserAndPartnerIdParam
+	(*common.ListPageAndPersonRequest)(nil),     // 12: api.common.ListPageAndPersonRequest
+	(*common.OnlinePersonListReply)(nil),        // 13: api.common.OnlinePersonListReply
 }
 var file_chat_proto_depIdxs = []int32{
-	2,  // 0: api.chat.PartnerFindRoomListReply.list:type_name -> api.chat.PartnerRoomInfo
-	8,  // 1: api.chat.Chat.CheckUserPartnerIsRelationship:input_type -> api.common.UserAndPartnerIdParam
-	3,  // 2: api.chat.Chat.CreateChatRoom:input_type -> api.chat.CreateChatRoomParam
-	9,  // 3: api.chat.Chat.FindOnlinePersonList:input_type -> api.common.ListPageAndPersonRequest
-	0,  // 4: api.chat.Chat.PartnerFindRoomList:input_type -> api.chat.PartnerFindRoomListRequest
-	4,  // 5: api.chat.Chat.Receive:input_type -> api.chat.ReceiveRequest
-	6,  // 6: api.chat.Chat.CheckUserPartnerIsRelationship:output_type -> api.chat.CheckUserPartnerIsRelationshipReply
-	7,  // 7: api.chat.Chat.CreateChatRoom:output_type -> api.chat.RoomReply
-	10, // 8: api.chat.Chat.FindOnlinePersonList:output_type -> api.common.OnlinePersonListReply
-	1,  // 9: api.chat.Chat.PartnerFindRoomList:output_type -> api.chat.PartnerFindRoomListReply
-	5,  // 10: api.chat.Chat.Receive:output_type -> api.chat.ReceiveReply
-	6,  // [6:11] is the sub-list for method output_type
-	1,  // [1:6] is the sub-list for method input_type
-	1,  // [1:1] is the sub-list for extension type_name
-	1,  // [1:1] is the sub-list for extension extendee
-	0,  // [0:1] is the sub-list for field type_name
+	3,  // 0: api.chat.UserFindRoomListReply.list:type_name -> api.chat.UserRoomInfo
+	5,  // 1: api.chat.PartnerFindRoomListReply.list:type_name -> api.chat.PartnerRoomInfo
+	11, // 2: api.chat.Chat.CheckUserPartnerIsRelationship:input_type -> api.common.UserAndPartnerIdParam
+	6,  // 3: api.chat.Chat.CreateChatRoom:input_type -> api.chat.CreateChatRoomParam
+	12, // 4: api.chat.Chat.FindOnlinePersonList:input_type -> api.common.ListPageAndPersonRequest
+	0,  // 5: api.chat.Chat.PartnerFindRoomList:input_type -> api.chat.PartnerFindRoomListRequest
+	1,  // 6: api.chat.Chat.UserFindRoomList:input_type -> api.chat.UserFindRoomListRequest
+	7,  // 7: api.chat.Chat.Receive:input_type -> api.chat.ReceiveRequest
+	9,  // 8: api.chat.Chat.CheckUserPartnerIsRelationship:output_type -> api.chat.CheckUserPartnerIsRelationshipReply
+	10, // 9: api.chat.Chat.CreateChatRoom:output_type -> api.chat.RoomReply
+	13, // 10: api.chat.Chat.FindOnlinePersonList:output_type -> api.common.OnlinePersonListReply
+	4,  // 11: api.chat.Chat.PartnerFindRoomList:output_type -> api.chat.PartnerFindRoomListReply
+	2,  // 12: api.chat.Chat.UserFindRoomList:output_type -> api.chat.UserFindRoomListReply
+	8,  // 13: api.chat.Chat.Receive:output_type -> api.chat.ReceiveReply
+	8,  // [8:14] is the sub-list for method output_type
+	2,  // [2:8] is the sub-list for method input_type
+	2,  // [2:2] is the sub-list for extension type_name
+	2,  // [2:2] is the sub-list for extension extendee
+	0,  // [0:2] is the sub-list for field type_name
 }
 
 func init() { file_chat_proto_init() }
@@ -776,7 +1057,7 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*PartnerFindRoomListReply); i {
+			switch v := v.(*UserFindRoomListRequest); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -788,7 +1069,7 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*PartnerRoomInfo); i {
+			switch v := v.(*UserFindRoomListReply); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -800,7 +1081,7 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CreateChatRoomParam); i {
+			switch v := v.(*UserRoomInfo); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -812,7 +1093,7 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ReceiveRequest); i {
+			switch v := v.(*PartnerFindRoomListReply); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -824,7 +1105,7 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*ReceiveReply); i {
+			switch v := v.(*PartnerRoomInfo); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -836,7 +1117,7 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*CheckUserPartnerIsRelationshipReply); i {
+			switch v := v.(*CreateChatRoomParam); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -848,6 +1129,42 @@ func file_chat_proto_init() {
 			}
 		}
 		file_chat_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*ReceiveRequest); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_chat_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*ReceiveReply); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_chat_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*CheckUserPartnerIsRelationshipReply); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_chat_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*RoomReply); i {
 			case 0:
 				return &v.state
@@ -866,7 +1183,7 @@ func file_chat_proto_init() {
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 			RawDescriptor: file_chat_proto_rawDesc,
 			NumEnums:      0,
-			NumMessages:   8,
+			NumMessages:   11,
 			NumExtensions: 0,
 			NumServices:   1,
 		},

+ 26 - 0
api/chat/chat.proto

@@ -20,6 +20,8 @@ service Chat {
   rpc FindOnlinePersonList (common.ListPageAndPersonRequest) returns (common.OnlinePersonListReply);
   // 接待员查询房间列表
   rpc PartnerFindRoomList (PartnerFindRoomListRequest) returns (PartnerFindRoomListReply){};
+  // 用户查询房间列表
+  rpc UserFindRoomList (UserFindRoomListRequest) returns (UserFindRoomListReply){};
   rpc Receive (ReceiveRequest) returns (ReceiveReply){};
 
 }
@@ -32,6 +34,30 @@ message PartnerFindRoomListRequest {
   bool isWithinSevenDay = 5; // 是否在七日内
 }
 
+message UserFindRoomListRequest {
+  int64 nextId = 1;
+  int64 offset = 2;
+  string IdentifyId = 3;
+  bool isWithinSevenDay = 4; // 是否在七日内
+}
+
+message UserFindRoomListReply{
+  repeated UserRoomInfo list = 1;
+  int64 nextId = 2;
+}
+
+message UserRoomInfo{
+  string personId = 2;// 用户ID
+  int64 unreadNum = 3;// 用户未读数
+  string lastContent = 4;// 上次发送内容
+  int64 lastTime = 5;// 上次发送时间
+  int64 likeability = 6;// 好感度
+  int64 sex = 8;// 性别
+  string AvatarUrl = 9;// 头像
+  string nickname = 10;// 昵称
+  int64 age = 11;// 年龄
+}
+
 message PartnerFindRoomListReply{
   repeated PartnerRoomInfo list = 1;
   int64 nextId = 2;

+ 38 - 0
api/chat/chat_grpc.pb.go

@@ -27,6 +27,8 @@ type ChatClient interface {
 	FindOnlinePersonList(ctx context.Context, in *common.ListPageAndPersonRequest, opts ...grpc.CallOption) (*common.OnlinePersonListReply, error)
 	// 接待员查询房间列表
 	PartnerFindRoomList(ctx context.Context, in *PartnerFindRoomListRequest, opts ...grpc.CallOption) (*PartnerFindRoomListReply, error)
+	// 用户查询房间列表
+	UserFindRoomList(ctx context.Context, in *UserFindRoomListRequest, opts ...grpc.CallOption) (*UserFindRoomListReply, error)
 	Receive(ctx context.Context, in *ReceiveRequest, opts ...grpc.CallOption) (*ReceiveReply, error)
 }
 
@@ -74,6 +76,15 @@ func (c *chatClient) PartnerFindRoomList(ctx context.Context, in *PartnerFindRoo
 	return out, nil
 }
 
+func (c *chatClient) UserFindRoomList(ctx context.Context, in *UserFindRoomListRequest, opts ...grpc.CallOption) (*UserFindRoomListReply, error) {
+	out := new(UserFindRoomListReply)
+	err := c.cc.Invoke(ctx, "/api.chat.Chat/UserFindRoomList", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *chatClient) Receive(ctx context.Context, in *ReceiveRequest, opts ...grpc.CallOption) (*ReceiveReply, error) {
 	out := new(ReceiveReply)
 	err := c.cc.Invoke(ctx, "/api.chat.Chat/Receive", in, out, opts...)
@@ -95,6 +106,8 @@ type ChatServer interface {
 	FindOnlinePersonList(context.Context, *common.ListPageAndPersonRequest) (*common.OnlinePersonListReply, error)
 	// 接待员查询房间列表
 	PartnerFindRoomList(context.Context, *PartnerFindRoomListRequest) (*PartnerFindRoomListReply, error)
+	// 用户查询房间列表
+	UserFindRoomList(context.Context, *UserFindRoomListRequest) (*UserFindRoomListReply, error)
 	Receive(context.Context, *ReceiveRequest) (*ReceiveReply, error)
 	mustEmbedUnimplementedChatServer()
 }
@@ -115,6 +128,9 @@ func (UnimplementedChatServer) FindOnlinePersonList(context.Context, *common.Lis
 func (UnimplementedChatServer) PartnerFindRoomList(context.Context, *PartnerFindRoomListRequest) (*PartnerFindRoomListReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method PartnerFindRoomList not implemented")
 }
+func (UnimplementedChatServer) UserFindRoomList(context.Context, *UserFindRoomListRequest) (*UserFindRoomListReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method UserFindRoomList not implemented")
+}
 func (UnimplementedChatServer) Receive(context.Context, *ReceiveRequest) (*ReceiveReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method Receive not implemented")
 }
@@ -203,6 +219,24 @@ func _Chat_PartnerFindRoomList_Handler(srv interface{}, ctx context.Context, dec
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Chat_UserFindRoomList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(UserFindRoomListRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ChatServer).UserFindRoomList(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/api.chat.Chat/UserFindRoomList",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ChatServer).UserFindRoomList(ctx, req.(*UserFindRoomListRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Chat_Receive_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(ReceiveRequest)
 	if err := dec(in); err != nil {
@@ -244,6 +278,10 @@ var Chat_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "PartnerFindRoomList",
 			Handler:    _Chat_PartnerFindRoomList_Handler,
 		},
+		{
+			MethodName: "UserFindRoomList",
+			Handler:    _Chat_UserFindRoomList_Handler,
+		},
 		{
 			MethodName: "Receive",
 			Handler:    _Chat_Receive_Handler,

+ 19 - 19
api/partner/partner.pb.go

@@ -568,7 +568,7 @@ var file_partner_proto_rawDesc = []byte{
 	0x73, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x78, 0x22, 0x2b,
 	0x0a, 0x17, 0x47, 0x65, 0x74, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x74, 0x6e,
 	0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78,
-	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x78, 0x32, 0xbf, 0x12, 0x0a, 0x07,
+	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x78, 0x32, 0xbb, 0x12, 0x0a, 0x07,
 	0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x12, 0x60, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x61,
 	0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
 	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
@@ -699,29 +699,29 @@ var file_partner_proto_rawDesc = []byte{
 	0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x29,
 	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x22, 0x1e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x61, 0x72,
 	0x74, 0x6e, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x75,
-	0x6e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x3a, 0x01, 0x2a, 0x12, 0x88, 0x01, 0x0a, 0x1a, 0x46, 0x69,
+	0x6e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x3a, 0x01, 0x2a, 0x12, 0x87, 0x01, 0x0a, 0x1a, 0x46, 0x69,
 	0x6e, 0x64, 0x57, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79,
 	0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
 	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65,
 	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74,
 	0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d,
-	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02,
-	0x23, 0x22, 0x1e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x2f,
-	0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x75, 0x6e, 0x72, 0x65, 0x70, 0x6c,
-	0x79, 0x3a, 0x01, 0x2a, 0x12, 0x86, 0x01, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x76, 0x65,
-	0x72, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73,
-	0x74, 0x12, 0x1b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c,
-	0x69, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22,
-	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65,
-	0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70,
-	0x6c, 0x79, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x22, 0x1e, 0x2f, 0x61, 0x70, 0x69,
-	0x2f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68,
-	0x61, 0x74, 0x2f, 0x75, 0x6e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x3a, 0x01, 0x2a, 0x42, 0x46, 0x0a,
-	0x0b, 0x61, 0x70, 0x69, 0x2e, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x50, 0x01, 0x5a, 0x35,
-	0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73,
-	0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
-	0x66, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x3b, 0x70, 0x61,
-	0x72, 0x74, 0x6e, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+	0x22, 0x22, 0x1d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x2f,
+	0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e,
+	0x3a, 0x01, 0x2a, 0x12, 0x83, 0x01, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x76, 0x65, 0x72,
+	0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74,
+	0x12, 0x1b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69,
+	0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e,
+	0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72,
+	0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c,
+	0x79, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x61, 0x70, 0x69, 0x2f,
+	0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68, 0x61,
+	0x74, 0x2f, 0x6f, 0x76, 0x65, 0x72, 0x3a, 0x01, 0x2a, 0x42, 0x46, 0x0a, 0x0b, 0x61, 0x70, 0x69,
+	0x2e, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x50, 0x01, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x2e,
+	0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65,
+	0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x70,
+	0x69, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x3b, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65,
+	0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (

+ 2 - 2
api/partner/partner.proto

@@ -130,14 +130,14 @@ service Partner {
   // 七天内列表(当前会话)
   rpc FindWithinSevenDayRoomList (common.ListPageRequest) returns (chat.PartnerFindRoomListReply){
     option (google.api.http) = {
-      post: "/api/partner/list/chat/unreply",
+      post: "/api/partner/list/chat/within",
       body:"*"
     };
   };
   // 七天外列表(更早的聊天记录)
   rpc FindOverSevenDayRoomList (common.ListPageRequest) returns (chat.PartnerFindRoomListReply){
     option (google.api.http) = {
-      post: "/api/partner/list/chat/unreply",
+      post: "/api/partner/list/chat/over",
       body:"*"
     };
   };

+ 4 - 4
api/partner/partner_http.pb.go

@@ -66,8 +66,8 @@ func RegisterPartnerHTTPServer(s *http.Server, srv PartnerHTTPServer) {
 	r.POST("/api/partner/list/tag", _Partner_FindTagListBySex0_HTTP_Handler(srv))
 	r.POST("/api/partner/list/online", _Partner_FindOnlineList0_HTTP_Handler(srv))
 	r.POST("/api/partner/list/chat/unreply", _Partner_FindUnReplyRoomList0_HTTP_Handler(srv))
-	r.POST("/api/partner/list/chat/unreply", _Partner_FindWithinSevenDayRoomList0_HTTP_Handler(srv))
-	r.POST("/api/partner/list/chat/unreply", _Partner_FindOverSevenDayRoomList0_HTTP_Handler(srv))
+	r.POST("/api/partner/list/chat/within", _Partner_FindWithinSevenDayRoomList0_HTTP_Handler(srv))
+	r.POST("/api/partner/list/chat/over", _Partner_FindOverSevenDayRoomList0_HTTP_Handler(srv))
 }
 
 func _Partner_GetPartnerInfo0_HTTP_Handler(srv PartnerHTTPServer) func(ctx http.Context) error {
@@ -611,7 +611,7 @@ func (c *PartnerHTTPClientImpl) FindOnlineList(ctx context.Context, in *common.L
 
 func (c *PartnerHTTPClientImpl) FindOverSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...http.CallOption) (*chat.PartnerFindRoomListReply, error) {
 	var out chat.PartnerFindRoomListReply
-	pattern := "/api/partner/list/chat/unreply"
+	pattern := "/api/partner/list/chat/over"
 	path := binding.EncodeURL(pattern, in, false)
 	opts = append(opts, http.Operation("/api.partner.Partner/FindOverSevenDayRoomList"))
 	opts = append(opts, http.PathTemplate(pattern))
@@ -650,7 +650,7 @@ func (c *PartnerHTTPClientImpl) FindUnReplyRoomList(ctx context.Context, in *com
 
 func (c *PartnerHTTPClientImpl) FindWithinSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...http.CallOption) (*chat.PartnerFindRoomListReply, error) {
 	var out chat.PartnerFindRoomListReply
-	pattern := "/api/partner/list/chat/unreply"
+	pattern := "/api/partner/list/chat/within"
 	path := binding.EncodeURL(pattern, in, false)
 	opts = append(opts, http.Operation("/api.partner.Partner/FindWithinSevenDayRoomList"))
 	opts = append(opts, http.PathTemplate(pattern))

+ 47 - 26
api/user/user.pb.go

@@ -251,7 +251,7 @@ var file_user_proto_rawDesc = []byte{
 	0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x65,
 	0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x65, 0x61, 0x22, 0x1e, 0x0a,
 	0x0a, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b,
-	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x32, 0x94, 0x0f,
+	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x32, 0x97, 0x11,
 	0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x7e, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
 	0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
 	0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x55, 0x70, 0x64,
@@ -373,11 +373,27 @@ var file_user_proto_rawDesc = []byte{
 	0x69, 0x6e, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70,
 	0x6c, 0x79, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x22, 0x15, 0x2f, 0x61, 0x70, 0x69,
 	0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x2f, 0x6f, 0x6e, 0x6c, 0x69, 0x6e,
-	0x65, 0x3a, 0x01, 0x2a, 0x42, 0x3d, 0x0a, 0x08, 0x61, 0x70, 0x69, 0x2e, 0x75, 0x73, 0x65, 0x72,
-	0x50, 0x01, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63,
-	0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f,
-	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x3b, 0x75,
-	0x73, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x65, 0x3a, 0x01, 0x2a, 0x12, 0x81, 0x01, 0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x57, 0x69, 0x74,
+	0x68, 0x69, 0x6e, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x52, 0x6f, 0x6f, 0x6d, 0x4c,
+	0x69, 0x73, 0x74, 0x12, 0x1b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
+	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+	0x1a, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x55, 0x73, 0x65, 0x72,
+	0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c,
+	0x79, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x22, 0x1a, 0x2f, 0x61, 0x70, 0x69, 0x2f,
+	0x75, 0x73, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x77,
+	0x69, 0x74, 0x68, 0x69, 0x6e, 0x3a, 0x01, 0x2a, 0x12, 0x7d, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64,
+	0x4f, 0x76, 0x65, 0x72, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x44, 0x61, 0x79, 0x52, 0x6f, 0x6f, 0x6d,
+	0x4c, 0x69, 0x73, 0x74, 0x12, 0x1b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
+	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+	0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x55, 0x73, 0x65,
+	0x72, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70,
+	0x6c, 0x79, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x22, 0x18, 0x2f, 0x61, 0x70, 0x69,
+	0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f,
+	0x6f, 0x76, 0x65, 0x72, 0x3a, 0x01, 0x2a, 0x42, 0x3d, 0x0a, 0x08, 0x61, 0x70, 0x69, 0x2e, 0x75,
+	0x73, 0x65, 0x72, 0x50, 0x01, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61,
+	0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d,
+	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65,
+	0x72, 0x3b, 0x75, 0x73, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -420,6 +436,7 @@ var file_user_proto_goTypes = []interface{}{
 	(*common.WxConfResponse)(nil),                    // 23: api.common.WxConfResponse
 	(*common.TagListReply)(nil),                      // 24: api.common.TagListReply
 	(*common.OnlinePersonListReply)(nil),             // 25: api.common.OnlinePersonListReply
+	(*chat.UserFindRoomListReply)(nil),               // 26: api.chat.UserFindRoomListReply
 }
 var file_user_proto_depIdxs = []int32{
 	2,  // 0: api.user.User.UpdateUserInformation:input_type -> api.common.UpdateInformationRequest
@@ -440,26 +457,30 @@ var file_user_proto_depIdxs = []int32{
 	11, // 15: api.user.User.WxConf:input_type -> api.common.WxConfReq
 	12, // 16: api.user.User.FindTagListBySex:input_type -> api.common.SexReq
 	13, // 17: api.user.User.FindOnlineList:input_type -> api.common.ListPage2Request
-	3,  // 18: api.user.User.UpdateUserInformation:output_type -> google.protobuf.Empty
-	0,  // 19: api.user.User.GetUserInfo:output_type -> api.user.UserInfo
-	14, // 20: api.user.User.GetUserDBMsg:output_type -> api.common.PersonMsg
-	15, // 21: api.user.User.GetUserLookNum:output_type -> api.statistics.LookMessageReply
-	3,  // 22: api.user.User.SendPhoneCode:output_type -> google.protobuf.Empty
-	3,  // 23: api.user.User.CheckPhoneCode:output_type -> google.protobuf.Empty
-	16, // 24: api.user.User.CheckUserPartnerIsRelationship:output_type -> api.chat.CheckUserPartnerIsRelationshipReply
-	17, // 25: api.user.User.CreateUserPartnerRoom:output_type -> api.chat.RoomReply
-	18, // 26: api.user.User.GetPartnerCircleInfo:output_type -> api.common.AddFriendMessageInfo
-	19, // 27: api.user.User.UserGetHomeInfo:output_type -> api.common.HomeInfo
-	20, // 28: api.user.User.FindUserDBList:output_type -> api.common.PersonDBReply
-	21, // 29: api.user.User.FindLookList:output_type -> api.statistics.LookAndLikeListReply
-	21, // 30: api.user.User.FindLikeList:output_type -> api.statistics.LookAndLikeListReply
-	21, // 31: api.user.User.FindLikedList:output_type -> api.statistics.LookAndLikeListReply
-	22, // 32: api.user.User.GetLookAndLikeStatisticsMessage:output_type -> api.statistics.LookAndLikeMessageReply
-	23, // 33: api.user.User.WxConf:output_type -> api.common.WxConfResponse
-	24, // 34: api.user.User.FindTagListBySex:output_type -> api.common.TagListReply
-	25, // 35: api.user.User.FindOnlineList:output_type -> api.common.OnlinePersonListReply
-	18, // [18:36] is the sub-list for method output_type
-	0,  // [0:18] is the sub-list for method input_type
+	10, // 18: api.user.User.FindWithinSevenDayRoomList:input_type -> api.common.ListPageRequest
+	10, // 19: api.user.User.FindOverSevenDayRoomList:input_type -> api.common.ListPageRequest
+	3,  // 20: api.user.User.UpdateUserInformation:output_type -> google.protobuf.Empty
+	0,  // 21: api.user.User.GetUserInfo:output_type -> api.user.UserInfo
+	14, // 22: api.user.User.GetUserDBMsg:output_type -> api.common.PersonMsg
+	15, // 23: api.user.User.GetUserLookNum:output_type -> api.statistics.LookMessageReply
+	3,  // 24: api.user.User.SendPhoneCode:output_type -> google.protobuf.Empty
+	3,  // 25: api.user.User.CheckPhoneCode:output_type -> google.protobuf.Empty
+	16, // 26: api.user.User.CheckUserPartnerIsRelationship:output_type -> api.chat.CheckUserPartnerIsRelationshipReply
+	17, // 27: api.user.User.CreateUserPartnerRoom:output_type -> api.chat.RoomReply
+	18, // 28: api.user.User.GetPartnerCircleInfo:output_type -> api.common.AddFriendMessageInfo
+	19, // 29: api.user.User.UserGetHomeInfo:output_type -> api.common.HomeInfo
+	20, // 30: api.user.User.FindUserDBList:output_type -> api.common.PersonDBReply
+	21, // 31: api.user.User.FindLookList:output_type -> api.statistics.LookAndLikeListReply
+	21, // 32: api.user.User.FindLikeList:output_type -> api.statistics.LookAndLikeListReply
+	21, // 33: api.user.User.FindLikedList:output_type -> api.statistics.LookAndLikeListReply
+	22, // 34: api.user.User.GetLookAndLikeStatisticsMessage:output_type -> api.statistics.LookAndLikeMessageReply
+	23, // 35: api.user.User.WxConf:output_type -> api.common.WxConfResponse
+	24, // 36: api.user.User.FindTagListBySex:output_type -> api.common.TagListReply
+	25, // 37: api.user.User.FindOnlineList:output_type -> api.common.OnlinePersonListReply
+	26, // 38: api.user.User.FindWithinSevenDayRoomList:output_type -> api.chat.UserFindRoomListReply
+	26, // 39: api.user.User.FindOverSevenDayRoomList:output_type -> api.chat.UserFindRoomListReply
+	20, // [20:40] is the sub-list for method output_type
+	0,  // [0:20] is the sub-list for method input_type
 	0,  // [0:0] is the sub-list for extension type_name
 	0,  // [0:0] is the sub-list for extension extendee
 	0,  // [0:0] is the sub-list for field type_name

+ 14 - 0
api/user/user.proto

@@ -130,6 +130,20 @@ service User {
       body:"*"
     };
   };
+  // 七天内列表(当前会话)
+  rpc FindWithinSevenDayRoomList (common.ListPageRequest) returns (chat.UserFindRoomListReply){
+    option (google.api.http) = {
+      post: "/api/user/list/chat/within",
+      body:"*"
+    };
+  };
+  // 七天外列表(更早的聊天记录)
+  rpc FindOverSevenDayRoomList (common.ListPageRequest) returns (chat.UserFindRoomListReply){
+    option (google.api.http) = {
+      post: "/api/user/list/chat/over",
+      body:"*"
+    };
+  };
 }
 
 message UserInfo{

+ 76 - 0
api/user/user_grpc.pb.go

@@ -58,6 +58,10 @@ type UserClient interface {
 	FindTagListBySex(ctx context.Context, in *common.SexReq, opts ...grpc.CallOption) (*common.TagListReply, error)
 	// 获取标签列表
 	FindOnlineList(ctx context.Context, in *common.ListPage2Request, opts ...grpc.CallOption) (*common.OnlinePersonListReply, error)
+	// 七天内列表(当前会话)
+	FindWithinSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...grpc.CallOption) (*chat.UserFindRoomListReply, error)
+	// 七天外列表(更早的聊天记录)
+	FindOverSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...grpc.CallOption) (*chat.UserFindRoomListReply, error)
 }
 
 type userClient struct {
@@ -230,6 +234,24 @@ func (c *userClient) FindOnlineList(ctx context.Context, in *common.ListPage2Req
 	return out, nil
 }
 
+func (c *userClient) FindWithinSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...grpc.CallOption) (*chat.UserFindRoomListReply, error) {
+	out := new(chat.UserFindRoomListReply)
+	err := c.cc.Invoke(ctx, "/api.user.User/FindWithinSevenDayRoomList", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *userClient) FindOverSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...grpc.CallOption) (*chat.UserFindRoomListReply, error) {
+	out := new(chat.UserFindRoomListReply)
+	err := c.cc.Invoke(ctx, "/api.user.User/FindOverSevenDayRoomList", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 // UserServer is the server API for User service.
 // All implementations must embed UnimplementedUserServer
 // for forward compatibility
@@ -270,6 +292,10 @@ type UserServer interface {
 	FindTagListBySex(context.Context, *common.SexReq) (*common.TagListReply, error)
 	// 获取标签列表
 	FindOnlineList(context.Context, *common.ListPage2Request) (*common.OnlinePersonListReply, error)
+	// 七天内列表(当前会话)
+	FindWithinSevenDayRoomList(context.Context, *common.ListPageRequest) (*chat.UserFindRoomListReply, error)
+	// 七天外列表(更早的聊天记录)
+	FindOverSevenDayRoomList(context.Context, *common.ListPageRequest) (*chat.UserFindRoomListReply, error)
 	mustEmbedUnimplementedUserServer()
 }
 
@@ -331,6 +357,12 @@ func (UnimplementedUserServer) FindTagListBySex(context.Context, *common.SexReq)
 func (UnimplementedUserServer) FindOnlineList(context.Context, *common.ListPage2Request) (*common.OnlinePersonListReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method FindOnlineList not implemented")
 }
+func (UnimplementedUserServer) FindWithinSevenDayRoomList(context.Context, *common.ListPageRequest) (*chat.UserFindRoomListReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method FindWithinSevenDayRoomList not implemented")
+}
+func (UnimplementedUserServer) FindOverSevenDayRoomList(context.Context, *common.ListPageRequest) (*chat.UserFindRoomListReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method FindOverSevenDayRoomList not implemented")
+}
 func (UnimplementedUserServer) mustEmbedUnimplementedUserServer() {}
 
 // UnsafeUserServer may be embedded to opt out of forward compatibility for this service.
@@ -668,6 +700,42 @@ func _User_FindOnlineList_Handler(srv interface{}, ctx context.Context, dec func
 	return interceptor(ctx, in, info, handler)
 }
 
+func _User_FindWithinSevenDayRoomList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(common.ListPageRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(UserServer).FindWithinSevenDayRoomList(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/api.user.User/FindWithinSevenDayRoomList",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(UserServer).FindWithinSevenDayRoomList(ctx, req.(*common.ListPageRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _User_FindOverSevenDayRoomList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(common.ListPageRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(UserServer).FindOverSevenDayRoomList(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/api.user.User/FindOverSevenDayRoomList",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(UserServer).FindOverSevenDayRoomList(ctx, req.(*common.ListPageRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 // User_ServiceDesc is the grpc.ServiceDesc for User service.
 // It's only intended for direct use with grpc.RegisterService,
 // and not to be introspected or modified (even as a copy)
@@ -747,6 +815,14 @@ var User_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "FindOnlineList",
 			Handler:    _User_FindOnlineList_Handler,
 		},
+		{
+			MethodName: "FindWithinSevenDayRoomList",
+			Handler:    _User_FindWithinSevenDayRoomList_Handler,
+		},
+		{
+			MethodName: "FindOverSevenDayRoomList",
+			Handler:    _User_FindOverSevenDayRoomList_Handler,
+		},
 	},
 	Streams:  []grpc.StreamDesc{},
 	Metadata: "user.proto",

+ 86 - 0
api/user/user_http.pb.go

@@ -37,7 +37,9 @@ type UserHTTPServer interface {
 	FindLikedList(context.Context, *common.ListPageRequest) (*statistics.LookAndLikeListReply, error)
 	FindLookList(context.Context, *common.ListPageRequest) (*statistics.LookAndLikeListReply, error)
 	FindOnlineList(context.Context, *common.ListPage2Request) (*common.OnlinePersonListReply, error)
+	FindOverSevenDayRoomList(context.Context, *common.ListPageRequest) (*chat.UserFindRoomListReply, error)
 	FindTagListBySex(context.Context, *common.SexReq) (*common.TagListReply, error)
+	FindWithinSevenDayRoomList(context.Context, *common.ListPageRequest) (*chat.UserFindRoomListReply, error)
 	GetLookAndLikeStatisticsMessage(context.Context, *common.PersonParam) (*statistics.LookAndLikeMessageReply, error)
 	GetPartnerCircleInfo(context.Context, *KeyRequest) (*common.AddFriendMessageInfo, error)
 	GetUserInfo(context.Context, *emptypb.Empty) (*UserInfo, error)
@@ -66,6 +68,8 @@ func RegisterUserHTTPServer(s *http.Server, srv UserHTTPServer) {
 	r.POST("/api/wx/jssdk/config", _User_WxConf0_HTTP_Handler(srv))
 	r.POST("/api/user/list/tag", _User_FindTagListBySex0_HTTP_Handler(srv))
 	r.POST("/api/user/list/online", _User_FindOnlineList0_HTTP_Handler(srv))
+	r.POST("/api/user/list/chat/within", _User_FindWithinSevenDayRoomList0_HTTP_Handler(srv))
+	r.POST("/api/user/list/chat/over", _User_FindOverSevenDayRoomList0_HTTP_Handler(srv))
 }
 
 func _User_UpdateUserInformation0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Context) error {
@@ -500,6 +504,60 @@ func _User_FindOnlineList0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Contex
 	}
 }
 
+func _User_FindWithinSevenDayRoomList0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Context) error {
+	return func(ctx http.Context) error {
+		var in common.ListPageRequest
+		if err := ctx.Bind(&in); err != nil {
+			return err
+		}
+		if err := ctx.BindQuery(&in); err != nil {
+			return err
+		}
+		http.SetOperation(ctx, "/api.user.User/FindWithinSevenDayRoomList")
+		h := ctx.Middleware(func(ctx context.Context, req interface{}) (interface{}, error) {
+			return srv.FindWithinSevenDayRoomList(ctx, req.(*common.ListPageRequest))
+		})
+		out, err := h(ctx, &in)
+		if err != nil {
+			return err
+		}
+		success := &reply.SuccessReply{
+			Code: 0,
+		}
+		if out != nil {
+			success.Data = out
+		}
+		return ctx.Result(200, success)
+	}
+}
+
+func _User_FindOverSevenDayRoomList0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Context) error {
+	return func(ctx http.Context) error {
+		var in common.ListPageRequest
+		if err := ctx.Bind(&in); err != nil {
+			return err
+		}
+		if err := ctx.BindQuery(&in); err != nil {
+			return err
+		}
+		http.SetOperation(ctx, "/api.user.User/FindOverSevenDayRoomList")
+		h := ctx.Middleware(func(ctx context.Context, req interface{}) (interface{}, error) {
+			return srv.FindOverSevenDayRoomList(ctx, req.(*common.ListPageRequest))
+		})
+		out, err := h(ctx, &in)
+		if err != nil {
+			return err
+		}
+		success := &reply.SuccessReply{
+			Code: 0,
+		}
+		if out != nil {
+			success.Data = out
+		}
+		return ctx.Result(200, success)
+	}
+}
+
 type UserHTTPClient interface {
 	CheckPhoneCode(ctx context.Context, req *common.CheckPhoneCodeRequest, opts ...http.CallOption) (rsp *emptypb.Empty, err error)
 	CheckUserPartnerIsRelationship(ctx context.Context, req *common.PartnerIDParam, opts ...http.CallOption) (rsp *chat.CheckUserPartnerIsRelationshipReply, err error)
@@ -508,7 +566,9 @@ type UserHTTPClient interface {
 	FindLikedList(ctx context.Context, req *common.ListPageRequest, opts ...http.CallOption) (rsp *statistics.LookAndLikeListReply, err error)
 	FindLookList(ctx context.Context, req *common.ListPageRequest, opts ...http.CallOption) (rsp *statistics.LookAndLikeListReply, err error)
 	FindOnlineList(ctx context.Context, req *common.ListPage2Request, opts ...http.CallOption) (rsp *common.OnlinePersonListReply, err error)
+	FindOverSevenDayRoomList(ctx context.Context, req *common.ListPageRequest, opts ...http.CallOption) (rsp *chat.UserFindRoomListReply, err error)
 	FindTagListBySex(ctx context.Context, req *common.SexReq, opts ...http.CallOption) (rsp *common.TagListReply, err error)
+	FindWithinSevenDayRoomList(ctx context.Context, req *common.ListPageRequest, opts ...http.CallOption) (rsp *chat.UserFindRoomListReply, err error)
 	GetLookAndLikeStatisticsMessage(ctx context.Context, req *common.PersonParam, opts ...http.CallOption) (rsp *statistics.LookAndLikeMessageReply, err error)
 	GetPartnerCircleInfo(ctx context.Context, req *KeyRequest, opts ...http.CallOption) (rsp *common.AddFriendMessageInfo, err error)
 	GetUserInfo(ctx context.Context, req *emptypb.Empty, opts ...http.CallOption) (rsp *UserInfo, err error)
@@ -618,6 +678,19 @@ func (c *UserHTTPClientImpl) FindOnlineList(ctx context.Context, in *common.List
 	return &out, err
 }
 
+func (c *UserHTTPClientImpl) FindOverSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...http.CallOption) (*chat.UserFindRoomListReply, error) {
+	var out chat.UserFindRoomListReply
+	pattern := "/api/user/list/chat/over"
+	path := binding.EncodeURL(pattern, in, false)
+	opts = append(opts, http.Operation("/api.user.User/FindOverSevenDayRoomList"))
+	opts = append(opts, http.PathTemplate(pattern))
+	err := c.cc.Invoke(ctx, "POST", path, in, &out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return &out, err
+}
+
 func (c *UserHTTPClientImpl) FindTagListBySex(ctx context.Context, in *common.SexReq, opts ...http.CallOption) (*common.TagListReply, error) {
 	var out common.TagListReply
 	pattern := "/api/user/list/tag"
@@ -631,6 +704,19 @@ func (c *UserHTTPClientImpl) FindTagListBySex(ctx context.Context, in *common.Se
 	return &out, err
 }
 
+func (c *UserHTTPClientImpl) FindWithinSevenDayRoomList(ctx context.Context, in *common.ListPageRequest, opts ...http.CallOption) (*chat.UserFindRoomListReply, error) {
+	var out chat.UserFindRoomListReply
+	pattern := "/api/user/list/chat/within"
+	path := binding.EncodeURL(pattern, in, false)
+	opts = append(opts, http.Operation("/api.user.User/FindWithinSevenDayRoomList"))
+	opts = append(opts, http.PathTemplate(pattern))
+	err := c.cc.Invoke(ctx, "POST", path, in, &out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return &out, err
+}
+
 func (c *UserHTTPClientImpl) GetLookAndLikeStatisticsMessage(ctx context.Context, in *common.PersonParam, opts ...http.CallOption) (*statistics.LookAndLikeMessageReply, error) {
 	var out statistics.LookAndLikeMessageReply
 	pattern := "/api/user/num/like_look"

+ 31 - 0
js/api/chat/chat_pb.ts

@@ -7,6 +7,37 @@ export interface PartnerFindRoomListRequest{
     /**  是否在七日内 */
     isWithinSevenDay?:boolean;
 }
+export interface UserFindRoomListRequest{
+    nextId?:number;
+    offset?:number;
+    IdentifyId?:string;
+    /**  是否在七日内 */
+    isWithinSevenDay?:boolean;
+}
+export interface UserFindRoomListReply{
+    list?:Array<UserRoomInfo>;
+    nextId?:number;
+}
+export interface UserRoomInfo{
+    /**  用户ID */
+    personId?:string;
+    /**  用户未读数 */
+    unreadNum?:number;
+    /**  上次发送内容 */
+    lastContent?:string;
+    /**  上次发送时间 */
+    lastTime?:number;
+    /**  好感度 */
+    likeability?:number;
+    /**  性别 */
+    sex?:number;
+    /**  头像 */
+    AvatarUrl?:string;
+    /**  昵称 */
+    nickname?:string;
+    /**  年龄 */
+    age?:number;
+}
 export interface PartnerFindRoomListReply{
     list?:Array<PartnerRoomInfo>;
     nextId?:number;

+ 2 - 2
js/api/partner/partner_http_pb.ts

@@ -83,12 +83,12 @@ const PartnerService = {
   },
   /**  七天内列表(当前会话) */
   FindWithinSevenDayRoomList: async (req?: ListPageRequest) => {
-	const res = await request.post<{ data: PartnerFindRoomListReply, code: string, message: string }>('/api/partner/list/chat/unreply', req);
+	const res = await request.post<{ data: PartnerFindRoomListReply, code: string, message: string }>('/api/partner/list/chat/within', req);
     return res.data.data;
   },
   /**  七天外列表(更早的聊天记录) */
   FindOverSevenDayRoomList: async (req?: ListPageRequest) => {
-	const res = await request.post<{ data: PartnerFindRoomListReply, code: string, message: string }>('/api/partner/list/chat/unreply', req);
+	const res = await request.post<{ data: PartnerFindRoomListReply, code: string, message: string }>('/api/partner/list/chat/over', req);
     return res.data.data;
   },
 

+ 11 - 1
js/api/user/user_http_pb.ts

@@ -3,7 +3,7 @@ import request from '@/libs/request';
 import {UpdateInformationRequest,PersonIDParam,PersonMsg,SendPhoneCodeRequest,CheckPhoneCodeRequest,PartnerIDParam,AddFriendMessageInfo,PersonParam,HomeInfo,PersonIDList,PersonDBReply,ListPageRequest,WxConfReq,WxConfResponse,SexReq,TagListReply,ListPage2Request,OnlinePersonListReply} from "../common/common_pb";
 import {UserInfo,KeyRequest} from "./user_pb";
 import {LookMessageReply,LookAndLikeListReply,LookAndLikeMessageReply} from "../statistics/statistics_pb";
-import {CheckUserPartnerIsRelationshipReply,RoomReply} from "../chat/chat_pb";
+import {CheckUserPartnerIsRelationshipReply,RoomReply,UserFindRoomListReply} from "../chat/chat_pb";
 
 const UserService = {
   /**  更新用户信息 */
@@ -86,6 +86,16 @@ const UserService = {
 	const res = await request.post<{ data: OnlinePersonListReply, code: string, message: string }>('/api/user/list/online', req);
     return res.data.data;
   },
+  /**  七天内列表(当前会话) */
+  FindWithinSevenDayRoomList: async (req?: ListPageRequest) => {
+	const res = await request.post<{ data: UserFindRoomListReply, code: string, message: string }>('/api/user/list/chat/within', req);
+    return res.data.data;
+  },
+  /**  七天外列表(更早的聊天记录) */
+  FindOverSevenDayRoomList: async (req?: ListPageRequest) => {
+	const res = await request.post<{ data: UserFindRoomListReply, code: string, message: string }>('/api/user/list/chat/over', req);
+    return res.data.data;
+  },
 
 };