viam-sdk 0.25.2__py3-none-linux_armv7l.whl → 0.62.0__py3-none-linux_armv7l.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 (328) hide show
  1. viam/app/_logs.py +3 -6
  2. viam/app/app_client.py +606 -262
  3. viam/app/billing_client.py +60 -18
  4. viam/app/data_client.py +1086 -315
  5. viam/app/ml_training_client.py +51 -48
  6. viam/app/provisioning_client.py +3 -5
  7. viam/app/viam_client.py +105 -11
  8. viam/components/arm/__init__.py +1 -25
  9. viam/components/arm/arm.py +21 -22
  10. viam/components/arm/client.py +27 -30
  11. viam/components/arm/service.py +3 -3
  12. viam/components/audio_in/__init__.py +24 -0
  13. viam/components/audio_in/audio_in.py +74 -0
  14. viam/components/audio_in/client.py +76 -0
  15. viam/components/audio_in/service.py +83 -0
  16. viam/components/audio_input/__init__.py +1 -1
  17. viam/components/audio_input/audio_input.py +4 -3
  18. viam/components/audio_input/client.py +19 -8
  19. viam/components/audio_input/service.py +10 -0
  20. viam/components/audio_out/__init__.py +21 -0
  21. viam/components/audio_out/audio_out.py +72 -0
  22. viam/components/audio_out/client.py +67 -0
  23. viam/components/audio_out/service.py +63 -0
  24. viam/components/base/__init__.py +2 -10
  25. viam/components/base/base.py +20 -20
  26. viam/components/base/client.py +27 -30
  27. viam/components/board/__init__.py +2 -25
  28. viam/components/board/board.py +39 -77
  29. viam/components/board/client.py +39 -73
  30. viam/components/button/__init__.py +10 -0
  31. viam/components/button/button.py +41 -0
  32. viam/components/button/client.py +52 -0
  33. viam/components/button/service.py +46 -0
  34. viam/components/camera/__init__.py +1 -1
  35. viam/components/camera/camera.py +31 -22
  36. viam/components/camera/client.py +30 -20
  37. viam/components/camera/service.py +14 -12
  38. viam/components/component_base.py +10 -7
  39. viam/components/encoder/__init__.py +1 -1
  40. viam/components/encoder/client.py +15 -16
  41. viam/components/encoder/encoder.py +9 -9
  42. viam/components/gantry/__init__.py +1 -13
  43. viam/components/gantry/client.py +41 -28
  44. viam/components/gantry/gantry.py +48 -17
  45. viam/components/gantry/service.py +21 -5
  46. viam/components/generic/__init__.py +1 -1
  47. viam/components/generic/client.py +11 -7
  48. viam/components/generic/generic.py +3 -3
  49. viam/components/gripper/__init__.py +3 -12
  50. viam/components/gripper/client.py +43 -20
  51. viam/components/gripper/gripper.py +87 -12
  52. viam/components/gripper/service.py +32 -3
  53. viam/components/input/__init__.py +1 -14
  54. viam/components/input/client.py +22 -23
  55. viam/components/input/input.py +18 -12
  56. viam/components/motor/__init__.py +1 -21
  57. viam/components/motor/client.py +36 -42
  58. viam/components/motor/motor.py +24 -24
  59. viam/components/movement_sensor/__init__.py +1 -1
  60. viam/components/movement_sensor/client.py +33 -40
  61. viam/components/movement_sensor/movement_sensor.py +12 -12
  62. viam/components/pose_tracker/__init__.py +1 -1
  63. viam/components/pose_tracker/client.py +9 -8
  64. viam/components/pose_tracker/pose_tracker.py +2 -2
  65. viam/components/power_sensor/__init__.py +1 -1
  66. viam/components/power_sensor/client.py +15 -18
  67. viam/components/power_sensor/power_sensor.py +12 -12
  68. viam/components/sensor/__init__.py +1 -1
  69. viam/components/sensor/client.py +9 -8
  70. viam/components/sensor/sensor.py +5 -5
  71. viam/components/servo/__init__.py +1 -13
  72. viam/components/servo/client.py +18 -18
  73. viam/components/servo/servo.py +12 -12
  74. viam/components/switch/__init__.py +10 -0
  75. viam/components/switch/client.py +83 -0
  76. viam/components/switch/service.py +72 -0
  77. viam/components/switch/switch.py +95 -0
  78. viam/gen/app/agent/v1/agent_pb2.py +40 -29
  79. viam/gen/app/agent/v1/agent_pb2.pyi +73 -11
  80. viam/gen/app/cloudslam/v1/cloud_slam_pb2.py +45 -42
  81. viam/gen/app/data/v1/data_grpc.py +98 -2
  82. viam/gen/app/data/v1/data_pb2.py +238 -119
  83. viam/gen/app/data/v1/data_pb2.pyi +804 -34
  84. viam/gen/app/datapipelines/v1/data_pipelines_grpc.py +84 -0
  85. viam/gen/app/datapipelines/v1/data_pipelines_pb2.py +57 -0
  86. viam/gen/app/datapipelines/v1/data_pipelines_pb2.pyi +387 -0
  87. viam/gen/app/dataset/v1/dataset_grpc.py +10 -2
  88. viam/gen/app/dataset/v1/dataset_pb2.py +38 -31
  89. viam/gen/app/dataset/v1/dataset_pb2.pyi +36 -1
  90. viam/gen/app/datasync/v1/data_sync_grpc.py +1 -1
  91. viam/gen/app/datasync/v1/data_sync_pb2.py +61 -51
  92. viam/gen/app/datasync/v1/data_sync_pb2.pyi +52 -12
  93. viam/gen/app/mlinference/__init__.py +0 -0
  94. viam/gen/app/mlinference/v1/__init__.py +0 -0
  95. viam/gen/app/mlinference/v1/ml_inference_grpc.py +28 -0
  96. viam/gen/app/mlinference/v1/ml_inference_pb2.py +23 -0
  97. viam/gen/app/mlinference/v1/ml_inference_pb2.pyi +63 -0
  98. viam/gen/app/mltraining/v1/ml_training_grpc.py +18 -2
  99. viam/gen/app/mltraining/v1/ml_training_pb2.py +134 -101
  100. viam/gen/app/mltraining/v1/ml_training_pb2.pyi +193 -7
  101. viam/gen/app/packages/v1/packages_pb2.py +43 -40
  102. viam/gen/app/v1/app_grpc.py +290 -2
  103. viam/gen/app/v1/app_pb2.py +670 -453
  104. viam/gen/app/v1/app_pb2.pyi +3133 -947
  105. viam/gen/app/v1/billing_grpc.py +34 -2
  106. viam/gen/app/v1/billing_pb2.py +94 -35
  107. viam/gen/app/v1/billing_pb2.pyi +314 -61
  108. viam/gen/app/v1/end_user_pb2.py +50 -29
  109. viam/gen/app/v1/robot_pb2.py +120 -111
  110. viam/gen/app/v1/robot_pb2.pyi +137 -15
  111. viam/gen/common/v1/common_pb2.py +86 -66
  112. viam/gen/common/v1/common_pb2.pyi +184 -8
  113. viam/gen/component/arm/v1/arm_grpc.py +18 -2
  114. viam/gen/component/arm/v1/arm_pb2.py +68 -55
  115. viam/gen/component/arm/v1/arm_pb2.pyi +73 -3
  116. viam/gen/component/audioin/__init__.py +0 -0
  117. viam/gen/component/audioin/v1/__init__.py +0 -0
  118. viam/gen/component/audioin/v1/audioin_grpc.py +54 -0
  119. viam/gen/component/audioin/v1/audioin_pb2.py +34 -0
  120. viam/gen/component/audioin/v1/audioin_pb2.pyi +94 -0
  121. viam/gen/component/audioinput/v1/audioinput_pb2.py +35 -32
  122. viam/gen/component/audioout/__init__.py +0 -0
  123. viam/gen/component/audioout/v1/__init__.py +0 -0
  124. viam/gen/component/audioout/v1/audioout_grpc.py +54 -0
  125. viam/gen/component/audioout/v1/audioout_pb2.py +32 -0
  126. viam/gen/component/audioout/v1/audioout_pb2.pyi +47 -0
  127. viam/gen/component/base/v1/base_pb2.py +57 -54
  128. viam/gen/component/board/v1/board_pb2.py +93 -90
  129. viam/gen/component/button/__init__.py +0 -0
  130. viam/gen/component/button/v1/__init__.py +0 -0
  131. viam/gen/component/button/v1/button_grpc.py +38 -0
  132. viam/gen/component/button/v1/button_pb2.py +28 -0
  133. viam/gen/component/button/v1/button_pb2.pyi +39 -0
  134. viam/gen/component/camera/v1/camera_pb2.py +58 -55
  135. viam/gen/component/camera/v1/camera_pb2.pyi +31 -7
  136. viam/gen/component/encoder/v1/encoder_pb2.py +35 -32
  137. viam/gen/component/gantry/v1/gantry_grpc.py +9 -1
  138. viam/gen/component/gantry/v1/gantry_pb2.py +56 -51
  139. viam/gen/component/generic/v1/generic_pb2.py +15 -12
  140. viam/gen/component/gripper/v1/gripper_grpc.py +18 -2
  141. viam/gen/component/gripper/v1/gripper_pb2.py +48 -37
  142. viam/gen/component/gripper/v1/gripper_pb2.pyi +43 -1
  143. viam/gen/component/inputcontroller/v1/input_controller_pb2.py +45 -42
  144. viam/gen/component/motor/v1/motor_pb2.py +77 -74
  145. viam/gen/component/movementsensor/v1/movementsensor_pb2.py +69 -66
  146. viam/gen/component/posetracker/v1/pose_tracker_pb2.py +25 -22
  147. viam/gen/component/powersensor/v1/powersensor_pb2.py +33 -30
  148. viam/gen/component/sensor/v1/sensor_pb2.py +17 -14
  149. viam/gen/component/servo/v1/servo_pb2.py +41 -38
  150. viam/gen/component/switch/__init__.py +0 -0
  151. viam/gen/component/switch/v1/__init__.py +0 -0
  152. viam/gen/component/switch/v1/switch_grpc.py +54 -0
  153. viam/gen/component/switch/v1/switch_pb2.py +40 -0
  154. viam/gen/component/switch/v1/switch_pb2.pyi +116 -0
  155. viam/gen/component/testecho/v1/testecho_pb2.py +29 -26
  156. viam/gen/module/v1/module_pb2.py +36 -33
  157. viam/gen/module/v1/module_pb2.pyi +7 -2
  158. viam/gen/proto/rpc/examples/echo/v1/echo_pb2.py +26 -23
  159. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_pb2.py +23 -20
  160. viam/gen/proto/rpc/v1/auth_pb2.py +27 -24
  161. viam/gen/proto/rpc/webrtc/v1/grpc_pb2.py +35 -32
  162. viam/gen/proto/rpc/webrtc/v1/signaling_pb2.py +62 -57
  163. viam/gen/proto/rpc/webrtc/v1/signaling_pb2.pyi +18 -4
  164. viam/gen/provisioning/v1/provisioning_grpc.py +10 -2
  165. viam/gen/provisioning/v1/provisioning_pb2.py +38 -31
  166. viam/gen/provisioning/v1/provisioning_pb2.pyi +20 -2
  167. viam/gen/robot/v1/robot_grpc.py +61 -29
  168. viam/gen/robot/v1/robot_pb2.py +186 -155
  169. viam/gen/robot/v1/robot_pb2.pyi +278 -59
  170. viam/gen/service/datamanager/v1/data_manager_grpc.py +11 -2
  171. viam/gen/service/datamanager/v1/data_manager_pb2.py +27 -17
  172. viam/gen/service/datamanager/v1/data_manager_pb2.pyi +47 -1
  173. viam/gen/service/discovery/__init__.py +0 -0
  174. viam/gen/service/discovery/v1/__init__.py +0 -0
  175. viam/gen/service/discovery/v1/discovery_grpc.py +39 -0
  176. viam/gen/service/discovery/v1/discovery_pb2.py +29 -0
  177. viam/gen/service/discovery/v1/discovery_pb2.pyi +51 -0
  178. viam/gen/service/generic/v1/generic_pb2.py +13 -10
  179. viam/gen/service/mlmodel/v1/mlmodel_pb2.py +75 -72
  180. viam/gen/service/motion/v1/motion_pb2.py +118 -85
  181. viam/gen/service/motion/v1/motion_pb2.pyi +130 -68
  182. viam/gen/service/navigation/v1/navigation_pb2.py +75 -72
  183. viam/gen/service/sensors/v1/sensors_pb2.py +59 -56
  184. viam/gen/service/shell/v1/shell_pb2.py +35 -32
  185. viam/gen/service/slam/v1/slam_pb2.py +43 -40
  186. viam/gen/service/slam/v1/slam_pb2.pyi +1 -1
  187. viam/gen/service/video/__init__.py +0 -0
  188. viam/gen/service/video/v1/__init__.py +0 -0
  189. viam/gen/service/video/v1/video_grpc.py +39 -0
  190. viam/gen/service/video/v1/video_pb2.py +29 -0
  191. viam/gen/service/video/v1/video_pb2.pyi +72 -0
  192. viam/gen/service/vision/v1/vision_pb2.py +60 -57
  193. viam/gen/service/vision/v1/vision_pb2.pyi +28 -3
  194. viam/gen/service/worldstatestore/__init__.py +0 -0
  195. viam/gen/service/worldstatestore/v1/__init__.py +0 -0
  196. viam/gen/service/worldstatestore/v1/world_state_store_grpc.py +55 -0
  197. viam/gen/service/worldstatestore/v1/world_state_store_pb2.py +39 -0
  198. viam/gen/service/worldstatestore/v1/world_state_store_pb2.pyi +171 -0
  199. viam/gen/stream/v1/stream_grpc.py +17 -1
  200. viam/gen/stream/v1/stream_pb2.py +34 -21
  201. viam/gen/stream/v1/stream_pb2.pyi +79 -1
  202. viam/gen/tagger/v1/tagger_pb2.py +9 -8
  203. viam/logging.py +77 -18
  204. viam/media/audio.py +28 -0
  205. viam/media/utils/pil/__init__.py +7 -3
  206. viam/media/video.py +80 -17
  207. viam/module/module.py +111 -38
  208. viam/module/resource_data_consumer.py +41 -0
  209. viam/module/service.py +9 -1
  210. viam/module/types.py +2 -4
  211. viam/proto/app/__init__.py +199 -0
  212. viam/proto/app/agent/__init__.py +5 -2
  213. viam/proto/app/billing.py +31 -4
  214. viam/proto/app/cloudslam/__init__.py +1 -0
  215. viam/proto/app/data/__init__.py +63 -0
  216. viam/proto/app/datapipelines/__init__.py +56 -0
  217. viam/proto/app/dataset/__init__.py +5 -0
  218. viam/proto/app/datasync/__init__.py +3 -0
  219. viam/proto/app/end_user.py +1 -0
  220. viam/proto/app/mlinference/__init__.py +15 -0
  221. viam/proto/app/mltraining/__init__.py +13 -0
  222. viam/proto/app/packages/__init__.py +1 -0
  223. viam/proto/app/robot.py +7 -0
  224. viam/proto/common/__init__.py +15 -0
  225. viam/proto/component/arm/__init__.py +7 -0
  226. viam/proto/component/audioin/__init__.py +16 -0
  227. viam/proto/component/audioinput/__init__.py +1 -0
  228. viam/proto/component/audioout/__init__.py +15 -0
  229. viam/proto/component/base/__init__.py +1 -0
  230. viam/proto/component/board/__init__.py +1 -0
  231. viam/proto/component/button/__init__.py +15 -0
  232. viam/proto/component/camera/__init__.py +1 -0
  233. viam/proto/component/encoder/__init__.py +1 -0
  234. viam/proto/component/gantry/__init__.py +1 -0
  235. viam/proto/component/generic/__init__.py +1 -0
  236. viam/proto/component/gripper/__init__.py +5 -0
  237. viam/proto/component/inputcontroller/__init__.py +1 -0
  238. viam/proto/component/motor/__init__.py +1 -0
  239. viam/proto/component/movementsensor/__init__.py +1 -0
  240. viam/proto/component/posetracker/__init__.py +1 -0
  241. viam/proto/component/powersensor/__init__.py +1 -0
  242. viam/proto/component/sensor/__init__.py +1 -0
  243. viam/proto/component/servo/__init__.py +1 -0
  244. viam/proto/component/switch/__init__.py +26 -0
  245. viam/proto/component/testecho/__init__.py +1 -0
  246. viam/proto/module/__init__.py +1 -0
  247. viam/proto/provisioning/__init__.py +5 -0
  248. viam/proto/robot/__init__.py +29 -8
  249. viam/proto/rpc/auth.py +1 -0
  250. viam/proto/rpc/examples/echo/__init__.py +1 -0
  251. viam/proto/rpc/examples/echoresource/__init__.py +1 -0
  252. viam/proto/rpc/webrtc/grpc.py +1 -0
  253. viam/proto/rpc/webrtc/signaling.py +3 -0
  254. viam/proto/service/datamanager/__init__.py +9 -1
  255. viam/proto/service/discovery/__init__.py +15 -0
  256. viam/proto/service/generic/__init__.py +1 -0
  257. viam/proto/service/mlmodel/__init__.py +1 -0
  258. viam/proto/service/motion/__init__.py +3 -0
  259. viam/proto/service/navigation/__init__.py +1 -0
  260. viam/proto/service/sensors/__init__.py +1 -0
  261. viam/proto/service/shell/__init__.py +1 -0
  262. viam/proto/service/slam/__init__.py +1 -0
  263. viam/proto/service/video/__init__.py +15 -0
  264. viam/proto/service/vision/__init__.py +1 -0
  265. viam/proto/service/worldstatestore/__init__.py +32 -0
  266. viam/proto/stream/__init__.py +11 -0
  267. viam/py.typed +0 -0
  268. viam/resource/base.py +12 -8
  269. viam/resource/easy_resource.py +24 -13
  270. viam/resource/manager.py +6 -5
  271. viam/resource/registry.py +39 -51
  272. viam/resource/rpc_client_base.py +33 -1
  273. viam/resource/types.py +13 -14
  274. viam/robot/client.py +190 -122
  275. viam/robot/service.py +2 -50
  276. viam/rpc/dial.py +54 -4
  277. viam/rpc/libviam_rust_utils.so +0 -0
  278. viam/rpc/server.py +25 -11
  279. viam/rpc/types.py +2 -4
  280. viam/services/discovery/__init__.py +12 -0
  281. viam/services/discovery/client.py +55 -0
  282. viam/services/discovery/discovery.py +52 -0
  283. viam/services/discovery/service.py +43 -0
  284. viam/services/generic/__init__.py +1 -1
  285. viam/services/generic/client.py +8 -5
  286. viam/services/generic/generic.py +2 -2
  287. viam/services/mlmodel/__init__.py +1 -1
  288. viam/services/mlmodel/client.py +17 -7
  289. viam/services/mlmodel/mlmodel.py +23 -12
  290. viam/services/mlmodel/service.py +5 -2
  291. viam/services/mlmodel/utils.py +11 -1
  292. viam/services/motion/__init__.py +2 -2
  293. viam/services/motion/client.py +32 -32
  294. viam/services/motion/motion.py +66 -62
  295. viam/services/navigation/__init__.py +1 -1
  296. viam/services/navigation/client.py +30 -20
  297. viam/services/navigation/navigation.py +23 -23
  298. viam/services/service_base.py +13 -9
  299. viam/services/service_client_base.py +3 -3
  300. viam/services/slam/__init__.py +1 -1
  301. viam/services/slam/client.py +15 -10
  302. viam/services/slam/slam.py +11 -11
  303. viam/services/vision/__init__.py +1 -1
  304. viam/services/vision/client.py +31 -24
  305. viam/services/vision/service.py +8 -8
  306. viam/services/vision/vision.py +36 -53
  307. viam/services/worldstatestore/__init__.py +18 -0
  308. viam/services/worldstatestore/client.py +94 -0
  309. viam/services/worldstatestore/service.py +55 -0
  310. viam/services/worldstatestore/worldstatestore.py +90 -0
  311. viam/sessions_client.py +115 -46
  312. viam/streams.py +3 -6
  313. viam/utils.py +44 -14
  314. viam/version_metadata.py +4 -0
  315. {viam_sdk-0.25.2.dist-info → viam_sdk-0.62.0.dist-info}/METADATA +27 -28
  316. viam_sdk-0.62.0.dist-info/RECORD +514 -0
  317. {viam_sdk-0.25.2.dist-info → viam_sdk-0.62.0.dist-info}/WHEEL +1 -1
  318. viam/gen/proto/rpc/examples/fileupload/v1/fileupload_grpc.py +0 -27
  319. viam/gen/proto/rpc/examples/fileupload/v1/fileupload_pb2.py +0 -18
  320. viam/gen/proto/rpc/examples/fileupload/v1/fileupload_pb2.pyi +0 -45
  321. viam/proto/rpc/examples/fileupload/__init__.py +0 -18
  322. viam/services/sensors/__init__.py +0 -5
  323. viam/services/sensors/client.py +0 -65
  324. viam_sdk-0.25.2.dist-info/LICENSE +0 -202
  325. viam_sdk-0.25.2.dist-info/RECORD +0 -442
  326. /viam/gen/{proto/rpc/examples/fileupload → app/datapipelines}/__init__.py +0 -0
  327. /viam/gen/{proto/rpc/examples/fileupload → app/datapipelines}/v1/__init__.py +0 -0
  328. /LICENSE → /viam_sdk-0.62.0.dist-info/licenses/LICENSE +0 -0
