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
@@ -1,37 +1,44 @@
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, '', 'app/dataset/v1/dataset.proto')
6
8
  _sym_db = _symbol_database.Default()
7
9
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
8
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1capp/dataset/v1/dataset.proto\x12\x13viam.app.dataset.v1\x1a\x1fgoogle/protobuf/timestamp.proto"\x95\x01\n\x07Dataset\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12=\n\x0ctime_created\x18\x04 \x01(\x0b2\x1a.google.protobuf.TimestampR\x0btimeCreated"S\n\x14CreateDatasetRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId"\'\n\x15CreateDatasetResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id"&\n\x14DeleteDatasetRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id"\x17\n\x15DeleteDatasetResponse":\n\x14RenameDatasetRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name"\x17\n\x15RenameDatasetResponse"N\n#ListDatasetsByOrganizationIDRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId"`\n$ListDatasetsByOrganizationIDResponse\x128\n\x08datasets\x18\x01 \x03(\x0b2\x1c.viam.app.dataset.v1.DatasetR\x08datasets",\n\x18ListDatasetsByIDsRequest\x12\x10\n\x03ids\x18\x01 \x03(\tR\x03ids"U\n\x19ListDatasetsByIDsResponse\x128\n\x08datasets\x18\x01 \x03(\x0b2\x1c.viam.app.dataset.v1.DatasetR\x08datasets2\xd2\x04\n\x0eDatasetService\x12f\n\rCreateDataset\x12).viam.app.dataset.v1.CreateDatasetRequest\x1a*.viam.app.dataset.v1.CreateDatasetResponse\x12f\n\rDeleteDataset\x12).viam.app.dataset.v1.DeleteDatasetRequest\x1a*.viam.app.dataset.v1.DeleteDatasetResponse\x12f\n\rRenameDataset\x12).viam.app.dataset.v1.RenameDatasetRequest\x1a*.viam.app.dataset.v1.RenameDatasetResponse\x12\x93\x01\n\x1cListDatasetsByOrganizationID\x128.viam.app.dataset.v1.ListDatasetsByOrganizationIDRequest\x1a9.viam.app.dataset.v1.ListDatasetsByOrganizationIDResponse\x12r\n\x11ListDatasetsByIDs\x12-.viam.app.dataset.v1.ListDatasetsByIDsRequest\x1a..viam.app.dataset.v1.ListDatasetsByIDsResponseB Z\x1ego.viam.com/api/app/dataset/v1b\x06proto3')
9
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
10
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.dataset.v1.dataset_pb2', globals())
11
- if _descriptor._USE_C_DESCRIPTORS == False:
12
- DESCRIPTOR._options = None
13
- DESCRIPTOR._serialized_options = b'Z\x1ego.viam.com/api/app/dataset/v1'
14
- _DATASET._serialized_start = 87
15
- _DATASET._serialized_end = 236
16
- _CREATEDATASETREQUEST._serialized_start = 238
17
- _CREATEDATASETREQUEST._serialized_end = 321
18
- _CREATEDATASETRESPONSE._serialized_start = 323
19
- _CREATEDATASETRESPONSE._serialized_end = 362
20
- _DELETEDATASETREQUEST._serialized_start = 364
21
- _DELETEDATASETREQUEST._serialized_end = 402
22
- _DELETEDATASETRESPONSE._serialized_start = 404
23
- _DELETEDATASETRESPONSE._serialized_end = 427
24
- _RENAMEDATASETREQUEST._serialized_start = 429
25
- _RENAMEDATASETREQUEST._serialized_end = 487
26
- _RENAMEDATASETRESPONSE._serialized_start = 489
27
- _RENAMEDATASETRESPONSE._serialized_end = 512
28
- _LISTDATASETSBYORGANIZATIONIDREQUEST._serialized_start = 514
29
- _LISTDATASETSBYORGANIZATIONIDREQUEST._serialized_end = 592
30
- _LISTDATASETSBYORGANIZATIONIDRESPONSE._serialized_start = 594
31
- _LISTDATASETSBYORGANIZATIONIDRESPONSE._serialized_end = 690
32
- _LISTDATASETSBYIDSREQUEST._serialized_start = 692
33
- _LISTDATASETSBYIDSREQUEST._serialized_end = 736
34
- _LISTDATASETSBYIDSRESPONSE._serialized_start = 738
35
- _LISTDATASETSBYIDSRESPONSE._serialized_end = 823
36
- _DATASETSERVICE._serialized_start = 826
37
- _DATASETSERVICE._serialized_end = 1420
10
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1capp/dataset/v1/dataset.proto\x12\x13viam.app.dataset.v1\x1a\x1fgoogle/protobuf/timestamp.proto"\x95\x01\n\x07Dataset\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12=\n\x0ctime_created\x18\x04 \x01(\x0b2\x1a.google.protobuf.TimestampR\x0btimeCreated"S\n\x14CreateDatasetRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId"\'\n\x15CreateDatasetResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id"&\n\x14DeleteDatasetRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id"\x17\n\x15DeleteDatasetResponse":\n\x14RenameDatasetRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name"\x17\n\x15RenameDatasetResponse"N\n#ListDatasetsByOrganizationIDRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId"`\n$ListDatasetsByOrganizationIDResponse\x128\n\x08datasets\x18\x01 \x03(\x0b2\x1c.viam.app.dataset.v1.DatasetR\x08datasets",\n\x18ListDatasetsByIDsRequest\x12\x10\n\x03ids\x18\x01 \x03(\tR\x03ids"U\n\x19ListDatasetsByIDsResponse\x128\n\x08datasets\x18\x01 \x03(\x0b2\x1c.viam.app.dataset.v1.DatasetR\x08datasets"t\n\x14MergeDatasetsRequest\x12\x1f\n\x0bdataset_ids\x18\x01 \x03(\tR\ndatasetIds\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId"6\n\x15MergeDatasetsResponse\x12\x1d\n\ndataset_id\x18\x01 \x01(\tR\tdatasetId2\xba\x05\n\x0eDatasetService\x12f\n\rCreateDataset\x12).viam.app.dataset.v1.CreateDatasetRequest\x1a*.viam.app.dataset.v1.CreateDatasetResponse\x12f\n\rDeleteDataset\x12).viam.app.dataset.v1.DeleteDatasetRequest\x1a*.viam.app.dataset.v1.DeleteDatasetResponse\x12f\n\rRenameDataset\x12).viam.app.dataset.v1.RenameDatasetRequest\x1a*.viam.app.dataset.v1.RenameDatasetResponse\x12\x93\x01\n\x1cListDatasetsByOrganizationID\x128.viam.app.dataset.v1.ListDatasetsByOrganizationIDRequest\x1a9.viam.app.dataset.v1.ListDatasetsByOrganizationIDResponse\x12r\n\x11ListDatasetsByIDs\x12-.viam.app.dataset.v1.ListDatasetsByIDsRequest\x1a..viam.app.dataset.v1.ListDatasetsByIDsResponse\x12f\n\rMergeDatasets\x12).viam.app.dataset.v1.MergeDatasetsRequest\x1a*.viam.app.dataset.v1.MergeDatasetsResponseB Z\x1ego.viam.com/api/app/dataset/v1b\x06proto3')
11
+ _globals = globals()
12
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
13
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.dataset.v1.dataset_pb2', _globals)
14
+ if not _descriptor._USE_C_DESCRIPTORS:
15
+ _globals['DESCRIPTOR']._loaded_options = None
16
+ _globals['DESCRIPTOR']._serialized_options = b'Z\x1ego.viam.com/api/app/dataset/v1'
17
+ _globals['_DATASET']._serialized_start = 87
18
+ _globals['_DATASET']._serialized_end = 236
19
+ _globals['_CREATEDATASETREQUEST']._serialized_start = 238
20
+ _globals['_CREATEDATASETREQUEST']._serialized_end = 321
21
+ _globals['_CREATEDATASETRESPONSE']._serialized_start = 323
22
+ _globals['_CREATEDATASETRESPONSE']._serialized_end = 362
23
+ _globals['_DELETEDATASETREQUEST']._serialized_start = 364
24
+ _globals['_DELETEDATASETREQUEST']._serialized_end = 402
25
+ _globals['_DELETEDATASETRESPONSE']._serialized_start = 404
26
+ _globals['_DELETEDATASETRESPONSE']._serialized_end = 427
27
+ _globals['_RENAMEDATASETREQUEST']._serialized_start = 429
28
+ _globals['_RENAMEDATASETREQUEST']._serialized_end = 487
29
+ _globals['_RENAMEDATASETRESPONSE']._serialized_start = 489
30
+ _globals['_RENAMEDATASETRESPONSE']._serialized_end = 512
31
+ _globals['_LISTDATASETSBYORGANIZATIONIDREQUEST']._serialized_start = 514
32
+ _globals['_LISTDATASETSBYORGANIZATIONIDREQUEST']._serialized_end = 592
33
+ _globals['_LISTDATASETSBYORGANIZATIONIDRESPONSE']._serialized_start = 594
34
+ _globals['_LISTDATASETSBYORGANIZATIONIDRESPONSE']._serialized_end = 690
35
+ _globals['_LISTDATASETSBYIDSREQUEST']._serialized_start = 692
36
+ _globals['_LISTDATASETSBYIDSREQUEST']._serialized_end = 736
37
+ _globals['_LISTDATASETSBYIDSRESPONSE']._serialized_start = 738
38
+ _globals['_LISTDATASETSBYIDSRESPONSE']._serialized_end = 823
39
+ _globals['_MERGEDATASETSREQUEST']._serialized_start = 825
40
+ _globals['_MERGEDATASETSREQUEST']._serialized_end = 941
41
+ _globals['_MERGEDATASETSRESPONSE']._serialized_start = 943
42
+ _globals['_MERGEDATASETSRESPONSE']._serialized_end = 997
43
+ _globals['_DATASETSERVICE']._serialized_start = 1000
44
+ _globals['_DATASETSERVICE']._serialized_end = 1698
@@ -176,4 +176,39 @@ class ListDatasetsByIDsResponse(google.protobuf.message.Message):
176
176
 
