golang-im聊天
 
 
 
 

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