@@ -37,16 +37,88 @@ PEER_CONNECTION_TYPE_GRPC: PeerConnectionType.ValueType
37
37
  PEER_CONNECTION_TYPE_WEBRTC: PeerConnectionType.ValueType
38
38
  global___PeerConnectionType = PeerConnectionType
39
39
 
40
+ @typing.final
41
+ class TunnelRequest(google.protobuf.message.Message):
42
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
43
+ DESTINATION_PORT_FIELD_NUMBER: builtins.int
44
+ DATA_FIELD_NUMBER: builtins.int
45
+ destination_port: builtins.int
46
+ data: builtins.bytes
47
+
48
+ def __init__(self, *, destination_port: builtins.int=..., data: builtins.bytes=...) -> None:
49
+ ...
50
+
51
+ def ClearField(self, field_name: typing.Literal['data', b'data', 'destination_port', b'destination_port']) -> None:
52
+ ...
53
+ global___TunnelRequest = TunnelRequest
54
+
55
+ @typing.final
56
+ class TunnelResponse(google.protobuf.message.Message):
57
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
58
+ DATA_FIELD_NUMBER: builtins.int
59
+ data: builtins.bytes
60
+
61
+ def __init__(self, *, data: builtins.bytes=...) -> None:
62
+ ...
63
+
64
+ def ClearField(self, field_name: typing.Literal['data', b'data']) -> None:
65
+ ...
66
+ global___TunnelResponse = TunnelResponse
67
+
68
+ @typing.final
69
+ class ListTunnelsRequest(google.protobuf.message.Message):
70
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
71
+
72
+ def __init__(self) -> None:
73
+ ...
74
+ global___ListTunnelsRequest = ListTunnelsRequest
75
+
76
+ @typing.final
77
+ class ListTunnelsResponse(google.protobuf.message.Message):
78
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
79
+ TUNNELS_FIELD_NUMBER: builtins.int
80
+
81
+ @property
82
+ def tunnels(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Tunnel]:
83
+ ...
84
+
85
+ def __init__(self, *, tunnels: collections.abc.Iterable[global___Tunnel] | None=...) -> None:
86
+ ...
87
+
88
+ def ClearField(self, field_name: typing.Literal['tunnels', b'tunnels']) -> None:
89
+ ...
90
+ global___ListTunnelsResponse = ListTunnelsResponse
91
+
92
+ @typing.final
93
+ class Tunnel(google.protobuf.message.Message):
94
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
95
+ PORT_FIELD_NUMBER: builtins.int
96
+ CONNECTION_TIMEOUT_FIELD_NUMBER: builtins.int
97
+ port: builtins.int
98
+
99
+ @property
100
+ def connection_timeout(self) -> google.protobuf.duration_pb2.Duration:
101
+ ...
102
+
103
+ def __init__(self, *, port: builtins.int=..., connection_timeout: google.protobuf.duration_pb2.Duration | None=...) -> None:
104
+ ...
105
+
106
+ def HasField(self, field_name: typing.Literal['connection_timeout', b'connection_timeout']) -> builtins.bool:
107
+ ...
108
+
109
+ def ClearField(self, field_name: typing.Literal['connection_timeout', b'connection_timeout', 'port', b'port']) -> None:
110
+ ...
111
+ global___Tunnel = Tunnel
112
+
40
113
  @typing.final
