message.proto 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354
  1. syntax="proto2";
  2. package gss.message;
  3. //------------------------------------gss_src_req_t---------------------------------
  4. //struct gss_src_req_t
  5. //{
  6. // string TransQuery[] = optional(); /**< transquery from da tranfered by us */
  7. // int32_t ExtType[] = optional(); /**< 扩展query类型 */
  8. // int32_t SrcID = optional(); /**< table id */
  9. // int32_t SrcId = optional(); /**< table id */
  10. // int32_t Pos = optional(); /**< pos */
  11. // int32_t Place = optional(); /**< place */
  12. // int32_t Degree = optional(); /**< degree */
  13. // string Key = optional(),default(""); /**< us建议key */
  14. // string ReqKey = optional(),default(""); /**< us建议 ReqKey */
  15. // int32_t QueryType = optional(),default(0); /**< 类型,default=0 */
  16. // binary HighLight = optional(),default(""); /**< da飘红词 */
  17. // string RetFormat = optional(),default("html"); /**< 回传格式 */
  18. // string TagFilter = optional(),default(""); /**< Tag过滤信息 */
  19. // //SPEC REQ
  20. // int32_t SpReqType = optional(),default(0); /**< 特殊请求类型,正常为0 */
  21. // //FRO ZHIXIN USE
  22. // string UriKey = optional(); /**< UriKey 知心卡片使用 */
  23. // string EntityName = optional(); /**< 实体名 知心卡片使用 */
  24. //};
  25. message gss_src_req_t {
  26. repeated string TransQuery = 1; /**< transquery from da tranfered by us */
  27. repeated int32 ExtType = 2; /**< 扩展query类型 */
  28. optional int32 SrcID = 3; /**< table id */
  29. //optional int32 SrcId = 4; /**< table id */
  30. optional int32 Pos = 5; /**< pos */
  31. optional int32 Place = 6; /**< place */
  32. optional int32 Degree = 7; /**< degree */
  33. optional string Key = 8; /**< us建议key */
  34. optional string ReqKey = 9; /**< us建议 ReqKey */
  35. optional int32 QueryType = 10; /**< 类型,default=0 */
  36. optional bytes HighLight = 11; /**< da飘红词 */
  37. optional string RetFormat = 12 [default ="html"]; /**< 回传格式 */
  38. optional string TagFilter = 13; /**< Tag过滤信息 */
  39. //SPEC REQ
  40. optional int32 SpReqType = 14; /**< 特殊请求类型,正常为0 */
  41. //FRO ZHIXIN USE
  42. optional string UriKey = 15; /**< UriKey 知心卡片使用 */
  43. optional string EntityName = 16; /**< 实体名 知心卡片使用 */
  44. };
  45. //------------------------------------终端 ua 信息:us_gss_req_t---------------------------------
  46. //struct ua_info_t
  47. //{
  48. // string ua_os = optional(); /**< 操作系统 */
  49. // string ua_browser = optional(); /**< 浏览器 */
  50. // string ua_modal = optional(); /**< 机型 */
  51. // string ua_measure = optional(); /**< 尺寸 */
  52. // int32_t ua_res_x = optional(); /**< 分辨率宽 */
  53. // int32_t ua_res_y = optional(); /**< 分辨率高 */
  54. // binary ua_ext = optional(); /**< 扩展(预计会放操作系统版本os_version、浏览器版本browser_version)*/
  55. //};
  56. message ua_info_t {
  57. optional string ua_os = 1; /**< 操作系统 */
  58. optional string ua_browser = 2; /**< 浏览器 */
  59. optional string ua_modal = 3; /**< 机型 */
  60. optional string ua_measure = 4; /**< 尺寸 */
  61. optional int32 ua_res_x = 5; /**< 分辨率宽 */
  62. optional int32 ua_res_y = 6; /**< 分辨率高 */
  63. optional bytes ua_ext = 7; /**< 扩展(预计会放操作系统版本os_version、浏览器版本browser_version)*/
  64. };
  65. //------------------------------------app_info_t------------------------------------------------
  66. //struct app_info_t
  67. //{
  68. // string package; /*应用的packagename*/
  69. // int32_t version; /*应用的version code*/
  70. // uint32_t signmd5; /*包体签名*/
  71. //};
  72. message app_info_t {
  73. required string package = 1; /*应用的packagename*/
  74. required int32 version = 2; /*应用的version code*/
  75. required uint32 signmd5 = 3; /*包体签名*/
  76. }
  77. //------------------------------------us请求gss结构体:us_gss_req_t---------------------------------
  78. //struct us_gss_req_t
  79. //{
  80. // string OriginQuery; /**< 原始query */
  81. // int32_t UserIP; /**< 用户IP */
  82. // int32_t TimingNeed; /**< 时效性查询 */
  83. // uint64_t QueryID64 = optional(),default(0); /**< QueryID */
  84. // string ClientName = optional(),default("unknow"); /**< 调用方名称 */
  85. // int32_t ResNum = range(0,2000),default(20),optional(); /**< 翻页参数,当页结果数 */
  86. // int32_t PageNum = range(0,2000),default(0),optional(); /**< 翻页参数,结果偏移量 */
  87. // int32_t ctpl_or_php = optional(),default(0),range(0,1); /**< 是否smarty渲染 */
  88. // int32_t SeType = optional(),default(0); /**< 请求类型 0:US, 1:US_MID, 2:UI */
  89. // //int32_t KeepAlive; /**< 保持连接 */
  90. // string TemplateName; /**< 模版名 ex. baidu wisexmlnew */
  91. // int32_t sid[] = optional(); /**< 抽样id */
  92. // binary UrlParaPack = optional(); /**< Uri参数包 */
  93. // binary gssqa = optional(); /**< 经us透传的DA分析结果 */
  94. // string Cookie = optional(),default(""); /**< 用户cookie */
  95. // string province_name = optional(); /**< 省份信息 */
  96. // string city_name = optional(); /**< 城市信息 */
  97. // string isp_name = optional(); /**< 运营商信息 */
  98. // uint32_t SrcNum; /**< 请求table数量 */
  99. // string From = optional(),default("www"); /**< 请求来源 */
  100. // string Fmt = optional(),default("html"); /**< 请求格式 */
  101. // binary HighLight = optional(),default(""); /**< da飘红词 */
  102. // int32_t NeedHilightStr = optional(),default(0); /**< 是否回传飘红词 */
  103. // gss_src_req_t SrcArr[] = optional(); /**< table请求信息 */
  104. // //国际化新增参数
  105. // int64_t resultLang = optional(); /**< 用户需要的结果语言设置 */
  106. // int64_t resultLocale = optional(); /**< 用户需要的结果地域 */
  107. // //终端app 信息
  108. // app_info_t AppInfoArr[] = optional(); /**< 用户安装的app信息*/
  109. // //终端ua 信息
  110. // ua_info_t uaInfo = optional(); /**< 请求的终端信息 */
  111. // string useragent_full = optional(); /**< 请求的终端全部信息 */
  112. // //百度账号信息
  113. // int32_t uid = optional();
  114. // string uname = optional();
  115. // int32_t open_gssda_recall = optional();
  116. // int32_t prefetch_flag = optional(); /**< 针对wise-us。值为1表示预取请求,值为0表示正常检索请求 */
  117. //};
  118. // pb for us_gss_req_t:
  119. message us_gss_req_t {
  120. required string OriginQuery = 1; /**< 原始query */
  121. required int32 UserIP = 2; /**< 用户IP */
  122. required int32 TimingNeed = 3; /**< 时效性查询 */
  123. optional uint64 QueryID64 = 4 [default = 0]; /**< QueryID */
  124. optional string ClientName = 5 [default = "unknow"]; /**< 调用方名称 */
  125. //reserved 6 - 10
  126. optional int32 ResNum = 11 [default = 20]; /**< 翻页参数,当页结果数 */
  127. optional int32 PageNum = 12 [default = 0]; /**< 翻页参数,结果偏移量 */
  128. optional int32 ctpl_or_php = 13 [default = 0]; /**< 是否smarty渲染 */
  129. optional int32 SeType = 14 [default = 0]; /**< 请求类型 0:US, 1:US_MID, 2:UI */
  130. //int32_t KeepAlive; /**< 保持连接 */
  131. required string TemplateName = 15; /**< 模版名 ex. baidu wisexmlnew */
  132. repeated int32 sid = 16; /**< 抽样id */
  133. optional bytes UrlParaPack = 17; /**< Uri参数包*/
  134. optional bytes gssqa = 18; /**< 经us透传的DA分析结果 */
  135. optional string Cookie = 19; /**< 用户cookie */
  136. //reserved 20 - 30
  137. optional string province_name = 31; /**< 省份信息 */
  138. optional string city_name = 32; /**< 城市信息 */
  139. optional string isp_name = 33; /**< 运营商信息 */
  140. required uint32 SrcNum = 34; /**< 请求table数量 */
  141. optional string From = 35 [default = "www"]; /**< 请求来源 */
  142. optional string Fmt = 36 [default = "html"]; /**< 请求格式 */
  143. optional bytes HighLight = 37; /**< da飘红词 */
  144. optional int32 NeedHilightStr = 38 [default = 0]; /**< 是否回传飘红词 */
  145. repeated gss_src_req_t SrcArr = 39; /**< table请求信息 */
  146. //国际化新增参数
  147. optional int64 resultLang = 40; /**< 用户需要的结果语言设置 */
  148. optional int64 resultLocale = 41; /**< 用户需要的结果地域 */
  149. //终端app 信息
  150. repeated app_info_t AppInfoArr = 42; /**< 用户安装的app信息*/
  151. //终端ua 信息
  152. optional ua_info_t uaInfo = 43; /**< 请求的终端信息 */
  153. optional string useragent_full = 44; /**< 请求的终端全部信息 */
  154. //百度账号信息
  155. optional int32 uid = 45;
  156. optional string uname = 46;
  157. optional int32 open_gssda_recall = 47;
  158. optional int32 prefetch_flag = 48; /**< 针对wise-us。值为1表示预取请求,值为0表示正常检索请求*/
  159. //reserved 50 - 70
  160. //added by new gss:
  161. //for service distribution:
  162. optional string service_name = 71;
  163. //for normalized caller:
  164. optional string caller = 72;
  165. //for parsing UrlParaPack:
  166. optional UserAgent user_agent = 73;
  167. };
  168. /** uri相关请求参数, gss代码中定义的结构体: */
  169. //struct uri_req_t {
  170. // unsigned int uri_len; /**< uri长度 */
  171. // char uri[US2GSS_MAX_URI_LEN]; /**< uribuffer */
  172. // u_int uri_sign[2]; /**< 对uri的签名 */
  173. // char dsp[GSS_GEN_STR_LEN]; /**< dsp参数 */
  174. // npoint_t crd; /**< 用户百度地图墨卡托坐标 for lbs */
  175. // char os[GSS_GEN_STR_LEN]; /**< os操作系统参数 */
  176. // char osv[GSS_GEN_STR_LEN]; /**< osv操作系统版本参数 */
  177. // char mb[GSS_GEN_STR_LEN]; /**< mb浏览器参数 */
  178. // char mbv[GSS_GEN_STR_LEN]; /**< mbv浏览器版本参数*/
  179. // int apn; /**< opendata api的co参数中传递的翻页信息类似大搜索的pn */
  180. // int arn; /**< opendata api的co参数中传递的翻页信息类似大搜索的rn */
  181. // char cuid[GSS_GEN_STR_LEN]; /**< 移动用户唯一标识*/
  182. // char net_type[GSS_GEN_STR_LEN]; /**< 移动网络类型,0=>unknown,1=>wifi, 2=>2G, 3=>3G*/
  183. // int ignore_caller_auth; /**< 忽略调用方认证 */
  184. //};
  185. // 对应uri_req_t中的部分信息:
  186. message UserAgent {
  187. optional string dsp = 1; /**< dsp参数 */
  188. optional string os = 2; /**< os操作系统参数 */
  189. optional string osv = 3; /**< osv操作系统版本参数 */
  190. optional string mb = 4; /**< mb浏览器参数 */
  191. optional string mbv = 5; /**< mbv浏览器版本参数*/
  192. optional int32 apn = 6; /**< opendata api的co参数中传递的翻页信息类似大搜索的pn */
  193. optional int32 arn = 7; /**< opendata api的co参数中传递的翻页信息类似大搜索的rn */
  194. optional string cuid = 8; /**< 移动用户唯一标识*/
  195. optional string net_type = 9; /**< 移动网络类型,0=>unknown,1=>wifi, 2=>2G, 3=>3G*/
  196. };
  197. //------------------------------------gss给us子链接结构体: sub_url_t---------------------------------
  198. //struct sub_url_t
  199. //{
  200. // string SubURL; /**< sub url */
  201. // string SubURI = optional(); /**< sub uri */
  202. // string SubName = optional();
  203. // string SubPath = optional();
  204. // int32_t SiteId = optional(); /**< 子链接site id */
  205. // string SubEx = optional(); /**< extend */
  206. //};
  207. message sub_url_t {
  208. required string SubURL = 1; /**< sub url */
  209. optional string SubURI = 2; /**< sub uri */
  210. optional string SubName = 3;
  211. optional string SubPath = 4;
  212. optional int32 SiteId = 5; /**< 子链接site id */
  213. optional string SubEx = 6; /**< extend */
  214. };
  215. //------------------------------------gss单个结果结构体:gss_res_t---------------------------------
  216. //struct gss_res_t
  217. //{
  218. // string ResultURL; /**< 结果URL */
  219. // string Display = optional(),default(""); /**< 展现结果 */
  220. // int32_t Weight; /**< 权重 */
  221. // int32_t Sort = optional(); /**< 插入位置 */
  222. // int32_t SrcID = optional(); /**< id */
  223. // int32_t TimingNeed; /**< 时效性 */
  224. // uint32_t WiseStrategyFlag = optional(); /**< wise策略bitmap */
  225. // int32_t Degree = optional(); /**< 需求强度 */
  226. // int32_t ClickNeed = optional(); /**< 点击调权 */
  227. // int32_t StrategyInfo = optional(); /**< 策略附加信息 */
  228. // //SPEC REQ
  229. // int32_t SpReqType = optional(); /**< 特殊请求类型,正常为0 */
  230. // //FRO ZHIXIN USE
  231. // string UriKey = optional(); /**< UriKey 知心卡片使用 */
  232. // string EntityName = optional(); /**< 实体名 知心卡片使用 */
  233. // sub_url_t SubResult[50]; /**< 50条子链接 */
  234. // int32_t SubResNum = optional(),default(0); /**< 子链接 */
  235. // string DisplayLog = optional(); /**< 展现日志 */
  236. // binary DisplayData = optional(); /**< 特型展现数据 */
  237. // uint32_t ResType = optional(); /**< 资源是否带图*/
  238. // string Title = optional(); /**< 右侧去重名称*/
  239. // int32_t RecoverCacheTime = optional(); /**< us容灾cache,过滤不进人容灾的资源*/
  240. //};
  241. message gss_res_t {
  242. // pb for gss_res_t:
  243. required string ResultURL = 2; /**< 结果URL */
  244. optional string Display = 3; /**< 展现结果 */
  245. required int32 Weight = 4; /**< 权重 */
  246. optional int32 Sort = 5; /**< 插入位置 */
  247. optional int32 SrcID = 6; /**< id */
  248. required int32 TimingNeed = 7; /**< 时效性 */
  249. optional uint32 WiseStrategyFlag = 8; /**< wise策略bitmap */
  250. optional int32 Degree = 9; /**< 需求强度 */
  251. optional int32 ClickNeed = 10; /**< 点击调权 */
  252. optional int32 StrategyInfo = 11; /**< 策略附加信息 */
  253. //SPEC REQ
  254. optional int32 SpReqType = 12; /**< 特殊请求类型,正常为0 */
  255. //FRO ZHIXIN USE
  256. optional string UriKey = 13; /**< UriKey 知心卡片使用 */
  257. optional string EntityName = 14; /**< 实体名 知心卡片使用 */
  258. repeated sub_url_t SubResult = 15; /**< 50条子链接 */
  259. optional int32 SubResNum = 16; /**< 子链接 */
  260. optional string DisplayLog = 17; /**< 展现日志 */
  261. optional bytes DisplayData = 18; /**< 特型展现数据 */
  262. optional uint32 ResType = 19; /**< 资源是否带图*/
  263. optional string Title = 20; /**< 右侧去重名称*/
  264. optional int32 RecoverCacheTime = 21; /**< us容灾cache,过滤不进人容灾的资源*/
  265. //customized result messages:
  266. };
  267. //------------------------------------debug_info_t---------------------------------
  268. //struct item_t
  269. //{
  270. // string title;
  271. // string content;
  272. // int32_t parent;
  273. //};
  274. //struct strategy_bits_t
  275. //{
  276. // uint32_t bits[STRATEGY_INT_NUM];
  277. //};
  278. //struct debug_info_t
  279. //{
  280. // ///废弃, 使用idebug代替
  281. // item_t debug_info[] = optional();
  282. // string item_info[] = optional();
  283. // string anchor_info[] = optional();
  284. // ///通过ivar 发送的全部debug信息, 取代原debug_info
  285. // binary idebug = optional();
  286. //};
  287. message item_t {
  288. required string title = 1;
  289. required string content = 2;
  290. required int32 parent = 3;
  291. };
  292. message debug_info_t {
  293. optional bytes idebug = 1;
  294. repeated string item_info = 2;
  295. repeated string anchor_info = 3;
  296. ///废弃, 使用idebug代替
  297. repeated item_t debug_info = 4 [deprecated=true];
  298. };
  299. //------------------------------------gss_us_res_t---------------------------------
  300. // gss返回给us结构体
  301. //struct gss_us_res_t
  302. //{
  303. // int32_t ResultCode; /**< 返回状态码 */
  304. // uint64_t QueryID; /**< query id */
  305. // //集群合并后,加大最大返回结果包大小
  306. // gss_res_t Result[40]; /**< 返回结果 */
  307. // uint32_t ResultNum = range(0,40); /**< 返回结果数 */
  308. // debug_info_t info = optional(); /**< debug info */
  309. // int32_t bfe_cached_time = optional(); /**< cache失效时间 */
  310. // int32_t bfe_cached_islocate = optional(); /**< 是否有地域扩展 */
  311. // binary disp_data_url_ex = optional(); /**< 展现日志中url级别信息 */
  312. // binary disp_data_query_ex = optional(); /**< 展现日志中query级别信息 */
  313. //};
  314. // pb for gss_us_res_t:
  315. message gss_us_res_t {
  316. required int32 ResultCode = 1; /**< 返回状态码 */
  317. required uint64 QueryID = 2; /**< query id */
  318. //集群合并后,加大最大返回结果包大小
  319. repeated gss_res_t Result = 3; /**< 返回结果 */
  320. required uint32 ResultNum = 4; /**< 返回结果数 */
  321. optional debug_info_t info = 5; /**< debug info */
  322. optional int32 bfe_cached_time = 6; /**< cache失效时间 */
  323. optional int32 bfe_cached_islocate = 7; /**< 是否有地域扩展 */
  324. optional bytes disp_data_url_ex = 8; /**< 展现日志中url级别信息 */
  325. optional bytes disp_data_query_ex = 9; /**< 展现日志中query级别信息 */
  326. optional string name = 20; /* response name*/
  327. };