message.proto 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. syntax = "proto3";
  2. package message;
  3. option go_package = "message/";
  4. message ChangeReadStatusReq {
  5. string id = 1; // 消息id
  6. int64 readStatus = 2; // 阅读状态 0-未读 1-已读
  7. string appid = 3; //应用标识
  8. }
  9. message ResCount {
  10. int64 msgType = 1; // 类型及未读数量
  11. int64 count = 2; // 类型及未读数量
  12. }
  13. // 查询指定用户未读消息合计
  14. message GetUnreadCountRequest {
  15. string userId = 1; // 用户id
  16. string appid = 2; //应用标识
  17. }
  18. message Response {
  19. int64 code = 1; //状态码
  20. string message = 2; //响应消息
  21. }
  22. message GetUnreadCountResponse {
  23. int64 code = 1; //状态码
  24. string message = 2; //响应消息
  25. int64 count = 3; //
  26. }
  27. message FindUserMsgReq {
  28. string userId = 1; //用户id
  29. string receiveUserId = 2; //聊天方用户id
  30. string appid = 3; //应用标识
  31. int64 offSet = 4; //当前
  32. int64 pageSize = 5; //大小
  33. int64 msgType = 6; //是否区分类型
  34. int64 read = 7; // 是否区分已读未读 -1 不区分已读未读 0 未读 1 已读
  35. }
  36. message Messages {
  37. string receiveUserId = 1; //接收方用户ID
  38. string receiveName = 2; //接收方用户名
  39. string sendUserId = 3; //发送方用户ID
  40. string sendName = 4; //发送方用户名
  41. string title = 5; //主题
  42. string content = 6; //内容
  43. int64 msgType = 7; //消息类型 1:客服 2:系统通知 3:营销 4:用户会话
  44. string link = 8; //跳转链接
  45. int64 citeId = 9; //引用id
  46. int64 isRead = 10; //已读未读 0:未读 1:已读
  47. string createtime = 11;
  48. string appid = 12; //应用标识
  49. string id = 13; //消息id
  50. int64 msgLogId = 14;
  51. map<string, string> url = 15;
  52. }
  53. message FindUserMsgRes {
  54. int64 code = 1; //状态码
  55. string message = 2; //响应消息
  56. repeated Messages data = 3; //
  57. int64 count = 4; //总数
  58. }
  59. message GetClassUnreadCountReq {
  60. string userId = 1; // 用户id
  61. int64 msgType = 2; //分类 1:客服 2:系统通知 3:营销 4:用户会话
  62. string appid = 3; //应用标识
  63. }
  64. //查看消息内容
  65. message MessageDetailReq {
  66. string id = 1; //消息id
  67. }
  68. message MessageDetailResp {
  69. int64 code = 1; //状态码
  70. string message = 2; //响应消息
  71. Messages data = 3; //
  72. }
  73. message GetLastMessageReq {
  74. string userId = 1; // 用户id
  75. int64 msgType = 2; //分类 1:客服 2:系统通知 3:营销 4:用户会话
  76. string appid = 3; //应用标识
  77. int64 isRead = 4; // 0:未读 1:已读 -1 不区分
  78. }
  79. message GetLastMessageRes {
  80. int64 code = 1; //状态码
  81. string message = 2; //响应消息
  82. Messages data = 3; //
  83. }
  84. // 获取用户分类的的未读消息分类及数量 及分类下最新的消息
  85. message GetUnreadClassCountReq {
  86. string userId = 1; // 用户id
  87. string appid = 2; //应用标识
  88. bool needMsg = 3; //是否需要分类下的最新一条消息
  89. }
  90. message GetUnreadClassCountRes {
  91. int64 code = 1; //状态码
  92. string message = 2; //响应消息
  93. repeated ResCount data = 3; //
  94. repeated Messages info = 4; // 每个类型最新消息列表
  95. }
  96. message GetMsgTypeReq {
  97. string userId = 1; // 用户id
  98. string appid = 2; //应用标识
  99. }
  100. message GetMsgTypeRes {
  101. int64 code = 1; //状态码
  102. string message = 2; //响应消息
  103. repeated int64 data = 3; //
  104. }
  105. message user {
  106. string userId = 1;
  107. string userName = 2;
  108. }
  109. message multipleSaveMsgReq {
  110. string userIds = 1;
  111. string userNames = 2;
  112. string sendUserId = 3; //发送方用户ID
  113. string sendName = 4; //发送方用户名
  114. string title = 5; //主题
  115. string content = 6; //内容
  116. int64 msgType = 7; //消息类型 1:客服 2:系统通知 3:营销 4:用户会话
  117. string link = 8; //跳转链接
  118. int64 citeId = 9; //引用id
  119. string appid = 10; //应用标识
  120. int64 msgLogId = 11;//消息记录表id
  121. int64 showBuoy = 12;//是否展示为浮标
  122. string showContent =13;//展示文案
  123. string positionIds = 14;// 职位id 逗号分割
  124. }
  125. message multipleSaveMsgResp {
  126. int64 code = 1; //状态码
  127. string message = 2; //响应消息
  128. int64 errCount = 3; // 保存出错数量
  129. }
  130. message FindUserBuoyMsgReq {
  131. string userId = 1; //用户id
  132. string appid = 2; //应用标识
  133. int64 pageSize = 3; //大小
  134. }
  135. message FindUserBuoyMsgRes {
  136. int64 code = 1; //状态码
  137. string message = 2; //响应消息
  138. repeated BuoyMessages data = 3; //
  139. }
  140. message BuoyMessages {
  141. string id = 1; //消息id
  142. string buoy_detail = 2; //浮标内容
  143. string pcUrl =3;
  144. string androidUrl = 4;
  145. string iosUrl = 5;
  146. string weChatUrl =6;
  147. }
  148. message ClearUnreadMsgReq {
  149. string userid = 1; //mgoId
  150. int64 entId = 2;
  151. int64 positionId = 3; //职位id
  152. string appId = 4;
  153. }
  154. message UserMsgListReq {
  155. string userId = 1; //用户id
  156. string appid = 3; //应用标识
  157. int64 offSet = 4; //当前
  158. int64 pageSize = 5; //大小
  159. int64 msgType = 6; //是否区分类型
  160. int64 read = 7; // 是否区分已读未读 -1 不区分已读未读 0 未读 1 已读
  161. int64 SortSize = 8; //分类 每类数
  162. bool isColumn =9; //是否需要获取栏目
  163. bool isColumnNewMsg = 10; //是否需各栏目获取最新消息
  164. bool isMsgList =11; //是否需要列表信息
  165. int64 NewUserId =12;//私信相关
  166. int64 PositionId =13;//私信相关
  167. }
  168. message UserMsgListRes {
  169. int64 code = 1; //状态码
  170. string message = 2; //响应消息
  171. repeated Messages list = 3; //
  172. Messages last = 4; //
  173. repeated AllSortData column = 5; //
  174. int64 count = 6; //总数
  175. int64 unread = 7; //未读总数
  176. }
  177. message UserMsgList {
  178. repeated Messages data = 1; //
  179. repeated AllSortData sortData = 2; //
  180. int64 count = 3; //总数
  181. int64 unread = 4; //未读总数
  182. }
  183. // 发送微信模版消息
  184. message WxTmplMsg {
  185. string appid = 1; //应用标识
  186. string userIds = 2; //接受人 mongo_userId(多个用,分割)
  187. string openIds = 3; //接受人 openid(多个用,分割)
  188. string positionIds = 4; //接受人 职位id
  189. string url = 5; //消息跳转连接
  190. int64 msgType = 6; //信息类型 附件、图片、链接类型
  191. string tmplId = 7; //消息模版id 根据此字段判断发送模版
  192. }
  193. message AllSortData {
  194. int64 unreadMessages =1 ;
  195. string name =2;
  196. string img = 3;
  197. int64 msgType = 4; //是否区分类型;
  198. repeated Messages data = 5; //
  199. }
  200. message WxTmplResponse {
  201. int64 sendTotal = 1; //发送数量
  202. string message = 2; //信息
  203. }
  204. message UserUnreadMsgListReq {
  205. string userId = 1; //用户id
  206. string appid = 3; //应用标识
  207. int64 offSet = 4; //当前
  208. int64 pageSize = 5; //大小
  209. }
  210. message UserUnreadMsgListRes {
  211. int64 code = 1; //状态码
  212. string message = 2; //响应消息
  213. repeated Messages list = 3;
  214. int64 count = 4; //总数
  215. }
  216. service Message {
  217. //批量保存消息
  218. rpc multipleSaveMsg (multipleSaveMsgReq) returns (multipleSaveMsgResp);
  219. // 修改消息阅读状态
  220. rpc ChangeReadStatus (ChangeReadStatusReq) returns (Response);
  221. // 查询指定用户未读消息合计
  222. rpc GetUnreadCount (GetUnreadCountRequest) returns (GetUnreadCountResponse);
  223. // 查询指定用户的历史消息记录
  224. rpc FindUserMsg (FindUserMsgReq) returns (FindUserMsgRes);
  225. // 查询指定用户指定分类的未读消息合计
  226. rpc GetClassUnreadCount (GetClassUnreadCountReq) returns (GetUnreadCountResponse);
  227. // 获取指定用户指定分类的最新一条消息
  228. rpc GetLastMessage (GetLastMessageReq) returns (GetLastMessageRes);
  229. //查看详细详情
  230. rpc FindMessageDetail (MessageDetailReq) returns (MessageDetailResp);
  231. // 获取指定用户的分类及未读消息数量
  232. rpc GetUnreadClassCount (GetUnreadClassCountReq) returns (GetUnreadClassCountRes);
  233. // 获取指定用户收到消息的分类
  234. rpc GetMsgType (GetMsgTypeReq) returns (GetMsgTypeRes);
  235. // 查询指定用户的浮标消息
  236. rpc FindUserBuoyMsg (FindUserBuoyMsgReq) returns (FindUserBuoyMsgRes);
  237. // 一键清空未读消息
  238. rpc ClearUnreadMsg (ClearUnreadMsgReq) returns (Response);
  239. // new用户消息列表
  240. rpc UserMsgList (UserMsgListReq) returns (UserMsgListRes);
  241. // 发送微信模版消息
  242. rpc SendWxTmplMsg (WxTmplMsg) returns(Response);
  243. // 官网、移动端首页、工作桌面消息滚动
  244. rpc UserUnreadMsgList (UserUnreadMsgListReq) returns (UserUnreadMsgListRes);
  245. }