41
114
  class FrameSystemConfig(google.protobuf.message.Message):
42
- """this is an experimental API message"""
43
115
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
44
116
  FRAME_FIELD_NUMBER: builtins.int
45
117
  KINEMATICS_FIELD_NUMBER: builtins.int
46
118
 
47
119
  @property
48
120
  def frame(self) -> common.v1.common_pb2.Transform:
49
- ...
121
+ """this is an experimental API message"""
50
122
 
51
123
  @property
52
124
  def kinematics(self) -> google.protobuf.struct_pb2.Struct:
@@ -153,7 +225,7 @@ class TransformPCDRequest(google.protobuf.message.Message):
153
225
  SOURCE_FIELD_NUMBER: builtins.int
154
226
  DESTINATION_FIELD_NUMBER: builtins.int
155
227
  point_cloud_pcd: builtins.bytes
156
- 'the point clouds to transform. This should be in the PCD format\n encoded into bytes: https://pointclouds.org/documentation/tutorials/pcd_file_format.html\n '
228
+ 'the point clouds to transform. This should be in the PCD format,\n [encoded into bytes](https://pointclouds.org/documentation/tutorials/pcd_file_format.html).\n '
157
229
  source: builtins.str
158
230
  'the reference frame of the point cloud.'
159
231
  destination: builtins.str