177
177
  def ClearField(self, field_name: typing.Literal['datasets', b'datasets']) -> None:
178
178
  ...
179
- global___ListDatasetsByIDsResponse = ListDatasetsByIDsResponse
179
+ global___ListDatasetsByIDsResponse = ListDatasetsByIDsResponse
180
+
181
+ @typing.final
182
+ class MergeDatasetsRequest(google.protobuf.message.Message):
183
+ """MergeDatasetsRequest merges multiple datasets specified by their dataset IDs into a new dataset."""
184
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
185
+ DATASET_IDS_FIELD_NUMBER: builtins.int
186
+ NAME_FIELD_NUMBER: builtins.int
187
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
188
+ name: builtins.str
189
+ organization_id: builtins.str
190
+
191
+ @property
192
+ def dataset_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
193
+ ...
194
+
195
+ def __init__(self, *, dataset_ids: collections.abc.Iterable[builtins.str] | None=..., name: builtins.str=..., organization_id: builtins.str=...) -> None:
196
+ ...
197
+
198
+ def ClearField(self, field_name: typing.Literal['dataset_ids', b'dataset_ids', 'name', b'name', 'organization_id', b'organization_id']) -> None:
199
+ ...
200
+ global___MergeDatasetsRequest = MergeDatasetsRequest
201
+
202
+ @typing.final
203
+ class MergeDatasetsResponse(google.protobuf.message.Message):
204
+ """MergeDatasetsResponse returns the dataset ID of the newly created merged dataset."""
205
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
206
+ DATASET_ID_FIELD_NUMBER: builtins.int
207
+ dataset_id: builtins.str
208
+
209
+ def __init__(self, *, dataset_id: builtins.str=...) -> None:
210
+ ...
211
+
212
+ def ClearField(self, field_name: typing.Literal['dataset_id', b'dataset_id']) -> None:
213
+ ...
214
+ global___MergeDatasetsResponse = MergeDatasetsResponse
@@ -5,11 +5,11 @@ 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
  import google.api.annotations_pb2
9
10
  import google.protobuf.any_pb2
10
11
  import google.protobuf.struct_pb2
11
12
  import google.protobuf.timestamp_pb2
12
- from .... import app
13
13
 
14
14
  class DataSyncServiceBase(abc.ABC):
15
15
 
@@ -1,60 +1,70 @@
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, '', 'app/datasync/v1/data_sync.proto')
6
8
  _sym_db = _symbol_database.Default()
9
+ from ....app.data.v1 import data_pb2 as app_dot_data_dot_v1_dot_data__pb2
7
10
  from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
8
11
  from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
9
12
  from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
