python-xray-api 26.10.21__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. python_xray_api-26.10.21.dist-info/METADATA +27 -0
  2. python_xray_api-26.10.21.dist-info/RECORD +258 -0
  3. python_xray_api-26.10.21.dist-info/WHEEL +5 -0
  4. python_xray_api-26.10.21.dist-info/licenses/LICENSE +674 -0
  5. python_xray_api-26.10.21.dist-info/top_level.txt +1 -0
  6. xray/__init__.py +0 -0
  7. xray/app/__init__.py +0 -0
  8. xray/app/commander/__init__.py +0 -0
  9. xray/app/commander/config_pb2.py +40 -0
  10. xray/app/commander/config_pb2_grpc.py +24 -0
  11. xray/app/dispatcher/__init__.py +0 -0
  12. xray/app/dispatcher/config_pb2.py +39 -0
  13. xray/app/dispatcher/config_pb2_grpc.py +24 -0
  14. xray/app/dns/__init__.py +0 -0
  15. xray/app/dns/config_pb2.py +45 -0
  16. xray/app/dns/config_pb2_grpc.py +24 -0
  17. xray/app/dns/fakedns/__init__.py +0 -0
  18. xray/app/dns/fakedns/fakedns_pb2.py +39 -0
  19. xray/app/dns/fakedns/fakedns_pb2_grpc.py +24 -0
  20. xray/app/geodata/__init__.py +0 -0
  21. xray/app/geodata/config_pb2.py +39 -0
  22. xray/app/geodata/config_pb2_grpc.py +24 -0
  23. xray/app/log/__init__.py +0 -0
  24. xray/app/log/command/__init__.py +0 -0
  25. xray/app/log/command/config_pb2.py +43 -0
  26. xray/app/log/command/config_pb2_grpc.py +97 -0
  27. xray/app/log/config_pb2.py +40 -0
  28. xray/app/log/config_pb2_grpc.py +24 -0
  29. xray/app/metrics/__init__.py +0 -0
  30. xray/app/metrics/config_pb2.py +37 -0
  31. xray/app/metrics/config_pb2_grpc.py +24 -0
  32. xray/app/observatory/__init__.py +0 -0
  33. xray/app/observatory/burst/__init__.py +0 -0
  34. xray/app/observatory/burst/config_pb2.py +39 -0
  35. xray/app/observatory/burst/config_pb2_grpc.py +24 -0
  36. xray/app/observatory/command/__init__.py +0 -0
  37. xray/app/observatory/command/command_pb2.py +44 -0
  38. xray/app/observatory/command/command_pb2_grpc.py +97 -0
  39. xray/app/observatory/config_pb2.py +47 -0
  40. xray/app/observatory/config_pb2_grpc.py +24 -0
  41. xray/app/policy/__init__.py +0 -0
  42. xray/app/policy/config_pb2.py +55 -0
  43. xray/app/policy/config_pb2_grpc.py +24 -0
  44. xray/app/proxyman/__init__.py +0 -0
  45. xray/app/proxyman/command/__init__.py +0 -0
  46. xray/app/proxyman/command/command_pb2.py +84 -0
  47. xray/app/proxyman/command/command_pb2_grpc.py +484 -0
  48. xray/app/proxyman/config_pb2.py +54 -0
  49. xray/app/proxyman/config_pb2_grpc.py +24 -0
  50. xray/app/reverse/__init__.py +0 -0
  51. xray/app/reverse/config_pb2.py +45 -0
  52. xray/app/reverse/config_pb2_grpc.py +24 -0
  53. xray/app/router/__init__.py +0 -0
  54. xray/app/router/command/__init__.py +0 -0
  55. xray/app/router/command/command_pb2.py +79 -0
  56. xray/app/router/command/command_pb2_grpc.py +355 -0
  57. xray/app/router/config_pb2.py +61 -0
  58. xray/app/router/config_pb2_grpc.py +24 -0
  59. xray/app/stats/__init__.py +0 -0
  60. xray/app/stats/command/__init__.py +0 -0
  61. xray/app/stats/command/command_pb2.py +73 -0
  62. xray/app/stats/command/command_pb2_grpc.py +355 -0
  63. xray/app/stats/config_pb2.py +39 -0
  64. xray/app/stats/config_pb2_grpc.py +24 -0
  65. xray/app/version/__init__.py +0 -0
  66. xray/app/version/config_pb2.py +37 -0
  67. xray/app/version/config_pb2_grpc.py +24 -0
  68. xray/common/__init__.py +0 -0
  69. xray/common/geodata/__init__.py +0 -0
  70. xray/common/geodata/geodat_pb2.py +61 -0
  71. xray/common/geodata/geodat_pb2_grpc.py +24 -0
  72. xray/common/log/__init__.py +0 -0
  73. xray/common/log/log_pb2.py +37 -0
  74. xray/common/log/log_pb2_grpc.py +24 -0
  75. xray/common/net/__init__.py +0 -0
  76. xray/common/net/address_pb2.py +37 -0
  77. xray/common/net/address_pb2_grpc.py +24 -0
  78. xray/common/net/destination_pb2.py +39 -0
  79. xray/common/net/destination_pb2_grpc.py +24 -0
  80. xray/common/net/network_pb2.py +39 -0
  81. xray/common/net/network_pb2_grpc.py +24 -0
  82. xray/common/net/port_pb2.py +39 -0
  83. xray/common/net/port_pb2_grpc.py +24 -0
  84. xray/common/protocol/__init__.py +0 -0
  85. xray/common/protocol/headers_pb2.py +39 -0
  86. xray/common/protocol/headers_pb2_grpc.py +24 -0
  87. xray/common/protocol/server_spec_pb2.py +39 -0
  88. xray/common/protocol/server_spec_pb2_grpc.py +24 -0
  89. xray/common/protocol/user_pb2.py +38 -0
  90. xray/common/protocol/user_pb2_grpc.py +24 -0
  91. xray/common/serial/__init__.py +0 -0
  92. xray/common/serial/typed_message_pb2.py +37 -0
  93. xray/common/serial/typed_message_pb2_grpc.py +24 -0
  94. xray/core/__init__.py +0 -0
  95. xray/core/config_pb2.py +42 -0
  96. xray/core/config_pb2_grpc.py +24 -0
  97. xray/proxy/__init__.py +0 -0
  98. xray/proxy/blackhole/__init__.py +0 -0
  99. xray/proxy/blackhole/config_pb2.py +39 -0
  100. xray/proxy/blackhole/config_pb2_grpc.py +24 -0
  101. xray/proxy/dns/__init__.py +0 -0
  102. xray/proxy/dns/config_pb2.py +43 -0
  103. xray/proxy/dns/config_pb2_grpc.py +24 -0
  104. xray/proxy/dokodemo/__init__.py +0 -0
  105. xray/proxy/dokodemo/config_pb2.py +43 -0
  106. xray/proxy/dokodemo/config_pb2_grpc.py +24 -0
  107. xray/proxy/freedom/__init__.py +0 -0
  108. xray/proxy/freedom/config_pb2.py +54 -0
  109. xray/proxy/freedom/config_pb2_grpc.py +24 -0
  110. xray/proxy/http/__init__.py +0 -0
  111. xray/proxy/http/config_pb2.py +48 -0
  112. xray/proxy/http/config_pb2_grpc.py +24 -0
  113. xray/proxy/hysteria/__init__.py +0 -0
  114. xray/proxy/hysteria/account/__init__.py +0 -0
  115. xray/proxy/hysteria/account/config_pb2.py +37 -0
  116. xray/proxy/hysteria/account/config_pb2_grpc.py +24 -0
  117. xray/proxy/hysteria/config_pb2.py +41 -0
  118. xray/proxy/hysteria/config_pb2_grpc.py +24 -0
  119. xray/proxy/loopback/__init__.py +0 -0
  120. xray/proxy/loopback/config_pb2.py +38 -0
  121. xray/proxy/loopback/config_pb2_grpc.py +24 -0
  122. xray/proxy/masque/__init__.py +0 -0
  123. xray/proxy/masque/config_pb2.py +43 -0
  124. xray/proxy/masque/config_pb2_grpc.py +24 -0
  125. xray/proxy/shadowsocks/__init__.py +0 -0
  126. xray/proxy/shadowsocks/config_pb2.py +46 -0
  127. xray/proxy/shadowsocks/config_pb2_grpc.py +24 -0
  128. xray/proxy/shadowsocks_2022/__init__.py +0 -0
  129. xray/proxy/shadowsocks_2022/config_pb2.py +50 -0
  130. xray/proxy/shadowsocks_2022/config_pb2_grpc.py +24 -0
  131. xray/proxy/socks/__init__.py +0 -0
  132. xray/proxy/socks/config_pb2.py +49 -0
  133. xray/proxy/socks/config_pb2_grpc.py +24 -0
  134. xray/proxy/trojan/__init__.py +0 -0
  135. xray/proxy/trojan/config_pb2.py +45 -0
  136. xray/proxy/trojan/config_pb2_grpc.py +24 -0
  137. xray/proxy/tun/__init__.py +0 -0
  138. xray/proxy/tun/config_pb2.py +37 -0
  139. xray/proxy/tun/config_pb2_grpc.py +24 -0
  140. xray/proxy/vless/__init__.py +0 -0
  141. xray/proxy/vless/account_pb2.py +40 -0
  142. xray/proxy/vless/account_pb2_grpc.py +24 -0
  143. xray/proxy/vless/encoding/__init__.py +0 -0
  144. xray/proxy/vless/encoding/addons_pb2.py +37 -0
  145. xray/proxy/vless/encoding/addons_pb2_grpc.py +24 -0
  146. xray/proxy/vless/inbound/__init__.py +0 -0
  147. xray/proxy/vless/inbound/config_pb2.py +40 -0
  148. xray/proxy/vless/inbound/config_pb2_grpc.py +24 -0
  149. xray/proxy/vless/outbound/__init__.py +0 -0
  150. xray/proxy/vless/outbound/config_pb2.py +38 -0
  151. xray/proxy/vless/outbound/config_pb2_grpc.py +24 -0
  152. xray/proxy/vmess/__init__.py +0 -0
  153. xray/proxy/vmess/account_pb2.py +38 -0
  154. xray/proxy/vmess/account_pb2_grpc.py +24 -0
  155. xray/proxy/vmess/inbound/__init__.py +0 -0
  156. xray/proxy/vmess/inbound/config_pb2.py +42 -0
  157. xray/proxy/vmess/inbound/config_pb2_grpc.py +24 -0
  158. xray/proxy/vmess/outbound/__init__.py +0 -0
  159. xray/proxy/vmess/outbound/config_pb2.py +38 -0
  160. xray/proxy/vmess/outbound/config_pb2_grpc.py +24 -0
  161. xray/proxy/wireguard/__init__.py +0 -0
  162. xray/proxy/wireguard/config_pb2.py +40 -0
  163. xray/proxy/wireguard/config_pb2_grpc.py +24 -0
  164. xray/transport/__init__.py +0 -0
  165. xray/transport/internet/__init__.py +0 -0
  166. xray/transport/internet/config_pb2.py +55 -0
  167. xray/transport/internet/config_pb2_grpc.py +24 -0
  168. xray/transport/internet/finalmask/__init__.py +0 -0
  169. xray/transport/internet/finalmask/filter/__init__.py +0 -0
  170. xray/transport/internet/finalmask/filter/config_pb2.py +38 -0
  171. xray/transport/internet/finalmask/filter/config_pb2_grpc.py +24 -0
  172. xray/transport/internet/finalmask/fragment/__init__.py +0 -0
  173. xray/transport/internet/finalmask/fragment/config_pb2.py +37 -0
  174. xray/transport/internet/finalmask/fragment/config_pb2_grpc.py +24 -0
  175. xray/transport/internet/finalmask/header/__init__.py +0 -0
  176. xray/transport/internet/finalmask/header/custom/__init__.py +0 -0
  177. xray/transport/internet/finalmask/header/custom/config_pb2.py +51 -0
  178. xray/transport/internet/finalmask/header/custom/config_pb2_grpc.py +24 -0
  179. xray/transport/internet/finalmask/mkcp/__init__.py +0 -0
  180. xray/transport/internet/finalmask/mkcp/aes128gcm/__init__.py +0 -0
  181. xray/transport/internet/finalmask/mkcp/aes128gcm/config_pb2.py +37 -0
  182. xray/transport/internet/finalmask/mkcp/aes128gcm/config_pb2_grpc.py +24 -0
  183. xray/transport/internet/finalmask/mkcp/header/__init__.py +0 -0
  184. xray/transport/internet/finalmask/mkcp/header/config_pb2.py +37 -0
  185. xray/transport/internet/finalmask/mkcp/header/config_pb2_grpc.py +24 -0
  186. xray/transport/internet/finalmask/mkcp/original/__init__.py +0 -0
  187. xray/transport/internet/finalmask/mkcp/original/config_pb2.py +37 -0
  188. xray/transport/internet/finalmask/mkcp/original/config_pb2_grpc.py +24 -0
  189. xray/transport/internet/finalmask/noise/__init__.py +0 -0
  190. xray/transport/internet/finalmask/noise/config_pb2.py +43 -0
  191. xray/transport/internet/finalmask/noise/config_pb2_grpc.py +24 -0
  192. xray/transport/internet/finalmask/realm/__init__.py +0 -0
  193. xray/transport/internet/finalmask/realm/config_pb2.py +42 -0
  194. xray/transport/internet/finalmask/realm/config_pb2_grpc.py +24 -0
  195. xray/transport/internet/finalmask/salamander/__init__.py +0 -0
  196. xray/transport/internet/finalmask/salamander/config_pb2.py +39 -0
  197. xray/transport/internet/finalmask/salamander/config_pb2_grpc.py +24 -0
  198. xray/transport/internet/finalmask/sudoku/__init__.py +0 -0
  199. xray/transport/internet/finalmask/sudoku/config_pb2.py +37 -0
  200. xray/transport/internet/finalmask/sudoku/config_pb2_grpc.py +24 -0
  201. xray/transport/internet/finalmask/udphop/__init__.py +0 -0
  202. xray/transport/internet/finalmask/udphop/config_pb2.py +37 -0
  203. xray/transport/internet/finalmask/udphop/config_pb2_grpc.py +24 -0
  204. xray/transport/internet/finalmask/xdns/__init__.py +0 -0
  205. xray/transport/internet/finalmask/xdns/config_pb2.py +44 -0
  206. xray/transport/internet/finalmask/xdns/config_pb2_grpc.py +24 -0
  207. xray/transport/internet/finalmask/xicmp/__init__.py +0 -0
  208. xray/transport/internet/finalmask/xicmp/config_pb2.py +37 -0
  209. xray/transport/internet/finalmask/xicmp/config_pb2_grpc.py +24 -0
  210. xray/transport/internet/finalmask/xmc/__init__.py +0 -0
  211. xray/transport/internet/finalmask/xmc/config_pb2.py +39 -0
  212. xray/transport/internet/finalmask/xmc/config_pb2_grpc.py +24 -0
  213. xray/transport/internet/grpc/__init__.py +0 -0
  214. xray/transport/internet/grpc/config_pb2.py +37 -0
  215. xray/transport/internet/grpc/config_pb2_grpc.py +24 -0
  216. xray/transport/internet/grpc/encoding/__init__.py +0 -0
  217. xray/transport/internet/grpc/encoding/stream_pb2.py +41 -0
  218. xray/transport/internet/grpc/encoding/stream_pb2_grpc.py +140 -0
  219. xray/transport/internet/headers/__init__.py +0 -0
  220. xray/transport/internet/headers/http/__init__.py +0 -0
  221. xray/transport/internet/headers/http/config_pb2.py +49 -0
  222. xray/transport/internet/headers/http/config_pb2_grpc.py +24 -0
  223. xray/transport/internet/headers/noop/__init__.py +0 -0
  224. xray/transport/internet/headers/noop/config_pb2.py +39 -0
  225. xray/transport/internet/headers/noop/config_pb2_grpc.py +24 -0
  226. xray/transport/internet/httpupgrade/__init__.py +0 -0
  227. xray/transport/internet/httpupgrade/config_pb2.py +41 -0
  228. xray/transport/internet/httpupgrade/config_pb2_grpc.py +24 -0
  229. xray/transport/internet/hysteria/__init__.py +0 -0
  230. xray/transport/internet/hysteria/config_pb2.py +41 -0
  231. xray/transport/internet/hysteria/config_pb2_grpc.py +24 -0
  232. xray/transport/internet/kcp/__init__.py +0 -0
  233. xray/transport/internet/kcp/config_pb2.py +37 -0
  234. xray/transport/internet/kcp/config_pb2_grpc.py +24 -0
  235. xray/transport/internet/masque/__init__.py +0 -0
  236. xray/transport/internet/masque/config_pb2.py +44 -0
  237. xray/transport/internet/masque/config_pb2_grpc.py +24 -0
  238. xray/transport/internet/reality/__init__.py +0 -0
  239. xray/transport/internet/reality/config_pb2.py +39 -0
  240. xray/transport/internet/reality/config_pb2_grpc.py +24 -0
  241. xray/transport/internet/splithttp/__init__.py +0 -0
  242. xray/transport/internet/splithttp/config_pb2.py +46 -0
  243. xray/transport/internet/splithttp/config_pb2_grpc.py +24 -0
  244. xray/transport/internet/tcp/__init__.py +0 -0
  245. xray/transport/internet/tcp/config_pb2.py +38 -0
  246. xray/transport/internet/tcp/config_pb2_grpc.py +24 -0
  247. xray/transport/internet/tls/__init__.py +0 -0
  248. xray/transport/internet/tls/config_pb2.py +42 -0
  249. xray/transport/internet/tls/config_pb2_grpc.py +24 -0
  250. xray/transport/internet/udp/__init__.py +0 -0
  251. xray/transport/internet/udp/config_pb2.py +37 -0
  252. xray/transport/internet/udp/config_pb2_grpc.py +24 -0
  253. xray/transport/internet/websocket/__init__.py +0 -0
  254. xray/transport/internet/websocket/config_pb2.py +41 -0
  255. xray/transport/internet/websocket/config_pb2_grpc.py +24 -0
  256. xray/transport/internet/xdrive/__init__.py +0 -0
  257. xray/transport/internet/xdrive/config_pb2.py +38 -0
  258. xray/transport/internet/xdrive/config_pb2_grpc.py +24 -0