@@ -424,76 +496,47 @@ class GetSessionsResponse(google.protobuf.message.Message):
424
496
  global___GetSessionsResponse = GetSessionsResponse
425
497
 
426
498
  @typing.final
427
- class DiscoveryQuery(google.protobuf.message.Message):
428
- """Discovery"""
499
+ class ModuleModel(google.protobuf.message.Message):
429
500
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
430
- SUBTYPE_FIELD_NUMBER: builtins.int
501
+ MODULE_NAME_FIELD_NUMBER: builtins.int
431
502
  MODEL_FIELD_NUMBER: builtins.int
432
- subtype: builtins.str
503
+ API_FIELD_NUMBER: builtins.int
504
+ FROM_LOCAL_MODULE_FIELD_NUMBER: builtins.int
505
+ module_name: builtins.str
433
506
  model: builtins.str
507
+ api: builtins.str
508
+ from_local_module: builtins.bool
434
509
 
435
- def __init__(self, *, subtype: builtins.str=..., model: builtins.str=...) -> None:
510
+ def __init__(self, *, module_name: builtins.str=..., model: builtins.str=..., api: builtins.str=..., from_local_module: builtins.bool=...) -> None:
436
511
  ...
437
512
 
438
- def ClearField(self, field_name: typing.Literal['model', b'model', 'subtype', b'subtype']) -> None:
513
+ def ClearField(self, field_name: typing.Literal['api', b'api', 'from_local_module', b'from_local_module', 'model', b'model', 'module_name', b'module_name']) -> None:
439
514
  ...
440
- global___DiscoveryQuery = DiscoveryQuery
515
+ global___ModuleModel = ModuleModel
441
516
 
442
517
  @typing.final
443
- class Discovery(google.protobuf.message.Message):
518
+ class GetModelsFromModulesRequest(google.protobuf.message.Message):
444
519
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
445
- QUERY_FIELD_NUMBER: builtins.int
446
- RESULTS_FIELD_NUMBER: builtins.int
447
-
448
- @property
449
- def query(self) -> global___DiscoveryQuery:
450
- ...
451
-
452
- @property
453
- def results(self) -> google.protobuf.struct_pb2.Struct:
454
- ...
455
520
 
456
- def __init__(self, *, query: global___DiscoveryQuery | None=..., results: google.protobuf.struct_pb2.Struct | None=...) -> None:
457
- ...
458
-
459
- def HasField(self, field_name: typing.Literal['query', b'query', 'results', b'results']) -> builtins.bool:
460
- ...
461
-
462
- def ClearField(self, field_name: typing.Literal['query', b'query', 'results', b'results']) -> None:
463
- ...
464
- global___Discovery = Discovery
465
-
466
- @typing.final
467
- class DiscoverComponentsRequest(google.protobuf.message.Message):
468
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
469
- QUERIES_FIELD_NUMBER: builtins.int
470
-
471
- @property
472
- def queries(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DiscoveryQuery]:
473
- ...
474
-
475
- def __init__(self, *, queries: collections.abc.Iterable[global___DiscoveryQuery] | None=...) -> None:
476
- ...
477
-
478
- def ClearField(self, field_name: typing.Literal['queries', b'queries']) -> None:
521
+ def __init__(self) -> None:
479
522
  ...
480
- global___DiscoverComponentsRequest = DiscoverComponentsRequest
523
+ global___GetModelsFromModulesRequest = GetModelsFromModulesRequest
481
524
 
482
525
  @typing.final