10
13
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
11
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fapp/datasync/v1/data_sync.proto\x12\x14viam.app.datasync.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/protobuf/any.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xa7\x01\n\x18DataCaptureUploadRequest\x12@\n\x08metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.UploadMetadataR\x08metadata\x12I\n\x0fsensor_contents\x18\x02 \x03(\x0b2 .viam.app.datasync.v1.SensorDataR\x0esensorContents"4\n\x19DataCaptureUploadResponse\x12\x17\n\x07file_id\x18\x01 \x01(\tR\x06fileId"\xaf\x01\n\x11FileUploadRequest\x12B\n\x08metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.UploadMetadataH\x00R\x08metadata\x12E\n\rfile_contents\x18\x02 \x01(\x0b2\x1e.viam.app.datasync.v1.FileDataH\x00R\x0cfileContentsB\x0f\n\rupload_packet"-\n\x12FileUploadResponse\x12\x17\n\x07file_id\x18\x01 \x01(\tR\x06fileId"\x99\x01\n!StreamingDataCaptureUploadRequest\x12M\n\x08metadata\x18\x01 \x01(\x0b2/.viam.app.datasync.v1.DataCaptureUploadMetadataH\x00R\x08metadata\x12\x14\n\x04data\x18\x02 \x01(\x0cH\x00R\x04dataB\x0f\n\rupload_packet"=\n"StreamingDataCaptureUploadResponse\x12\x17\n\x07file_id\x18\x01 \x01(\tR\x06fileId"\x94\x01\n\x0eSensorMetadata\x12A\n\x0etime_requested\x18\x01 \x01(\x0b2\x1a.google.protobuf.TimestampR\rtimeRequested\x12?\n\rtime_received\x18\x02 \x01(\x0b2\x1a.google.protobuf.TimestampR\x0ctimeReceived"\xa3\x01\n\nSensorData\x12@\n\x08metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.SensorMetadataR\x08metadata\x121\n\x06struct\x18\x02 \x01(\x0b2\x17.google.protobuf.StructH\x00R\x06struct\x12\x18\n\x06binary\x18\x03 \x01(\x0cH\x00R\x06binaryB\x06\n\x04data"\x1e\n\x08FileData\x12\x12\n\x04data\x18\x01 \x01(\x0cR\x04data"\x91\x04\n\x0eUploadMetadata\x12\x17\n\x07part_id\x18\x01 \x01(\tR\x06partId\x12%\n\x0ecomponent_type\x18\x02 \x01(\tR\rcomponentType\x12%\n\x0ecomponent_name\x18\x03 \x01(\tR\rcomponentName\x12\x1f\n\x0bmethod_name\x18\x05 \x01(\tR\nmethodName\x122\n\x04type\x18\x06 \x01(\x0e2\x1e.viam.app.datasync.v1.DataTypeR\x04type\x12\x1b\n\tfile_name\x18\x07 \x01(\tR\x08fileName\x12g\n\x11method_parameters\x18\x08 \x03(\x0b2:.viam.app.datasync.v1.UploadMetadata.MethodParametersEntryR\x10methodParameters\x12%\n\x0efile_extension\x18\t \x01(\tR\rfileExtension\x12\x12\n\x04tags\x18\n \x03(\tR\x04tags\x1aY\n\x15MethodParametersEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12*\n\x05value\x18\x02 \x01(\x0b2\x14.google.protobuf.AnyR\x05value:\x028\x01J\x04\x08\x04\x10\x05J\x04\x08\x0b\x10\x0cR\x0fcomponent_modelR\nsession_id"q\n\x0fCaptureInterval\x120\n\x05start\x18\x01 \x01(\x0b2\x1a.google.protobuf.TimestampR\x05start\x12,\n\x03end\x18\x02 \x01(\x0b2\x1a.google.protobuf.TimestampR\x03end"\xe5\x03\n\x13DataCaptureMetadata\x12%\n\x0ecomponent_type\x18\x01 \x01(\tR\rcomponentType\x12%\n\x0ecomponent_name\x18\x02 \x01(\tR\rcomponentName\x12\x1f\n\x0bmethod_name\x18\x04 \x01(\tR\nmethodName\x122\n\x04type\x18\x05 \x01(\x0e2\x1e.viam.app.datasync.v1.DataTypeR\x04type\x12l\n\x11method_parameters\x18\x06 \x03(\x0b2?.viam.app.datasync.v1.DataCaptureMetadata.MethodParametersEntryR\x10methodParameters\x12%\n\x0efile_extension\x18\x07 \x01(\tR\rfileExtension\x12\x12\n\x04tags\x18\x08 \x03(\tR\x04tags\x1aY\n\x15MethodParametersEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12*\n\x05value\x18\x02 \x01(\x0b2\x14.google.protobuf.AnyR\x05value:\x028\x01J\x04\x08\x03\x10\x04J\x04\x08\t\x10\nR\x0fcomponent_modelR\nsession_id"\xb9\x01\n\x19DataCaptureUploadMetadata\x12M\n\x0fupload_metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.UploadMetadataR\x0euploadMetadata\x12M\n\x0fsensor_metadata\x18\x02 \x01(\x0b2$.viam.app.datasync.v1.SensorMetadataR\x0esensorMetadata*t\n\x08DataType\x12\x19\n\x15DATA_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17DATA_TYPE_BINARY_SENSOR\x10\x01\x12\x1c\n\x18DATA_TYPE_TABULAR_SENSOR\x10\x02\x12\x12\n\x0eDATA_TYPE_FILE\x10\x032\x80\x04\n\x0fDataSyncService\x12\x9e\x01\n\x11DataCaptureUpload\x12..viam.app.datasync.v1.DataCaptureUploadRequest\x1a/.viam.app.datasync.v1.DataCaptureUploadResponse"(\x82\xd3\xe4\x93\x02"" /datasync/v1/data_capture_upload\x12\x83\x01\n\nFileUpload\x12\'.viam.app.datasync.v1.FileUploadRequest\x1a(.viam.app.datasync.v1.FileUploadResponse" \x82\xd3\xe4\x93\x02\x1a"\x18/datasync/v1/file_upload(\x01\x12\xc5\x01\n\x1aStreamingDataCaptureUpload\x127.viam.app.datasync.v1.StreamingDataCaptureUploadRequest\x1a8.viam.app.datasync.v1.StreamingDataCaptureUploadResponse"2\x82\xd3\xe4\x93\x02,"*/datasync/v1/streaming_data_capture_upload(\x01B!Z\x1fgo.viam.com/api/app/datasync/v1b\x06proto3')
12
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
13
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.datasync.v1.data_sync_pb2', globals())
14
- if _descriptor._USE_C_DESCRIPTORS == False:
15
- DESCRIPTOR._options = None
16
- DESCRIPTOR._serialized_options = b'Z\x1fgo.viam.com/api/app/datasync/v1'
17
- _UPLOADMETADATA_METHODPARAMETERSENTRY._options = None
18
- _UPLOADMETADATA_METHODPARAMETERSENTRY._serialized_options = b'8\x01'
19
- _DATACAPTUREMETADATA_METHODPARAMETERSENTRY._options = None
20
- _DATACAPTUREMETADATA_METHODPARAMETERSENTRY._serialized_options = b'8\x01'
21
- _DATASYNCSERVICE.methods_by_name['DataCaptureUpload']._options = None
22
- _DATASYNCSERVICE.methods_by_name['DataCaptureUpload']._serialized_options = b'\x82\xd3\xe4\x93\x02"" /datasync/v1/data_capture_upload'
23
- _DATASYNCSERVICE.methods_by_name['FileUpload']._options = None
24
- _DATASYNCSERVICE.methods_by_name['FileUpload']._serialized_options = b'\x82\xd3\xe4\x93\x02\x1a"\x18/datasync/v1/file_upload'
25
- _DATASYNCSERVICE.methods_by_name['StreamingDataCaptureUpload']._options = None
26
- _DATASYNCSERVICE.methods_by_name['StreamingDataCaptureUpload']._serialized_options = b'\x82\xd3\xe4\x93\x02,"*/datasync/v1/streaming_data_capture_upload'
27
- _DATATYPE._serialized_start = 2517
28
- _DATATYPE._serialized_end = 2633
29
- _DATACAPTUREUPLOADREQUEST._serialized_start = 178
30
- _DATACAPTUREUPLOADREQUEST._serialized_end = 345
31
- _DATACAPTUREUPLOADRESPONSE._serialized_start = 347
32
- _DATACAPTUREUPLOADRESPONSE._serialized_end = 399
33
- _FILEUPLOADREQUEST._serialized_start = 402
34
- _FILEUPLOADREQUEST._serialized_end = 577
35
- _FILEUPLOADRESPONSE._serialized_start = 579
36
- _FILEUPLOADRESPONSE._serialized_end = 624
37
- _STREAMINGDATACAPTUREUPLOADREQUEST._serialized_start = 627
38
- _STREAMINGDATACAPTUREUPLOADREQUEST._serialized_end = 780
39
- _STREAMINGDATACAPTUREUPLOADRESPONSE._serialized_start = 782
40
- _STREAMINGDATACAPTUREUPLOADRESPONSE._serialized_end = 843
41
- _SENSORMETADATA._serialized_start = 846
42
- _SENSORMETADATA._serialized_end = 994
43
- _SENSORDATA._serialized_start = 997
44
- _SENSORDATA._serialized_end = 1160
45
- _FILEDATA._serialized_start = 1162
46
- _FILEDATA._serialized_end = 1192
47
- _UPLOADMETADATA._serialized_start = 1195
48
- _UPLOADMETADATA._serialized_end = 1724
49
- _UPLOADMETADATA_METHODPARAMETERSENTRY._serialized_start = 1594
50
- _UPLOADMETADATA_METHODPARAMETERSENTRY._serialized_end = 1683
51
- _CAPTUREINTERVAL._serialized_start = 1726
52
- _CAPTUREINTERVAL._serialized_end = 1839
53
- _DATACAPTUREMETADATA._serialized_start = 1842
54
- _DATACAPTUREMETADATA._serialized_end = 2327
55
- _DATACAPTUREMETADATA_METHODPARAMETERSENTRY._serialized_start = 1594
56
- _DATACAPTUREMETADATA_METHODPARAMETERSENTRY._serialized_end = 1683
57
- _DATACAPTUREUPLOADMETADATA._serialized_start = 2330
58
- _DATACAPTUREUPLOADMETADATA._serialized_end = 2515
59
- _DATASYNCSERVICE._serialized_start = 2636
60
- _DATASYNCSERVICE._serialized_end = 3148
14
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fapp/datasync/v1/data_sync.proto\x12\x14viam.app.datasync.v1\x1a\x16app/data/v1/data.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/protobuf/any.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xa7\x01\n\x18DataCaptureUploadRequest\x12@\n\x08metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.UploadMetadataR\x08metadata\x12I\n\x0fsensor_contents\x18\x02 \x03(\x0b2 .viam.app.datasync.v1.SensorDataR\x0esensorContents"Z\n\x19DataCaptureUploadResponse\x12\x17\n\x07file_id\x18\x01 \x01(\tR\x06fileId\x12$\n\x0ebinary_data_id\x18\x02 \x01(\tR\x0cbinaryDataId"\xaf\x01\n\x11FileUploadRequest\x12B\n\x08metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.UploadMetadataH\x00R\x08metadata\x12E\n\rfile_contents\x18\x02 \x01(\x0b2\x1e.viam.app.datasync.v1.FileDataH\x00R\x0cfileContentsB\x0f\n\rupload_packet"W\n\x12FileUploadResponse\x12\x1b\n\x07file_id\x18\x01 \x01(\tB\x02\x18\x01R\x06fileId\x12$\n\x0ebinary_data_id\x18\x02 \x01(\tR\x0cbinaryDataId"\x99\x01\n!StreamingDataCaptureUploadRequest\x12M\n\x08metadata\x18\x01 \x01(\x0b2/.viam.app.datasync.v1.DataCaptureUploadMetadataH\x00R\x08metadata\x12\x14\n\x04data\x18\x02 \x01(\x0cH\x00R\x04dataB\x0f\n\rupload_packet"g\n"StreamingDataCaptureUploadResponse\x12\x1b\n\x07file_id\x18\x01 \x01(\tB\x02\x18\x01R\x06fileId\x12$\n\x0ebinary_data_id\x18\x02 \x01(\tR\x0cbinaryDataId"\x92\x02\n\x0eSensorMetadata\x12A\n\x0etime_requested\x18\x01 \x01(\x0b2\x1a.google.protobuf.TimestampR\rtimeRequested\x12?\n\rtime_received\x18\x02 \x01(\x0b2\x1a.google.protobuf.TimestampR\x0ctimeReceived\x12;\n\tmime_type\x18\x03 \x01(\x0e2\x1e.viam.app.datasync.v1.MimeTypeR\x08mimeType\x12?\n\x0bannotations\x18\x04 \x01(\x0b2\x1d.viam.app.data.v1.AnnotationsR\x0bannotations"\xa3\x01\n\nSensorData\x12@\n\x08metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.SensorMetadataR\x08metadata\x121\n\x06struct\x18\x02 \x01(\x0b2\x17.google.protobuf.StructH\x00R\x06struct\x12\x18\n\x06binary\x18\x03 \x01(\x0cH\x00R\x06binaryB\x06\n\x04data"\x1e\n\x08FileData\x12\x12\n\x04data\x18\x01 \x01(\x0cR\x04data"\xb2\x04\n\x0eUploadMetadata\x12\x17\n\x07part_id\x18\x01 \x01(\tR\x06partId\x12%\n\x0ecomponent_type\x18\x02 \x01(\tR\rcomponentType\x12%\n\x0ecomponent_name\x18\x03 \x01(\tR\rcomponentName\x12\x1f\n\x0bmethod_name\x18\x05 \x01(\tR\nmethodName\x122\n\x04type\x18\x06 \x01(\x0e2\x1e.viam.app.datasync.v1.DataTypeR\x04type\x12\x1b\n\tfile_name\x18\x07 \x01(\tR\x08fileName\x12g\n\x11method_parameters\x18\x08 \x03(\x0b2:.viam.app.datasync.v1.UploadMetadata.MethodParametersEntryR\x10methodParameters\x12%\n\x0efile_extension\x18\t \x01(\tR\rfileExtension\x12\x12\n\x04tags\x18\n \x03(\tR\x04tags\x12\x1f\n\x0bdataset_ids\x18\x0c \x03(\tR\ndatasetIds\x1aY\n\x15MethodParametersEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12*\n\x05value\x18\x02 \x01(\x0b2\x14.google.protobuf.AnyR\x05value:\x028\x01J\x04\x08\x04\x10\x05J\x04\x08\x0b\x10\x0cR\x0fcomponent_modelR\nsession_id"q\n\x0fCaptureInterval\x120\n\x05start\x18\x01 \x01(\x0b2\x1a.google.protobuf.TimestampR\x05start\x12,\n\x03end\x18\x02 \x01(\x0b2\x1a.google.protobuf.TimestampR\x03end"\xe5\x03\n\x13DataCaptureMetadata\x12%\n\x0ecomponent_type\x18\x01 \x01(\tR\rcomponentType\x12%\n\x0ecomponent_name\x18\x02 \x01(\tR\rcomponentName\x12\x1f\n\x0bmethod_name\x18\x04 \x01(\tR\nmethodName\x122\n\x04type\x18\x05 \x01(\x0e2\x1e.viam.app.datasync.v1.DataTypeR\x04type\x12l\n\x11method_parameters\x18\x06 \x03(\x0b2?.viam.app.datasync.v1.DataCaptureMetadata.MethodParametersEntryR\x10methodParameters\x12%\n\x0efile_extension\x18\x07 \x01(\tR\rfileExtension\x12\x12\n\x04tags\x18\x08 \x03(\tR\x04tags\x1aY\n\x15MethodParametersEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12*\n\x05value\x18\x02 \x01(\x0b2\x14.google.protobuf.AnyR\x05value:\x028\x01J\x04\x08\x03\x10\x04J\x04\x08\t\x10\nR\x0fcomponent_modelR\nsession_id"\xb9\x01\n\x19DataCaptureUploadMetadata\x12M\n\x0fupload_metadata\x18\x01 \x01(\x0b2$.viam.app.datasync.v1.UploadMetadataR\x0euploadMetadata\x12M\n\x0fsensor_metadata\x18\x02 \x01(\x0b2$.viam.app.datasync.v1.SensorMetadataR\x0esensorMetadata*w\n\x08MimeType\x12\x19\n\x15MIME_TYPE_UNSPECIFIED\x10\x00\x12\x18\n\x14MIME_TYPE_IMAGE_JPEG\x10\x01\x12\x17\n\x13MIME_TYPE_IMAGE_PNG\x10\x02\x12\x1d\n\x19MIME_TYPE_APPLICATION_PCD\x10\x03*t\n\x08DataType\x12\x19\n\x15DATA_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17DATA_TYPE_BINARY_SENSOR\x10\x01\x12\x1c\n\x18DATA_TYPE_TABULAR_SENSOR\x10\x02\x12\x12\n\x0eDATA_TYPE_FILE\x10\x032\x80\x04\n\x0fDataSyncService\x12\x9e\x01\n\x11DataCaptureUpload\x12..viam.app.datasync.v1.DataCaptureUploadRequest\x1a/.viam.app.datasync.v1.DataCaptureUploadResponse"(\x82\xd3\xe4\x93\x02"" /datasync/v1/data_capture_upload\x12\x83\x01\n\nFileUpload\x12\'.viam.app.datasync.v1.FileUploadRequest\x1a(.viam.app.datasync.v1.FileUploadResponse" \x82\xd3\xe4\x93\x02\x1a"\x18/datasync/v1/file_upload(\x01\x12\xc5\x01\n\x1aStreamingDataCaptureUpload\x127.viam.app.datasync.v1.StreamingDataCaptureUploadRequest\x1a8.viam.app.datasync.v1.StreamingDataCaptureUploadResponse"2\x82\xd3\xe4\x93\x02,"*/datasync/v1/streaming_data_capture_upload(\x01B!Z\x1fgo.viam.com/api/app/datasync/v1b\x06proto3')
15
+ _globals = globals()
16
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
17
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.datasync.v1.data_sync_pb2', _globals)
18
+ if not _descriptor._USE_C_DESCRIPTORS:
19
+ _globals['DESCRIPTOR']._loaded_options = None
20
+ _globals['DESCRIPTOR']._serialized_options = b'Z\x1fgo.viam.com/api/app/datasync/v1'
21
+ _globals['_FILEUPLOADRESPONSE'].fields_by_name['file_id']._loaded_options = None
22
+ _globals['_FILEUPLOADRESPONSE'].fields_by_name['file_id']._serialized_options = b'\x18\x01'
23
+ _globals['_STREAMINGDATACAPTUREUPLOADRESPONSE'].fields_by_name['file_id']._loaded_options = None
24
+ _globals['_STREAMINGDATACAPTUREUPLOADRESPONSE'].fields_by_name['file_id']._serialized_options = b'\x18\x01'
25
+ _globals['_UPLOADMETADATA_METHODPARAMETERSENTRY']._loaded_options = None
26
+ _globals['_UPLOADMETADATA_METHODPARAMETERSENTRY']._serialized_options = b'8\x01'
27
+ _globals['_DATACAPTUREMETADATA_METHODPARAMETERSENTRY']._loaded_options = None
28
+ _globals['_DATACAPTUREMETADATA_METHODPARAMETERSENTRY']._serialized_options = b'8\x01'
29
+ _globals['_DATASYNCSERVICE'].methods_by_name['DataCaptureUpload']._loaded_options = None
30
+ _globals['_DATASYNCSERVICE'].methods_by_name['DataCaptureUpload']._serialized_options = b'\x82\xd3\xe4\x93\x02"" /datasync/v1/data_capture_upload'
31
+ _globals['_DATASYNCSERVICE'].methods_by_name['FileUpload']._loaded_options = None
32
+ _globals['_DATASYNCSERVICE'].methods_by_name['FileUpload']._serialized_options = b'\x82\xd3\xe4\x93\x02\x1a"\x18/datasync/v1/file_upload'
33
+ _globals['_DATASYNCSERVICE'].methods_by_name['StreamingDataCaptureUpload']._loaded_options = None
34
+ _globals['_DATASYNCSERVICE'].methods_by_name['StreamingDataCaptureUpload']._serialized_options = b'\x82\xd3\xe4\x93\x02,"*/datasync/v1/streaming_data_capture_upload'
35
+ _globals['_MIMETYPE']._serialized_start = 2822
36
+ _globals['_MIMETYPE']._serialized_end = 2941
37
+ _globals['_DATATYPE']._serialized_start = 2943
38
+ _globals['_DATATYPE']._serialized_end = 3059
39
+ _globals['_DATACAPTUREUPLOADREQUEST']._serialized_start = 202
40
+ _globals['_DATACAPTUREUPLOADREQUEST']._serialized_end = 369
41
+ _globals['_DATACAPTUREUPLOADRESPONSE']._serialized_start = 371
42
+ _globals['_DATACAPTUREUPLOADRESPONSE']._serialized_end = 461
43
+ _globals['_FILEUPLOADREQUEST']._serialized_start = 464
44
+ _globals['_FILEUPLOADREQUEST']._serialized_end = 639
45
+ _globals['_FILEUPLOADRESPONSE']._serialized_start = 641
46
+ _globals['_FILEUPLOADRESPONSE']._serialized_end = 728
47
+ _globals['_STREAMINGDATACAPTUREUPLOADREQUEST']._serialized_start = 731
48
+ _globals['_STREAMINGDATACAPTUREUPLOADREQUEST']._serialized_end = 884
49
+ _globals['_STREAMINGDATACAPTUREUPLOADRESPONSE']._serialized_start = 886
50
+ _globals['_STREAMINGDATACAPTUREUPLOADRESPONSE']._serialized_end = 989
51
+ _globals['_SENSORMETADATA']._serialized_start = 992
52
+ _globals['_SENSORMETADATA']._serialized_end = 1266
53
+ _globals['_SENSORDATA']._serialized_start = 1269
54
+ _globals['_SENSORDATA']._serialized_end = 1432
55
+ _globals['_FILEDATA']._serialized_start = 1434
56
+ _globals['_FILEDATA']._serialized_end = 1464
57
+ _globals['_UPLOADMETADATA']._serialized_start = 1467
58
+ _globals['_UPLOADMETADATA']._serialized_end = 2029
59
+ _globals['_UPLOADMETADATA_METHODPARAMETERSENTRY']._serialized_start = 1899
60
+ _globals['_UPLOADMETADATA_METHODPARAMETERSENTRY']._serialized_end = 1988
61
+ _globals['_CAPTUREINTERVAL']._serialized_start = 2031
62
+ _globals['_CAPTUREINTERVAL']._serialized_end = 2144
63
+ _globals['_DATACAPTUREMETADATA']._serialized_start = 2147
64
+ _globals['_DATACAPTUREMETADATA']._serialized_end = 2632
65
+ _globals['_DATACAPTUREMETADATA_METHODPARAMETERSENTRY']._serialized_start = 1899
66
+ _globals['_DATACAPTUREMETADATA_METHODPARAMETERSENTRY']._serialized_end = 1988
67
+ _globals['_DATACAPTUREUPLOADMETADATA']._serialized_start = 2635
68
+ _globals['_DATACAPTUREUPLOADMETADATA']._serialized_end = 2820
69
+ _globals['_DATASYNCSERVICE']._serialized_start = 3062
70
+ _globals['_DATASYNCSERVICE']._serialized_end = 3574
@@ -2,6 +2,7 @@
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
6
7
  import collections.abc
7
8
  import google.protobuf.any_pb2
@@ -19,6 +20,25 @@ else:
19
20
  import typing_extensions
20
21
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
21
22
 
23
+ class _MimeType:
24
+ ValueType = typing.NewType('ValueType', builtins.int)
25
+ V: typing_extensions.TypeAlias = ValueType
26
+
27
+ class _MimeTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MimeType.ValueType], builtins.type):
28
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
29
+ MIME_TYPE_UNSPECIFIED: _MimeType.ValueType
30
+ MIME_TYPE_IMAGE_JPEG: _MimeType.ValueType
31
+ MIME_TYPE_IMAGE_PNG: _MimeType.ValueType
32
+ MIME_TYPE_APPLICATION_PCD: _MimeType.ValueType
33
+
34
+ class MimeType(_MimeType, metaclass=_MimeTypeEnumTypeWrapper):
35
+ ...
36
+ MIME_TYPE_UNSPECIFIED: MimeType.ValueType
37
+ MIME_TYPE_IMAGE_JPEG: MimeType.ValueType
38
+ MIME_TYPE_IMAGE_PNG: MimeType.ValueType
39
+ MIME_TYPE_APPLICATION_PCD: MimeType.ValueType
40
+ global___MimeType = MimeType
41
+
22
42
  class _DataType:
23
43
  ValueType = typing.NewType('ValueType', builtins.int)
24
44
  V: typing_extensions.TypeAlias = ValueType
@@ -68,12 +88,14 @@ class DataCaptureUploadResponse(google.protobuf.message.Message):
68
88
  """DataCaptureUploadResponse returns the file id of the uploaded contents and metadata for tabular data."""
69
89
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
70
90
  FILE_ID_FIELD_NUMBER: builtins.int
91
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
71
92
  file_id: builtins.str
93
+ binary_data_id: builtins.str
72
94
 
73
- def __init__(self, *, file_id: builtins.str=...) -> None:
95
+ def __init__(self, *, file_id: builtins.str=..., binary_data_id: builtins.str=...) -> None:
74
96
  ...
75
97
 
76
- def ClearField(self, field_name: typing.Literal['file_id', b'file_id']) -> None:
98
+ def ClearField(self, field_name: typing.Literal['binary_data_id', b'binary_data_id', 'file_id', b'file_id']) -> None:
77
99
  ...
78
100
  global___DataCaptureUploadResponse = DataCaptureUploadResponse
79
101
 
@@ -112,12 +134,14 @@ class FileUploadResponse(google.protobuf.message.Message):
112
134
  """FileUploadResponse returns the file id of the uploaded contents and metadata for binary (image + file) data."""
113
135
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
114
136
  FILE_ID_FIELD_NUMBER: builtins.int
137
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
115
138
  file_id: builtins.str
139
+ binary_data_id: builtins.str
116
140
 
117
- def __init__(self, *, file_id: builtins.str=...) -> None:
141
+ def __init__(self, *, file_id: builtins.str=..., binary_data_id: builtins.str=...) -> None:
118
142
  ...
119
143
 
120
- def ClearField(self, field_name: typing.Literal['file_id', b'file_id']) -> None:
144
+ def ClearField(self, field_name: typing.Literal['binary_data_id', b'binary_data_id', 'file_id', b'file_id']) -> None:
121
145
  ...
122
146
  global___FileUploadResponse = FileUploadResponse
123
147
 
@@ -153,21 +177,28 @@ class StreamingDataCaptureUploadResponse(google.protobuf.message.Message):
153
177
  """StreamingDataCaptureUploadResponse returns the file id of the uploaded contents and metadata for streaming binary (image + file) data."""
154
178
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
155
179
  FILE_ID_FIELD_NUMBER: builtins.int
180
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
156
181
  file_id: builtins.str
182
+ binary_data_id: builtins.str
157
183
 
158
- def __init__(self, *, file_id: builtins.str=...) -> None:
184
+ def __init__(self, *, file_id: builtins.str=..., binary_data_id: builtins.str=...) -> None:
159
185
  ...
160
186
 
161
- def ClearField(self, field_name: typing.Literal['file_id', b'file_id']) -> None:
187
+ def ClearField(self, field_name: typing.Literal['binary_data_id', b'binary_data_id', 'file_id', b'file_id']) -> None:
162
188
  ...
163
189
  global___StreamingDataCaptureUploadResponse = StreamingDataCaptureUploadResponse
164
190
 
165
191
  @typing.final
166
192
  class SensorMetadata(google.protobuf.message.Message):
167
- """SensorMetadata contains the time the sensor data was requested and was received."""
193
+ """SensorMetadata contains the time the sensor data was requested and was
194
+ received.
195
+ """
168
196
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
169
197
  TIME_REQUESTED_FIELD_NUMBER: builtins.int
170
198
  TIME_RECEIVED_FIELD_NUMBER: builtins.int
199
+ MIME_TYPE_FIELD_NUMBER: builtins.int
200
+ ANNOTATIONS_FIELD_NUMBER: builtins.int
201
+ mime_type: global___MimeType.ValueType
171
202
 
172
203
  @property
173
204
  def time_requested(self) -> google.protobuf.timestamp_pb2.Timestamp:
@@ -177,13 +208,17 @@ class SensorMetadata(google.protobuf.message.Message):
177
208
  def time_received(self) -> google.protobuf.timestamp_pb2.Timestamp:
178
209
  ...
179
210
 
180
- def __init__(self, *, time_requested: google.protobuf.timestamp_pb2.Timestamp | None=..., time_received: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
211
+ @property
212
+ def annotations(self) -> app.data.v1.data_pb2.Annotations:
213
+ ...
214
+
215
+ def __init__(self, *, time_requested: google.protobuf.timestamp_pb2.Timestamp | None=..., time_received: google.protobuf.timestamp_pb2.Timestamp | None=..., mime_type: global___MimeType.ValueType=..., annotations: app.data.v1.data_pb2.Annotations | None=...) -> None:
181
216
  ...
182
217
 
183
- def HasField(self, field_name: typing.Literal['time_received', b'time_received', 'time_requested', b'time_requested']) -> builtins.bool:
218
+ def HasField(self, field_name: typing.Literal['annotations', b'annotations', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> builtins.bool:
184
219
  ...
185
220
 
186
- def ClearField(self, field_name: typing.Literal['time_received', b'time_received', 'time_requested', b'time_requested']) -> None:
221
+ def ClearField(self, field_name: typing.Literal['annotations', b'annotations', 'mime_type', b'mime_type', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> None:
187
222
  ...
188
223
  global___SensorMetadata = SensorMetadata
189
224
 
@@ -264,6 +299,7 @@ class UploadMetadata(google.protobuf.message.Message):
264
299
  METHOD_PARAMETERS_FIELD_NUMBER: builtins.int
265
300
  FILE_EXTENSION_FIELD_NUMBER: builtins.int
266
301
  TAGS_FIELD_NUMBER: builtins.int
302
+ DATASET_IDS_FIELD_NUMBER: builtins.int
267
303
  part_id: builtins.str
268
304
  component_type: builtins.str
269
305
  component_name: builtins.str
@@ -280,10 +316,14 @@ class UploadMetadata(google.protobuf.message.Message):
280
316
  def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
281
317
  ...
282
318
 
283
- def __init__(self, *, part_id: builtins.str=..., component_type: builtins.str=..., component_name: builtins.str=..., method_name: builtins.str=..., type: global___DataType.ValueType=..., file_name: builtins.str=..., method_parameters: collections.abc.Mapping[builtins.str, google.protobuf.any_pb2.Any] | None=..., file_extension: builtins.str=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
319
+ @property
320
+ def dataset_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
321
+ ...
322
+
323
+ def __init__(self, *, part_id: builtins.str=..., component_type: builtins.str=..., component_name: builtins.str=..., method_name: builtins.str=..., type: global___DataType.ValueType=..., file_name: builtins.str=..., method_parameters: collections.abc.Mapping[builtins.str, google.protobuf.any_pb2.Any] | None=..., file_extension: builtins.str=..., tags: collections.abc.Iterable[builtins.str] | None=..., dataset_ids: collections.abc.Iterable[builtins.str] | None=...) -> None:
284
324
  ...
285
325
 
286
- def ClearField(self, field_name: typing.Literal['component_name', b'component_name', 'component_type', b'component_type', 'file_extension', b'file_extension', 'file_name', b'file_name', 'method_name', b'method_name', 'method_parameters', b'method_parameters', 'part_id', b'part_id', 'tags', b'tags', 'type', b'type']) -> None:
326
+ def ClearField(self, field_name: typing.Literal['component_name', b'component_name', 'component_type', b'component_type', 'dataset_ids', b'dataset_ids', 'file_extension', b'file_extension', 'file_name', b'file_name', 'method_name', b'method_name', 'method_parameters', b'method_parameters', 'part_id', b'part_id', 'tags', b'tags', 'type', b'type']) -> None:
287
327
  ...
288
328
  global___UploadMetadata = UploadMetadata
289
329
 
File without changes
File without changes
@@ -0,0 +1,28 @@
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 service
10
+
11
+ class MLInferenceServiceBase(abc.ABC):
12
+
13
+ @abc.abstractmethod
14
+ async def GetInference(self, stream: 'grpclib.server.Stream[app.mlinference.v1.ml_inference_pb2.GetInferenceRequest, app.mlinference.v1.ml_inference_pb2.GetInferenceResponse]') -> None:
15
+ pass
16
+
17
+ def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
18
+ return {'/viam.app.mlinference.v1.MLInferenceService/GetInference': grpclib.const.Handler(self.GetInference, grpclib.const.Cardinality.UNARY_UNARY, app.mlinference.v1.ml_inference_pb2.GetInferenceRequest, app.mlinference.v1.ml_inference_pb2.GetInferenceResponse)}
19
+
20
+ class UnimplementedMLInferenceServiceBase(MLInferenceServiceBase):
21
+
22
+ async def GetInference(self, stream: 'grpclib.server.Stream[app.mlinference.v1.ml_inference_pb2.GetInferenceRequest, app.mlinference.v1.ml_inference_pb2.GetInferenceResponse]') -> None:
23
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
24
+
25
+ class MLInferenceServiceStub:
26
+
27
+ def __init__(self, channel: grpclib.client.Channel) -> None:
28
+ self.GetInference = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mlinference.v1.MLInferenceService/GetInference', app.mlinference.v1.ml_inference_pb2.GetInferenceRequest, app.mlinference.v1.ml_inference_pb2.GetInferenceResponse)
@@ -0,0 +1,23 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import runtime_version as _runtime_version
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, '', 'app/mlinference/v1/ml_inference.proto')
8
+ _sym_db = _symbol_database.Default()
9
+ from ....app.data.v1 import data_pb2 as app_dot_data_dot_v1_dot_data__pb2
10
+ from ....service.mlmodel.v1 import mlmodel_pb2 as service_dot_mlmodel_dot_v1_dot_mlmodel__pb2
11
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n%app/mlinference/v1/ml_inference.proto\x12\x17viam.app.mlinference.v1\x1a\x16app/data/v1/data.proto\x1a service/mlmodel/v1/mlmodel.proto"\xfb\x01\n\x13GetInferenceRequest\x12(\n\x10registry_item_id\x18\x01 \x01(\tR\x0eregistryItemId\x122\n\x15registry_item_version\x18\x02 \x01(\tR\x13registryItemVersion\x127\n\tbinary_id\x18\x03 \x01(\x0b2\x1a.viam.app.data.v1.BinaryIDR\x08binaryId\x12$\n\x0ebinary_data_id\x18\x05 \x01(\tR\x0cbinaryDataId\x12\'\n\x0forganization_id\x18\x04 \x01(\tR\x0eorganizationId"\xa4\x01\n\x14GetInferenceResponse\x12K\n\x0eoutput_tensors\x18\x01 \x01(\x0b2$.viam.service.mlmodel.v1.FlatTensorsR\routputTensors\x12?\n\x0bannotations\x18\x02 \x01(\x0b2\x1d.viam.app.data.v1.AnnotationsR\x0bannotations2\x81\x01\n\x12MLInferenceService\x12k\n\x0cGetInference\x12,.viam.app.mlinference.v1.GetInferenceRequest\x1a-.viam.app.mlinference.v1.GetInferenceResponseB$Z"go.viam.com/api/app/mlinference/v1b\x06proto3')
12
+ _globals = globals()
13
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
14
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'app.mlinference.v1.ml_inference_pb2', _globals)
15
+ if not _descriptor._USE_C_DESCRIPTORS:
16
+ _globals['DESCRIPTOR']._loaded_options = None
17
+ _globals['DESCRIPTOR']._serialized_options = b'Z"go.viam.com/api/app/mlinference/v1'
18
+ _globals['_GETINFERENCEREQUEST']._serialized_start = 125
19
+ _globals['_GETINFERENCEREQUEST']._serialized_end = 376
20
+ _globals['_GETINFERENCERESPONSE']._serialized_start = 379
21
+ _globals['_GETINFERENCERESPONSE']._serialized_end = 543
22
+ _globals['_MLINFERENCESERVICE']._serialized_start = 546
23
+ _globals['_MLINFERENCESERVICE']._serialized_end = 675
@@ -0,0 +1,63 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ from .... import app
6
+ import builtins
7
+ import google.protobuf.descriptor
8
+ import google.protobuf.message
9
+ from .... import service
10
+ import typing
11
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
12
+
13
+ @typing.final
14
+ class GetInferenceRequest(google.protobuf.message.Message):
15
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
16
+ REGISTRY_ITEM_ID_FIELD_NUMBER: builtins.int
17
+ REGISTRY_ITEM_VERSION_FIELD_NUMBER: builtins.int
18
+ BINARY_ID_FIELD_NUMBER: builtins.int
19
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
20
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
21
+ registry_item_id: builtins.str
22
+ 'The model framework and model type are inferred from the ML model registry item;\n For valid model types (classification, detections) we will return the formatted\n labels or annotations from the associated inference outputs.\n '
23
+ registry_item_version: builtins.str
24
+ binary_data_id: builtins.str
25
+ organization_id: builtins.str
26
+
27
+ @property
28
+ def binary_id(self) -> app.data.v1.data_pb2.BinaryID:
29
+ ...
30
+
31
+ def __init__(self, *, registry_item_id: builtins.str=..., registry_item_version: builtins.str=..., binary_id: app.data.v1.data_pb2.BinaryID | None=..., binary_data_id: builtins.str=..., organization_id: builtins.str=...) -> None:
32
+ ...
33
+
34
+ def HasField(self, field_name: typing.Literal['binary_id', b'binary_id']) -> builtins.bool:
35
+ ...
36
+
37
+ def ClearField(self, field_name: typing.Literal['binary_data_id', b'binary_data_id', 'binary_id', b'binary_id', 'organization_id', b'organization_id', 'registry_item_id', b'registry_item_id', 'registry_item_version', b'registry_item_version']) -> None:
38
+ ...
39
+ global___GetInferenceRequest = GetInferenceRequest
40
+
41
+ @typing.final
42
+ class GetInferenceResponse(google.protobuf.message.Message):
43
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
44
+ OUTPUT_TENSORS_FIELD_NUMBER: builtins.int
45
+ ANNOTATIONS_FIELD_NUMBER: builtins.int
46
+
47
+ @property
48
+ def output_tensors(self) -> service.mlmodel.v1.mlmodel_pb2.FlatTensors:
49
+ ...
50
+
51
+ @property
52
+ def annotations(self) -> app.data.v1.data_pb2.Annotations:
53
+ ...
54
+
55
+ def __init__(self, *, output_tensors: service.mlmodel.v1.mlmodel_pb2.FlatTensors | None=..., annotations: app.data.v1.data_pb2.Annotations | None=...) -> None:
56
+ ...
57
+
58
+ def HasField(self, field_name: typing.Literal['annotations', b'annotations', 'output_tensors', b'output_tensors']) -> builtins.bool:
59
+ ...
60
+
61
+ def ClearField(self, field_name: typing.Literal['annotations', b'annotations', 'output_tensors', b'output_tensors']) -> None:
62
+ ...
63
+ global___GetInferenceResponse = GetInferenceResponse
@@ -36,8 +36,16 @@ class MLTrainingServiceBase(abc.ABC):
36
36
  async def DeleteCompletedTrainingJob(self, stream: 'grpclib.server.Stream[app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobRequest, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobResponse]') -> None:
37
37
  pass
38
38
 
39
+ @abc.abstractmethod
40
+ async def GetTrainingJobLogs(self, stream: 'grpclib.server.Stream[app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsResponse]') -> None:
41
+ pass
42
+
43
+ @abc.abstractmethod
44
+ async def ListSupportedContainers(self, stream: 'grpclib.server.Stream[app.mltraining.v1.ml_training_pb2.ListSupportedContainersRequest, app.mltraining.v1.ml_training_pb2.ListSupportedContainersResponse]') -> None:
45
+ pass
46
+
39
47
  def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
40
- return {'/viam.app.mltraining.v1.MLTrainingService/SubmitTrainingJob': grpclib.const.Handler(self.SubmitTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.SubmitTrainingJobRequest, app.mltraining.v1.ml_training_pb2.SubmitTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/SubmitCustomTrainingJob': grpclib.const.Handler(self.SubmitCustomTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.SubmitCustomTrainingJobRequest, app.mltraining.v1.ml_training_pb2.SubmitCustomTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/GetTrainingJob': grpclib.const.Handler(self.GetTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.GetTrainingJobRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/ListTrainingJobs': grpclib.const.Handler(self.ListTrainingJobs, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.ListTrainingJobsRequest, app.mltraining.v1.ml_training_pb2.ListTrainingJobsResponse), '/viam.app.mltraining.v1.MLTrainingService/CancelTrainingJob': grpclib.const.Handler(self.CancelTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.CancelTrainingJobRequest, app.mltraining.v1.ml_training_pb2.CancelTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/DeleteCompletedTrainingJob': grpclib.const.Handler(self.DeleteCompletedTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobRequest, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobResponse)}
48
+ return {'/viam.app.mltraining.v1.MLTrainingService/SubmitTrainingJob': grpclib.const.Handler(self.SubmitTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.SubmitTrainingJobRequest, app.mltraining.v1.ml_training_pb2.SubmitTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/SubmitCustomTrainingJob': grpclib.const.Handler(self.SubmitCustomTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.SubmitCustomTrainingJobRequest, app.mltraining.v1.ml_training_pb2.SubmitCustomTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/GetTrainingJob': grpclib.const.Handler(self.GetTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.GetTrainingJobRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/ListTrainingJobs': grpclib.const.Handler(self.ListTrainingJobs, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.ListTrainingJobsRequest, app.mltraining.v1.ml_training_pb2.ListTrainingJobsResponse), '/viam.app.mltraining.v1.MLTrainingService/CancelTrainingJob': grpclib.const.Handler(self.CancelTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.CancelTrainingJobRequest, app.mltraining.v1.ml_training_pb2.CancelTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/DeleteCompletedTrainingJob': grpclib.const.Handler(self.DeleteCompletedTrainingJob, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobRequest, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobResponse), '/viam.app.mltraining.v1.MLTrainingService/GetTrainingJobLogs': grpclib.const.Handler(self.GetTrainingJobLogs, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsResponse), '/viam.app.mltraining.v1.MLTrainingService/ListSupportedContainers': grpclib.const.Handler(self.ListSupportedContainers, grpclib.const.Cardinality.UNARY_UNARY, app.mltraining.v1.ml_training_pb2.ListSupportedContainersRequest, app.mltraining.v1.ml_training_pb2.ListSupportedContainersResponse)}
41
49
 
42
50
  class UnimplementedMLTrainingServiceBase(MLTrainingServiceBase):
43
51
 
@@ -59,6 +67,12 @@ class UnimplementedMLTrainingServiceBase(MLTrainingServiceBase):
59
67
  async def DeleteCompletedTrainingJob(self, stream: 'grpclib.server.Stream[app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobRequest, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobResponse]') -> None:
60
68
  raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
61
69
 
70
+ async def GetTrainingJobLogs(self, stream: 'grpclib.server.Stream[app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsResponse]') -> None:
71
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
72
+
73
+ async def ListSupportedContainers(self, stream: 'grpclib.server.Stream[app.mltraining.v1.ml_training_pb2.ListSupportedContainersRequest, app.mltraining.v1.ml_training_pb2.ListSupportedContainersResponse]') -> None:
74
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
75
+
62
76
  class MLTrainingServiceStub:
63
77
 
64
78
  def __init__(self, channel: grpclib.client.Channel) -> None:
@@ -67,4 +81,6 @@ class MLTrainingServiceStub:
67
81
  self.GetTrainingJob = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/GetTrainingJob', app.mltraining.v1.ml_training_pb2.GetTrainingJobRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobResponse)
68
82
  self.ListTrainingJobs = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/ListTrainingJobs', app.mltraining.v1.ml_training_pb2.ListTrainingJobsRequest, app.mltraining.v1.ml_training_pb2.ListTrainingJobsResponse)
69
83
  self.CancelTrainingJob = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/CancelTrainingJob', app.mltraining.v1.ml_training_pb2.CancelTrainingJobRequest, app.mltraining.v1.ml_training_pb2.CancelTrainingJobResponse)
70
- self.DeleteCompletedTrainingJob = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/DeleteCompletedTrainingJob', app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobRequest, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobResponse)
84
+ self.DeleteCompletedTrainingJob = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/DeleteCompletedTrainingJob', app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobRequest, app.mltraining.v1.ml_training_pb2.DeleteCompletedTrainingJobResponse)
85
+ self.GetTrainingJobLogs = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/GetTrainingJobLogs', app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsRequest, app.mltraining.v1.ml_training_pb2.GetTrainingJobLogsResponse)
86
+ self.ListSupportedContainers = grpclib.client.UnaryUnaryMethod(channel, '/viam.app.mltraining.v1.MLTrainingService/ListSupportedContainers', app.mltraining.v1.ml_training_pb2.ListSupportedContainersRequest, app.mltraining.v1.ml_training_pb2.ListSupportedContainersResponse)