golang-im聊天
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 

3114 Zeilen
106 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // versions:
  3. // protoc-gen-go v1.28.1
  4. // protoc v3.20.0--rc1
  5. // source: logic.ext.proto
  6. package pb
  7. import (
  8. context "context"
  9. "google.golang.org/grpc"
  10. "google.golang.org/grpc/codes"
  11. "google.golang.org/grpc/status"
  12. protoreflect "google.golang.org/protobuf/reflect/protoreflect"
  13. protoimpl "google.golang.org/protobuf/runtime/protoimpl"
  14. reflect "reflect"
  15. sync "sync"
  16. )
  17. const (
  18. // Verify that this generated code is sufficiently up-to-date.
  19. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
  20. // Verify that runtime/protoimpl is sufficiently up-to-date.
  21. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
  22. )
  23. type MemberType int32
  24. const (
  25. MemberType_GMT_UNKNOWN MemberType = 0 // 未知
  26. MemberType_GMT_ADMIN MemberType = 1 // 管理员
  27. MemberType_GMT_MEMBER MemberType = 2 // 成员
  28. )
  29. // Enum value maps for MemberType.
  30. var (
  31. MemberType_name = map[int32]string{
  32. 0: "GMT_UNKNOWN",
  33. 1: "GMT_ADMIN",
  34. 2: "GMT_MEMBER",
  35. }
  36. MemberType_value = map[string]int32{
  37. "GMT_UNKNOWN": 0,
  38. "GMT_ADMIN": 1,
  39. "GMT_MEMBER": 2,
  40. }
  41. )
  42. func (x MemberType) Enum() *MemberType {
  43. p := new(MemberType)
  44. *p = x
  45. return p
  46. }
  47. func (x MemberType) String() string {
  48. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  49. }
  50. func (MemberType) Descriptor() protoreflect.EnumDescriptor {
  51. return file_logic_ext_proto_enumTypes[0].Descriptor()
  52. }
  53. func (MemberType) Type() protoreflect.EnumType {
  54. return &file_logic_ext_proto_enumTypes[0]
  55. }
  56. func (x MemberType) Number() protoreflect.EnumNumber {
  57. return protoreflect.EnumNumber(x)
  58. }
  59. // Deprecated: Use MemberType.Descriptor instead.
  60. func (MemberType) EnumDescriptor() ([]byte, []int) {
  61. return file_logic_ext_proto_rawDescGZIP(), []int{0}
  62. }
  63. type RegisterDeviceReq struct {
  64. state protoimpl.MessageState
  65. sizeCache protoimpl.SizeCache
  66. unknownFields protoimpl.UnknownFields
  67. Type int32 `protobuf:"varint,2,opt,name=type,proto3" json:"type,omitempty"` // 设备类型
  68. Brand string `protobuf:"bytes,3,opt,name=brand,proto3" json:"brand,omitempty"` // 厂商
  69. Model string `protobuf:"bytes,4,opt,name=model,proto3" json:"model,omitempty"` // 机型
  70. SystemVersion string `protobuf:"bytes,5,opt,name=system_version,json=systemVersion,proto3" json:"system_version,omitempty"` // 系统版本
  71. SdkVersion string `protobuf:"bytes,6,opt,name=sdk_version,json=sdkVersion,proto3" json:"sdk_version,omitempty"` // sdk版本号
  72. }
  73. func (x *RegisterDeviceReq) Reset() {
  74. *x = RegisterDeviceReq{}
  75. if protoimpl.UnsafeEnabled {
  76. mi := &file_logic_ext_proto_msgTypes[0]
  77. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  78. ms.StoreMessageInfo(mi)
  79. }
  80. }
  81. func (x *RegisterDeviceReq) String() string {
  82. return protoimpl.X.MessageStringOf(x)
  83. }
  84. func (*RegisterDeviceReq) ProtoMessage() {}
  85. func (x *RegisterDeviceReq) ProtoReflect() protoreflect.Message {
  86. mi := &file_logic_ext_proto_msgTypes[0]
  87. if protoimpl.UnsafeEnabled && x != nil {
  88. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  89. if ms.LoadMessageInfo() == nil {
  90. ms.StoreMessageInfo(mi)
  91. }
  92. return ms
  93. }
  94. return mi.MessageOf(x)
  95. }
  96. // Deprecated: Use RegisterDeviceReq.ProtoReflect.Descriptor instead.
  97. func (*RegisterDeviceReq) Descriptor() ([]byte, []int) {
  98. return file_logic_ext_proto_rawDescGZIP(), []int{0}
  99. }
  100. func (x *RegisterDeviceReq) GetType() int32 {
  101. if x != nil {
  102. return x.Type
  103. }
  104. return 0
  105. }
  106. func (x *RegisterDeviceReq) GetBrand() string {
  107. if x != nil {
  108. return x.Brand
  109. }
  110. return ""
  111. }
  112. func (x *RegisterDeviceReq) GetModel() string {
  113. if x != nil {
  114. return x.Model
  115. }
  116. return ""
  117. }
  118. func (x *RegisterDeviceReq) GetSystemVersion() string {
  119. if x != nil {
  120. return x.SystemVersion
  121. }
  122. return ""
  123. }
  124. func (x *RegisterDeviceReq) GetSdkVersion() string {
  125. if x != nil {
  126. return x.SdkVersion
  127. }
  128. return ""
  129. }
  130. type RegisterDeviceResp struct {
  131. state protoimpl.MessageState
  132. sizeCache protoimpl.SizeCache
  133. unknownFields protoimpl.UnknownFields
  134. DeviceId int64 `protobuf:"varint,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"` // 设备id
  135. }
  136. func (x *RegisterDeviceResp) Reset() {
  137. *x = RegisterDeviceResp{}
  138. if protoimpl.UnsafeEnabled {
  139. mi := &file_logic_ext_proto_msgTypes[1]
  140. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  141. ms.StoreMessageInfo(mi)
  142. }
  143. }
  144. func (x *RegisterDeviceResp) String() string {
  145. return protoimpl.X.MessageStringOf(x)
  146. }
  147. func (*RegisterDeviceResp) ProtoMessage() {}
  148. func (x *RegisterDeviceResp) ProtoReflect() protoreflect.Message {
  149. mi := &file_logic_ext_proto_msgTypes[1]
  150. if protoimpl.UnsafeEnabled && x != nil {
  151. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  152. if ms.LoadMessageInfo() == nil {
  153. ms.StoreMessageInfo(mi)
  154. }
  155. return ms
  156. }
  157. return mi.MessageOf(x)
  158. }
  159. // Deprecated: Use RegisterDeviceResp.ProtoReflect.Descriptor instead.
  160. func (*RegisterDeviceResp) Descriptor() ([]byte, []int) {
  161. return file_logic_ext_proto_rawDescGZIP(), []int{1}
  162. }
  163. func (x *RegisterDeviceResp) GetDeviceId() int64 {
  164. if x != nil {
  165. return x.DeviceId
  166. }
  167. return 0
  168. }
  169. type SendMessageReq struct {
  170. state protoimpl.MessageState
  171. sizeCache protoimpl.SizeCache
  172. unknownFields protoimpl.UnknownFields
  173. ReceiverType ReceiverType `protobuf:"varint,1,opt,name=receiver_type,json=receiverType,proto3,enum=pb.ReceiverType" json:"receiver_type,omitempty"` // 接收者类型,1:user;2:group
  174. ReceiverId int64 `protobuf:"varint,2,opt,name=receiver_id,json=receiverId,proto3" json:"receiver_id,omitempty"` // 用户id或者群组id
  175. ToUserIds []int64 `protobuf:"varint,3,rep,packed,name=to_user_ids,json=toUserIds,proto3" json:"to_user_ids,omitempty"` // 需要@的用户id列表
  176. MessageType MessageType `protobuf:"varint,4,opt,name=message_type,json=messageType,proto3,enum=pb.MessageType" json:"message_type,omitempty"` // 消息类型
  177. MessageContent []byte `protobuf:"bytes,5,opt,name=message_content,json=messageContent,proto3" json:"message_content,omitempty"` // 消息内容
  178. SendTime int64 `protobuf:"varint,6,opt,name=send_time,json=sendTime,proto3" json:"send_time,omitempty"` // 消息发送时间戳,精确到毫秒
  179. IsPersist bool `protobuf:"varint,7,opt,name=is_persist,json=isPersist,proto3" json:"is_persist,omitempty"` // 是否将消息持久化到数据库
  180. MessageContentBack string `protobuf:"bytes,8,opt,name=message_content_back,json=messageContentBack,proto3" json:"message_content_back,omitempty"`
  181. }
  182. func (x *SendMessageReq) Reset() {
  183. *x = SendMessageReq{}
  184. if protoimpl.UnsafeEnabled {
  185. mi := &file_logic_ext_proto_msgTypes[2]
  186. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  187. ms.StoreMessageInfo(mi)
  188. }
  189. }
  190. func (x *SendMessageReq) String() string {
  191. return protoimpl.X.MessageStringOf(x)
  192. }
  193. func (*SendMessageReq) ProtoMessage() {}
  194. func (x *SendMessageReq) ProtoReflect() protoreflect.Message {
  195. mi := &file_logic_ext_proto_msgTypes[2]
  196. if protoimpl.UnsafeEnabled && x != nil {
  197. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  198. if ms.LoadMessageInfo() == nil {
  199. ms.StoreMessageInfo(mi)
  200. }
  201. return ms
  202. }
  203. return mi.MessageOf(x)
  204. }
  205. // Deprecated: Use SendMessageReq.ProtoReflect.Descriptor instead.
  206. func (*SendMessageReq) Descriptor() ([]byte, []int) {
  207. return file_logic_ext_proto_rawDescGZIP(), []int{2}
  208. }
  209. func (x *SendMessageReq) GetReceiverType() ReceiverType {
  210. if x != nil {
  211. return x.ReceiverType
  212. }
  213. return ReceiverType_RT_UNKNOWN
  214. }
  215. func (x *SendMessageReq) GetReceiverId() int64 {
  216. if x != nil {
  217. return x.ReceiverId
  218. }
  219. return 0
  220. }
  221. func (x *SendMessageReq) GetToUserIds() []int64 {
  222. if x != nil {
  223. return x.ToUserIds
  224. }
  225. return nil
  226. }
  227. func (x *SendMessageReq) GetMessageType() MessageType {
  228. if x != nil {
  229. return x.MessageType
  230. }
  231. return MessageType_MT_UNKNOWN
  232. }
  233. func (x *SendMessageReq) GetMessageContent() []byte {
  234. if x != nil {
  235. return x.MessageContent
  236. }
  237. return nil
  238. }
  239. func (x *SendMessageReq) GetSendTime() int64 {
  240. if x != nil {
  241. return x.SendTime
  242. }
  243. return 0
  244. }
  245. func (x *SendMessageReq) GetIsPersist() bool {
  246. if x != nil {
  247. return x.IsPersist
  248. }
  249. return false
  250. }
  251. func (x *SendMessageReq) GetMessageContentBack() string {
  252. if x != nil {
  253. return x.MessageContentBack
  254. }
  255. return ""
  256. }
  257. type SendMessageResp struct {
  258. state protoimpl.MessageState
  259. sizeCache protoimpl.SizeCache
  260. unknownFields protoimpl.UnknownFields
  261. Seq int64 `protobuf:"varint,1,opt,name=seq,proto3" json:"seq,omitempty"` // 消息序列号
  262. }
  263. func (x *SendMessageResp) Reset() {
  264. *x = SendMessageResp{}
  265. if protoimpl.UnsafeEnabled {
  266. mi := &file_logic_ext_proto_msgTypes[3]
  267. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  268. ms.StoreMessageInfo(mi)
  269. }
  270. }
  271. func (x *SendMessageResp) String() string {
  272. return protoimpl.X.MessageStringOf(x)
  273. }
  274. func (*SendMessageResp) ProtoMessage() {}
  275. func (x *SendMessageResp) ProtoReflect() protoreflect.Message {
  276. mi := &file_logic_ext_proto_msgTypes[3]
  277. if protoimpl.UnsafeEnabled && x != nil {
  278. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  279. if ms.LoadMessageInfo() == nil {
  280. ms.StoreMessageInfo(mi)
  281. }
  282. return ms
  283. }
  284. return mi.MessageOf(x)
  285. }
  286. // Deprecated: Use SendMessageResp.ProtoReflect.Descriptor instead.
  287. func (*SendMessageResp) Descriptor() ([]byte, []int) {
  288. return file_logic_ext_proto_rawDescGZIP(), []int{3}
  289. }
  290. func (x *SendMessageResp) GetSeq() int64 {
  291. if x != nil {
  292. return x.Seq
  293. }
  294. return 0
  295. }
  296. type PushRoomReq struct {
  297. state protoimpl.MessageState
  298. sizeCache protoimpl.SizeCache
  299. unknownFields protoimpl.UnknownFields
  300. RoomId int64 `protobuf:"varint,1,opt,name=room_id,json=roomId,proto3" json:"room_id,omitempty"` // 房间id
  301. MessageType MessageType `protobuf:"varint,2,opt,name=message_type,json=messageType,proto3,enum=pb.MessageType" json:"message_type,omitempty"` // 消息类型
  302. MessageContent []byte `protobuf:"bytes,3,opt,name=message_content,json=messageContent,proto3" json:"message_content,omitempty"` // 消息内容
  303. SendTime int64 `protobuf:"varint,4,opt,name=send_time,json=sendTime,proto3" json:"send_time,omitempty"` // 消息发送时间戳,精确到毫秒
  304. IsPersist bool `protobuf:"varint,5,opt,name=is_persist,json=isPersist,proto3" json:"is_persist,omitempty"` // 是否将消息持久化
  305. IsPriority bool `protobuf:"varint,6,opt,name=is_priority,json=isPriority,proto3" json:"is_priority,omitempty"` // 是否优先推送
  306. }
  307. func (x *PushRoomReq) Reset() {
  308. *x = PushRoomReq{}
  309. if protoimpl.UnsafeEnabled {
  310. mi := &file_logic_ext_proto_msgTypes[4]
  311. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  312. ms.StoreMessageInfo(mi)
  313. }
  314. }
  315. func (x *PushRoomReq) String() string {
  316. return protoimpl.X.MessageStringOf(x)
  317. }
  318. func (*PushRoomReq) ProtoMessage() {}
  319. func (x *PushRoomReq) ProtoReflect() protoreflect.Message {
  320. mi := &file_logic_ext_proto_msgTypes[4]
  321. if protoimpl.UnsafeEnabled && x != nil {
  322. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  323. if ms.LoadMessageInfo() == nil {
  324. ms.StoreMessageInfo(mi)
  325. }
  326. return ms
  327. }
  328. return mi.MessageOf(x)
  329. }
  330. // Deprecated: Use PushRoomReq.ProtoReflect.Descriptor instead.
  331. func (*PushRoomReq) Descriptor() ([]byte, []int) {
  332. return file_logic_ext_proto_rawDescGZIP(), []int{4}
  333. }
  334. func (x *PushRoomReq) GetRoomId() int64 {
  335. if x != nil {
  336. return x.RoomId
  337. }
  338. return 0
  339. }
  340. func (x *PushRoomReq) GetMessageType() MessageType {
  341. if x != nil {
  342. return x.MessageType
  343. }
  344. return MessageType_MT_UNKNOWN
  345. }
  346. func (x *PushRoomReq) GetMessageContent() []byte {
  347. if x != nil {
  348. return x.MessageContent
  349. }
  350. return nil
  351. }
  352. func (x *PushRoomReq) GetSendTime() int64 {
  353. if x != nil {
  354. return x.SendTime
  355. }
  356. return 0
  357. }
  358. func (x *PushRoomReq) GetIsPersist() bool {
  359. if x != nil {
  360. return x.IsPersist
  361. }
  362. return false
  363. }
  364. func (x *PushRoomReq) GetIsPriority() bool {
  365. if x != nil {
  366. return x.IsPriority
  367. }
  368. return false
  369. }
  370. type AddFriendReq struct {
  371. state protoimpl.MessageState
  372. sizeCache protoimpl.SizeCache
  373. unknownFields protoimpl.UnknownFields
  374. FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 用户id
  375. Remarks string `protobuf:"bytes,2,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  376. Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` // 描述
  377. }
  378. func (x *AddFriendReq) Reset() {
  379. *x = AddFriendReq{}
  380. if protoimpl.UnsafeEnabled {
  381. mi := &file_logic_ext_proto_msgTypes[5]
  382. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  383. ms.StoreMessageInfo(mi)
  384. }
  385. }
  386. func (x *AddFriendReq) String() string {
  387. return protoimpl.X.MessageStringOf(x)
  388. }
  389. func (*AddFriendReq) ProtoMessage() {}
  390. func (x *AddFriendReq) ProtoReflect() protoreflect.Message {
  391. mi := &file_logic_ext_proto_msgTypes[5]
  392. if protoimpl.UnsafeEnabled && x != nil {
  393. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  394. if ms.LoadMessageInfo() == nil {
  395. ms.StoreMessageInfo(mi)
  396. }
  397. return ms
  398. }
  399. return mi.MessageOf(x)
  400. }
  401. // Deprecated: Use AddFriendReq.ProtoReflect.Descriptor instead.
  402. func (*AddFriendReq) Descriptor() ([]byte, []int) {
  403. return file_logic_ext_proto_rawDescGZIP(), []int{5}
  404. }
  405. func (x *AddFriendReq) GetFriendId() int64 {
  406. if x != nil {
  407. return x.FriendId
  408. }
  409. return 0
  410. }
  411. func (x *AddFriendReq) GetRemarks() string {
  412. if x != nil {
  413. return x.Remarks
  414. }
  415. return ""
  416. }
  417. func (x *AddFriendReq) GetDescription() string {
  418. if x != nil {
  419. return x.Description
  420. }
  421. return ""
  422. }
  423. type DeleteFriendReq struct {
  424. state protoimpl.MessageState
  425. sizeCache protoimpl.SizeCache
  426. unknownFields protoimpl.UnknownFields
  427. UserId int64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id
  428. }
  429. func (x *DeleteFriendReq) Reset() {
  430. *x = DeleteFriendReq{}
  431. if protoimpl.UnsafeEnabled {
  432. mi := &file_logic_ext_proto_msgTypes[6]
  433. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  434. ms.StoreMessageInfo(mi)
  435. }
  436. }
  437. func (x *DeleteFriendReq) String() string {
  438. return protoimpl.X.MessageStringOf(x)
  439. }
  440. func (*DeleteFriendReq) ProtoMessage() {}
  441. func (x *DeleteFriendReq) ProtoReflect() protoreflect.Message {
  442. mi := &file_logic_ext_proto_msgTypes[6]
  443. if protoimpl.UnsafeEnabled && x != nil {
  444. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  445. if ms.LoadMessageInfo() == nil {
  446. ms.StoreMessageInfo(mi)
  447. }
  448. return ms
  449. }
  450. return mi.MessageOf(x)
  451. }
  452. // Deprecated: Use DeleteFriendReq.ProtoReflect.Descriptor instead.
  453. func (*DeleteFriendReq) Descriptor() ([]byte, []int) {
  454. return file_logic_ext_proto_rawDescGZIP(), []int{6}
  455. }
  456. func (x *DeleteFriendReq) GetUserId() int64 {
  457. if x != nil {
  458. return x.UserId
  459. }
  460. return 0
  461. }
  462. type AgreeAddFriendReq struct {
  463. state protoimpl.MessageState
  464. sizeCache protoimpl.SizeCache
  465. unknownFields protoimpl.UnknownFields
  466. UserId int64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id
  467. Remarks string `protobuf:"bytes,2,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  468. }
  469. func (x *AgreeAddFriendReq) Reset() {
  470. *x = AgreeAddFriendReq{}
  471. if protoimpl.UnsafeEnabled {
  472. mi := &file_logic_ext_proto_msgTypes[7]
  473. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  474. ms.StoreMessageInfo(mi)
  475. }
  476. }
  477. func (x *AgreeAddFriendReq) String() string {
  478. return protoimpl.X.MessageStringOf(x)
  479. }
  480. func (*AgreeAddFriendReq) ProtoMessage() {}
  481. func (x *AgreeAddFriendReq) ProtoReflect() protoreflect.Message {
  482. mi := &file_logic_ext_proto_msgTypes[7]
  483. if protoimpl.UnsafeEnabled && x != nil {
  484. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  485. if ms.LoadMessageInfo() == nil {
  486. ms.StoreMessageInfo(mi)
  487. }
  488. return ms
  489. }
  490. return mi.MessageOf(x)
  491. }
  492. // Deprecated: Use AgreeAddFriendReq.ProtoReflect.Descriptor instead.
  493. func (*AgreeAddFriendReq) Descriptor() ([]byte, []int) {
  494. return file_logic_ext_proto_rawDescGZIP(), []int{7}
  495. }
  496. func (x *AgreeAddFriendReq) GetUserId() int64 {
  497. if x != nil {
  498. return x.UserId
  499. }
  500. return 0
  501. }
  502. func (x *AgreeAddFriendReq) GetRemarks() string {
  503. if x != nil {
  504. return x.Remarks
  505. }
  506. return ""
  507. }
  508. type SetFriendReq struct {
  509. state protoimpl.MessageState
  510. sizeCache protoimpl.SizeCache
  511. unknownFields protoimpl.UnknownFields
  512. FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 好友id
  513. Remarks string `protobuf:"bytes,2,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  514. Extra string `protobuf:"bytes,8,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  515. }
  516. func (x *SetFriendReq) Reset() {
  517. *x = SetFriendReq{}
  518. if protoimpl.UnsafeEnabled {
  519. mi := &file_logic_ext_proto_msgTypes[8]
  520. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  521. ms.StoreMessageInfo(mi)
  522. }
  523. }
  524. func (x *SetFriendReq) String() string {
  525. return protoimpl.X.MessageStringOf(x)
  526. }
  527. func (*SetFriendReq) ProtoMessage() {}
  528. func (x *SetFriendReq) ProtoReflect() protoreflect.Message {
  529. mi := &file_logic_ext_proto_msgTypes[8]
  530. if protoimpl.UnsafeEnabled && x != nil {
  531. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  532. if ms.LoadMessageInfo() == nil {
  533. ms.StoreMessageInfo(mi)
  534. }
  535. return ms
  536. }
  537. return mi.MessageOf(x)
  538. }
  539. // Deprecated: Use SetFriendReq.ProtoReflect.Descriptor instead.
  540. func (*SetFriendReq) Descriptor() ([]byte, []int) {
  541. return file_logic_ext_proto_rawDescGZIP(), []int{8}
  542. }
  543. func (x *SetFriendReq) GetFriendId() int64 {
  544. if x != nil {
  545. return x.FriendId
  546. }
  547. return 0
  548. }
  549. func (x *SetFriendReq) GetRemarks() string {
  550. if x != nil {
  551. return x.Remarks
  552. }
  553. return ""
  554. }
  555. func (x *SetFriendReq) GetExtra() string {
  556. if x != nil {
  557. return x.Extra
  558. }
  559. return ""
  560. }
  561. type SetFriendResp struct {
  562. state protoimpl.MessageState
  563. sizeCache protoimpl.SizeCache
  564. unknownFields protoimpl.UnknownFields
  565. FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 好友id
  566. Remarks string `protobuf:"bytes,2,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  567. Extra string `protobuf:"bytes,8,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  568. }
  569. func (x *SetFriendResp) Reset() {
  570. *x = SetFriendResp{}
  571. if protoimpl.UnsafeEnabled {
  572. mi := &file_logic_ext_proto_msgTypes[9]
  573. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  574. ms.StoreMessageInfo(mi)
  575. }
  576. }
  577. func (x *SetFriendResp) String() string {
  578. return protoimpl.X.MessageStringOf(x)
  579. }
  580. func (*SetFriendResp) ProtoMessage() {}
  581. func (x *SetFriendResp) ProtoReflect() protoreflect.Message {
  582. mi := &file_logic_ext_proto_msgTypes[9]
  583. if protoimpl.UnsafeEnabled && x != nil {
  584. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  585. if ms.LoadMessageInfo() == nil {
  586. ms.StoreMessageInfo(mi)
  587. }
  588. return ms
  589. }
  590. return mi.MessageOf(x)
  591. }
  592. // Deprecated: Use SetFriendResp.ProtoReflect.Descriptor instead.
  593. func (*SetFriendResp) Descriptor() ([]byte, []int) {
  594. return file_logic_ext_proto_rawDescGZIP(), []int{9}
  595. }
  596. func (x *SetFriendResp) GetFriendId() int64 {
  597. if x != nil {
  598. return x.FriendId
  599. }
  600. return 0
  601. }
  602. func (x *SetFriendResp) GetRemarks() string {
  603. if x != nil {
  604. return x.Remarks
  605. }
  606. return ""
  607. }
  608. func (x *SetFriendResp) GetExtra() string {
  609. if x != nil {
  610. return x.Extra
  611. }
  612. return ""
  613. }
  614. type Friend struct {
  615. state protoimpl.MessageState
  616. sizeCache protoimpl.SizeCache
  617. unknownFields protoimpl.UnknownFields
  618. UserId int64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id
  619. PhoneNumber string `protobuf:"bytes,2,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"` // 电话号码
  620. Nickname string `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称
  621. Sex int32 `protobuf:"varint,4,opt,name=sex,proto3" json:"sex,omitempty"` // 性别
  622. AvatarUrl string `protobuf:"bytes,5,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像地址
  623. UserExtra string `protobuf:"bytes,6,opt,name=user_extra,json=userExtra,proto3" json:"user_extra,omitempty"` // 用户附加字段
  624. Remarks string `protobuf:"bytes,7,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  625. Extra string `protobuf:"bytes,8,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  626. }
  627. func (x *Friend) Reset() {
  628. *x = Friend{}
  629. if protoimpl.UnsafeEnabled {
  630. mi := &file_logic_ext_proto_msgTypes[10]
  631. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  632. ms.StoreMessageInfo(mi)
  633. }
  634. }
  635. func (x *Friend) String() string {
  636. return protoimpl.X.MessageStringOf(x)
  637. }
  638. func (*Friend) ProtoMessage() {}
  639. func (x *Friend) ProtoReflect() protoreflect.Message {
  640. mi := &file_logic_ext_proto_msgTypes[10]
  641. if protoimpl.UnsafeEnabled && x != nil {
  642. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  643. if ms.LoadMessageInfo() == nil {
  644. ms.StoreMessageInfo(mi)
  645. }
  646. return ms
  647. }
  648. return mi.MessageOf(x)
  649. }
  650. // Deprecated: Use Friend.ProtoReflect.Descriptor instead.
  651. func (*Friend) Descriptor() ([]byte, []int) {
  652. return file_logic_ext_proto_rawDescGZIP(), []int{10}
  653. }
  654. func (x *Friend) GetUserId() int64 {
  655. if x != nil {
  656. return x.UserId
  657. }
  658. return 0
  659. }
  660. func (x *Friend) GetPhoneNumber() string {
  661. if x != nil {
  662. return x.PhoneNumber
  663. }
  664. return ""
  665. }
  666. func (x *Friend) GetNickname() string {
  667. if x != nil {
  668. return x.Nickname
  669. }
  670. return ""
  671. }
  672. func (x *Friend) GetSex() int32 {
  673. if x != nil {
  674. return x.Sex
  675. }
  676. return 0
  677. }
  678. func (x *Friend) GetAvatarUrl() string {
  679. if x != nil {
  680. return x.AvatarUrl
  681. }
  682. return ""
  683. }
  684. func (x *Friend) GetUserExtra() string {
  685. if x != nil {
  686. return x.UserExtra
  687. }
  688. return ""
  689. }
  690. func (x *Friend) GetRemarks() string {
  691. if x != nil {
  692. return x.Remarks
  693. }
  694. return ""
  695. }
  696. func (x *Friend) GetExtra() string {
  697. if x != nil {
  698. return x.Extra
  699. }
  700. return ""
  701. }
  702. type GetFriendsResp struct {
  703. state protoimpl.MessageState
  704. sizeCache protoimpl.SizeCache
  705. unknownFields protoimpl.UnknownFields
  706. Friends []*Friend `protobuf:"bytes,1,rep,name=friends,proto3" json:"friends,omitempty"`
  707. }
  708. func (x *GetFriendsResp) Reset() {
  709. *x = GetFriendsResp{}
  710. if protoimpl.UnsafeEnabled {
  711. mi := &file_logic_ext_proto_msgTypes[11]
  712. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  713. ms.StoreMessageInfo(mi)
  714. }
  715. }
  716. func (x *GetFriendsResp) String() string {
  717. return protoimpl.X.MessageStringOf(x)
  718. }
  719. func (*GetFriendsResp) ProtoMessage() {}
  720. func (x *GetFriendsResp) ProtoReflect() protoreflect.Message {
  721. mi := &file_logic_ext_proto_msgTypes[11]
  722. if protoimpl.UnsafeEnabled && x != nil {
  723. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  724. if ms.LoadMessageInfo() == nil {
  725. ms.StoreMessageInfo(mi)
  726. }
  727. return ms
  728. }
  729. return mi.MessageOf(x)
  730. }
  731. // Deprecated: Use GetFriendsResp.ProtoReflect.Descriptor instead.
  732. func (*GetFriendsResp) Descriptor() ([]byte, []int) {
  733. return file_logic_ext_proto_rawDescGZIP(), []int{11}
  734. }
  735. func (x *GetFriendsResp) GetFriends() []*Friend {
  736. if x != nil {
  737. return x.Friends
  738. }
  739. return nil
  740. }
  741. type CreateGroupReq struct {
  742. state protoimpl.MessageState
  743. sizeCache protoimpl.SizeCache
  744. unknownFields protoimpl.UnknownFields
  745. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // 名称
  746. AvatarUrl string `protobuf:"bytes,2,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像
  747. Introduction string `protobuf:"bytes,3,opt,name=introduction,proto3" json:"introduction,omitempty"` // 简介
  748. Extra string `protobuf:"bytes,4,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  749. MemberIds []int64 `protobuf:"varint,5,rep,packed,name=member_ids,json=memberIds,proto3" json:"member_ids,omitempty"` // 群组成员ID列表
  750. }
  751. func (x *CreateGroupReq) Reset() {
  752. *x = CreateGroupReq{}
  753. if protoimpl.UnsafeEnabled {
  754. mi := &file_logic_ext_proto_msgTypes[12]
  755. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  756. ms.StoreMessageInfo(mi)
  757. }
  758. }
  759. func (x *CreateGroupReq) String() string {
  760. return protoimpl.X.MessageStringOf(x)
  761. }
  762. func (*CreateGroupReq) ProtoMessage() {}
  763. func (x *CreateGroupReq) ProtoReflect() protoreflect.Message {
  764. mi := &file_logic_ext_proto_msgTypes[12]
  765. if protoimpl.UnsafeEnabled && x != nil {
  766. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  767. if ms.LoadMessageInfo() == nil {
  768. ms.StoreMessageInfo(mi)
  769. }
  770. return ms
  771. }
  772. return mi.MessageOf(x)
  773. }
  774. // Deprecated: Use CreateGroupReq.ProtoReflect.Descriptor instead.
  775. func (*CreateGroupReq) Descriptor() ([]byte, []int) {
  776. return file_logic_ext_proto_rawDescGZIP(), []int{12}
  777. }
  778. func (x *CreateGroupReq) GetName() string {
  779. if x != nil {
  780. return x.Name
  781. }
  782. return ""
  783. }
  784. func (x *CreateGroupReq) GetAvatarUrl() string {
  785. if x != nil {
  786. return x.AvatarUrl
  787. }
  788. return ""
  789. }
  790. func (x *CreateGroupReq) GetIntroduction() string {
  791. if x != nil {
  792. return x.Introduction
  793. }
  794. return ""
  795. }
  796. func (x *CreateGroupReq) GetExtra() string {
  797. if x != nil {
  798. return x.Extra
  799. }
  800. return ""
  801. }
  802. func (x *CreateGroupReq) GetMemberIds() []int64 {
  803. if x != nil {
  804. return x.MemberIds
  805. }
  806. return nil
  807. }
  808. type CreateGroupResp struct {
  809. state protoimpl.MessageState
  810. sizeCache protoimpl.SizeCache
  811. unknownFields protoimpl.UnknownFields
  812. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id
  813. }
  814. func (x *CreateGroupResp) Reset() {
  815. *x = CreateGroupResp{}
  816. if protoimpl.UnsafeEnabled {
  817. mi := &file_logic_ext_proto_msgTypes[13]
  818. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  819. ms.StoreMessageInfo(mi)
  820. }
  821. }
  822. func (x *CreateGroupResp) String() string {
  823. return protoimpl.X.MessageStringOf(x)
  824. }
  825. func (*CreateGroupResp) ProtoMessage() {}
  826. func (x *CreateGroupResp) ProtoReflect() protoreflect.Message {
  827. mi := &file_logic_ext_proto_msgTypes[13]
  828. if protoimpl.UnsafeEnabled && x != nil {
  829. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  830. if ms.LoadMessageInfo() == nil {
  831. ms.StoreMessageInfo(mi)
  832. }
  833. return ms
  834. }
  835. return mi.MessageOf(x)
  836. }
  837. // Deprecated: Use CreateGroupResp.ProtoReflect.Descriptor instead.
  838. func (*CreateGroupResp) Descriptor() ([]byte, []int) {
  839. return file_logic_ext_proto_rawDescGZIP(), []int{13}
  840. }
  841. func (x *CreateGroupResp) GetGroupId() int64 {
  842. if x != nil {
  843. return x.GroupId
  844. }
  845. return 0
  846. }
  847. type UpdateGroupReq struct {
  848. state protoimpl.MessageState
  849. sizeCache protoimpl.SizeCache
  850. unknownFields protoimpl.UnknownFields
  851. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id
  852. AvatarUrl string `protobuf:"bytes,2,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像
  853. Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // 名称
  854. Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"` // 简介
  855. Extra string `protobuf:"bytes,5,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  856. }
  857. func (x *UpdateGroupReq) Reset() {
  858. *x = UpdateGroupReq{}
  859. if protoimpl.UnsafeEnabled {
  860. mi := &file_logic_ext_proto_msgTypes[14]
  861. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  862. ms.StoreMessageInfo(mi)
  863. }
  864. }
  865. func (x *UpdateGroupReq) String() string {
  866. return protoimpl.X.MessageStringOf(x)
  867. }
  868. func (*UpdateGroupReq) ProtoMessage() {}
  869. func (x *UpdateGroupReq) ProtoReflect() protoreflect.Message {
  870. mi := &file_logic_ext_proto_msgTypes[14]
  871. if protoimpl.UnsafeEnabled && x != nil {
  872. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  873. if ms.LoadMessageInfo() == nil {
  874. ms.StoreMessageInfo(mi)
  875. }
  876. return ms
  877. }
  878. return mi.MessageOf(x)
  879. }
  880. // Deprecated: Use UpdateGroupReq.ProtoReflect.Descriptor instead.
  881. func (*UpdateGroupReq) Descriptor() ([]byte, []int) {
  882. return file_logic_ext_proto_rawDescGZIP(), []int{14}
  883. }
  884. func (x *UpdateGroupReq) GetGroupId() int64 {
  885. if x != nil {
  886. return x.GroupId
  887. }
  888. return 0
  889. }
  890. func (x *UpdateGroupReq) GetAvatarUrl() string {
  891. if x != nil {
  892. return x.AvatarUrl
  893. }
  894. return ""
  895. }
  896. func (x *UpdateGroupReq) GetName() string {
  897. if x != nil {
  898. return x.Name
  899. }
  900. return ""
  901. }
  902. func (x *UpdateGroupReq) GetIntroduction() string {
  903. if x != nil {
  904. return x.Introduction
  905. }
  906. return ""
  907. }
  908. func (x *UpdateGroupReq) GetExtra() string {
  909. if x != nil {
  910. return x.Extra
  911. }
  912. return ""
  913. }
  914. type GetGroupReq struct {
  915. state protoimpl.MessageState
  916. sizeCache protoimpl.SizeCache
  917. unknownFields protoimpl.UnknownFields
  918. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
  919. }
  920. func (x *GetGroupReq) Reset() {
  921. *x = GetGroupReq{}
  922. if protoimpl.UnsafeEnabled {
  923. mi := &file_logic_ext_proto_msgTypes[15]
  924. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  925. ms.StoreMessageInfo(mi)
  926. }
  927. }
  928. func (x *GetGroupReq) String() string {
  929. return protoimpl.X.MessageStringOf(x)
  930. }
  931. func (*GetGroupReq) ProtoMessage() {}
  932. func (x *GetGroupReq) ProtoReflect() protoreflect.Message {
  933. mi := &file_logic_ext_proto_msgTypes[15]
  934. if protoimpl.UnsafeEnabled && x != nil {
  935. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  936. if ms.LoadMessageInfo() == nil {
  937. ms.StoreMessageInfo(mi)
  938. }
  939. return ms
  940. }
  941. return mi.MessageOf(x)
  942. }
  943. // Deprecated: Use GetGroupReq.ProtoReflect.Descriptor instead.
  944. func (*GetGroupReq) Descriptor() ([]byte, []int) {
  945. return file_logic_ext_proto_rawDescGZIP(), []int{15}
  946. }
  947. func (x *GetGroupReq) GetGroupId() int64 {
  948. if x != nil {
  949. return x.GroupId
  950. }
  951. return 0
  952. }
  953. type GetGroupResp struct {
  954. state protoimpl.MessageState
  955. sizeCache protoimpl.SizeCache
  956. unknownFields protoimpl.UnknownFields
  957. Group *Group `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
  958. }
  959. func (x *GetGroupResp) Reset() {
  960. *x = GetGroupResp{}
  961. if protoimpl.UnsafeEnabled {
  962. mi := &file_logic_ext_proto_msgTypes[16]
  963. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  964. ms.StoreMessageInfo(mi)
  965. }
  966. }
  967. func (x *GetGroupResp) String() string {
  968. return protoimpl.X.MessageStringOf(x)
  969. }
  970. func (*GetGroupResp) ProtoMessage() {}
  971. func (x *GetGroupResp) ProtoReflect() protoreflect.Message {
  972. mi := &file_logic_ext_proto_msgTypes[16]
  973. if protoimpl.UnsafeEnabled && x != nil {
  974. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  975. if ms.LoadMessageInfo() == nil {
  976. ms.StoreMessageInfo(mi)
  977. }
  978. return ms
  979. }
  980. return mi.MessageOf(x)
  981. }
  982. // Deprecated: Use GetGroupResp.ProtoReflect.Descriptor instead.
  983. func (*GetGroupResp) Descriptor() ([]byte, []int) {
  984. return file_logic_ext_proto_rawDescGZIP(), []int{16}
  985. }
  986. func (x *GetGroupResp) GetGroup() *Group {
  987. if x != nil {
  988. return x.Group
  989. }
  990. return nil
  991. }
  992. type Group struct {
  993. state protoimpl.MessageState
  994. sizeCache protoimpl.SizeCache
  995. unknownFields protoimpl.UnknownFields
  996. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id
  997. Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // 名称
  998. AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像
  999. Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"` // 简介
  1000. UserMum int32 `protobuf:"varint,5,opt,name=user_mum,json=userMum,proto3" json:"user_mum,omitempty"` // 用户数
  1001. Extra string `protobuf:"bytes,6,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  1002. CreateTime int64 `protobuf:"varint,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` // 创建时间
  1003. UpdateTime int64 `protobuf:"varint,8,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` // 更新时间
  1004. }
  1005. func (x *Group) Reset() {
  1006. *x = Group{}
  1007. if protoimpl.UnsafeEnabled {
  1008. mi := &file_logic_ext_proto_msgTypes[17]
  1009. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1010. ms.StoreMessageInfo(mi)
  1011. }
  1012. }
  1013. func (x *Group) String() string {
  1014. return protoimpl.X.MessageStringOf(x)
  1015. }
  1016. func (*Group) ProtoMessage() {}
  1017. func (x *Group) ProtoReflect() protoreflect.Message {
  1018. mi := &file_logic_ext_proto_msgTypes[17]
  1019. if protoimpl.UnsafeEnabled && x != nil {
  1020. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1021. if ms.LoadMessageInfo() == nil {
  1022. ms.StoreMessageInfo(mi)
  1023. }
  1024. return ms
  1025. }
  1026. return mi.MessageOf(x)
  1027. }
  1028. // Deprecated: Use Group.ProtoReflect.Descriptor instead.
  1029. func (*Group) Descriptor() ([]byte, []int) {
  1030. return file_logic_ext_proto_rawDescGZIP(), []int{17}
  1031. }
  1032. func (x *Group) GetGroupId() int64 {
  1033. if x != nil {
  1034. return x.GroupId
  1035. }
  1036. return 0
  1037. }
  1038. func (x *Group) GetName() string {
  1039. if x != nil {
  1040. return x.Name
  1041. }
  1042. return ""
  1043. }
  1044. func (x *Group) GetAvatarUrl() string {
  1045. if x != nil {
  1046. return x.AvatarUrl
  1047. }
  1048. return ""
  1049. }
  1050. func (x *Group) GetIntroduction() string {
  1051. if x != nil {
  1052. return x.Introduction
  1053. }
  1054. return ""
  1055. }
  1056. func (x *Group) GetUserMum() int32 {
  1057. if x != nil {
  1058. return x.UserMum
  1059. }
  1060. return 0
  1061. }
  1062. func (x *Group) GetExtra() string {
  1063. if x != nil {
  1064. return x.Extra
  1065. }
  1066. return ""
  1067. }
  1068. func (x *Group) GetCreateTime() int64 {
  1069. if x != nil {
  1070. return x.CreateTime
  1071. }
  1072. return 0
  1073. }
  1074. func (x *Group) GetUpdateTime() int64 {
  1075. if x != nil {
  1076. return x.UpdateTime
  1077. }
  1078. return 0
  1079. }
  1080. type GetGroupsResp struct {
  1081. state protoimpl.MessageState
  1082. sizeCache protoimpl.SizeCache
  1083. unknownFields protoimpl.UnknownFields
  1084. Groups []*Group `protobuf:"bytes,1,rep,name=groups,proto3" json:"groups,omitempty"`
  1085. }
  1086. func (x *GetGroupsResp) Reset() {
  1087. *x = GetGroupsResp{}
  1088. if protoimpl.UnsafeEnabled {
  1089. mi := &file_logic_ext_proto_msgTypes[18]
  1090. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1091. ms.StoreMessageInfo(mi)
  1092. }
  1093. }
  1094. func (x *GetGroupsResp) String() string {
  1095. return protoimpl.X.MessageStringOf(x)
  1096. }
  1097. func (*GetGroupsResp) ProtoMessage() {}
  1098. func (x *GetGroupsResp) ProtoReflect() protoreflect.Message {
  1099. mi := &file_logic_ext_proto_msgTypes[18]
  1100. if protoimpl.UnsafeEnabled && x != nil {
  1101. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1102. if ms.LoadMessageInfo() == nil {
  1103. ms.StoreMessageInfo(mi)
  1104. }
  1105. return ms
  1106. }
  1107. return mi.MessageOf(x)
  1108. }
  1109. // Deprecated: Use GetGroupsResp.ProtoReflect.Descriptor instead.
  1110. func (*GetGroupsResp) Descriptor() ([]byte, []int) {
  1111. return file_logic_ext_proto_rawDescGZIP(), []int{18}
  1112. }
  1113. func (x *GetGroupsResp) GetGroups() []*Group {
  1114. if x != nil {
  1115. return x.Groups
  1116. }
  1117. return nil
  1118. }
  1119. type AddGroupMembersReq struct {
  1120. state protoimpl.MessageState
  1121. sizeCache protoimpl.SizeCache
  1122. unknownFields protoimpl.UnknownFields
  1123. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id
  1124. UserIds []int64 `protobuf:"varint,2,rep,packed,name=user_ids,json=userIds,proto3" json:"user_ids,omitempty"` // 用户id列表
  1125. }
  1126. func (x *AddGroupMembersReq) Reset() {
  1127. *x = AddGroupMembersReq{}
  1128. if protoimpl.UnsafeEnabled {
  1129. mi := &file_logic_ext_proto_msgTypes[19]
  1130. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1131. ms.StoreMessageInfo(mi)
  1132. }
  1133. }
  1134. func (x *AddGroupMembersReq) String() string {
  1135. return protoimpl.X.MessageStringOf(x)
  1136. }
  1137. func (*AddGroupMembersReq) ProtoMessage() {}
  1138. func (x *AddGroupMembersReq) ProtoReflect() protoreflect.Message {
  1139. mi := &file_logic_ext_proto_msgTypes[19]
  1140. if protoimpl.UnsafeEnabled && x != nil {
  1141. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1142. if ms.LoadMessageInfo() == nil {
  1143. ms.StoreMessageInfo(mi)
  1144. }
  1145. return ms
  1146. }
  1147. return mi.MessageOf(x)
  1148. }
  1149. // Deprecated: Use AddGroupMembersReq.ProtoReflect.Descriptor instead.
  1150. func (*AddGroupMembersReq) Descriptor() ([]byte, []int) {
  1151. return file_logic_ext_proto_rawDescGZIP(), []int{19}
  1152. }
  1153. func (x *AddGroupMembersReq) GetGroupId() int64 {
  1154. if x != nil {
  1155. return x.GroupId
  1156. }
  1157. return 0
  1158. }
  1159. func (x *AddGroupMembersReq) GetUserIds() []int64 {
  1160. if x != nil {
  1161. return x.UserIds
  1162. }
  1163. return nil
  1164. }
  1165. type AddGroupMembersResp struct {
  1166. state protoimpl.MessageState
  1167. sizeCache protoimpl.SizeCache
  1168. unknownFields protoimpl.UnknownFields
  1169. UserIds []int64 `protobuf:"varint,1,rep,packed,name=user_ids,json=userIds,proto3" json:"user_ids,omitempty"` // 已经在群组的用户id列表
  1170. }
  1171. func (x *AddGroupMembersResp) Reset() {
  1172. *x = AddGroupMembersResp{}
  1173. if protoimpl.UnsafeEnabled {
  1174. mi := &file_logic_ext_proto_msgTypes[20]
  1175. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1176. ms.StoreMessageInfo(mi)
  1177. }
  1178. }
  1179. func (x *AddGroupMembersResp) String() string {
  1180. return protoimpl.X.MessageStringOf(x)
  1181. }
  1182. func (*AddGroupMembersResp) ProtoMessage() {}
  1183. func (x *AddGroupMembersResp) ProtoReflect() protoreflect.Message {
  1184. mi := &file_logic_ext_proto_msgTypes[20]
  1185. if protoimpl.UnsafeEnabled && x != nil {
  1186. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1187. if ms.LoadMessageInfo() == nil {
  1188. ms.StoreMessageInfo(mi)
  1189. }
  1190. return ms
  1191. }
  1192. return mi.MessageOf(x)
  1193. }
  1194. // Deprecated: Use AddGroupMembersResp.ProtoReflect.Descriptor instead.
  1195. func (*AddGroupMembersResp) Descriptor() ([]byte, []int) {
  1196. return file_logic_ext_proto_rawDescGZIP(), []int{20}
  1197. }
  1198. func (x *AddGroupMembersResp) GetUserIds() []int64 {
  1199. if x != nil {
  1200. return x.UserIds
  1201. }
  1202. return nil
  1203. }
  1204. type UpdateGroupMemberReq struct {
  1205. state protoimpl.MessageState
  1206. sizeCache protoimpl.SizeCache
  1207. unknownFields protoimpl.UnknownFields
  1208. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id
  1209. UserId int64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id
  1210. MemberType MemberType `protobuf:"varint,3,opt,name=member_type,json=memberType,proto3,enum=pb.MemberType" json:"member_type,omitempty"` // 成员类型
  1211. Remarks string `protobuf:"bytes,4,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  1212. Extra string `protobuf:"bytes,5,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段
  1213. }
  1214. func (x *UpdateGroupMemberReq) Reset() {
  1215. *x = UpdateGroupMemberReq{}
  1216. if protoimpl.UnsafeEnabled {
  1217. mi := &file_logic_ext_proto_msgTypes[21]
  1218. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1219. ms.StoreMessageInfo(mi)
  1220. }
  1221. }
  1222. func (x *UpdateGroupMemberReq) String() string {
  1223. return protoimpl.X.MessageStringOf(x)
  1224. }
  1225. func (*UpdateGroupMemberReq) ProtoMessage() {}
  1226. func (x *UpdateGroupMemberReq) ProtoReflect() protoreflect.Message {
  1227. mi := &file_logic_ext_proto_msgTypes[21]
  1228. if protoimpl.UnsafeEnabled && x != nil {
  1229. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1230. if ms.LoadMessageInfo() == nil {
  1231. ms.StoreMessageInfo(mi)
  1232. }
  1233. return ms
  1234. }
  1235. return mi.MessageOf(x)
  1236. }
  1237. // Deprecated: Use UpdateGroupMemberReq.ProtoReflect.Descriptor instead.
  1238. func (*UpdateGroupMemberReq) Descriptor() ([]byte, []int) {
  1239. return file_logic_ext_proto_rawDescGZIP(), []int{21}
  1240. }
  1241. func (x *UpdateGroupMemberReq) GetGroupId() int64 {
  1242. if x != nil {
  1243. return x.GroupId
  1244. }
  1245. return 0
  1246. }
  1247. func (x *UpdateGroupMemberReq) GetUserId() int64 {
  1248. if x != nil {
  1249. return x.UserId
  1250. }
  1251. return 0
  1252. }
  1253. func (x *UpdateGroupMemberReq) GetMemberType() MemberType {
  1254. if x != nil {
  1255. return x.MemberType
  1256. }
  1257. return MemberType_GMT_UNKNOWN
  1258. }
  1259. func (x *UpdateGroupMemberReq) GetRemarks() string {
  1260. if x != nil {
  1261. return x.Remarks
  1262. }
  1263. return ""
  1264. }
  1265. func (x *UpdateGroupMemberReq) GetExtra() string {
  1266. if x != nil {
  1267. return x.Extra
  1268. }
  1269. return ""
  1270. }
  1271. type DeleteGroupMemberReq struct {
  1272. state protoimpl.MessageState
  1273. sizeCache protoimpl.SizeCache
  1274. unknownFields protoimpl.UnknownFields
  1275. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id
  1276. UserId int64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id
  1277. }
  1278. func (x *DeleteGroupMemberReq) Reset() {
  1279. *x = DeleteGroupMemberReq{}
  1280. if protoimpl.UnsafeEnabled {
  1281. mi := &file_logic_ext_proto_msgTypes[22]
  1282. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1283. ms.StoreMessageInfo(mi)
  1284. }
  1285. }
  1286. func (x *DeleteGroupMemberReq) String() string {
  1287. return protoimpl.X.MessageStringOf(x)
  1288. }
  1289. func (*DeleteGroupMemberReq) ProtoMessage() {}
  1290. func (x *DeleteGroupMemberReq) ProtoReflect() protoreflect.Message {
  1291. mi := &file_logic_ext_proto_msgTypes[22]
  1292. if protoimpl.UnsafeEnabled && x != nil {
  1293. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1294. if ms.LoadMessageInfo() == nil {
  1295. ms.StoreMessageInfo(mi)
  1296. }
  1297. return ms
  1298. }
  1299. return mi.MessageOf(x)
  1300. }
  1301. // Deprecated: Use DeleteGroupMemberReq.ProtoReflect.Descriptor instead.
  1302. func (*DeleteGroupMemberReq) Descriptor() ([]byte, []int) {
  1303. return file_logic_ext_proto_rawDescGZIP(), []int{22}
  1304. }
  1305. func (x *DeleteGroupMemberReq) GetGroupId() int64 {
  1306. if x != nil {
  1307. return x.GroupId
  1308. }
  1309. return 0
  1310. }
  1311. func (x *DeleteGroupMemberReq) GetUserId() int64 {
  1312. if x != nil {
  1313. return x.UserId
  1314. }
  1315. return 0
  1316. }
  1317. type GetGroupMembersReq struct {
  1318. state protoimpl.MessageState
  1319. sizeCache protoimpl.SizeCache
  1320. unknownFields protoimpl.UnknownFields
  1321. GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
  1322. }
  1323. func (x *GetGroupMembersReq) Reset() {
  1324. *x = GetGroupMembersReq{}
  1325. if protoimpl.UnsafeEnabled {
  1326. mi := &file_logic_ext_proto_msgTypes[23]
  1327. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1328. ms.StoreMessageInfo(mi)
  1329. }
  1330. }
  1331. func (x *GetGroupMembersReq) String() string {
  1332. return protoimpl.X.MessageStringOf(x)
  1333. }
  1334. func (*GetGroupMembersReq) ProtoMessage() {}
  1335. func (x *GetGroupMembersReq) ProtoReflect() protoreflect.Message {
  1336. mi := &file_logic_ext_proto_msgTypes[23]
  1337. if protoimpl.UnsafeEnabled && x != nil {
  1338. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1339. if ms.LoadMessageInfo() == nil {
  1340. ms.StoreMessageInfo(mi)
  1341. }
  1342. return ms
  1343. }
  1344. return mi.MessageOf(x)
  1345. }
  1346. // Deprecated: Use GetGroupMembersReq.ProtoReflect.Descriptor instead.
  1347. func (*GetGroupMembersReq) Descriptor() ([]byte, []int) {
  1348. return file_logic_ext_proto_rawDescGZIP(), []int{23}
  1349. }
  1350. func (x *GetGroupMembersReq) GetGroupId() int64 {
  1351. if x != nil {
  1352. return x.GroupId
  1353. }
  1354. return 0
  1355. }
  1356. type GetGroupMembersResp struct {
  1357. state protoimpl.MessageState
  1358. sizeCache protoimpl.SizeCache
  1359. unknownFields protoimpl.UnknownFields
  1360. Members []*GroupMember `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
  1361. }
  1362. func (x *GetGroupMembersResp) Reset() {
  1363. *x = GetGroupMembersResp{}
  1364. if protoimpl.UnsafeEnabled {
  1365. mi := &file_logic_ext_proto_msgTypes[24]
  1366. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1367. ms.StoreMessageInfo(mi)
  1368. }
  1369. }
  1370. func (x *GetGroupMembersResp) String() string {
  1371. return protoimpl.X.MessageStringOf(x)
  1372. }
  1373. func (*GetGroupMembersResp) ProtoMessage() {}
  1374. func (x *GetGroupMembersResp) ProtoReflect() protoreflect.Message {
  1375. mi := &file_logic_ext_proto_msgTypes[24]
  1376. if protoimpl.UnsafeEnabled && x != nil {
  1377. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1378. if ms.LoadMessageInfo() == nil {
  1379. ms.StoreMessageInfo(mi)
  1380. }
  1381. return ms
  1382. }
  1383. return mi.MessageOf(x)
  1384. }
  1385. // Deprecated: Use GetGroupMembersResp.ProtoReflect.Descriptor instead.
  1386. func (*GetGroupMembersResp) Descriptor() ([]byte, []int) {
  1387. return file_logic_ext_proto_rawDescGZIP(), []int{24}
  1388. }
  1389. func (x *GetGroupMembersResp) GetMembers() []*GroupMember {
  1390. if x != nil {
  1391. return x.Members
  1392. }
  1393. return nil
  1394. }
  1395. type GroupMember struct {
  1396. state protoimpl.MessageState
  1397. sizeCache protoimpl.SizeCache
  1398. unknownFields protoimpl.UnknownFields
  1399. UserId int64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
  1400. Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称
  1401. Sex int32 `protobuf:"varint,3,opt,name=sex,proto3" json:"sex,omitempty"` // 性别
  1402. AvatarUrl string `protobuf:"bytes,4,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像地址
  1403. UserExtra string `protobuf:"bytes,5,opt,name=user_extra,json=userExtra,proto3" json:"user_extra,omitempty"` // 用户附加字段
  1404. MemberType MemberType `protobuf:"varint,6,opt,name=member_type,json=memberType,proto3,enum=pb.MemberType" json:"member_type,omitempty"` // 成员类型
  1405. Remarks string `protobuf:"bytes,7,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注
  1406. Extra string `protobuf:"bytes,8,opt,name=extra,proto3" json:"extra,omitempty"` // 群组成员附加字段
  1407. }
  1408. func (x *GroupMember) Reset() {
  1409. *x = GroupMember{}
  1410. if protoimpl.UnsafeEnabled {
  1411. mi := &file_logic_ext_proto_msgTypes[25]
  1412. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1413. ms.StoreMessageInfo(mi)
  1414. }
  1415. }
  1416. func (x *GroupMember) String() string {
  1417. return protoimpl.X.MessageStringOf(x)
  1418. }
  1419. func (*GroupMember) ProtoMessage() {}
  1420. func (x *GroupMember) ProtoReflect() protoreflect.Message {
  1421. mi := &file_logic_ext_proto_msgTypes[25]
  1422. if protoimpl.UnsafeEnabled && x != nil {
  1423. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1424. if ms.LoadMessageInfo() == nil {
  1425. ms.StoreMessageInfo(mi)
  1426. }
  1427. return ms
  1428. }
  1429. return mi.MessageOf(x)
  1430. }
  1431. // Deprecated: Use GroupMember.ProtoReflect.Descriptor instead.
  1432. func (*GroupMember) Descriptor() ([]byte, []int) {
  1433. return file_logic_ext_proto_rawDescGZIP(), []int{25}
  1434. }
  1435. func (x *GroupMember) GetUserId() int64 {
  1436. if x != nil {
  1437. return x.UserId
  1438. }
  1439. return 0
  1440. }
  1441. func (x *GroupMember) GetNickname() string {
  1442. if x != nil {
  1443. return x.Nickname
  1444. }
  1445. return ""
  1446. }
  1447. func (x *GroupMember) GetSex() int32 {
  1448. if x != nil {
  1449. return x.Sex
  1450. }
  1451. return 0
  1452. }
  1453. func (x *GroupMember) GetAvatarUrl() string {
  1454. if x != nil {
  1455. return x.AvatarUrl
  1456. }
  1457. return ""
  1458. }
  1459. func (x *GroupMember) GetUserExtra() string {
  1460. if x != nil {
  1461. return x.UserExtra
  1462. }
  1463. return ""
  1464. }
  1465. func (x *GroupMember) GetMemberType() MemberType {
  1466. if x != nil {
  1467. return x.MemberType
  1468. }
  1469. return MemberType_GMT_UNKNOWN
  1470. }
  1471. func (x *GroupMember) GetRemarks() string {
  1472. if x != nil {
  1473. return x.Remarks
  1474. }
  1475. return ""
  1476. }
  1477. func (x *GroupMember) GetExtra() string {
  1478. if x != nil {
  1479. return x.Extra
  1480. }
  1481. return ""
  1482. }
  1483. var File_logic_ext_proto protoreflect.FileDescriptor
  1484. var file_logic_ext_proto_rawDesc = []byte{
  1485. 0x0a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  1486. 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x65, 0x78,
  1487. 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
  1488. 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x52,
  1489. 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
  1490. 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
  1491. 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x03, 0x20,
  1492. 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f,
  1493. 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  1494. 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
  1495. 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
  1496. 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x64, 0x6b, 0x5f, 0x76,
  1497. 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x64,
  1498. 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x31, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69,
  1499. 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b,
  1500. 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
  1501. 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0xd3, 0x02, 0x0a, 0x0e,
  1502. 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x35,
  1503. 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
  1504. 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69,
  1505. 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
  1506. 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
  1507. 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65,
  1508. 0x69, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65,
  1509. 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x55,
  1510. 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
  1511. 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70,
  1512. 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d,
  1513. 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65,
  1514. 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20,
  1515. 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74,
  1516. 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65,
  1517. 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65,
  1518. 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, 0x07,
  1519. 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x12,
  1520. 0x30, 0x0a, 0x14, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
  1521. 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6d,
  1522. 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x63,
  1523. 0x6b, 0x22, 0x23, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
  1524. 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28,
  1525. 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xe0, 0x01, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x52,
  1526. 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69,
  1527. 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12,
  1528. 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
  1529. 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
  1530. 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54,
  1531. 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63,
  1532. 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65,
  1533. 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09,
  1534. 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
  1535. 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f,
  1536. 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69,
  1537. 0x73, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x70,
  1538. 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69,
  1539. 0x73, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x67, 0x0a, 0x0c, 0x41, 0x64, 0x64,
  1540. 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69,
  1541. 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72,
  1542. 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b,
  1543. 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73,
  1544. 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
  1545. 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
  1546. 0x6f, 0x6e, 0x22, 0x2a, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65,
  1547. 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64,
  1548. 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x46,
  1549. 0x0a, 0x11, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64,
  1550. 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
  1551. 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07,
  1552. 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72,
  1553. 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x5b, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69,
  1554. 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
  1555. 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e,
  1556. 0x64, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02,
  1557. 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a,
  1558. 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78,
  1559. 0x74, 0x72, 0x61, 0x22, 0x5c, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64,
  1560. 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x69,
  1561. 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49,
  1562. 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01,
  1563. 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65,
  1564. 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72,
  1565. 0x61, 0x22, 0xe0, 0x01, 0x0a, 0x06, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x17, 0x0a, 0x07,
  1566. 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75,
  1567. 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e,
  1568. 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f,
  1569. 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b,
  1570. 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b,
  1571. 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28,
  1572. 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72,
  1573. 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74,
  1574. 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x78,
  1575. 0x74, 0x72, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x45,
  1576. 0x78, 0x74, 0x72, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18,
  1577. 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14,
  1578. 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65,
  1579. 0x78, 0x74, 0x72, 0x61, 0x22, 0x36, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e,
  1580. 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
  1581. 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x72, 0x69,
  1582. 0x65, 0x6e, 0x64, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x22, 0x9c, 0x01, 0x0a,
  1583. 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12,
  1584. 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
  1585. 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72,
  1586. 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55,
  1587. 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69,
  1588. 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64,
  1589. 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18,
  1590. 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1d, 0x0a, 0x0a,
  1591. 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x03,
  1592. 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x2c, 0x0a, 0x0f, 0x43,
  1593. 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x19,
  1594. 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
  1595. 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x98, 0x01, 0x0a, 0x0e, 0x55, 0x70,
  1596. 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08,
  1597. 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07,
  1598. 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61,
  1599. 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61,
  1600. 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03,
  1601. 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e,
  1602. 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
  1603. 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14,
  1604. 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65,
  1605. 0x78, 0x74, 0x72, 0x61, 0x22, 0x28, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70,
  1606. 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18,
  1607. 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x2f,
  1608. 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f,
  1609. 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e,
  1610. 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22,
  1611. 0xec, 0x01, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f,
  1612. 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f,
  1613. 0x75, 0x70, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
  1614. 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74,
  1615. 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76,
  1616. 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f,
  1617. 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69,
  1618. 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x75,
  1619. 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x75,
  1620. 0x73, 0x65, 0x72, 0x4d, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18,
  1621. 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1f, 0x0a, 0x0b,
  1622. 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
  1623. 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a,
  1624. 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01,
  1625. 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x32,
  1626. 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12,
  1627. 0x21, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
  1628. 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75,
  1629. 0x70, 0x73, 0x22, 0x4a, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65,
  1630. 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75,
  1631. 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75,
  1632. 0x70, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18,
  1633. 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x30,
  1634. 0x0a, 0x13, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72,
  1635. 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64,
  1636. 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73,
  1637. 0x22, 0xab, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70,
  1638. 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f,
  1639. 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f,
  1640. 0x75, 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
  1641. 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2f, 0x0a,
  1642. 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01,
  1643. 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79,
  1644. 0x70, 0x65, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18,
  1645. 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
  1646. 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72,
  1647. 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x4a,
  1648. 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d,
  1649. 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
  1650. 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49,
  1651. 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
  1652. 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x2f, 0x0a, 0x12, 0x47, 0x65,
  1653. 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71,
  1654. 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
  1655. 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x13, 0x47,
  1656. 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65,
  1657. 0x73, 0x70, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20,
  1658. 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65,
  1659. 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0xf3, 0x01,
  1660. 0x0a, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x17, 0x0a,
  1661. 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
  1662. 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61,
  1663. 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61,
  1664. 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
  1665. 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75,
  1666. 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72,
  1667. 0x55, 0x72, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, 0x72,
  1668. 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x45, 0x78, 0x74,
  1669. 0x72, 0x61, 0x12, 0x2f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70,
  1670. 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x6d,
  1671. 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54,
  1672. 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x07,
  1673. 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a,
  1674. 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78,
  1675. 0x74, 0x72, 0x61, 0x2a, 0x3c, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70,
  1676. 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x47, 0x4d, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e,
  1677. 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x47, 0x4d, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10,
  1678. 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x47, 0x4d, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10,
  1679. 0x02, 0x32, 0xd4, 0x06, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x45, 0x78, 0x74, 0x12, 0x3f,
  1680. 0x0a, 0x0e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
  1681. 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65,
  1682. 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67,
  1683. 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12,
  1684. 0x36, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12,
  1685. 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
  1686. 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73,
  1687. 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, 0x52,
  1688. 0x6f, 0x6f, 0x6d, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x6f, 0x6f,
  1689. 0x6d, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
  1690. 0x28, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x2e, 0x70,
  1691. 0x62, 0x2e, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09,
  1692. 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x32, 0x0a, 0x0e, 0x41, 0x67, 0x72,
  1693. 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x15, 0x2e, 0x70, 0x62,
  1694. 0x2e, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52,
  1695. 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2e, 0x0a,
  1696. 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x13, 0x2e,
  1697. 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52,
  1698. 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x30, 0x0a,
  1699. 0x09, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e,
  1700. 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x70,
  1701. 0x62, 0x2e, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12,
  1702. 0x2b, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x09, 0x2e,
  1703. 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65,
  1704. 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x36, 0x0a, 0x0b,
  1705. 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x2e, 0x70, 0x62,
  1706. 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a,
  1707. 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70,
  1708. 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72,
  1709. 0x6f, 0x75, 0x70, 0x12, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47,
  1710. 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70,
  1711. 0x74, 0x79, 0x12, 0x2d, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0f,
  1712. 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a,
  1713. 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73,
  1714. 0x70, 0x12, 0x29, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x09,
  1715. 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x47,
  1716. 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x42, 0x0a, 0x0f,
  1717. 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12,
  1718. 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d,
  1719. 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x64, 0x64,
  1720. 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70,
  1721. 0x12, 0x38, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d,
  1722. 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
  1723. 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a,
  1724. 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x11, 0x44, 0x65,
  1725. 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12,
  1726. 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70,
  1727. 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45,
  1728. 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70,
  1729. 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74,
  1730. 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a,
  1731. 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d,
  1732. 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x42, 0x0d, 0x5a, 0x0b, 0x67, 0x69, 0x6d, 0x2f,
  1733. 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1734. }
  1735. var (
  1736. file_logic_ext_proto_rawDescOnce sync.Once
  1737. file_logic_ext_proto_rawDescData = file_logic_ext_proto_rawDesc
  1738. )
  1739. func file_logic_ext_proto_rawDescGZIP() []byte {
  1740. file_logic_ext_proto_rawDescOnce.Do(func() {
  1741. file_logic_ext_proto_rawDescData = protoimpl.X.CompressGZIP(file_logic_ext_proto_rawDescData)
  1742. })
  1743. return file_logic_ext_proto_rawDescData
  1744. }
  1745. var file_logic_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  1746. var file_logic_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 26)
  1747. var file_logic_ext_proto_goTypes = []interface{}{
  1748. (MemberType)(0), // 0: pb.MemberType
  1749. (*RegisterDeviceReq)(nil), // 1: pb.RegisterDeviceReq
  1750. (*RegisterDeviceResp)(nil), // 2: pb.RegisterDeviceResp
  1751. (*SendMessageReq)(nil), // 3: pb.SendMessageReq
  1752. (*SendMessageResp)(nil), // 4: pb.SendMessageResp
  1753. (*PushRoomReq)(nil), // 5: pb.PushRoomReq
  1754. (*AddFriendReq)(nil), // 6: pb.AddFriendReq
  1755. (*DeleteFriendReq)(nil), // 7: pb.DeleteFriendReq
  1756. (*AgreeAddFriendReq)(nil), // 8: pb.AgreeAddFriendReq
  1757. (*SetFriendReq)(nil), // 9: pb.SetFriendReq
  1758. (*SetFriendResp)(nil), // 10: pb.SetFriendResp
  1759. (*Friend)(nil), // 11: pb.Friend
  1760. (*GetFriendsResp)(nil), // 12: pb.GetFriendsResp
  1761. (*CreateGroupReq)(nil), // 13: pb.CreateGroupReq
  1762. (*CreateGroupResp)(nil), // 14: pb.CreateGroupResp
  1763. (*UpdateGroupReq)(nil), // 15: pb.UpdateGroupReq
  1764. (*GetGroupReq)(nil), // 16: pb.GetGroupReq
  1765. (*GetGroupResp)(nil), // 17: pb.GetGroupResp
  1766. (*Group)(nil), // 18: pb.Group
  1767. (*GetGroupsResp)(nil), // 19: pb.GetGroupsResp
  1768. (*AddGroupMembersReq)(nil), // 20: pb.AddGroupMembersReq
  1769. (*AddGroupMembersResp)(nil), // 21: pb.AddGroupMembersResp
  1770. (*UpdateGroupMemberReq)(nil), // 22: pb.UpdateGroupMemberReq
  1771. (*DeleteGroupMemberReq)(nil), // 23: pb.DeleteGroupMemberReq
  1772. (*GetGroupMembersReq)(nil), // 24: pb.GetGroupMembersReq
  1773. (*GetGroupMembersResp)(nil), // 25: pb.GetGroupMembersResp
  1774. (*GroupMember)(nil), // 26: pb.GroupMember
  1775. (ReceiverType)(0), // 27: pb.ReceiverType
  1776. (MessageType)(0), // 28: pb.MessageType
  1777. (*Empty)(nil), // 29: pb.Empty
  1778. }
  1779. var file_logic_ext_proto_depIdxs = []int32{
  1780. 27, // 0: pb.SendMessageReq.receiver_type:type_name -> pb.ReceiverType
  1781. 28, // 1: pb.SendMessageReq.message_type:type_name -> pb.MessageType
  1782. 28, // 2: pb.PushRoomReq.message_type:type_name -> pb.MessageType
  1783. 11, // 3: pb.GetFriendsResp.friends:type_name -> pb.Friend
  1784. 18, // 4: pb.GetGroupResp.group:type_name -> pb.Group
  1785. 18, // 5: pb.GetGroupsResp.groups:type_name -> pb.Group
  1786. 0, // 6: pb.UpdateGroupMemberReq.member_type:type_name -> pb.MemberType
  1787. 26, // 7: pb.GetGroupMembersResp.members:type_name -> pb.GroupMember
  1788. 0, // 8: pb.GroupMember.member_type:type_name -> pb.MemberType
  1789. 1, // 9: pb.LogicExt.RegisterDevice:input_type -> pb.RegisterDeviceReq
  1790. 3, // 10: pb.LogicExt.SendMessage:input_type -> pb.SendMessageReq
  1791. 5, // 11: pb.LogicExt.PushRoom:input_type -> pb.PushRoomReq
  1792. 6, // 12: pb.LogicExt.AddFriend:input_type -> pb.AddFriendReq
  1793. 8, // 13: pb.LogicExt.AgreeAddFriend:input_type -> pb.AgreeAddFriendReq
  1794. 7, // 14: pb.LogicExt.DeleteFriend:input_type -> pb.DeleteFriendReq
  1795. 9, // 15: pb.LogicExt.SetFriend:input_type -> pb.SetFriendReq
  1796. 29, // 16: pb.LogicExt.GetFriends:input_type -> pb.Empty
  1797. 13, // 17: pb.LogicExt.CreateGroup:input_type -> pb.CreateGroupReq
  1798. 15, // 18: pb.LogicExt.UpdateGroup:input_type -> pb.UpdateGroupReq
  1799. 16, // 19: pb.LogicExt.GetGroup:input_type -> pb.GetGroupReq
  1800. 29, // 20: pb.LogicExt.GetGroups:input_type -> pb.Empty
  1801. 20, // 21: pb.LogicExt.AddGroupMembers:input_type -> pb.AddGroupMembersReq
  1802. 22, // 22: pb.LogicExt.UpdateGroupMember:input_type -> pb.UpdateGroupMemberReq
  1803. 23, // 23: pb.LogicExt.DeleteGroupMember:input_type -> pb.DeleteGroupMemberReq
  1804. 24, // 24: pb.LogicExt.GetGroupMembers:input_type -> pb.GetGroupMembersReq
  1805. 2, // 25: pb.LogicExt.RegisterDevice:output_type -> pb.RegisterDeviceResp
  1806. 4, // 26: pb.LogicExt.SendMessage:output_type -> pb.SendMessageResp
  1807. 29, // 27: pb.LogicExt.PushRoom:output_type -> pb.Empty
  1808. 29, // 28: pb.LogicExt.AddFriend:output_type -> pb.Empty
  1809. 29, // 29: pb.LogicExt.AgreeAddFriend:output_type -> pb.Empty
  1810. 29, // 30: pb.LogicExt.DeleteFriend:output_type -> pb.Empty
  1811. 10, // 31: pb.LogicExt.SetFriend:output_type -> pb.SetFriendResp
  1812. 12, // 32: pb.LogicExt.GetFriends:output_type -> pb.GetFriendsResp
  1813. 14, // 33: pb.LogicExt.CreateGroup:output_type -> pb.CreateGroupResp
  1814. 29, // 34: pb.LogicExt.UpdateGroup:output_type -> pb.Empty
  1815. 17, // 35: pb.LogicExt.GetGroup:output_type -> pb.GetGroupResp
  1816. 19, // 36: pb.LogicExt.GetGroups:output_type -> pb.GetGroupsResp
  1817. 21, // 37: pb.LogicExt.AddGroupMembers:output_type -> pb.AddGroupMembersResp
  1818. 29, // 38: pb.LogicExt.UpdateGroupMember:output_type -> pb.Empty
  1819. 29, // 39: pb.LogicExt.DeleteGroupMember:output_type -> pb.Empty
  1820. 25, // 40: pb.LogicExt.GetGroupMembers:output_type -> pb.GetGroupMembersResp
  1821. 25, // [25:41] is the sub-list for method output_type
  1822. 9, // [9:25] is the sub-list for method input_type
  1823. 9, // [9:9] is the sub-list for extension type_name
  1824. 9, // [9:9] is the sub-list for extension extendee
  1825. 0, // [0:9] is the sub-list for field type_name
  1826. }
  1827. func init() { file_logic_ext_proto_init() }
  1828. func file_logic_ext_proto_init() {
  1829. if File_logic_ext_proto != nil {
  1830. return
  1831. }
  1832. file_common_ext_proto_init()
  1833. file_connect_ext_proto_init()
  1834. if !protoimpl.UnsafeEnabled {
  1835. file_logic_ext_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1836. switch v := v.(*RegisterDeviceReq); i {
  1837. case 0:
  1838. return &v.state
  1839. case 1:
  1840. return &v.sizeCache
  1841. case 2:
  1842. return &v.unknownFields
  1843. default:
  1844. return nil
  1845. }
  1846. }
  1847. file_logic_ext_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1848. switch v := v.(*RegisterDeviceResp); i {
  1849. case 0:
  1850. return &v.state
  1851. case 1:
  1852. return &v.sizeCache
  1853. case 2:
  1854. return &v.unknownFields
  1855. default:
  1856. return nil
  1857. }
  1858. }
  1859. file_logic_ext_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1860. switch v := v.(*SendMessageReq); i {
  1861. case 0:
  1862. return &v.state
  1863. case 1:
  1864. return &v.sizeCache
  1865. case 2:
  1866. return &v.unknownFields
  1867. default:
  1868. return nil
  1869. }
  1870. }
  1871. file_logic_ext_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1872. switch v := v.(*SendMessageResp); i {
  1873. case 0:
  1874. return &v.state
  1875. case 1:
  1876. return &v.sizeCache
  1877. case 2:
  1878. return &v.unknownFields
  1879. default:
  1880. return nil
  1881. }
  1882. }
  1883. file_logic_ext_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1884. switch v := v.(*PushRoomReq); i {
  1885. case 0:
  1886. return &v.state
  1887. case 1:
  1888. return &v.sizeCache
  1889. case 2:
  1890. return &v.unknownFields
  1891. default:
  1892. return nil
  1893. }
  1894. }
  1895. file_logic_ext_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1896. switch v := v.(*AddFriendReq); i {
  1897. case 0:
  1898. return &v.state
  1899. case 1:
  1900. return &v.sizeCache
  1901. case 2:
  1902. return &v.unknownFields
  1903. default:
  1904. return nil
  1905. }
  1906. }
  1907. file_logic_ext_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1908. switch v := v.(*DeleteFriendReq); i {
  1909. case 0:
  1910. return &v.state
  1911. case 1:
  1912. return &v.sizeCache
  1913. case 2:
  1914. return &v.unknownFields
  1915. default:
  1916. return nil
  1917. }
  1918. }
  1919. file_logic_ext_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1920. switch v := v.(*AgreeAddFriendReq); i {
  1921. case 0:
  1922. return &v.state
  1923. case 1:
  1924. return &v.sizeCache
  1925. case 2:
  1926. return &v.unknownFields
  1927. default:
  1928. return nil
  1929. }
  1930. }
  1931. file_logic_ext_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1932. switch v := v.(*SetFriendReq); i {
  1933. case 0:
  1934. return &v.state
  1935. case 1:
  1936. return &v.sizeCache
  1937. case 2:
  1938. return &v.unknownFields
  1939. default:
  1940. return nil
  1941. }
  1942. }
  1943. file_logic_ext_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1944. switch v := v.(*SetFriendResp); i {
  1945. case 0:
  1946. return &v.state
  1947. case 1:
  1948. return &v.sizeCache
  1949. case 2:
  1950. return &v.unknownFields
  1951. default:
  1952. return nil
  1953. }
  1954. }
  1955. file_logic_ext_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1956. switch v := v.(*Friend); i {
  1957. case 0:
  1958. return &v.state
  1959. case 1:
  1960. return &v.sizeCache
  1961. case 2:
  1962. return &v.unknownFields
  1963. default:
  1964. return nil
  1965. }
  1966. }
  1967. file_logic_ext_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  1968. switch v := v.(*GetFriendsResp); i {
  1969. case 0:
  1970. return &v.state
  1971. case 1:
  1972. return &v.sizeCache
  1973. case 2:
  1974. return &v.unknownFields
  1975. default:
  1976. return nil
  1977. }
  1978. }
  1979. file_logic_ext_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  1980. switch v := v.(*CreateGroupReq); i {
  1981. case 0:
  1982. return &v.state
  1983. case 1:
  1984. return &v.sizeCache
  1985. case 2:
  1986. return &v.unknownFields
  1987. default:
  1988. return nil
  1989. }
  1990. }
  1991. file_logic_ext_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  1992. switch v := v.(*CreateGroupResp); i {
  1993. case 0:
  1994. return &v.state
  1995. case 1:
  1996. return &v.sizeCache
  1997. case 2:
  1998. return &v.unknownFields
  1999. default:
  2000. return nil
  2001. }
  2002. }
  2003. file_logic_ext_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  2004. switch v := v.(*UpdateGroupReq); i {
  2005. case 0:
  2006. return &v.state
  2007. case 1:
  2008. return &v.sizeCache
  2009. case 2:
  2010. return &v.unknownFields
  2011. default:
  2012. return nil
  2013. }
  2014. }
  2015. file_logic_ext_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  2016. switch v := v.(*GetGroupReq); i {
  2017. case 0:
  2018. return &v.state
  2019. case 1:
  2020. return &v.sizeCache
  2021. case 2:
  2022. return &v.unknownFields
  2023. default:
  2024. return nil
  2025. }
  2026. }
  2027. file_logic_ext_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  2028. switch v := v.(*GetGroupResp); i {
  2029. case 0:
  2030. return &v.state
  2031. case 1:
  2032. return &v.sizeCache
  2033. case 2:
  2034. return &v.unknownFields
  2035. default:
  2036. return nil
  2037. }
  2038. }
  2039. file_logic_ext_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  2040. switch v := v.(*Group); i {
  2041. case 0:
  2042. return &v.state
  2043. case 1:
  2044. return &v.sizeCache
  2045. case 2:
  2046. return &v.unknownFields
  2047. default:
  2048. return nil
  2049. }
  2050. }
  2051. file_logic_ext_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  2052. switch v := v.(*GetGroupsResp); i {
  2053. case 0:
  2054. return &v.state
  2055. case 1:
  2056. return &v.sizeCache
  2057. case 2:
  2058. return &v.unknownFields
  2059. default:
  2060. return nil
  2061. }
  2062. }
  2063. file_logic_ext_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  2064. switch v := v.(*AddGroupMembersReq); i {
  2065. case 0:
  2066. return &v.state
  2067. case 1:
  2068. return &v.sizeCache
  2069. case 2:
  2070. return &v.unknownFields
  2071. default:
  2072. return nil
  2073. }
  2074. }
  2075. file_logic_ext_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  2076. switch v := v.(*AddGroupMembersResp); i {
  2077. case 0:
  2078. return &v.state
  2079. case 1:
  2080. return &v.sizeCache
  2081. case 2:
  2082. return &v.unknownFields
  2083. default:
  2084. return nil
  2085. }
  2086. }
  2087. file_logic_ext_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  2088. switch v := v.(*UpdateGroupMemberReq); i {
  2089. case 0:
  2090. return &v.state
  2091. case 1:
  2092. return &v.sizeCache
  2093. case 2:
  2094. return &v.unknownFields
  2095. default:
  2096. return nil
  2097. }
  2098. }
  2099. file_logic_ext_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  2100. switch v := v.(*DeleteGroupMemberReq); i {
  2101. case 0:
  2102. return &v.state
  2103. case 1:
  2104. return &v.sizeCache
  2105. case 2:
  2106. return &v.unknownFields
  2107. default:
  2108. return nil
  2109. }
  2110. }
  2111. file_logic_ext_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  2112. switch v := v.(*GetGroupMembersReq); i {
  2113. case 0:
  2114. return &v.state
  2115. case 1:
  2116. return &v.sizeCache
  2117. case 2:
  2118. return &v.unknownFields
  2119. default:
  2120. return nil
  2121. }
  2122. }
  2123. file_logic_ext_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  2124. switch v := v.(*GetGroupMembersResp); i {
  2125. case 0:
  2126. return &v.state
  2127. case 1:
  2128. return &v.sizeCache
  2129. case 2:
  2130. return &v.unknownFields
  2131. default:
  2132. return nil
  2133. }
  2134. }
  2135. file_logic_ext_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  2136. switch v := v.(*GroupMember); i {
  2137. case 0:
  2138. return &v.state
  2139. case 1:
  2140. return &v.sizeCache
  2141. case 2:
  2142. return &v.unknownFields
  2143. default:
  2144. return nil
  2145. }
  2146. }
  2147. }
  2148. type x struct{}
  2149. out := protoimpl.TypeBuilder{
  2150. File: protoimpl.DescBuilder{
  2151. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  2152. RawDescriptor: file_logic_ext_proto_rawDesc,
  2153. NumEnums: 1,
  2154. NumMessages: 26,
  2155. NumExtensions: 0,
  2156. NumServices: 1,
  2157. },
  2158. GoTypes: file_logic_ext_proto_goTypes,
  2159. DependencyIndexes: file_logic_ext_proto_depIdxs,
  2160. EnumInfos: file_logic_ext_proto_enumTypes,
  2161. MessageInfos: file_logic_ext_proto_msgTypes,
  2162. }.Build()
  2163. File_logic_ext_proto = out.File
  2164. file_logic_ext_proto_rawDesc = nil
  2165. file_logic_ext_proto_goTypes = nil
  2166. file_logic_ext_proto_depIdxs = nil
  2167. }
  2168. // This is a compile-time assertion to ensure that this generated file
  2169. // is compatible with the grpc package it is being compiled against.
  2170. // Requires gRPC-Go v1.32.0 or later.
  2171. const _ = grpc.SupportPackageIsVersion7
  2172. // LogicExtClient is the client API for LogicExt service.
  2173. //
  2174. // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
  2175. type LogicExtClient interface {
  2176. // 注册设备
  2177. RegisterDevice(ctx context.Context, in *RegisterDeviceReq, opts ...grpc.CallOption) (*RegisterDeviceResp, error)
  2178. // 发送消息
  2179. SendMessage(ctx context.Context, in *SendMessageReq, opts ...grpc.CallOption) (*SendMessageResp, error)
  2180. // 推送消息到房间
  2181. PushRoom(ctx context.Context, in *PushRoomReq, opts ...grpc.CallOption) (*Empty, error)
  2182. // 添加好友
  2183. AddFriend(ctx context.Context, in *AddFriendReq, opts ...grpc.CallOption) (*Empty, error)
  2184. // 同意添加好友
  2185. AgreeAddFriend(ctx context.Context, in *AgreeAddFriendReq, opts ...grpc.CallOption) (*Empty, error)
  2186. // 删除好友
  2187. DeleteFriend(ctx context.Context, in *DeleteFriendReq, opts ...grpc.CallOption) (*Empty, error)
  2188. // 设置好友信息
  2189. SetFriend(ctx context.Context, in *SetFriendReq, opts ...grpc.CallOption) (*SetFriendResp, error)
  2190. // 获取好友列表
  2191. GetFriends(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetFriendsResp, error)
  2192. // 创建群组
  2193. CreateGroup(ctx context.Context, in *CreateGroupReq, opts ...grpc.CallOption) (*CreateGroupResp, error)
  2194. // 更新群组
  2195. UpdateGroup(ctx context.Context, in *UpdateGroupReq, opts ...grpc.CallOption) (*Empty, error)
  2196. // 获取群组信息
  2197. GetGroup(ctx context.Context, in *GetGroupReq, opts ...grpc.CallOption) (*GetGroupResp, error)
  2198. // 获取用户加入的所有群组
  2199. GetGroups(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetGroupsResp, error)
  2200. // 添加群组成员
  2201. AddGroupMembers(ctx context.Context, in *AddGroupMembersReq, opts ...grpc.CallOption) (*AddGroupMembersResp, error)
  2202. // 更新群组成员信息
  2203. UpdateGroupMember(ctx context.Context, in *UpdateGroupMemberReq, opts ...grpc.CallOption) (*Empty, error)
  2204. // 添加群组成员
  2205. DeleteGroupMember(ctx context.Context, in *DeleteGroupMemberReq, opts ...grpc.CallOption) (*Empty, error)
  2206. // 获取群组成员
  2207. GetGroupMembers(ctx context.Context, in *GetGroupMembersReq, opts ...grpc.CallOption) (*GetGroupMembersResp, error)
  2208. }
  2209. type logicExtClient struct {
  2210. cc grpc.ClientConnInterface
  2211. }
  2212. func NewLogicExtClient(cc grpc.ClientConnInterface) LogicExtClient {
  2213. return &logicExtClient{cc}
  2214. }
  2215. func (c *logicExtClient) RegisterDevice(ctx context.Context, in *RegisterDeviceReq, opts ...grpc.CallOption) (*RegisterDeviceResp, error) {
  2216. out := new(RegisterDeviceResp)
  2217. err := c.cc.Invoke(ctx, "/pb.LogicExt/RegisterDevice", in, out, opts...)
  2218. if err != nil {
  2219. return nil, err
  2220. }
  2221. return out, nil
  2222. }
  2223. func (c *logicExtClient) SendMessage(ctx context.Context, in *SendMessageReq, opts ...grpc.CallOption) (*SendMessageResp, error) {
  2224. out := new(SendMessageResp)
  2225. err := c.cc.Invoke(ctx, "/pb.LogicExt/SendMessage", in, out, opts...)
  2226. if err != nil {
  2227. return nil, err
  2228. }
  2229. return out, nil
  2230. }
  2231. func (c *logicExtClient) PushRoom(ctx context.Context, in *PushRoomReq, opts ...grpc.CallOption) (*Empty, error) {
  2232. out := new(Empty)
  2233. err := c.cc.Invoke(ctx, "/pb.LogicExt/PushRoom", in, out, opts...)
  2234. if err != nil {
  2235. return nil, err
  2236. }
  2237. return out, nil
  2238. }
  2239. func (c *logicExtClient) AddFriend(ctx context.Context, in *AddFriendReq, opts ...grpc.CallOption) (*Empty, error) {
  2240. out := new(Empty)
  2241. err := c.cc.Invoke(ctx, "/pb.LogicExt/AddFriend", in, out, opts...)
  2242. if err != nil {
  2243. return nil, err
  2244. }
  2245. return out, nil
  2246. }
  2247. func (c *logicExtClient) AgreeAddFriend(ctx context.Context, in *AgreeAddFriendReq, opts ...grpc.CallOption) (*Empty, error) {
  2248. out := new(Empty)
  2249. err := c.cc.Invoke(ctx, "/pb.LogicExt/AgreeAddFriend", in, out, opts...)
  2250. if err != nil {
  2251. return nil, err
  2252. }
  2253. return out, nil
  2254. }
  2255. func (c *logicExtClient) DeleteFriend(ctx context.Context, in *DeleteFriendReq, opts ...grpc.CallOption) (*Empty, error) {
  2256. out := new(Empty)
  2257. err := c.cc.Invoke(ctx, "/pb.LogicExt/DeleteFriend", in, out, opts...)
  2258. if err != nil {
  2259. return nil, err
  2260. }
  2261. return out, nil
  2262. }
  2263. func (c *logicExtClient) SetFriend(ctx context.Context, in *SetFriendReq, opts ...grpc.CallOption) (*SetFriendResp, error) {
  2264. out := new(SetFriendResp)
  2265. err := c.cc.Invoke(ctx, "/pb.LogicExt/SetFriend", in, out, opts...)
  2266. if err != nil {
  2267. return nil, err
  2268. }
  2269. return out, nil
  2270. }
  2271. func (c *logicExtClient) GetFriends(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetFriendsResp, error) {
  2272. out := new(GetFriendsResp)
  2273. err := c.cc.Invoke(ctx, "/pb.LogicExt/GetFriends", in, out, opts...)
  2274. if err != nil {
  2275. return nil, err
  2276. }
  2277. return out, nil
  2278. }
  2279. func (c *logicExtClient) CreateGroup(ctx context.Context, in *CreateGroupReq, opts ...grpc.CallOption) (*CreateGroupResp, error) {
  2280. out := new(CreateGroupResp)
  2281. err := c.cc.Invoke(ctx, "/pb.LogicExt/CreateGroup", in, out, opts...)
  2282. if err != nil {
  2283. return nil, err
  2284. }
  2285. return out, nil
  2286. }
  2287. func (c *logicExtClient) UpdateGroup(ctx context.Context, in *UpdateGroupReq, opts ...grpc.CallOption) (*Empty, error) {
  2288. out := new(Empty)
  2289. err := c.cc.Invoke(ctx, "/pb.LogicExt/UpdateGroup", in, out, opts...)
  2290. if err != nil {
  2291. return nil, err
  2292. }
  2293. return out, nil
  2294. }
  2295. func (c *logicExtClient) GetGroup(ctx context.Context, in *GetGroupReq, opts ...grpc.CallOption) (*GetGroupResp, error) {
  2296. out := new(GetGroupResp)
  2297. err := c.cc.Invoke(ctx, "/pb.LogicExt/GetGroup", in, out, opts...)
  2298. if err != nil {
  2299. return nil, err
  2300. }
  2301. return out, nil
  2302. }
  2303. func (c *logicExtClient) GetGroups(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetGroupsResp, error) {
  2304. out := new(GetGroupsResp)
  2305. err := c.cc.Invoke(ctx, "/pb.LogicExt/GetGroups", in, out, opts...)
  2306. if err != nil {
  2307. return nil, err
  2308. }
  2309. return out, nil
  2310. }
  2311. func (c *logicExtClient) AddGroupMembers(ctx context.Context, in *AddGroupMembersReq, opts ...grpc.CallOption) (*AddGroupMembersResp, error) {
  2312. out := new(AddGroupMembersResp)
  2313. err := c.cc.Invoke(ctx, "/pb.LogicExt/AddGroupMembers", in, out, opts...)
  2314. if err != nil {
  2315. return nil, err
  2316. }
  2317. return out, nil
  2318. }
  2319. func (c *logicExtClient) UpdateGroupMember(ctx context.Context, in *UpdateGroupMemberReq, opts ...grpc.CallOption) (*Empty, error) {
  2320. out := new(Empty)
  2321. err := c.cc.Invoke(ctx, "/pb.LogicExt/UpdateGroupMember", in, out, opts...)
  2322. if err != nil {
  2323. return nil, err
  2324. }
  2325. return out, nil
  2326. }
  2327. func (c *logicExtClient) DeleteGroupMember(ctx context.Context, in *DeleteGroupMemberReq, opts ...grpc.CallOption) (*Empty, error) {
  2328. out := new(Empty)
  2329. err := c.cc.Invoke(ctx, "/pb.LogicExt/DeleteGroupMember", in, out, opts...)
  2330. if err != nil {
  2331. return nil, err
  2332. }
  2333. return out, nil
  2334. }
  2335. func (c *logicExtClient) GetGroupMembers(ctx context.Context, in *GetGroupMembersReq, opts ...grpc.CallOption) (*GetGroupMembersResp, error) {
  2336. out := new(GetGroupMembersResp)
  2337. err := c.cc.Invoke(ctx, "/pb.LogicExt/GetGroupMembers", in, out, opts...)
  2338. if err != nil {
  2339. return nil, err
  2340. }
  2341. return out, nil
  2342. }
  2343. // LogicExtServer is the server API for LogicExt service.
  2344. // All implementations must embed UnimplementedLogicExtServer
  2345. // for forward compatibility
  2346. type LogicExtServer interface {
  2347. // 注册设备
  2348. RegisterDevice(context.Context, *RegisterDeviceReq) (*RegisterDeviceResp, error)
  2349. // 发送消息
  2350. SendMessage(context.Context, *SendMessageReq) (*SendMessageResp, error)
  2351. // 推送消息到房间
  2352. PushRoom(context.Context, *PushRoomReq) (*Empty, error)
  2353. // 添加好友
  2354. AddFriend(context.Context, *AddFriendReq) (*Empty, error)
  2355. // 同意添加好友
  2356. AgreeAddFriend(context.Context, *AgreeAddFriendReq) (*Empty, error)
  2357. // 删除好友
  2358. DeleteFriend(context.Context, *DeleteFriendReq) (*Empty, error)
  2359. // 设置好友信息
  2360. SetFriend(context.Context, *SetFriendReq) (*SetFriendResp, error)
  2361. // 获取好友列表
  2362. GetFriends(context.Context, *Empty) (*GetFriendsResp, error)
  2363. // 创建群组
  2364. CreateGroup(context.Context, *CreateGroupReq) (*CreateGroupResp, error)
  2365. // 更新群组
  2366. UpdateGroup(context.Context, *UpdateGroupReq) (*Empty, error)
  2367. // 获取群组信息
  2368. GetGroup(context.Context, *GetGroupReq) (*GetGroupResp, error)
  2369. // 获取用户加入的所有群组
  2370. GetGroups(context.Context, *Empty) (*GetGroupsResp, error)
  2371. // 添加群组成员
  2372. AddGroupMembers(context.Context, *AddGroupMembersReq) (*AddGroupMembersResp, error)
  2373. // 更新群组成员信息
  2374. UpdateGroupMember(context.Context, *UpdateGroupMemberReq) (*Empty, error)
  2375. // 添加群组成员
  2376. DeleteGroupMember(context.Context, *DeleteGroupMemberReq) (*Empty, error)
  2377. // 获取群组成员
  2378. GetGroupMembers(context.Context, *GetGroupMembersReq) (*GetGroupMembersResp, error)
  2379. }
  2380. // UnimplementedLogicExtServer must be embedded to have forward compatible implementations.
  2381. type UnimplementedLogicExtServer struct {
  2382. }
  2383. func (UnimplementedLogicExtServer) RegisterDevice(context.Context, *RegisterDeviceReq) (*RegisterDeviceResp, error) {
  2384. return nil, status.Errorf(codes.Unimplemented, "method RegisterDevice not implemented")
  2385. }
  2386. func (UnimplementedLogicExtServer) SendMessage(context.Context, *SendMessageReq) (*SendMessageResp, error) {
  2387. return nil, status.Errorf(codes.Unimplemented, "method SendMessage not implemented")
  2388. }
  2389. func (UnimplementedLogicExtServer) PushRoom(context.Context, *PushRoomReq) (*Empty, error) {
  2390. return nil, status.Errorf(codes.Unimplemented, "method PushRoom not implemented")
  2391. }
  2392. func (UnimplementedLogicExtServer) AddFriend(context.Context, *AddFriendReq) (*Empty, error) {
  2393. return nil, status.Errorf(codes.Unimplemented, "method AddFriend not implemented")
  2394. }
  2395. func (UnimplementedLogicExtServer) AgreeAddFriend(context.Context, *AgreeAddFriendReq) (*Empty, error) {
  2396. return nil, status.Errorf(codes.Unimplemented, "method AgreeAddFriend not implemented")
  2397. }
  2398. func (UnimplementedLogicExtServer) DeleteFriend(context.Context, *DeleteFriendReq) (*Empty, error) {
  2399. return nil, status.Errorf(codes.Unimplemented, "method DeleteFriend not implemented")
  2400. }
  2401. func (UnimplementedLogicExtServer) SetFriend(context.Context, *SetFriendReq) (*SetFriendResp, error) {
  2402. return nil, status.Errorf(codes.Unimplemented, "method SetFriend not implemented")
  2403. }
  2404. func (UnimplementedLogicExtServer) GetFriends(context.Context, *Empty) (*GetFriendsResp, error) {
  2405. return nil, status.Errorf(codes.Unimplemented, "method GetFriends not implemented")
  2406. }
  2407. func (UnimplementedLogicExtServer) CreateGroup(context.Context, *CreateGroupReq) (*CreateGroupResp, error) {
  2408. return nil, status.Errorf(codes.Unimplemented, "method CreateGroup not implemented")
  2409. }
  2410. func (UnimplementedLogicExtServer) UpdateGroup(context.Context, *UpdateGroupReq) (*Empty, error) {
  2411. return nil, status.Errorf(codes.Unimplemented, "method UpdateGroup not implemented")
  2412. }
  2413. func (UnimplementedLogicExtServer) GetGroup(context.Context, *GetGroupReq) (*GetGroupResp, error) {
  2414. return nil, status.Errorf(codes.Unimplemented, "method GetGroup not implemented")
  2415. }
  2416. func (UnimplementedLogicExtServer) GetGroups(context.Context, *Empty) (*GetGroupsResp, error) {
  2417. return nil, status.Errorf(codes.Unimplemented, "method GetGroups not implemented")
  2418. }
  2419. func (UnimplementedLogicExtServer) AddGroupMembers(context.Context, *AddGroupMembersReq) (*AddGroupMembersResp, error) {
  2420. return nil, status.Errorf(codes.Unimplemented, "method AddGroupMembers not implemented")
  2421. }
  2422. func (UnimplementedLogicExtServer) UpdateGroupMember(context.Context, *UpdateGroupMemberReq) (*Empty, error) {
  2423. return nil, status.Errorf(codes.Unimplemented, "method UpdateGroupMember not implemented")
  2424. }
  2425. func (UnimplementedLogicExtServer) DeleteGroupMember(context.Context, *DeleteGroupMemberReq) (*Empty, error) {
  2426. return nil, status.Errorf(codes.Unimplemented, "method DeleteGroupMember not implemented")
  2427. }
  2428. func (UnimplementedLogicExtServer) GetGroupMembers(context.Context, *GetGroupMembersReq) (*GetGroupMembersResp, error) {
  2429. return nil, status.Errorf(codes.Unimplemented, "method GetGroupMembers not implemented")
  2430. }
  2431. func (UnimplementedLogicExtServer) mustEmbedUnimplementedLogicExtServer() {}
  2432. // UnsafeLogicExtServer may be embedded to opt out of forward compatibility for this service.
  2433. // Use of this interface is not recommended, as added methods to LogicExtServer will
  2434. // result in compilation errors.
  2435. type UnsafeLogicExtServer interface {
  2436. mustEmbedUnimplementedLogicExtServer()
  2437. }
  2438. func RegisterLogicExtServer(s grpc.ServiceRegistrar, srv LogicExtServer) {
  2439. s.RegisterService(&LogicExt_ServiceDesc, srv)
  2440. }
  2441. func _LogicExt_RegisterDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2442. in := new(RegisterDeviceReq)
  2443. if err := dec(in); err != nil {
  2444. return nil, err
  2445. }
  2446. if interceptor == nil {
  2447. return srv.(LogicExtServer).RegisterDevice(ctx, in)
  2448. }
  2449. info := &grpc.UnaryServerInfo{
  2450. Server: srv,
  2451. FullMethod: "/pb.LogicExt/RegisterDevice",
  2452. }
  2453. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2454. return srv.(LogicExtServer).RegisterDevice(ctx, req.(*RegisterDeviceReq))
  2455. }
  2456. return interceptor(ctx, in, info, handler)
  2457. }
  2458. func _LogicExt_SendMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2459. in := new(SendMessageReq)
  2460. if err := dec(in); err != nil {
  2461. return nil, err
  2462. }
  2463. if interceptor == nil {
  2464. return srv.(LogicExtServer).SendMessage(ctx, in)
  2465. }
  2466. info := &grpc.UnaryServerInfo{
  2467. Server: srv,
  2468. FullMethod: "/pb.LogicExt/SendMessage",
  2469. }
  2470. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2471. return srv.(LogicExtServer).SendMessage(ctx, req.(*SendMessageReq))
  2472. }
  2473. return interceptor(ctx, in, info, handler)
  2474. }
  2475. func _LogicExt_PushRoom_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2476. in := new(PushRoomReq)
  2477. if err := dec(in); err != nil {
  2478. return nil, err
  2479. }
  2480. if interceptor == nil {
  2481. return srv.(LogicExtServer).PushRoom(ctx, in)
  2482. }
  2483. info := &grpc.UnaryServerInfo{
  2484. Server: srv,
  2485. FullMethod: "/pb.LogicExt/PushRoom",
  2486. }
  2487. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2488. return srv.(LogicExtServer).PushRoom(ctx, req.(*PushRoomReq))
  2489. }
  2490. return interceptor(ctx, in, info, handler)
  2491. }
  2492. func _LogicExt_AddFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2493. in := new(AddFriendReq)
  2494. if err := dec(in); err != nil {
  2495. return nil, err
  2496. }
  2497. if interceptor == nil {
  2498. return srv.(LogicExtServer).AddFriend(ctx, in)
  2499. }
  2500. info := &grpc.UnaryServerInfo{
  2501. Server: srv,
  2502. FullMethod: "/pb.LogicExt/AddFriend",
  2503. }
  2504. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2505. return srv.(LogicExtServer).AddFriend(ctx, req.(*AddFriendReq))
  2506. }
  2507. return interceptor(ctx, in, info, handler)
  2508. }
  2509. func _LogicExt_AgreeAddFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2510. in := new(AgreeAddFriendReq)
  2511. if err := dec(in); err != nil {
  2512. return nil, err
  2513. }
  2514. if interceptor == nil {
  2515. return srv.(LogicExtServer).AgreeAddFriend(ctx, in)
  2516. }
  2517. info := &grpc.UnaryServerInfo{
  2518. Server: srv,
  2519. FullMethod: "/pb.LogicExt/AgreeAddFriend",
  2520. }
  2521. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2522. return srv.(LogicExtServer).AgreeAddFriend(ctx, req.(*AgreeAddFriendReq))
  2523. }
  2524. return interceptor(ctx, in, info, handler)
  2525. }
  2526. func _LogicExt_DeleteFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2527. in := new(DeleteFriendReq)
  2528. if err := dec(in); err != nil {
  2529. return nil, err
  2530. }
  2531. if interceptor == nil {
  2532. return srv.(LogicExtServer).DeleteFriend(ctx, in)
  2533. }
  2534. info := &grpc.UnaryServerInfo{
  2535. Server: srv,
  2536. FullMethod: "/pb.LogicExt/DeleteFriend",
  2537. }
  2538. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2539. return srv.(LogicExtServer).DeleteFriend(ctx, req.(*DeleteFriendReq))
  2540. }
  2541. return interceptor(ctx, in, info, handler)
  2542. }
  2543. func _LogicExt_SetFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2544. in := new(SetFriendReq)
  2545. if err := dec(in); err != nil {
  2546. return nil, err
  2547. }
  2548. if interceptor == nil {
  2549. return srv.(LogicExtServer).SetFriend(ctx, in)
  2550. }
  2551. info := &grpc.UnaryServerInfo{
  2552. Server: srv,
  2553. FullMethod: "/pb.LogicExt/SetFriend",
  2554. }
  2555. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2556. return srv.(LogicExtServer).SetFriend(ctx, req.(*SetFriendReq))
  2557. }
  2558. return interceptor(ctx, in, info, handler)
  2559. }
  2560. func _LogicExt_GetFriends_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2561. in := new(Empty)
  2562. if err := dec(in); err != nil {
  2563. return nil, err
  2564. }
  2565. if interceptor == nil {
  2566. return srv.(LogicExtServer).GetFriends(ctx, in)
  2567. }
  2568. info := &grpc.UnaryServerInfo{
  2569. Server: srv,
  2570. FullMethod: "/pb.LogicExt/GetFriends",
  2571. }
  2572. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2573. return srv.(LogicExtServer).GetFriends(ctx, req.(*Empty))
  2574. }
  2575. return interceptor(ctx, in, info, handler)
  2576. }
  2577. func _LogicExt_CreateGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2578. in := new(CreateGroupReq)
  2579. if err := dec(in); err != nil {
  2580. return nil, err
  2581. }
  2582. if interceptor == nil {
  2583. return srv.(LogicExtServer).CreateGroup(ctx, in)
  2584. }
  2585. info := &grpc.UnaryServerInfo{
  2586. Server: srv,
  2587. FullMethod: "/pb.LogicExt/CreateGroup",
  2588. }
  2589. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2590. return srv.(LogicExtServer).CreateGroup(ctx, req.(*CreateGroupReq))
  2591. }
  2592. return interceptor(ctx, in, info, handler)
  2593. }
  2594. func _LogicExt_UpdateGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2595. in := new(UpdateGroupReq)
  2596. if err := dec(in); err != nil {
  2597. return nil, err
  2598. }
  2599. if interceptor == nil {
  2600. return srv.(LogicExtServer).UpdateGroup(ctx, in)
  2601. }
  2602. info := &grpc.UnaryServerInfo{
  2603. Server: srv,
  2604. FullMethod: "/pb.LogicExt/UpdateGroup",
  2605. }
  2606. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2607. return srv.(LogicExtServer).UpdateGroup(ctx, req.(*UpdateGroupReq))
  2608. }
  2609. return interceptor(ctx, in, info, handler)
  2610. }
  2611. func _LogicExt_GetGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2612. in := new(GetGroupReq)
  2613. if err := dec(in); err != nil {
  2614. return nil, err
  2615. }
  2616. if interceptor == nil {
  2617. return srv.(LogicExtServer).GetGroup(ctx, in)
  2618. }
  2619. info := &grpc.UnaryServerInfo{
  2620. Server: srv,
  2621. FullMethod: "/pb.LogicExt/GetGroup",
  2622. }
  2623. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2624. return srv.(LogicExtServer).GetGroup(ctx, req.(*GetGroupReq))
  2625. }
  2626. return interceptor(ctx, in, info, handler)
  2627. }
  2628. func _LogicExt_GetGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2629. in := new(Empty)
  2630. if err := dec(in); err != nil {
  2631. return nil, err
  2632. }
  2633. if interceptor == nil {
  2634. return srv.(LogicExtServer).GetGroups(ctx, in)
  2635. }
  2636. info := &grpc.UnaryServerInfo{
  2637. Server: srv,
  2638. FullMethod: "/pb.LogicExt/GetGroups",
  2639. }
  2640. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2641. return srv.(LogicExtServer).GetGroups(ctx, req.(*Empty))
  2642. }
  2643. return interceptor(ctx, in, info, handler)
  2644. }
  2645. func _LogicExt_AddGroupMembers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2646. in := new(AddGroupMembersReq)
  2647. if err := dec(in); err != nil {
  2648. return nil, err
  2649. }
  2650. if interceptor == nil {
  2651. return srv.(LogicExtServer).AddGroupMembers(ctx, in)
  2652. }
  2653. info := &grpc.UnaryServerInfo{
  2654. Server: srv,
  2655. FullMethod: "/pb.LogicExt/AddGroupMembers",
  2656. }
  2657. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2658. return srv.(LogicExtServer).AddGroupMembers(ctx, req.(*AddGroupMembersReq))
  2659. }
  2660. return interceptor(ctx, in, info, handler)
  2661. }
  2662. func _LogicExt_UpdateGroupMember_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2663. in := new(UpdateGroupMemberReq)
  2664. if err := dec(in); err != nil {
  2665. return nil, err
  2666. }
  2667. if interceptor == nil {
  2668. return srv.(LogicExtServer).UpdateGroupMember(ctx, in)
  2669. }
  2670. info := &grpc.UnaryServerInfo{
  2671. Server: srv,
  2672. FullMethod: "/pb.LogicExt/UpdateGroupMember",
  2673. }
  2674. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2675. return srv.(LogicExtServer).UpdateGroupMember(ctx, req.(*UpdateGroupMemberReq))
  2676. }
  2677. return interceptor(ctx, in, info, handler)
  2678. }
  2679. func _LogicExt_DeleteGroupMember_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2680. in := new(DeleteGroupMemberReq)
  2681. if err := dec(in); err != nil {
  2682. return nil, err
  2683. }
  2684. if interceptor == nil {
  2685. return srv.(LogicExtServer).DeleteGroupMember(ctx, in)
  2686. }
  2687. info := &grpc.UnaryServerInfo{
  2688. Server: srv,
  2689. FullMethod: "/pb.LogicExt/DeleteGroupMember",
  2690. }
  2691. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2692. return srv.(LogicExtServer).DeleteGroupMember(ctx, req.(*DeleteGroupMemberReq))
  2693. }
  2694. return interceptor(ctx, in, info, handler)
  2695. }
  2696. func _LogicExt_GetGroupMembers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2697. in := new(GetGroupMembersReq)
  2698. if err := dec(in); err != nil {
  2699. return nil, err
  2700. }
  2701. if interceptor == nil {
  2702. return srv.(LogicExtServer).GetGroupMembers(ctx, in)
  2703. }
  2704. info := &grpc.UnaryServerInfo{
  2705. Server: srv,
  2706. FullMethod: "/pb.LogicExt/GetGroupMembers",
  2707. }
  2708. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2709. return srv.(LogicExtServer).GetGroupMembers(ctx, req.(*GetGroupMembersReq))
  2710. }
  2711. return interceptor(ctx, in, info, handler)
  2712. }
  2713. // LogicExt_ServiceDesc is the grpc.ServiceDesc for LogicExt service.
  2714. // It's only intended for direct use with grpc.RegisterService,
  2715. // and not to be introspected or modified (even as a copy)
  2716. var LogicExt_ServiceDesc = grpc.ServiceDesc{
  2717. ServiceName: "pb.LogicExt",
  2718. HandlerType: (*LogicExtServer)(nil),
  2719. Methods: []grpc.MethodDesc{
  2720. {
  2721. MethodName: "RegisterDevice",
  2722. Handler: _LogicExt_RegisterDevice_Handler,
  2723. },
  2724. {
  2725. MethodName: "SendMessage",
  2726. Handler: _LogicExt_SendMessage_Handler,
  2727. },
  2728. {
  2729. MethodName: "PushRoom",
  2730. Handler: _LogicExt_PushRoom_Handler,
  2731. },
  2732. {
  2733. MethodName: "AddFriend",
  2734. Handler: _LogicExt_AddFriend_Handler,
  2735. },
  2736. {
  2737. MethodName: "AgreeAddFriend",
  2738. Handler: _LogicExt_AgreeAddFriend_Handler,
  2739. },
  2740. {
  2741. MethodName: "DeleteFriend",
  2742. Handler: _LogicExt_DeleteFriend_Handler,
  2743. },
  2744. {
  2745. MethodName: "SetFriend",
  2746. Handler: _LogicExt_SetFriend_Handler,
  2747. },
  2748. {
  2749. MethodName: "GetFriends",
  2750. Handler: _LogicExt_GetFriends_Handler,
  2751. },
  2752. {
  2753. MethodName: "CreateGroup",
  2754. Handler: _LogicExt_CreateGroup_Handler,
  2755. },
  2756. {
  2757. MethodName: "UpdateGroup",
  2758. Handler: _LogicExt_UpdateGroup_Handler,
  2759. },
  2760. {
  2761. MethodName: "GetGroup",
  2762. Handler: _LogicExt_GetGroup_Handler,
  2763. },
  2764. {
  2765. MethodName: "GetGroups",
  2766. Handler: _LogicExt_GetGroups_Handler,
  2767. },
  2768. {
  2769. MethodName: "AddGroupMembers",
  2770. Handler: _LogicExt_AddGroupMembers_Handler,
  2771. },
  2772. {
  2773. MethodName: "UpdateGroupMember",
  2774. Handler: _LogicExt_UpdateGroupMember_Handler,
  2775. },
  2776. {
  2777. MethodName: "DeleteGroupMember",
  2778. Handler: _LogicExt_DeleteGroupMember_Handler,
  2779. },
  2780. {
  2781. MethodName: "GetGroupMembers",
  2782. Handler: _LogicExt_GetGroupMembers_Handler,
  2783. },
  2784. },
  2785. Streams: []grpc.StreamDesc{},
  2786. Metadata: "logic.ext.proto",
  2787. }