483
- class DiscoverComponentsResponse(google.protobuf.message.Message):
526
+ class GetModelsFromModulesResponse(google.protobuf.message.Message):
484
527
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
485
- DISCOVERY_FIELD_NUMBER: builtins.int
528
+ MODELS_FIELD_NUMBER: builtins.int
486
529
 
487
530
  @property
488
- def discovery(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Discovery]:
531
+ def models(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ModuleModel]:
489
532
  ...
490
533
 
491
- def __init__(self, *, discovery: collections.abc.Iterable[global___Discovery] | None=...) -> None:
534
+ def __init__(self, *, models: collections.abc.Iterable[global___ModuleModel] | None=...) -> None:
492
535
  ...
493
536
 
494
- def ClearField(self, field_name: typing.Literal['discovery', b'discovery']) -> None:
537
+ def ClearField(self, field_name: typing.Literal['models', b'models']) -> None:
495
538
  ...
496
- global___DiscoverComponentsResponse = DiscoverComponentsResponse
539
+ global___GetModelsFromModulesResponse = GetModelsFromModulesResponse
497
540
 
498
541
  @typing.final
499
542
  class Status(google.protobuf.message.Message):
@@ -811,19 +854,77 @@ global___GetMachineStatusRequest = GetMachineStatusRequest
811
854
  @typing.final
812
855
  class GetMachineStatusResponse(google.protobuf.message.Message):
813
856
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
857
+
858
+ class _State:
859
+ ValueType = typing.NewType('ValueType', builtins.int)
860
+ V: typing_extensions.TypeAlias = ValueType
861
+
862
+ class _StateEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[GetMachineStatusResponse._State.ValueType], builtins.type):
863
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
864
+ STATE_UNSPECIFIED: GetMachineStatusResponse._State.ValueType
865
+ STATE_INITIALIZING: GetMachineStatusResponse._State.ValueType
866
+ 'the machine is reachable but still in the process of configuring initial\n modules and resources.\n '
867
+ STATE_RUNNING: GetMachineStatusResponse._State.ValueType
868
+ 'the machine has finished initializing.'
869
+
870
+ class State(_State, metaclass=_StateEnumTypeWrapper):
871
+ ...
872
+ STATE_UNSPECIFIED: GetMachineStatusResponse.State.ValueType
873
+ STATE_INITIALIZING: GetMachineStatusResponse.State.ValueType
874
+ 'the machine is reachable but still in the process of configuring initial\n modules and resources.\n '
875
+ STATE_RUNNING: GetMachineStatusResponse.State.ValueType
876
+ 'the machine has finished initializing.'
814
877
  RESOURCES_FIELD_NUMBER: builtins.int
878
+ CONFIG_FIELD_NUMBER: builtins.int
879
+ STATE_FIELD_NUMBER: builtins.int
880
+ JOB_STATUSES_FIELD_NUMBER: builtins.int
881
+ state: global___GetMachineStatusResponse.State.ValueType
815
882
 
816
883
  @property
817
884
  def resources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceStatus]:
818
885
  ...
819
886
 
820
- def __init__(self, *, resources: collections.abc.Iterable[global___ResourceStatus] | None=...) -> None:
887
+ @property
888
+ def config(self) -> global___ConfigStatus:
821
889
  ...
822
890
 
823
- def ClearField(self, field_name: typing.Literal['resources', b'resources']) -> None:
891
+ @property
892
+ def job_statuses(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___JobStatus]:
893
+ ...
894
+
895
+ def __init__(self, *, resources: collections.abc.Iterable[global___ResourceStatus] | None=..., config: global___ConfigStatus | None=..., state: global___GetMachineStatusResponse.State.ValueType=..., job_statuses: collections.abc.Iterable[global___JobStatus] | None=...) -> None:
896
+ ...
897
+
898
+ def HasField(self, field_name: typing.Literal['config', b'config']) -> builtins.bool:
899
+ ...
900
+
901
+ def ClearField(self, field_name: typing.Literal['config', b'config', 'job_statuses', b'job_statuses', 'resources', b'resources', 'state', b'state']) -> None:
824
902
  ...
825
903
  global___GetMachineStatusResponse = GetMachineStatusResponse
826
904
 
905
+ @typing.final
906
+ class JobStatus(google.protobuf.message.Message):
907
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
908
+ JOB_NAME_FIELD_NUMBER: builtins.int
909
+ RECENT_SUCCESSFUL_RUNS_FIELD_NUMBER: builtins.int
910
+ RECENT_FAILED_RUNS_FIELD_NUMBER: builtins.int
911
+ job_name: builtins.str
912
+
913
+ @property
914
+ def recent_successful_runs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.timestamp_pb2.Timestamp]:
915
+ ...
916
+
917
+ @property
918
+ def recent_failed_runs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.timestamp_pb2.Timestamp]:
919
+ ...
920
+
921
+ def __init__(self, *, job_name: builtins.str=..., recent_successful_runs: collections.abc.Iterable[google.protobuf.timestamp_pb2.Timestamp] | None=..., recent_failed_runs: collections.abc.Iterable[google.protobuf.timestamp_pb2.Timestamp] | None=...) -> None:
922
+ ...
923
+
924
+ def ClearField(self, field_name: typing.Literal['job_name', b'job_name', 'recent_failed_runs', b'recent_failed_runs', 'recent_successful_runs', b'recent_successful_runs']) -> None:
925
+ ...
926
+ global___JobStatus = JobStatus
927
+
827
928
  @typing.final
828
929
  class ResourceStatus(google.protobuf.message.Message):
829
930
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
@@ -840,9 +941,11 @@ class ResourceStatus(google.protobuf.message.Message):
840
941
  STATE_CONFIGURING: ResourceStatus._State.ValueType
841
942
  'a resource that is being configured.'
842
943
  STATE_READY: ResourceStatus._State.ValueType
843
- 'a resource that has been successfully configured once and is not being\n re-configured or removed.\n '
944
+ 'a resource that has been successfully configured once, and is not re-configuring,\n being removed, or unhealthy.\n '
844
945
  STATE_REMOVING: ResourceStatus._State.ValueType
845
946
  'a resource that is being removed from the robot.'
947
+ STATE_UNHEALTHY: ResourceStatus._State.ValueType
948
+ 'a resource that is in an unhealthy state.'
846
949
 
847
950
  class State(_State, metaclass=_StateEnumTypeWrapper):
848
951
  ...
@@ -852,14 +955,23 @@ class ResourceStatus(google.protobuf.message.Message):
852
955
  STATE_CONFIGURING: ResourceStatus.State.ValueType
853
956
  'a resource that is being configured.'
854
957
  STATE_READY: ResourceStatus.State.ValueType
855
- 'a resource that has been successfully configured once and is not being\n re-configured or removed.\n '
958
+ 'a resource that has been successfully configured once, and is not re-configuring,\n being removed, or unhealthy.\n '
856
959
  STATE_REMOVING: ResourceStatus.State.ValueType
857
960
  'a resource that is being removed from the robot.'
961
+ STATE_UNHEALTHY: ResourceStatus.State.ValueType
962
+ 'a resource that is in an unhealthy state.'
858
963
  NAME_FIELD_NUMBER: builtins.int
859
964
  STATE_FIELD_NUMBER: builtins.int
860
965
  LAST_UPDATED_FIELD_NUMBER: builtins.int
966
+ REVISION_FIELD_NUMBER: builtins.int
967
+ ERROR_FIELD_NUMBER: builtins.int
968
+ CLOUD_METADATA_FIELD_NUMBER: builtins.int
861
969
  state: global___ResourceStatus.State.ValueType
862
970
  'current state.'