@@ -0,0 +1,79 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: app/router/command/command.proto
5
+ # Protobuf Python Version: 7.35.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 7,
15
+ 35,
16
+ 1,
17
+ '',
18
+ 'app/router/command/command.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from xray.common.net import network_pb2 as common_dot_net_dot_network__pb2
26
+ from xray.common.serial import typed_message_pb2 as common_dot_serial_dot_typed__message__pb2
27
+
28
+
29
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n app/router/command/command.proto\x12\x17xray.app.router.command\x1a\x18\x63ommon/net/network.proto\x1a!common/serial/typed_message.proto\"\xbc\x03\n\x0eRoutingContext\x12\x12\n\nInboundTag\x18\x01 \x01(\t\x12)\n\x07Network\x18\x02 \x01(\x0e\x32\x18.xray.common.net.Network\x12\x11\n\tSourceIPs\x18\x03 \x03(\x0c\x12\x11\n\tTargetIPs\x18\x04 \x03(\x0c\x12\x12\n\nSourcePort\x18\x05 \x01(\r\x12\x12\n\nTargetPort\x18\x06 \x01(\r\x12\x14\n\x0cTargetDomain\x18\x07 \x01(\t\x12\x10\n\x08Protocol\x18\x08 \x01(\t\x12\x0c\n\x04User\x18\t \x01(\t\x12K\n\nAttributes\x18\n \x03(\x0b\x32\x37.xray.app.router.command.RoutingContext.AttributesEntry\x12\x19\n\x11OutboundGroupTags\x18\x0b \x03(\t\x12\x13\n\x0bOutboundTag\x18\x0c \x01(\t\x12\x10\n\x08LocalIPs\x18\r \x03(\x0c\x12\x11\n\tLocalPort\x18\x0e \x01(\r\x12\x12\n\nVlessRoute\x18\x0f \x01(\r\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"6\n\x1cSubscribeRoutingStatsRequest\x12\x16\n\x0e\x46ieldSelectors\x18\x01 \x03(\t\"\x82\x01\n\x10TestRouteRequest\x12?\n\x0eRoutingContext\x18\x01 \x01(\x0b\x32\'.xray.app.router.command.RoutingContext\x12\x16\n\x0e\x46ieldSelectors\x18\x02 \x03(\t\x12\x15\n\rPublishResult\x18\x03 \x01(\x08\"\"\n\x13PrincipleTargetInfo\x12\x0b\n\x03tag\x18\x01 \x03(\t\"\x1e\n\x0cOverrideInfo\x12\x0e\n\x06target\x18\x02 \x01(\t\"\x8e\x01\n\x0b\x42\x61lancerMsg\x12\x37\n\x08override\x18\x05 \x01(\x0b\x32%.xray.app.router.command.OverrideInfo\x12\x46\n\x10principle_target\x18\x06 \x01(\x0b\x32,.xray.app.router.command.PrincipleTargetInfo\"%\n\x16GetBalancerInfoRequest\x12\x0b\n\x03tag\x18\x01 \x01(\t\"Q\n\x17GetBalancerInfoResponse\x12\x36\n\x08\x62\x61lancer\x18\x01 \x01(\x0b\x32$.xray.app.router.command.BalancerMsg\"D\n\x1dOverrideBalancerTargetRequest\x12\x13\n\x0b\x62\x61lancerTag\x18\x01 \x01(\t\x12\x0e\n\x06target\x18\x02 \x01(\t\" \n\x1eOverrideBalancerTargetResponse\"X\n\x0e\x41\x64\x64RuleRequest\x12\x30\n\x06\x63onfig\x18\x01 \x01(\x0b\x32 .xray.common.serial.TypedMessage\x12\x14\n\x0cshouldAppend\x18\x02 \x01(\x08\"\x11\n\x0f\x41\x64\x64RuleResponse\"$\n\x11RemoveRuleRequest\x12\x0f\n\x07ruleTag\x18\x01 \x01(\t\"\x14\n\x12RemoveRuleResponse\"\x11\n\x0fListRuleRequest\",\n\x0cListRuleItem\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x0f\n\x07ruleTag\x18\x02 \x01(\t\"H\n\x10ListRuleResponse\x12\x34\n\x05rules\x18\x01 \x03(\x0b\x32%.xray.app.router.command.ListRuleItem\"\x08\n\x06\x43onfig2\xa2\x06\n\x0eRoutingService\x12{\n\x15SubscribeRoutingStats\x12\x35.xray.app.router.command.SubscribeRoutingStatsRequest\x1a\'.xray.app.router.command.RoutingContext\"\x00\x30\x01\x12\x61\n\tTestRoute\x12).xray.app.router.command.TestRouteRequest\x1a\'.xray.app.router.command.RoutingContext\"\x00\x12v\n\x0fGetBalancerInfo\x12/.xray.app.router.command.GetBalancerInfoRequest\x1a\x30.xray.app.router.command.GetBalancerInfoResponse\"\x00\x12\x8b\x01\n\x16OverrideBalancerTarget\x12\x36.xray.app.router.command.OverrideBalancerTargetRequest\x1a\x37.xray.app.router.command.OverrideBalancerTargetResponse\"\x00\x12^\n\x07\x41\x64\x64Rule\x12\'.xray.app.router.command.AddRuleRequest\x1a(.xray.app.router.command.AddRuleResponse\"\x00\x12g\n\nRemoveRule\x12*.xray.app.router.command.RemoveRuleRequest\x1a+.xray.app.router.command.RemoveRuleResponse\"\x00\x12\x61\n\x08ListRule\x12(.xray.app.router.command.ListRuleRequest\x1a).xray.app.router.command.ListRuleResponse\"\x00\x42g\n\x1b\x63om.xray.app.router.commandP\x01Z,github.com/xtls/xray-core/app/router/command\xaa\x02\x17Xray.App.Router.Commandb\x06proto3')
30
+
31
+ _globals = globals()
32
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
33
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.router.command.command_pb2', _globals)
34
+ if not _descriptor._USE_C_DESCRIPTORS:
35
+ _globals['DESCRIPTOR']._loaded_options = None
36
+ _globals['DESCRIPTOR']._serialized_options = b'\n\033com.xray.app.router.commandP\001Z,github.com/xtls/xray-core/app/router/command\252\002\027Xray.App.Router.Command'
37
+ _globals['_ROUTINGCONTEXT_ATTRIBUTESENTRY']._loaded_options = None
38
+ _globals['_ROUTINGCONTEXT_ATTRIBUTESENTRY']._serialized_options = b'8\001'
39
+ _globals['_ROUTINGCONTEXT']._serialized_start=123
40
+ _globals['_ROUTINGCONTEXT']._serialized_end=567
41
+ _globals['_ROUTINGCONTEXT_ATTRIBUTESENTRY']._serialized_start=518
42
+ _globals['_ROUTINGCONTEXT_ATTRIBUTESENTRY']._serialized_end=567
43
+ _globals['_SUBSCRIBEROUTINGSTATSREQUEST']._serialized_start=569
44
+ _globals['_SUBSCRIBEROUTINGSTATSREQUEST']._serialized_end=623
45
+ _globals['_TESTROUTEREQUEST']._serialized_start=626
46
+ _globals['_TESTROUTEREQUEST']._serialized_end=756
47
+ _globals['_PRINCIPLETARGETINFO']._serialized_start=758
48
+ _globals['_PRINCIPLETARGETINFO']._serialized_end=792
49
+ _globals['_OVERRIDEINFO']._serialized_start=794
50
+ _globals['_OVERRIDEINFO']._serialized_end=824
51
+ _globals['_BALANCERMSG']._serialized_start=827
52
+ _globals['_BALANCERMSG']._serialized_end=969
53
+ _globals['_GETBALANCERINFOREQUEST']._serialized_start=971
54
+ _globals['_GETBALANCERINFOREQUEST']._serialized_end=1008
55
+ _globals['_GETBALANCERINFORESPONSE']._serialized_start=1010
56
+ _globals['_GETBALANCERINFORESPONSE']._serialized_end=1091
57
+ _globals['_OVERRIDEBALANCERTARGETREQUEST']._serialized_start=1093
58
+ _globals['_OVERRIDEBALANCERTARGETREQUEST']._serialized_end=1161
59
+ _globals['_OVERRIDEBALANCERTARGETRESPONSE']._serialized_start=1163
60
+ _globals['_OVERRIDEBALANCERTARGETRESPONSE']._serialized_end=1195
61
+ _globals['_ADDRULEREQUEST']._serialized_start=1197
62
+ _globals['_ADDRULEREQUEST']._serialized_end=1285
63
+ _globals['_ADDRULERESPONSE']._serialized_start=1287
64
+ _globals['_ADDRULERESPONSE']._serialized_end=1304
65
+ _globals['_REMOVERULEREQUEST']._serialized_start=1306
66
+ _globals['_REMOVERULEREQUEST']._serialized_end=1342
67
+ _globals['_REMOVERULERESPONSE']._serialized_start=1344
68
+ _globals['_REMOVERULERESPONSE']._serialized_end=1364
69
+ _globals['_LISTRULEREQUEST']._serialized_start=1366
70
+ _globals['_LISTRULEREQUEST']._serialized_end=1383
71
+ _globals['_LISTRULEITEM']._serialized_start=1385
72
+ _globals['_LISTRULEITEM']._serialized_end=1429
73
+ _globals['_LISTRULERESPONSE']._serialized_start=1431
74
+ _globals['_LISTRULERESPONSE']._serialized_end=1503
75
+ _globals['_CONFIG']._serialized_start=1505
76
+ _globals['_CONFIG']._serialized_end=1513
77
+ _globals['_ROUTINGSERVICE']._serialized_start=1516
78
+ _globals['_ROUTINGSERVICE']._serialized_end=2318
79
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,355 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+ from xray.app.router.command import command_pb2 as app_dot_router_dot_command_dot_command__pb2
7
+
8
+ GRPC_GENERATED_VERSION = '1.84.1'
9
+ GRPC_VERSION = grpc.__version__
10
+ _version_not_supported = False
11
+
12
+ try:
13
+ from grpc._utilities import first_version_is_lower
14
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
15
+ except ImportError:
16
+ _version_not_supported = True
17
+
18
+ if _version_not_supported:
19
+ raise RuntimeError(
20
+ f'The grpc package installed is at version {GRPC_VERSION},'
21
+ + ' but the generated code in app/router/command/command_pb2_grpc.py depends on'
22
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
23
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
24
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
25
+ )
26
+
27
+
28
+ class RoutingServiceStub:
29
+ """Missing associated documentation comment in .proto file."""
30
+
31
+ def __init__(self, channel):
32
+ """Constructor.
33
+
34
+ Args:
35
+ channel: A grpc.Channel.
36
+ """
37
+ self.SubscribeRoutingStats = channel.unary_stream(
38
+ '/xray.app.router.command.RoutingService/SubscribeRoutingStats',
39
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.SubscribeRoutingStatsRequest.SerializeToString,
40
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.RoutingContext.FromString,
41
+ _registered_method=True)
42
+ self.TestRoute = channel.unary_unary(
43
+ '/xray.app.router.command.RoutingService/TestRoute',
44
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.TestRouteRequest.SerializeToString,
45
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.RoutingContext.FromString,
46
+ _registered_method=True)
47
+ self.GetBalancerInfo = channel.unary_unary(
48
+ '/xray.app.router.command.RoutingService/GetBalancerInfo',
49
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.GetBalancerInfoRequest.SerializeToString,
50
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.GetBalancerInfoResponse.FromString,
51
+ _registered_method=True)
52
+ self.OverrideBalancerTarget = channel.unary_unary(
53
+ '/xray.app.router.command.RoutingService/OverrideBalancerTarget',
54
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.OverrideBalancerTargetRequest.SerializeToString,
55
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.OverrideBalancerTargetResponse.FromString,
56
+ _registered_method=True)
57
+ self.AddRule = channel.unary_unary(
58
+ '/xray.app.router.command.RoutingService/AddRule',
59
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.AddRuleRequest.SerializeToString,
60
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.AddRuleResponse.FromString,
61
+ _registered_method=True)
62
+ self.RemoveRule = channel.unary_unary(
63
+ '/xray.app.router.command.RoutingService/RemoveRule',
64
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.RemoveRuleRequest.SerializeToString,
65
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.RemoveRuleResponse.FromString,
66
+ _registered_method=True)
67
+ self.ListRule = channel.unary_unary(
68
+ '/xray.app.router.command.RoutingService/ListRule',
69
+ request_serializer=app_dot_router_dot_command_dot_command__pb2.ListRuleRequest.SerializeToString,
70
+ response_deserializer=app_dot_router_dot_command_dot_command__pb2.ListRuleResponse.FromString,
71
+ _registered_method=True)
72
+
73
+
74
+ class RoutingServiceServicer:
75
+ """Missing associated documentation comment in .proto file."""
76
+
77
+ def SubscribeRoutingStats(self, request, context):
78
+ """Missing associated documentation comment in .proto file."""
79
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
80
+ context.set_details('Method not implemented!')
81
+ raise NotImplementedError('Method not implemented!')
82
+
83
+ def TestRoute(self, request, context):
84
+ """Missing associated documentation comment in .proto file."""
85
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
86
+ context.set_details('Method not implemented!')
87
+ raise NotImplementedError('Method not implemented!')
88
+
89
+ def GetBalancerInfo(self, request, context):
90
+ """Missing associated documentation comment in .proto file."""
91
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
92
+ context.set_details('Method not implemented!')
93
+ raise NotImplementedError('Method not implemented!')
94
+
95
+ def OverrideBalancerTarget(self, request, context):
96
+ """Missing associated documentation comment in .proto file."""
97
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
98
+ context.set_details('Method not implemented!')
99
+ raise NotImplementedError('Method not implemented!')
100
+
101
+ def AddRule(self, request, context):
102
+ """Missing associated documentation comment in .proto file."""
103
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
104
+ context.set_details('Method not implemented!')
105
+ raise NotImplementedError('Method not implemented!')
106
+
107
+ def RemoveRule(self, request, context):
108
+ """Missing associated documentation comment in .proto file."""
109
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
110
+ context.set_details('Method not implemented!')
111
+ raise NotImplementedError('Method not implemented!')
112
+
113
+ def ListRule(self, request, context):
114
+ """Missing associated documentation comment in .proto file."""
115
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
116
+ context.set_details('Method not implemented!')
117
+ raise NotImplementedError('Method not implemented!')
118
+
119
+
120
+ def add_RoutingServiceServicer_to_server(servicer, server):
121
+ rpc_method_handlers = {
122
+ 'SubscribeRoutingStats': grpc.unary_stream_rpc_method_handler(
123
+ servicer.SubscribeRoutingStats,
124
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.SubscribeRoutingStatsRequest.FromString,
125
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.RoutingContext.SerializeToString,
126
+ ),
127
+ 'TestRoute': grpc.unary_unary_rpc_method_handler(
128
+ servicer.TestRoute,
129
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.TestRouteRequest.FromString,
130
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.RoutingContext.SerializeToString,
131
+ ),
132
+ 'GetBalancerInfo': grpc.unary_unary_rpc_method_handler(
133
+ servicer.GetBalancerInfo,
134
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.GetBalancerInfoRequest.FromString,
135
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.GetBalancerInfoResponse.SerializeToString,
136
+ ),
137
+ 'OverrideBalancerTarget': grpc.unary_unary_rpc_method_handler(
138
+ servicer.OverrideBalancerTarget,
139
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.OverrideBalancerTargetRequest.FromString,
140
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.OverrideBalancerTargetResponse.SerializeToString,
141
+ ),
142
+ 'AddRule': grpc.unary_unary_rpc_method_handler(
143
+ servicer.AddRule,
144
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.AddRuleRequest.FromString,
145
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.AddRuleResponse.SerializeToString,
146
+ ),
147
+ 'RemoveRule': grpc.unary_unary_rpc_method_handler(
148
+ servicer.RemoveRule,
149
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.RemoveRuleRequest.FromString,
150
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.RemoveRuleResponse.SerializeToString,
151
+ ),
152
+ 'ListRule': grpc.unary_unary_rpc_method_handler(
153
+ servicer.ListRule,
154
+ request_deserializer=app_dot_router_dot_command_dot_command__pb2.ListRuleRequest.FromString,
155
+ response_serializer=app_dot_router_dot_command_dot_command__pb2.ListRuleResponse.SerializeToString,
156
+ ),
157
+ }
158
+ generic_handler = grpc.method_handlers_generic_handler(
159
+ 'xray.app.router.command.RoutingService', rpc_method_handlers)
160
+ server.add_generic_rpc_handlers((generic_handler,))
161
+ server.add_registered_method_handlers('xray.app.router.command.RoutingService', rpc_method_handlers)
162
+
163
+
164
+ # This class is part of an EXPERIMENTAL API.
165
+ class RoutingService:
166
+ """Missing associated documentation comment in .proto file."""
167
+
168
+ @staticmethod
169
+ def SubscribeRoutingStats(request,
170
+ target,
171
+ options=(),
172
+ channel_credentials=None,
173
+ call_credentials=None,
174
+ insecure=False,
175
+ compression=None,
176
+ wait_for_ready=None,
177
+ timeout=None,
178
+ metadata=None):
179
+ return grpc.experimental.unary_stream(
180
+ request,
181
+ target,
182
+ '/xray.app.router.command.RoutingService/SubscribeRoutingStats',
183
+ app_dot_router_dot_command_dot_command__pb2.SubscribeRoutingStatsRequest.SerializeToString,
184
+ app_dot_router_dot_command_dot_command__pb2.RoutingContext.FromString,
185
+ options,
186
+ channel_credentials,
187
+ insecure,
188
+ call_credentials,
189
+ compression,
190
+ wait_for_ready,
191
+ timeout,
192
+ metadata,
193
+ _registered_method=True)
194
+
195
+ @staticmethod
196
+ def TestRoute(request,
197
+ target,
198
+ options=(),
199
+ channel_credentials=None,
200
+ call_credentials=None,
201
+ insecure=False,
202
+ compression=None,
203
+ wait_for_ready=None,
204
+ timeout=None,
205
+ metadata=None):
206
+ return grpc.experimental.unary_unary(
207
+ request,
208
+ target,
209
+ '/xray.app.router.command.RoutingService/TestRoute',
210
+ app_dot_router_dot_command_dot_command__pb2.TestRouteRequest.SerializeToString,
211
+ app_dot_router_dot_command_dot_command__pb2.RoutingContext.FromString,
212
+ options,
213
+ channel_credentials,
214
+ insecure,
215
+ call_credentials,
216
+ compression,
217
+ wait_for_ready,
218
+ timeout,
219
+ metadata,
220
+ _registered_method=True)
221
+
222
+ @staticmethod
223
+ def GetBalancerInfo(request,
224
+ target,
225
+ options=(),
226
+ channel_credentials=None,
227
+ call_credentials=None,
228
+ insecure=False,
229
+ compression=None,
230
+ wait_for_ready=None,
231
+ timeout=None,
232
+ metadata=None):
233
+ return grpc.experimental.unary_unary(
234
+ request,
235
+ target,
236
+ '/xray.app.router.command.RoutingService/GetBalancerInfo',
237
+ app_dot_router_dot_command_dot_command__pb2.GetBalancerInfoRequest.SerializeToString,
238
+ app_dot_router_dot_command_dot_command__pb2.GetBalancerInfoResponse.FromString,
239
+ options,
240
+ channel_credentials,
241
+ insecure,
242
+ call_credentials,
243
+ compression,
244
+ wait_for_ready,
245
+ timeout,
246
+ metadata,
247
+ _registered_method=True)
248
+
249
+ @staticmethod
250
+ def OverrideBalancerTarget(request,
251
+ target,
252
+ options=(),
253
+ channel_credentials=None,
254
+ call_credentials=None,
255
+ insecure=False,
256
+ compression=None,
257
+ wait_for_ready=None,
258
+ timeout=None,
259
+ metadata=None):
260
+ return grpc.experimental.unary_unary(
261
+ request,
262
+ target,
263
+ '/xray.app.router.command.RoutingService/OverrideBalancerTarget',
264
+ app_dot_router_dot_command_dot_command__pb2.OverrideBalancerTargetRequest.SerializeToString,
265
+ app_dot_router_dot_command_dot_command__pb2.OverrideBalancerTargetResponse.FromString,
266
+ options,
267
+ channel_credentials,
268
+ insecure,
269
+ call_credentials,
270
+ compression,
271
+ wait_for_ready,
272
+ timeout,
273
+ metadata,
274
+ _registered_method=True)
275
+
276
+ @staticmethod
277
+ def AddRule(request,
278
+ target,
279
+ options=(),
280
+ channel_credentials=None,
281
+ call_credentials=None,
282
+ insecure=False,
283
+ compression=None,
284
+ wait_for_ready=None,
285
+ timeout=None,
286
+ metadata=None):
287
+ return grpc.experimental.unary_unary(
288
+ request,
289
+ target,
290
+ '/xray.app.router.command.RoutingService/AddRule',
291
+ app_dot_router_dot_command_dot_command__pb2.AddRuleRequest.SerializeToString,
292
+ app_dot_router_dot_command_dot_command__pb2.AddRuleResponse.FromString,
293
+ options,
294
+ channel_credentials,
295
+ insecure,
296
+ call_credentials,
297
+ compression,
298
+ wait_for_ready,
299
+ timeout,
300
+ metadata,
301
+ _registered_method=True)
302
+
303
+ @staticmethod
304
+ def RemoveRule(request,
305
+ target,
306
+ options=(),
307
+ channel_credentials=None,
308
+ call_credentials=None,
309
+ insecure=False,
310
+ compression=None,
311
+ wait_for_ready=None,
312
+ timeout=None,
313
+ metadata=None):
314
+ return grpc.experimental.unary_unary(
315
+ request,
316
+ target,
317
+ '/xray.app.router.command.RoutingService/RemoveRule',
318
+ app_dot_router_dot_command_dot_command__pb2.RemoveRuleRequest.SerializeToString,
319
+ app_dot_router_dot_command_dot_command__pb2.RemoveRuleResponse.FromString,
320
+ options,
321
+ channel_credentials,
322
+ insecure,
323
+ call_credentials,
324
+ compression,
325
+ wait_for_ready,
326
+ timeout,
327
+ metadata,
328
+ _registered_method=True)
329
+
330
+ @staticmethod
331
+ def ListRule(request,
332
+ target,
333
+ options=(),
334
+ channel_credentials=None,
335
+ call_credentials=None,
336
+ insecure=False,
337
+ compression=None,
338
+ wait_for_ready=None,
339
+ timeout=None,
340
+ metadata=None):
341
+ return grpc.experimental.unary_unary(
342
+ request,
343
+ target,
344
+ '/xray.app.router.command.RoutingService/ListRule',
345
+ app_dot_router_dot_command_dot_command__pb2.ListRuleRequest.SerializeToString,
346
+ app_dot_router_dot_command_dot_command__pb2.ListRuleResponse.FromString,
347
+ options,
348
+ channel_credentials,
349
+ insecure,
350
+ call_credentials,
351
+ compression,
352
+ wait_for_ready,
353
+ timeout,
354
+ metadata,
355
+ _registered_method=True)
@@ -0,0 +1,61 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: app/router/config.proto
5
+ # Protobuf Python Version: 7.35.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 7,
15
+ 35,
16
+ 1,
17
+ '',
18
+ 'app/router/config.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from xray.common.serial import typed_message_pb2 as common_dot_serial_dot_typed__message__pb2
26
+ from xray.common.net import port_pb2 as common_dot_net_dot_port__pb2
27
+ from xray.common.net import network_pb2 as common_dot_net_dot_network__pb2
28
+ from xray.common.geodata import geodat_pb2 as common_dot_geodata_dot_geodat__pb2
29
+
30
+
31
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x61pp/router/config.proto\x12\x0fxray.app.router\x1a!common/serial/typed_message.proto\x1a\x15\x63ommon/net/port.proto\x1a\x18\x63ommon/net/network.proto\x1a\x1b\x63ommon/geodata/geodat.proto\"\x8a\x06\n\x0bRoutingRule\x12\r\n\x03tag\x18\x01 \x01(\tH\x00\x12\x17\n\rbalancing_tag\x18\x0c \x01(\tH\x00\x12\x10\n\x08rule_tag\x18\x13 \x01(\t\x12/\n\x06\x64omain\x18\x02 \x03(\x0b\x32\x1f.xray.common.geodata.DomainRule\x12\'\n\x02ip\x18\n \x03(\x0b\x32\x1b.xray.common.geodata.IPRule\x12,\n\tport_list\x18\x0e \x01(\x0b\x32\x19.xray.common.net.PortList\x12*\n\x08networks\x18\r \x03(\x0e\x32\x18.xray.common.net.Network\x12.\n\tsource_ip\x18\x0b \x03(\x0b\x32\x1b.xray.common.geodata.IPRule\x12\x33\n\x10source_port_list\x18\x10 \x01(\x0b\x32\x19.xray.common.net.PortList\x12\x12\n\nuser_email\x18\x07 \x03(\t\x12\x13\n\x0binbound_tag\x18\x08 \x03(\t\x12\x10\n\x08protocol\x18\t \x03(\t\x12@\n\nattributes\x18\x0f \x03(\x0b\x32,.xray.app.router.RoutingRule.AttributesEntry\x12-\n\x08local_ip\x18\x11 \x03(\x0b\x32\x1b.xray.common.geodata.IPRule\x12\x32\n\x0flocal_port_list\x18\x12 \x01(\x0b\x32\x19.xray.common.net.PortList\x12\x33\n\x10vless_route_list\x18\x14 \x01(\x0b\x32\x19.xray.common.net.PortList\x12\x0f\n\x07process\x18\x15 \x03(\t\x12/\n\x07webhook\x18\x16 \x01(\x0b\x32\x1e.xray.app.router.WebhookConfig\x12\x10\n\x08local_os\x18\x17 \x03(\t\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0c\n\ntarget_tag\"\xa1\x01\n\rWebhookConfig\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x15\n\rdeduplication\x18\x02 \x01(\r\x12<\n\x07headers\x18\x03 \x03(\x0b\x32+.xray.app.router.WebhookConfig.HeadersEntry\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9c\x01\n\rBalancingRule\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x19\n\x11outbound_selector\x18\x02 \x03(\t\x12\x10\n\x08strategy\x18\x03 \x01(\t\x12;\n\x11strategy_settings\x18\x04 \x01(\x0b\x32 .xray.common.serial.TypedMessage\x12\x14\n\x0c\x66\x61llback_tag\x18\x05 \x01(\t\">\n\x0eStrategyWeight\x12\x0e\n\x06regexp\x18\x01 \x01(\x08\x12\r\n\x05match\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\x02\"\x91\x01\n\x17StrategyLeastLoadConfig\x12.\n\x05\x63osts\x18\x02 \x03(\x0b\x32\x1f.xray.app.router.StrategyWeight\x12\x11\n\tbaselines\x18\x03 \x03(\x03\x12\x10\n\x08\x65xpected\x18\x04 \x01(\x05\x12\x0e\n\x06maxRTT\x18\x05 \x01(\x03\x12\x11\n\ttolerance\x18\x06 \x01(\x02\"\x81\x02\n\x06\x43onfig\x12?\n\x0f\x64omain_strategy\x18\x01 \x01(\x0e\x32&.xray.app.router.Config.DomainStrategy\x12*\n\x04rule\x18\x02 \x03(\x0b\x32\x1c.xray.app.router.RoutingRule\x12\x36\n\x0e\x62\x61lancing_rule\x18\x03 \x03(\x0b\x32\x1e.xray.app.router.BalancingRule\x12\x0e\n\x06script\x18\x04 \x01(\t\"B\n\x0e\x44omainStrategy\x12\x08\n\x04\x41sIs\x10\x00\x12\x10\n\x0cIpIfNonMatch\x10\x02\x12\x0e\n\nIpOnDemand\x10\x03\"\x04\x08\x01\x10\x01\x42O\n\x13\x63om.xray.app.routerP\x01Z$github.com/xtls/xray-core/app/router\xaa\x02\x0fXray.App.Routerb\x06proto3')
32
+
33
+ _globals = globals()
34
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
35
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.router.config_pb2', _globals)
36
+ if not _descriptor._USE_C_DESCRIPTORS:
37
+ _globals['DESCRIPTOR']._loaded_options = None
38
+ _globals['DESCRIPTOR']._serialized_options = b'\n\023com.xray.app.routerP\001Z$github.com/xtls/xray-core/app/router\252\002\017Xray.App.Router'
39
+ _globals['_ROUTINGRULE_ATTRIBUTESENTRY']._loaded_options = None
40
+ _globals['_ROUTINGRULE_ATTRIBUTESENTRY']._serialized_options = b'8\001'
41
+ _globals['_WEBHOOKCONFIG_HEADERSENTRY']._loaded_options = None
42
+ _globals['_WEBHOOKCONFIG_HEADERSENTRY']._serialized_options = b'8\001'
43
+ _globals['_ROUTINGRULE']._serialized_start=158
44
+ _globals['_ROUTINGRULE']._serialized_end=936
45
+ _globals['_ROUTINGRULE_ATTRIBUTESENTRY']._serialized_start=873
46
+ _globals['_ROUTINGRULE_ATTRIBUTESENTRY']._serialized_end=922
47
+ _globals['_WEBHOOKCONFIG']._serialized_start=939
48
+ _globals['_WEBHOOKCONFIG']._serialized_end=1100
49
+ _globals['_WEBHOOKCONFIG_HEADERSENTRY']._serialized_start=1054
50
+ _globals['_WEBHOOKCONFIG_HEADERSENTRY']._serialized_end=1100
51
+ _globals['_BALANCINGRULE']._serialized_start=1103
52
+ _globals['_BALANCINGRULE']._serialized_end=1259
53
+ _globals['_STRATEGYWEIGHT']._serialized_start=1261
54
+ _globals['_STRATEGYWEIGHT']._serialized_end=1323
55
+ _globals['_STRATEGYLEASTLOADCONFIG']._serialized_start=1326
56
+ _globals['_STRATEGYLEASTLOADCONFIG']._serialized_end=1471
57
+ _globals['_CONFIG']._serialized_start=1474
58
+ _globals['_CONFIG']._serialized_end=1731
59
+ _globals['_CONFIG_DOMAINSTRATEGY']._serialized_start=1665
60
+ _globals['_CONFIG_DOMAINSTRATEGY']._serialized_end=1731
61
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.84.1'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + ' but the generated code in app/router/config_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
File without changes
File without changes
@@ -0,0 +1,73 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: app/stats/command/command.proto
5
+ # Protobuf Python Version: 7.35.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 7,
15
+ 35,
16
+ 1,
17
+ '',
18
+ 'app/stats/command/command.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x61pp/stats/command/command.proto\x12\x16xray.app.stats.command\".\n\x0fGetStatsRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05reset\x18\x02 \x01(\x08\"#\n\x04Stat\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03\">\n\x10GetStatsResponse\x12*\n\x04stat\x18\x01 \x01(\x0b\x32\x1c.xray.app.stats.command.Stat\"3\n\x11QueryStatsRequest\x12\x0f\n\x07pattern\x18\x01 \x01(\t\x12\r\n\x05reset\x18\x02 \x01(\x08\"@\n\x12QueryStatsResponse\x12*\n\x04stat\x18\x01 \x03(\x0b\x32\x1c.xray.app.stats.command.Stat\"\x11\n\x0fSysStatsRequest\"\xc2\x01\n\x10SysStatsResponse\x12\x14\n\x0cNumGoroutine\x18\x01 \x01(\r\x12\r\n\x05NumGC\x18\x02 \x01(\r\x12\r\n\x05\x41lloc\x18\x03 \x01(\x04\x12\x12\n\nTotalAlloc\x18\x04 \x01(\x04\x12\x0b\n\x03Sys\x18\x05 \x01(\x04\x12\x0f\n\x07Mallocs\x18\x06 \x01(\x04\x12\r\n\x05\x46rees\x18\x07 \x01(\x04\x12\x13\n\x0bLiveObjects\x18\x08 \x01(\x04\x12\x14\n\x0cPauseTotalNs\x18\t \x01(\x04\x12\x0e\n\x06Uptime\x18\n \x01(\r\"\xa4\x01\n\x1cGetStatsOnlineIpListResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\x12J\n\x03ips\x18\x02 \x03(\x0b\x32=.xray.app.stats.command.GetStatsOnlineIpListResponse.IpsEntry\x1a*\n\x08IpsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\"\x1a\n\x18GetAllOnlineUsersRequest\"*\n\x19GetAllOnlineUsersResponse\x12\r\n\x05users\x18\x01 \x03(\t\".\n\rOnlineIPEntry\x12\n\n\x02ip\x18\x01 \x01(\t\x12\x11\n\tlast_seen\x18\x02 \x01(\x03\"3\n\x0fTrafficUserStat\x12\x0e\n\x06uplink\x18\x01 \x01(\x03\x12\x10\n\x08\x64ownlink\x18\x02 \x01(\x03\"\x87\x01\n\x08UserStat\x12\r\n\x05\x65mail\x18\x01 \x01(\t\x12\x32\n\x03ips\x18\x02 \x03(\x0b\x32%.xray.app.stats.command.OnlineIPEntry\x12\x38\n\x07traffic\x18\x03 \x01(\x0b\x32\'.xray.app.stats.command.TrafficUserStat\">\n\x14GetUsersStatsRequest\x12\x17\n\x0finclude_traffic\x18\x01 \x01(\x08\x12\r\n\x05reset\x18\x02 \x01(\x08\"H\n\x15GetUsersStatsResponse\x12/\n\x05users\x18\x01 \x03(\x0b\x32 .xray.app.stats.command.UserStat\"\x08\n\x06\x43onfig2\x86\x06\n\x0cStatsService\x12_\n\x08GetStats\x12\'.xray.app.stats.command.GetStatsRequest\x1a(.xray.app.stats.command.GetStatsResponse\"\x00\x12\x65\n\x0eGetStatsOnline\x12\'.xray.app.stats.command.GetStatsRequest\x1a(.xray.app.stats.command.GetStatsResponse\"\x00\x12\x65\n\nQueryStats\x12).xray.app.stats.command.QueryStatsRequest\x1a*.xray.app.stats.command.QueryStatsResponse\"\x00\x12\x62\n\x0bGetSysStats\x12\'.xray.app.stats.command.SysStatsRequest\x1a(.xray.app.stats.command.SysStatsResponse\"\x00\x12w\n\x14GetStatsOnlineIpList\x12\'.xray.app.stats.command.GetStatsRequest\x1a\x34.xray.app.stats.command.GetStatsOnlineIpListResponse\"\x00\x12z\n\x11GetAllOnlineUsers\x12\x30.xray.app.stats.command.GetAllOnlineUsersRequest\x1a\x31.xray.app.stats.command.GetAllOnlineUsersResponse\"\x00\x12n\n\rGetUsersStats\x12,.xray.app.stats.command.GetUsersStatsRequest\x1a-.xray.app.stats.command.GetUsersStatsResponse\"\x00\x42\x64\n\x1a\x63om.xray.app.stats.commandP\x01Z+github.com/xtls/xray-core/app/stats/command\xaa\x02\x16Xray.App.Stats.Commandb\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.stats.command.command_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'\n\032com.xray.app.stats.commandP\001Z+github.com/xtls/xray-core/app/stats/command\252\002\026Xray.App.Stats.Command'
35
+ _globals['_GETSTATSONLINEIPLISTRESPONSE_IPSENTRY']._loaded_options = None
36
+ _globals['_GETSTATSONLINEIPLISTRESPONSE_IPSENTRY']._serialized_options = b'8\001'
37
+ _globals['_GETSTATSREQUEST']._serialized_start=59
38
+ _globals['_GETSTATSREQUEST']._serialized_end=105
39
+ _globals['_STAT']._serialized_start=107
40
+ _globals['_STAT']._serialized_end=142
41
+ _globals['_GETSTATSRESPONSE']._serialized_start=144
42
+ _globals['_GETSTATSRESPONSE']._serialized_end=206
43
+ _globals['_QUERYSTATSREQUEST']._serialized_start=208
44
+ _globals['_QUERYSTATSREQUEST']._serialized_end=259
45
+ _globals['_QUERYSTATSRESPONSE']._serialized_start=261
46
+ _globals['_QUERYSTATSRESPONSE']._serialized_end=325
47
+ _globals['_SYSSTATSREQUEST']._serialized_start=327
48
+ _globals['_SYSSTATSREQUEST']._serialized_end=344
49
+ _globals['_SYSSTATSRESPONSE']._serialized_start=347
50
+ _globals['_SYSSTATSRESPONSE']._serialized_end=541
51
+ _globals['_GETSTATSONLINEIPLISTRESPONSE']._serialized_start=544
52
+ _globals['_GETSTATSONLINEIPLISTRESPONSE']._serialized_end=708
53
+ _globals['_GETSTATSONLINEIPLISTRESPONSE_IPSENTRY']._serialized_start=666
54
+ _globals['_GETSTATSONLINEIPLISTRESPONSE_IPSENTRY']._serialized_end=708
55
+ _globals['_GETALLONLINEUSERSREQUEST']._serialized_start=710
56
+ _globals['_GETALLONLINEUSERSREQUEST']._serialized_end=736
57
+ _globals['_GETALLONLINEUSERSRESPONSE']._serialized_start=738
58
+ _globals['_GETALLONLINEUSERSRESPONSE']._serialized_end=780
59
+ _globals['_ONLINEIPENTRY']._serialized_start=782
60
+ _globals['_ONLINEIPENTRY']._serialized_end=828
61
+ _globals['_TRAFFICUSERSTAT']._serialized_start=830
62
+ _globals['_TRAFFICUSERSTAT']._serialized_end=881
63
+ _globals['_USERSTAT']._serialized_start=884
64
+ _globals['_USERSTAT']._serialized_end=1019
65
+ _globals['_GETUSERSSTATSREQUEST']._serialized_start=1021
66
+ _globals['_GETUSERSSTATSREQUEST']._serialized_end=1083
67
+ _globals['_GETUSERSSTATSRESPONSE']._serialized_start=1085
68
+ _globals['_GETUSERSSTATSRESPONSE']._serialized_end=1157
69
+ _globals['_CONFIG']._serialized_start=1159
70
+ _globals['_CONFIG']._serialized_end=1167
71
+ _globals['_STATSSERVICE']._serialized_start=1170
72
+ _globals['_STATSSERVICE']._serialized_end=1944
73
+ # @@protoc_insertion_point(module_scope)