971
+ revision: builtins.str
972
+ 'revision of the last config that successfully updated this resource.'
973
+ error: builtins.str
974
+ 'error details for a resource. This is guaranteed to be null if the\n resource is ready and non-null if the resource unhealthy.\n '
863
975
 
864
976
  @property
865
977
  def name(self) -> common.v1.common_pb2.ResourceName:
@@ -869,12 +981,119 @@ class ResourceStatus(google.protobuf.message.Message):
869
981
  def last_updated(self) -> google.protobuf.timestamp_pb2.Timestamp:
870
982
  """state transition timestamp."""
871
983
 
872
- def __init__(self, *, name: common.v1.common_pb2.ResourceName | None=..., state: global___ResourceStatus.State.ValueType=..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
984
+ @property
985
+ def cloud_metadata(self) -> global___GetCloudMetadataResponse:
986
+ """infomation about resource orgID, locationID and partID"""
987
+
988
+ def __init__(self, *, name: common.v1.common_pb2.ResourceName | None=..., state: global___ResourceStatus.State.ValueType=..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None=..., revision: builtins.str=..., error: builtins.str=..., cloud_metadata: global___GetCloudMetadataResponse | None=...) -> None:
989
+ ...
990
+
991
+ def HasField(self, field_name: typing.Literal['_cloud_metadata', b'_cloud_metadata', 'cloud_metadata', b'cloud_metadata', 'last_updated', b'last_updated', 'name', b'name']) -> builtins.bool:
992
+ ...
993
+
994
+ def ClearField(self, field_name: typing.Literal['_cloud_metadata', b'_cloud_metadata', 'cloud_metadata', b'cloud_metadata', 'error', b'error', 'last_updated', b'last_updated', 'name', b'name', 'revision', b'revision', 'state', b'state']) -> None:
995
+ ...
996
+
997
+ def WhichOneof(self, oneof_group: typing.Literal['_cloud_metadata', b'_cloud_metadata']) -> typing.Literal['cloud_metadata'] | None:
998
+ ...
999
+ global___ResourceStatus = ResourceStatus
1000
+
1001
+ @typing.final
1002
+ class ConfigStatus(google.protobuf.message.Message):
1003
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1004
+ REVISION_FIELD_NUMBER: builtins.int
1005
+ LAST_UPDATED_FIELD_NUMBER: builtins.int
1006
+ revision: builtins.str
1007
+ 'revision of the last config that the machine successfully ingested.'
1008
+
1009
+ @property
1010
+ def last_updated(self) -> google.protobuf.timestamp_pb2.Timestamp:
1011
+ """config ingestion timestamp."""
1012
+
1013
+ def __init__(self, *, revision: builtins.str=..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
1014
+ ...
1015
+
1016
+ def HasField(self, field_name: typing.Literal['last_updated', b'last_updated']) -> builtins.bool:
1017
+ ...
1018
+
1019
+ def ClearField(self, field_name: typing.Literal['last_updated', b'last_updated', 'revision', b'revision']) -> None:
1020
+ ...
1021
+ global___ConfigStatus = ConfigStatus
1022
+
1023
+ @typing.final
1024
+ class GetVersionRequest(google.protobuf.message.Message):
1025
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1026
+
1027
+ def __init__(self) -> None:
873
1028
  ...
1029
+ global___GetVersionRequest = GetVersionRequest
1030
+
1031
+ @typing.final
1032
+ class GetVersionResponse(google.protobuf.message.Message):
1033
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1034
+ PLATFORM_FIELD_NUMBER: builtins.int
1035
+ VERSION_FIELD_NUMBER: builtins.int
1036
+ API_VERSION_FIELD_NUMBER: builtins.int
1037
+ platform: builtins.str
1038
+ 'platform type of viam-server (ie. `rdk` or `micro-rdk`).'
1039
+ version: builtins.str
1040
+ 'version of viam-server. If built without a version, it will be dev-<git hash>.'
1041
+ api_version: builtins.str
874
1042
 
875
- def HasField(self, field_name: typing.Literal['last_updated', b'last_updated', 'name', b'name']) -> builtins.bool:
1043
+ def __init__(self, *, platform: builtins.str=..., version: builtins.str=..., api_version: builtins.str=...) -> None:
876
1044
  ...
877
1045
 
878
- def ClearField(self, field_name: typing.Literal['last_updated', b'last_updated', 'name', b'name', 'state', b'state']) -> None:
1046
+ def ClearField(self, field_name: typing.Literal['api_version', b'api_version', 'platform', b'platform', 'version', b'version']) -> None:
1047
+ ...
1048
+ global___GetVersionResponse = GetVersionResponse
1049
+
1050
+ @typing.final
1051
+ class GetPoseRequest(google.protobuf.message.Message):
1052
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1053
+ COMPONENT_NAME_FIELD_NUMBER: builtins.int
1054
+ DESTINATION_FRAME_FIELD_NUMBER: builtins.int
1055
+ SUPPLEMENTAL_TRANSFORMS_FIELD_NUMBER: builtins.int
1056
+ EXTRA_FIELD_NUMBER: builtins.int
1057
+ component_name: builtins.str
1058
+ 'the component whose pose is being requested'
1059
+ destination_frame: builtins.str
1060
+ 'the reference frame in which the component\'s pose\n should be provided, if unset this defaults\n to the "world" reference frame\n '
1061
+
1062
+ @property
1063
+ def supplemental_transforms(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.Transform]:
1064
+ """pose information on any additional reference frames that are needed
1065
+ to compute the component's pose
1066
+ """
1067
+
1068
+ @property
1069
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
1070
+ """Additional arguments to the method"""
1071
+
1072
+ def __init__(self, *, component_name: builtins.str=..., destination_frame: builtins.str=..., supplemental_transforms: collections.abc.Iterable[common.v1.common_pb2.Transform] | None=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
1073
+ ...
1074
+
1075
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
1076
+ ...
1077
+
1078
+ def ClearField(self, field_name: typing.Literal['component_name', b'component_name', 'destination_frame', b'destination_frame', 'extra', b'extra', 'supplemental_transforms', b'supplemental_transforms']) -> None:
1079
+ ...
1080
+ global___GetPoseRequest = GetPoseRequest
1081
+
1082
+ @typing.final
1083
+ class GetPoseResponse(google.protobuf.message.Message):
1084
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1085
+ POSE_FIELD_NUMBER: builtins.int
1086
+
1087
+ @property
1088
+ def pose(self) -> common.v1.common_pb2.PoseInFrame:
1089
+ ...
1090
+
1091
+ def __init__(self, *, pose: common.v1.common_pb2.PoseInFrame | None=...) -> None:
1092
+ ...
1093
+
1094
+ def HasField(self, field_name: typing.Literal['pose', b'pose']) -> builtins.bool:
1095
+ ...
1096
+
1097
+ def ClearField(self, field_name: typing.Literal['pose', b'pose']) -> None:
879
1098
  ...
880
- global___ResourceStatus = ResourceStatus
1099
+ global___GetPoseResponse = GetPoseResponse
@@ -5,6 +5,7 @@ import grpclib.client
5
5
  import grpclib.exceptions
6
6
  if typing.TYPE_CHECKING:
7
7
  import grpclib.server
8
+ from .... import app
8
9
  from .... import common
9
10
  import google.api.annotations_pb2
10
11
  import google.protobuf.struct_pb2
@@ -20,8 +21,12 @@ class DataManagerServiceBase(abc.ABC):
20
21
  async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None:
21
22
  pass
22
23
 
24
+ @abc.abstractmethod
25
+ async def UploadBinaryDataToDatasets(self, stream: 'grpclib.server.Stream[service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsRequest, service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsResponse]') -> None:
26
+ pass
27
+
23
28
  def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
24
- return {'/viam.service.datamanager.v1.DataManagerService/Sync': grpclib.const.Handler(self.Sync, grpclib.const.Cardinality.UNARY_UNARY, service.datamanager.v1.data_manager_pb2.SyncRequest, service.datamanager.v1.data_manager_pb2.SyncResponse), '/viam.service.datamanager.v1.DataManagerService/DoCommand': grpclib.const.Handler(self.DoCommand, grpclib.const.Cardinality.UNARY_UNARY, common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)}
29
+ return {'/viam.service.datamanager.v1.DataManagerService/Sync': grpclib.const.Handler(self.Sync, grpclib.const.Cardinality.UNARY_UNARY, service.datamanager.v1.data_manager_pb2.SyncRequest, service.datamanager.v1.data_manager_pb2.SyncResponse), '/viam.service.datamanager.v1.DataManagerService/DoCommand': grpclib.const.Handler(self.DoCommand, grpclib.const.Cardinality.UNARY_UNARY, common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse), '/viam.service.datamanager.v1.DataManagerService/UploadBinaryDataToDatasets': grpclib.const.Handler(self.UploadBinaryDataToDatasets, grpclib.const.Cardinality.UNARY_UNARY, service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsRequest, service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsResponse)}
25
30
 
26
31
  class UnimplementedDataManagerServiceBase(DataManagerServiceBase):
27
32
 
@@ -31,8 +36,12 @@ class UnimplementedDataManagerServiceBase(DataManagerServiceBase):
31
36
  async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None:
32
37
  raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
33
38
 
39
+ async def UploadBinaryDataToDatasets(self, stream: 'grpclib.server.Stream[service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsRequest, service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsResponse]') -> None:
40
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
41
+
34
42
  class DataManagerServiceStub:
35
43
 
36
44
  def __init__(self, channel: grpclib.client.Channel) -> None:
37
45
  self.Sync = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.datamanager.v1.DataManagerService/Sync', service.datamanager.v1.data_manager_pb2.SyncRequest, service.datamanager.v1.data_manager_pb2.SyncResponse)
38
- self.DoCommand = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.datamanager.v1.DataManagerService/DoCommand', common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)
46
+ self.DoCommand = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.datamanager.v1.DataManagerService/DoCommand', common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)
47
+ self.UploadBinaryDataToDatasets = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.datamanager.v1.DataManagerService/UploadBinaryDataToDatasets', service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsRequest, service.datamanager.v1.data_manager_pb2.UploadBinaryDataToDatasetsResponse)
@@ -1,25 +1,35 @@
1
1
  """Generated protocol buffer code."""
2
- from google.protobuf.internal import builder as _builder
3
2
  from google.protobuf import descriptor as _descriptor
4
3
  from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import runtime_version as _runtime_version
5
5
  from google.protobuf import symbol_database as _symbol_database
6
+ from google.protobuf.internal import builder as _builder
7
+ _runtime_version.ValidateProtobufRuntimeVersion(_runtime_version.Domain.PUBLIC, 5, 29, 2, '', 'service/datamanager/v1/data_manager.proto')
6
8
  _sym_db = _symbol_database.Default()
9
+ from ....app.datasync.v1 import data_sync_pb2 as app_dot_datasync_dot_v1_dot_data__sync__pb2
7
10
  from ....common.v1 import common_pb2 as common_dot_v1_dot_common__pb2
8
11
  from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
9
12
  from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
10
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n)service/datamanager/v1/data_manager.proto\x12\x1bviam.service.datamanager.v1\x1a\x16common/v1/common.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto"P\n\x0bSyncRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"\x0e\n\x0cSyncResponse2\xbb\x02\n\x12DataManagerService\x12\x95\x01\n\x04Sync\x12(.viam.service.datamanager.v1.SyncRequest\x1a).viam.service.datamanager.v1.SyncResponse"8\x82\xd3\xe4\x93\x022"0/viam/api/v1/service/datamanager/{name}/datasync\x12\x8c\x01\n\tDoCommand\x12 .viam.common.v1.DoCommandRequest\x1a!.viam.common.v1.DoCommandResponse":\x82\xd3\xe4\x93\x024"2/viam/api/v1/service/datamanager/{name}/do_commandBI\n\x1fcom.viam.service.datamanager.v1Z&go.viam.com/api/service/datamanager/v1b\x06proto3')
11
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
12
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'service.datamanager.v1.data_manager_pb2', globals())
13
- if _descriptor._USE_C_DESCRIPTORS == False:
14
- DESCRIPTOR._options = None
15
- DESCRIPTOR._serialized_options = b'\n\x1fcom.viam.service.datamanager.v1Z&go.viam.com/api/service/datamanager/v1'
16
- _DATAMANAGERSERVICE.methods_by_name['Sync']._options = None
17
- _DATAMANAGERSERVICE.methods_by_name['Sync']._serialized_options = b'\x82\xd3\xe4\x93\x022"0/viam/api/v1/service/datamanager/{name}/datasync'
18
- _DATAMANAGERSERVICE.methods_by_name['DoCommand']._options = None
19
- _DATAMANAGERSERVICE.methods_by_name['DoCommand']._serialized_options = b'\x82\xd3\xe4\x93\x024"2/viam/api/v1/service/datamanager/{name}/do_command'
20
- _SYNCREQUEST._serialized_start = 158
21
- _SYNCREQUEST._serialized_end = 238
22
- _SYNCRESPONSE._serialized_start = 240
23
- _SYNCRESPONSE._serialized_end = 254
24
- _DATAMANAGERSERVICE._serialized_start = 257
25
- _DATAMANAGERSERVICE._serialized_end = 572
13
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n)service/datamanager/v1/data_manager.proto\x12\x1bviam.service.datamanager.v1\x1a\x1fapp/datasync/v1/data_sync.proto\x1a\x16common/v1/common.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto"P\n\x0bSyncRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"\x0e\n\x0cSyncResponse"\xf9\x01\n!UploadBinaryDataToDatasetsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1f\n\x0bbinary_data\x18\x02 \x01(\x0cR\nbinaryData\x12\x12\n\x04tags\x18\x03 \x03(\tR\x04tags\x12\x1f\n\x0bdataset_ids\x18\x04 \x03(\tR\ndatasetIds\x12;\n\tmime_type\x18\x05 \x01(\x0e2\x1e.viam.app.datasync.v1.MimeTypeR\x08mimeType\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"$\n"UploadBinaryDataToDatasetsResponse2\xab\x04\n\x12DataManagerService\x12\x95\x01\n\x04Sync\x12(.viam.service.datamanager.v1.SyncRequest\x1a).viam.service.datamanager.v1.SyncResponse"8\x82\xd3\xe4\x93\x022"0/viam/api/v1/service/datamanager/{name}/datasync\x12\x8c\x01\n\tDoCommand\x12 .viam.common.v1.DoCommandRequest\x1a!.viam.common.v1.DoCommandResponse":\x82\xd3\xe4\x93\x024"2/viam/api/v1/service/datamanager/{name}/do_command\x12\xed\x01\n\x1aUploadBinaryDataToDatasets\x12>.viam.service.datamanager.v1.UploadBinaryDataToDatasetsRequest\x1a?.viam.service.datamanager.v1.UploadBinaryDataToDatasetsResponse"N\x82\xd3\xe4\x93\x02H"F/viam/api/v1/service/datamanager/{name}/upload_binary_data_to_datasetsBI\n\x1fcom.viam.service.datamanager.v1Z&go.viam.com/api/service/datamanager/v1b\x06proto3')
14
+ _globals = globals()
15
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
16
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'service.datamanager.v1.data_manager_pb2', _globals)
17
+ if not _descriptor._USE_C_DESCRIPTORS:
18
+ _globals['DESCRIPTOR']._loaded_options = None
19
+ _globals['DESCRIPTOR']._serialized_options = b'\n\x1fcom.viam.service.datamanager.v1Z&go.viam.com/api/service/datamanager/v1'
20
+ _globals['_DATAMANAGERSERVICE'].methods_by_name['Sync']._loaded_options = None
21
+ _globals['_DATAMANAGERSERVICE'].methods_by_name['Sync']._serialized_options = b'\x82\xd3\xe4\x93\x022"0/viam/api/v1/service/datamanager/{name}/datasync'
22
+ _globals['_DATAMANAGERSERVICE'].methods_by_name['DoCommand']._loaded_options = None
23
+ _globals['_DATAMANAGERSERVICE'].methods_by_name['DoCommand']._serialized_options = b'\x82\xd3\xe4\x93\x024"2/viam/api/v1/service/datamanager/{name}/do_command'
24
+ _globals['_DATAMANAGERSERVICE'].methods_by_name['UploadBinaryDataToDatasets']._loaded_options = None
25
+ _globals['_DATAMANAGERSERVICE'].methods_by_name['UploadBinaryDataToDatasets']._serialized_options = b'\x82\xd3\xe4\x93\x02H"F/viam/api/v1/service/datamanager/{name}/upload_binary_data_to_datasets'
26
+ _globals['_SYNCREQUEST']._serialized_start = 191
27
+ _globals['_SYNCREQUEST']._serialized_end = 271
28
+ _globals['_SYNCRESPONSE']._serialized_start = 273
29
+ _globals['_SYNCRESPONSE']._serialized_end = 287
30
+ _globals['_UPLOADBINARYDATATODATASETSREQUEST']._serialized_start = 290
31
+ _globals['_UPLOADBINARYDATATODATASETSREQUEST']._serialized_end = 539
32
+ _globals['_UPLOADBINARYDATATODATASETSRESPONSE']._serialized_start = 541
33
+ _globals['_UPLOADBINARYDATATODATASETSRESPONSE']._serialized_end = 577
34
+ _globals['_DATAMANAGERSERVICE']._serialized_start = 580
35
+ _globals['_DATAMANAGERSERVICE']._serialized_end = 1135
@@ -2,8 +2,11 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+ from .... import app
5
6
  import builtins
7
+ import collections.abc
6
8
  import google.protobuf.descriptor
9
+ import google.protobuf.internal.containers
7
10
  import google.protobuf.message
8
11
  import google.protobuf.struct_pb2
9
12
  import typing
@@ -36,4 +39,47 @@ class SyncResponse(google.protobuf.message.Message):
36
39
 
37
40
  def __init__(self) -> None:
38
41
  ...
39
- global___SyncResponse = SyncResponse
42
+ global___SyncResponse = SyncResponse
43
+
44
+ @typing.final
45
+ class UploadBinaryDataToDatasetsRequest(google.protobuf.message.Message):
46
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
47
+ NAME_FIELD_NUMBER: builtins.int
48
+ BINARY_DATA_FIELD_NUMBER: builtins.int
49
+ TAGS_FIELD_NUMBER: builtins.int
50
+ DATASET_IDS_FIELD_NUMBER: builtins.int
51
+ MIME_TYPE_FIELD_NUMBER: builtins.int
52
+ EXTRA_FIELD_NUMBER: builtins.int
53
+ name: builtins.str
54
+ binary_data: builtins.bytes
55
+ mime_type: app.datasync.v1.data_sync_pb2.MimeType.ValueType
56
+
57
+ @property
58
+ def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
59
+ ...
60
+
61
+ @property
62
+ def dataset_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
63
+ ...
64
+
65
+ @property
66
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
67
+ """Additional arguments to the method"""
68
+
69
+ def __init__(self, *, name: builtins.str=..., binary_data: builtins.bytes=..., tags: collections.abc.Iterable[builtins.str] | None=..., dataset_ids: collections.abc.Iterable[builtins.str] | None=..., mime_type: app.datasync.v1.data_sync_pb2.MimeType.ValueType=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
70
+ ...
71
+
72
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
73
+ ...
74
+
75
+ def ClearField(self, field_name: typing.Literal['binary_data', b'binary_data', 'dataset_ids', b'dataset_ids', 'extra', b'extra', 'mime_type', b'mime_type', 'name', b'name', 'tags', b'tags']) -> None:
76
+ ...
77
+ global___UploadBinaryDataToDatasetsRequest = UploadBinaryDataToDatasetsRequest
78
+
79
+ @typing.final
80
+ class UploadBinaryDataToDatasetsResponse(google.protobuf.message.Message):
81
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
82
+
83
+ def __init__(self) -> None:
84
+ ...
85
+ global___UploadBinaryDataToDatasetsResponse = UploadBinaryDataToDatasetsResponse
File without changes
File without changes
@@ -0,0 +1,39 @@
1
+ import abc
2
+ import typing
3
+ import grpclib.const
4
+ import grpclib.client
5
+ import grpclib.exceptions
6
+ if typing.TYPE_CHECKING:
7
+ import grpclib.server
8
+ from .... import app
9
+ from .... import common
10
+ import google.api.annotations_pb2
11
+ import google.protobuf.struct_pb2
12
+ from .... import service
13
+
14
+ class DiscoveryServiceBase(abc.ABC):
15
+
16
+ @abc.abstractmethod
17
+ async def DiscoverResources(self, stream: 'grpclib.server.Stream[service.discovery.v1.discovery_pb2.DiscoverResourcesRequest, service.discovery.v1.discovery_pb2.DiscoverResourcesResponse]') -> None:
18
+ pass
19
+
20
+ @abc.abstractmethod
21
+ async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None:
22
+ pass
23
+
24
+ def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
25
+ return {'/viam.service.discovery.v1.DiscoveryService/DiscoverResources': grpclib.const.Handler(self.DiscoverResources, grpclib.const.Cardinality.UNARY_UNARY, service.discovery.v1.discovery_pb2.DiscoverResourcesRequest, service.discovery.v1.discovery_pb2.DiscoverResourcesResponse), '/viam.service.discovery.v1.DiscoveryService/DoCommand': grpclib.const.Handler(self.DoCommand, grpclib.const.Cardinality.UNARY_UNARY, common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)}
26
+
27
+ class UnimplementedDiscoveryServiceBase(DiscoveryServiceBase):
28
+
29
+ async def DiscoverResources(self, stream: 'grpclib.server.Stream[service.discovery.v1.discovery_pb2.DiscoverResourcesRequest, service.discovery.v1.discovery_pb2.DiscoverResourcesResponse]') -> None:
30
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
31
+
32
+ async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None:
33
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
34
+
35
+ class DiscoveryServiceStub:
36
+
37
+ def __init__(self, channel: grpclib.client.Channel) -> None:
38
+ self.DiscoverResources = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.discovery.v1.DiscoveryService/DiscoverResources', service.discovery.v1.discovery_pb2.DiscoverResourcesRequest, service.discovery.v1.discovery_pb2.DiscoverResourcesResponse)
39
+ self.DoCommand = grpclib.client.UnaryUnaryMethod(channel, '/viam.service.discovery.v1.DiscoveryService/DoCommand', common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)