viam-sdk 0.45.2__py3-none-win_amd64.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.

Potentially problematic release.


This version of viam-sdk might be problematic. Click here for more details.

Files changed (476) hide show
  1. viam/__init__.py +71 -0
  2. viam/app/__init__.py +0 -0
  3. viam/app/_logs.py +34 -0
  4. viam/app/app_client.py +2525 -0
  5. viam/app/billing_client.py +143 -0
  6. viam/app/data_client.py +1715 -0
  7. viam/app/ml_training_client.py +251 -0
  8. viam/app/provisioning_client.py +95 -0
  9. viam/app/viam_client.py +260 -0
  10. viam/components/__init__.py +0 -0
  11. viam/components/arm/__init__.py +16 -0
  12. viam/components/arm/arm.py +223 -0
  13. viam/components/arm/client.py +124 -0
  14. viam/components/arm/service.py +123 -0
  15. viam/components/audio_input/__init__.py +18 -0
  16. viam/components/audio_input/audio_input.py +81 -0
  17. viam/components/audio_input/client.py +70 -0
  18. viam/components/audio_input/service.py +114 -0
  19. viam/components/base/__init__.py +13 -0
  20. viam/components/base/base.py +260 -0
  21. viam/components/base/client.py +153 -0
  22. viam/components/base/service.py +138 -0
  23. viam/components/board/__init__.py +9 -0
  24. viam/components/board/board.py +414 -0
  25. viam/components/board/client.py +241 -0
  26. viam/components/board/service.py +223 -0
  27. viam/components/button/__init__.py +10 -0
  28. viam/components/button/button.py +41 -0
  29. viam/components/button/client.py +52 -0
  30. viam/components/button/service.py +46 -0
  31. viam/components/camera/__init__.py +22 -0
  32. viam/components/camera/camera.py +138 -0
  33. viam/components/camera/client.py +98 -0
  34. viam/components/camera/service.py +105 -0
  35. viam/components/component_base.py +65 -0
  36. viam/components/encoder/__init__.py +18 -0
  37. viam/components/encoder/client.py +83 -0
  38. viam/components/encoder/encoder.py +118 -0
  39. viam/components/encoder/service.py +72 -0
  40. viam/components/gantry/__init__.py +11 -0
  41. viam/components/gantry/client.py +115 -0
  42. viam/components/gantry/gantry.py +156 -0
  43. viam/components/gantry/service.py +113 -0
  44. viam/components/generic/__init__.py +18 -0
  45. viam/components/generic/client.py +62 -0
  46. viam/components/generic/generic.py +76 -0
  47. viam/components/generic/service.py +40 -0
  48. viam/components/gripper/__init__.py +11 -0
  49. viam/components/gripper/client.py +85 -0
  50. viam/components/gripper/gripper.py +114 -0
  51. viam/components/gripper/service.py +81 -0
  52. viam/components/input/__init__.py +15 -0
  53. viam/components/input/client.py +194 -0
  54. viam/components/input/input.py +297 -0
  55. viam/components/input/service.py +175 -0
  56. viam/components/motor/__init__.py +11 -0
  57. viam/components/motor/client.py +168 -0
  58. viam/components/motor/motor.py +301 -0
  59. viam/components/motor/service.py +150 -0
  60. viam/components/movement_sensor/__init__.py +21 -0
  61. viam/components/movement_sensor/client.py +161 -0
  62. viam/components/movement_sensor/movement_sensor.py +253 -0
  63. viam/components/movement_sensor/service.py +146 -0
  64. viam/components/pose_tracker/__init__.py +17 -0
  65. viam/components/pose_tracker/client.py +50 -0
  66. viam/components/pose_tracker/pose_tracker.py +40 -0
  67. viam/components/pose_tracker/service.py +45 -0
  68. viam/components/power_sensor/__init__.py +17 -0
  69. viam/components/power_sensor/client.py +86 -0
  70. viam/components/power_sensor/power_sensor.py +104 -0
  71. viam/components/power_sensor/service.py +72 -0
  72. viam/components/sensor/__init__.py +18 -0
  73. viam/components/sensor/client.py +49 -0
  74. viam/components/sensor/sensor.py +48 -0
  75. viam/components/sensor/service.py +51 -0
  76. viam/components/servo/__init__.py +11 -0
  77. viam/components/servo/client.py +86 -0
  78. viam/components/servo/service.py +80 -0
  79. viam/components/servo/servo.py +114 -0
  80. viam/components/switch/__init__.py +10 -0
  81. viam/components/switch/client.py +83 -0
  82. viam/components/switch/service.py +72 -0
  83. viam/components/switch/switch.py +95 -0
  84. viam/errors.py +105 -0
  85. viam/gen/__init__.py +0 -0
  86. viam/gen/app/__init__.py +0 -0
  87. viam/gen/app/agent/__init__.py +0 -0
  88. viam/gen/app/agent/v1/__init__.py +0 -0
  89. viam/gen/app/agent/v1/agent_grpc.py +29 -0
  90. viam/gen/app/agent/v1/agent_pb2.py +47 -0
  91. viam/gen/app/agent/v1/agent_pb2.pyi +280 -0
  92. viam/gen/app/cloudslam/__init__.py +0 -0
  93. viam/gen/app/cloudslam/v1/__init__.py +0 -0
  94. viam/gen/app/cloudslam/v1/cloud_slam_grpc.py +70 -0
  95. viam/gen/app/cloudslam/v1/cloud_slam_pb2.py +54 -0
  96. viam/gen/app/cloudslam/v1/cloud_slam_pb2.pyi +384 -0
  97. viam/gen/app/data/__init__.py +0 -0
  98. viam/gen/app/data/v1/__init__.py +0 -0
  99. viam/gen/app/data/v1/data_grpc.py +206 -0
  100. viam/gen/app/data/v1/data_pb2.py +178 -0
  101. viam/gen/app/data/v1/data_pb2.pyi +1485 -0
  102. viam/gen/app/datapipelines/__init__.py +0 -0
  103. viam/gen/app/datapipelines/v1/__init__.py +0 -0
  104. viam/gen/app/datapipelines/v1/data_pipelines_grpc.py +84 -0
  105. viam/gen/app/datapipelines/v1/data_pipelines_pb2.py +56 -0
  106. viam/gen/app/datapipelines/v1/data_pipelines_pb2.pyi +370 -0
  107. viam/gen/app/dataset/__init__.py +0 -0
  108. viam/gen/app/dataset/v1/__init__.py +0 -0
  109. viam/gen/app/dataset/v1/dataset_grpc.py +60 -0
  110. viam/gen/app/dataset/v1/dataset_pb2.py +40 -0
  111. viam/gen/app/dataset/v1/dataset_pb2.pyi +179 -0
  112. viam/gen/app/datasync/__init__.py +0 -0
  113. viam/gen/app/datasync/v1/__init__.py +0 -0
  114. viam/gen/app/datasync/v1/data_sync_grpc.py +47 -0
  115. viam/gen/app/datasync/v1/data_sync_pb2.py +70 -0
  116. viam/gen/app/datasync/v1/data_sync_pb2.pyi +425 -0
  117. viam/gen/app/mlinference/__init__.py +0 -0
  118. viam/gen/app/mlinference/v1/__init__.py +0 -0
  119. viam/gen/app/mlinference/v1/ml_inference_grpc.py +28 -0
  120. viam/gen/app/mlinference/v1/ml_inference_pb2.py +23 -0
  121. viam/gen/app/mlinference/v1/ml_inference_pb2.pyi +63 -0
  122. viam/gen/app/mltraining/__init__.py +0 -0
  123. viam/gen/app/mltraining/v1/__init__.py +0 -0
  124. viam/gen/app/mltraining/v1/ml_training_grpc.py +78 -0
  125. viam/gen/app/mltraining/v1/ml_training_pb2.py +124 -0
  126. viam/gen/app/mltraining/v1/ml_training_pb2.pyi +415 -0
  127. viam/gen/app/packages/__init__.py +0 -0
  128. viam/gen/app/packages/v1/__init__.py +0 -0
  129. viam/gen/app/packages/v1/packages_grpc.py +54 -0
  130. viam/gen/app/packages/v1/packages_pb2.py +52 -0
  131. viam/gen/app/packages/v1/packages_pb2.pyi +311 -0
  132. viam/gen/app/v1/__init__.py +0 -0
  133. viam/gen/app/v1/app_grpc.py +863 -0
  134. viam/gen/app/v1/app_pb2.py +649 -0
  135. viam/gen/app/v1/app_pb2.pyi +5279 -0
  136. viam/gen/app/v1/billing_grpc.py +76 -0
  137. viam/gen/app/v1/billing_pb2.py +92 -0
  138. viam/gen/app/v1/billing_pb2.pyi +463 -0
  139. viam/gen/app/v1/end_user_grpc.py +59 -0
  140. viam/gen/app/v1/end_user_pb2.py +55 -0
  141. viam/gen/app/v1/end_user_pb2.pyi +181 -0
  142. viam/gen/app/v1/robot_grpc.py +55 -0
  143. viam/gen/app/v1/robot_pb2.py +127 -0
  144. viam/gen/app/v1/robot_pb2.pyi +1202 -0
  145. viam/gen/common/__init__.py +0 -0
  146. viam/gen/common/v1/__init__.py +0 -0
  147. viam/gen/common/v1/common_grpc.py +0 -0
  148. viam/gen/common/v1/common_pb2.py +78 -0
  149. viam/gen/common/v1/common_pb2.pyi +687 -0
  150. viam/gen/component/__init__.py +0 -0
  151. viam/gen/component/arm/__init__.py +0 -0
  152. viam/gen/component/arm/v1/__init__.py +0 -0
  153. viam/gen/component/arm/v1/arm_grpc.py +102 -0
  154. viam/gen/component/arm/v1/arm_pb2.py +74 -0
  155. viam/gen/component/arm/v1/arm_pb2.pyi +344 -0
  156. viam/gen/component/audioinput/__init__.py +0 -0
  157. viam/gen/component/audioinput/v1/__init__.py +0 -0
  158. viam/gen/component/audioinput/v1/audioinput_grpc.py +63 -0
  159. viam/gen/component/audioinput/v1/audioinput_pb2.py +45 -0
  160. viam/gen/component/audioinput/v1/audioinput_pb2.pyi +179 -0
  161. viam/gen/component/base/__init__.py +0 -0
  162. viam/gen/component/base/v1/__init__.py +0 -0
  163. viam/gen/component/base/v1/base_grpc.py +94 -0
  164. viam/gen/component/base/v1/base_pb2.py +66 -0
  165. viam/gen/component/base/v1/base_pb2.pyi +258 -0
  166. viam/gen/component/board/__init__.py +0 -0
  167. viam/gen/component/board/v1/__init__.py +0 -0
  168. viam/gen/component/board/v1/board_grpc.py +127 -0
  169. viam/gen/component/board/v1/board_pb2.py +103 -0
  170. viam/gen/component/board/v1/board_pb2.pyi +496 -0
  171. viam/gen/component/button/__init__.py +0 -0
  172. viam/gen/component/button/v1/__init__.py +0 -0
  173. viam/gen/component/button/v1/button_grpc.py +38 -0
  174. viam/gen/component/button/v1/button_pb2.py +28 -0
  175. viam/gen/component/button/v1/button_pb2.pyi +39 -0
  176. viam/gen/component/camera/__init__.py +0 -0
  177. viam/gen/component/camera/v1/__init__.py +0 -0
  178. viam/gen/component/camera/v1/camera_grpc.py +79 -0
  179. viam/gen/component/camera/v1/camera_pb2.py +67 -0
  180. viam/gen/component/camera/v1/camera_pb2.pyi +373 -0
  181. viam/gen/component/encoder/__init__.py +0 -0
  182. viam/gen/component/encoder/v1/__init__.py +0 -0
  183. viam/gen/component/encoder/v1/encoder_grpc.py +62 -0
  184. viam/gen/component/encoder/v1/encoder_pb2.py +44 -0
  185. viam/gen/component/encoder/v1/encoder_pb2.pyi +147 -0
  186. viam/gen/component/gantry/__init__.py +0 -0
  187. viam/gen/component/gantry/v1/__init__.py +0 -0
  188. viam/gen/component/gantry/v1/gantry_grpc.py +86 -0
  189. viam/gen/component/gantry/v1/gantry_pb2.py +62 -0
  190. viam/gen/component/gantry/v1/gantry_pb2.pyi +239 -0
  191. viam/gen/component/generic/__init__.py +0 -0
  192. viam/gen/component/generic/v1/__init__.py +0 -0
  193. viam/gen/component/generic/v1/generic_grpc.py +37 -0
  194. viam/gen/component/generic/v1/generic_pb2.py +23 -0
  195. viam/gen/component/generic/v1/generic_pb2.pyi +6 -0
  196. viam/gen/component/gripper/__init__.py +0 -0
  197. viam/gen/component/gripper/v1/__init__.py +0 -0
  198. viam/gen/component/gripper/v1/gripper_grpc.py +70 -0
  199. viam/gen/component/gripper/v1/gripper_pb2.py +48 -0
  200. viam/gen/component/gripper/v1/gripper_pb2.pyi +137 -0
  201. viam/gen/component/inputcontroller/__init__.py +0 -0
  202. viam/gen/component/inputcontroller/v1/__init__.py +0 -0
  203. viam/gen/component/inputcontroller/v1/input_controller_grpc.py +71 -0
  204. viam/gen/component/inputcontroller/v1/input_controller_pb2.py +55 -0
  205. viam/gen/component/inputcontroller/v1/input_controller_pb2.pyi +243 -0
  206. viam/gen/component/motor/__init__.py +0 -0
  207. viam/gen/component/motor/v1/__init__.py +0 -0
  208. viam/gen/component/motor/v1/motor_grpc.py +118 -0
  209. viam/gen/component/motor/v1/motor_pb2.py +86 -0
  210. viam/gen/component/motor/v1/motor_pb2.pyi +368 -0
  211. viam/gen/component/movementsensor/__init__.py +0 -0
  212. viam/gen/component/movementsensor/v1/__init__.py +0 -0
  213. viam/gen/component/movementsensor/v1/movementsensor_grpc.py +110 -0
  214. viam/gen/component/movementsensor/v1/movementsensor_pb2.py +78 -0
  215. viam/gen/component/movementsensor/v1/movementsensor_pb2.pyi +384 -0
  216. viam/gen/component/posetracker/__init__.py +0 -0
  217. viam/gen/component/posetracker/v1/__init__.py +0 -0
  218. viam/gen/component/posetracker/v1/pose_tracker_grpc.py +46 -0
  219. viam/gen/component/posetracker/v1/pose_tracker_pb2.py +34 -0
  220. viam/gen/component/posetracker/v1/pose_tracker_pb2.pyi +79 -0
  221. viam/gen/component/powersensor/__init__.py +0 -0
  222. viam/gen/component/powersensor/v1/__init__.py +0 -0
  223. viam/gen/component/powersensor/v1/powersensor_grpc.py +62 -0
  224. viam/gen/component/powersensor/v1/powersensor_pb2.py +42 -0
  225. viam/gen/component/powersensor/v1/powersensor_pb2.pyi +124 -0
  226. viam/gen/component/sensor/__init__.py +0 -0
  227. viam/gen/component/sensor/v1/__init__.py +0 -0
  228. viam/gen/component/sensor/v1/sensor_grpc.py +45 -0
  229. viam/gen/component/sensor/v1/sensor_pb2.py +25 -0
  230. viam/gen/component/sensor/v1/sensor_pb2.pyi +6 -0
  231. viam/gen/component/servo/__init__.py +0 -0
  232. viam/gen/component/servo/v1/__init__.py +0 -0
  233. viam/gen/component/servo/v1/servo_grpc.py +70 -0
  234. viam/gen/component/servo/v1/servo_pb2.py +50 -0
  235. viam/gen/component/servo/v1/servo_pb2.pyi +150 -0
  236. viam/gen/component/switch/__init__.py +0 -0
  237. viam/gen/component/switch/v1/__init__.py +0 -0
  238. viam/gen/component/switch/v1/switch_grpc.py +54 -0
  239. viam/gen/component/switch/v1/switch_pb2.py +40 -0
  240. viam/gen/component/switch/v1/switch_pb2.pyi +109 -0
  241. viam/gen/component/testecho/__init__.py +0 -0
  242. viam/gen/component/testecho/v1/__init__.py +0 -0
  243. viam/gen/component/testecho/v1/testecho_grpc.py +52 -0
  244. viam/gen/component/testecho/v1/testecho_pb2.py +36 -0
  245. viam/gen/component/testecho/v1/testecho_pb2.pyi +114 -0
  246. viam/gen/module/__init__.py +0 -0
  247. viam/gen/module/v1/__init__.py +0 -0
  248. viam/gen/module/v1/module_grpc.py +61 -0
  249. viam/gen/module/v1/module_pb2.py +43 -0
  250. viam/gen/module/v1/module_pb2.pyi +211 -0
  251. viam/gen/proto/__init__.py +0 -0
  252. viam/gen/proto/rpc/__init__.py +0 -0
  253. viam/gen/proto/rpc/examples/__init__.py +0 -0
  254. viam/gen/proto/rpc/examples/echo/__init__.py +0 -0
  255. viam/gen/proto/rpc/examples/echo/v1/__init__.py +0 -0
  256. viam/gen/proto/rpc/examples/echo/v1/echo_grpc.py +44 -0
  257. viam/gen/proto/rpc/examples/echo/v1/echo_pb2.py +32 -0
  258. viam/gen/proto/rpc/examples/echo/v1/echo_pb2.pyi +87 -0
  259. viam/gen/proto/rpc/examples/echoresource/__init__.py +0 -0
  260. viam/gen/proto/rpc/examples/echoresource/v1/__init__.py +0 -0
  261. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_grpc.py +43 -0
  262. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_pb2.py +29 -0
  263. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_pb2.pyi +93 -0
  264. viam/gen/proto/rpc/v1/__init__.py +0 -0
  265. viam/gen/proto/rpc/v1/auth_grpc.py +47 -0
  266. viam/gen/proto/rpc/v1/auth_pb2.py +34 -0
  267. viam/gen/proto/rpc/v1/auth_pb2.pyi +92 -0
  268. viam/gen/proto/rpc/webrtc/__init__.py +0 -0
  269. viam/gen/proto/rpc/webrtc/v1/__init__.py +0 -0
  270. viam/gen/proto/rpc/webrtc/v1/grpc_grpc.py +0 -0
  271. viam/gen/proto/rpc/webrtc/v1/grpc_pb2.py +43 -0
  272. viam/gen/proto/rpc/webrtc/v1/grpc_pb2.pyi +304 -0
  273. viam/gen/proto/rpc/webrtc/v1/signaling_grpc.py +54 -0
  274. viam/gen/proto/rpc/webrtc/v1/signaling_pb2.py +70 -0
  275. viam/gen/proto/rpc/webrtc/v1/signaling_pb2.pyi +496 -0
  276. viam/gen/provisioning/__init__.py +0 -0
  277. viam/gen/provisioning/v1/__init__.py +0 -0
  278. viam/gen/provisioning/v1/provisioning_grpc.py +51 -0
  279. viam/gen/provisioning/v1/provisioning_pb2.py +39 -0
  280. viam/gen/provisioning/v1/provisioning_pb2.pyi +188 -0
  281. viam/gen/robot/__init__.py +0 -0
  282. viam/gen/robot/v1/__init__.py +0 -0
  283. viam/gen/robot/v1/robot_grpc.py +208 -0
  284. viam/gen/robot/v1/robot_pb2.py +188 -0
  285. viam/gen/robot/v1/robot_pb2.pyi +1020 -0
  286. viam/gen/service/__init__.py +0 -0
  287. viam/gen/service/datamanager/__init__.py +0 -0
  288. viam/gen/service/datamanager/v1/__init__.py +0 -0
  289. viam/gen/service/datamanager/v1/data_manager_grpc.py +38 -0
  290. viam/gen/service/datamanager/v1/data_manager_pb2.py +28 -0
  291. viam/gen/service/datamanager/v1/data_manager_pb2.pyi +39 -0
  292. viam/gen/service/discovery/__init__.py +0 -0
  293. viam/gen/service/discovery/v1/__init__.py +0 -0
  294. viam/gen/service/discovery/v1/discovery_grpc.py +39 -0
  295. viam/gen/service/discovery/v1/discovery_pb2.py +29 -0
  296. viam/gen/service/discovery/v1/discovery_pb2.pyi +51 -0
  297. viam/gen/service/generic/__init__.py +0 -0
  298. viam/gen/service/generic/v1/__init__.py +0 -0
  299. viam/gen/service/generic/v1/generic_grpc.py +29 -0
  300. viam/gen/service/generic/v1/generic_pb2.py +21 -0
  301. viam/gen/service/generic/v1/generic_pb2.pyi +6 -0
  302. viam/gen/service/mlmodel/__init__.py +0 -0
  303. viam/gen/service/mlmodel/v1/__init__.py +0 -0
  304. viam/gen/service/mlmodel/v1/mlmodel_grpc.py +37 -0
  305. viam/gen/service/mlmodel/v1/mlmodel_pb2.py +83 -0
  306. viam/gen/service/mlmodel/v1/mlmodel_pb2.pyi +480 -0
  307. viam/gen/service/motion/__init__.py +0 -0
  308. viam/gen/service/motion/v1/__init__.py +0 -0
  309. viam/gen/service/motion/v1/motion_grpc.py +87 -0
  310. viam/gen/service/motion/v1/motion_pb2.py +97 -0
  311. viam/gen/service/motion/v1/motion_pb2.pyi +838 -0
  312. viam/gen/service/navigation/__init__.py +0 -0
  313. viam/gen/service/navigation/v1/__init__.py +0 -0
  314. viam/gen/service/navigation/v1/navigation_grpc.py +102 -0
  315. viam/gen/service/navigation/v1/navigation_pb2.py +84 -0
  316. viam/gen/service/navigation/v1/navigation_pb2.pyi +419 -0
  317. viam/gen/service/sensors/__init__.py +0 -0
  318. viam/gen/service/sensors/v1/__init__.py +0 -0
  319. viam/gen/service/sensors/v1/sensors_grpc.py +46 -0
  320. viam/gen/service/sensors/v1/sensors_pb2.py +68 -0
  321. viam/gen/service/sensors/v1/sensors_pb2.pyi +137 -0
  322. viam/gen/service/shell/__init__.py +0 -0
  323. viam/gen/service/shell/v1/__init__.py +0 -0
  324. viam/gen/service/shell/v1/shell_grpc.py +55 -0
  325. viam/gen/service/shell/v1/shell_pb2.py +45 -0
  326. viam/gen/service/shell/v1/shell_pb2.pyi +307 -0
  327. viam/gen/service/slam/__init__.py +0 -0
  328. viam/gen/service/slam/v1/__init__.py +0 -0
  329. viam/gen/service/slam/v1/slam_grpc.py +61 -0
  330. viam/gen/service/slam/v1/slam_pb2.py +51 -0
  331. viam/gen/service/slam/v1/slam_pb2.pyi +213 -0
  332. viam/gen/service/vision/__init__.py +0 -0
  333. viam/gen/service/vision/v1/__init__.py +0 -0
  334. viam/gen/service/vision/v1/vision_grpc.py +87 -0
  335. viam/gen/service/vision/v1/vision_pb2.py +69 -0
  336. viam/gen/service/vision/v1/vision_pb2.pyi +454 -0
  337. viam/gen/stream/__init__.py +0 -0
  338. viam/gen/stream/v1/__init__.py +0 -0
  339. viam/gen/stream/v1/stream_grpc.py +59 -0
  340. viam/gen/stream/v1/stream_pb2.py +39 -0
  341. viam/gen/stream/v1/stream_pb2.pyi +161 -0
  342. viam/gen/tagger/__init__.py +0 -0
  343. viam/gen/tagger/v1/__init__.py +0 -0
  344. viam/gen/tagger/v1/tagger_grpc.py +0 -0
  345. viam/gen/tagger/v1/tagger_pb2.py +16 -0
  346. viam/gen/tagger/v1/tagger_pb2.pyi +15 -0
  347. viam/logging.py +216 -0
  348. viam/media/__init__.py +0 -0
  349. viam/media/audio.py +16 -0
  350. viam/media/utils/__init__.py +0 -0
  351. viam/media/utils/pil/__init__.py +51 -0
  352. viam/media/utils/pil/viam_rgba_plugin.py +73 -0
  353. viam/media/viam_rgba.py +10 -0
  354. viam/media/video.py +217 -0
  355. viam/module/__init__.py +5 -0
  356. viam/module/module.py +281 -0
  357. viam/module/service.py +66 -0
  358. viam/module/types.py +23 -0
  359. viam/operations.py +124 -0
  360. viam/proto/__init__.py +0 -0
  361. viam/proto/app/__init__.py +554 -0
  362. viam/proto/app/agent/__init__.py +28 -0
  363. viam/proto/app/billing.py +58 -0
  364. viam/proto/app/cloudslam/__init__.py +48 -0
  365. viam/proto/app/data/__init__.py +138 -0
  366. viam/proto/app/datapipelines/__init__.py +56 -0
  367. viam/proto/app/dataset/__init__.py +36 -0
  368. viam/proto/app/datasync/__init__.py +44 -0
  369. viam/proto/app/end_user.py +34 -0
  370. viam/proto/app/mlinference/__init__.py +15 -0
  371. viam/proto/app/mltraining/__init__.py +52 -0
  372. viam/proto/app/packages/__init__.py +38 -0
  373. viam/proto/app/robot.py +84 -0
  374. viam/proto/common/__init__.py +66 -0
  375. viam/proto/component/__init__.py +0 -0
  376. viam/proto/component/arm/__init__.py +48 -0
  377. viam/proto/component/audioinput/__init__.py +30 -0
  378. viam/proto/component/base/__init__.py +42 -0
  379. viam/proto/component/board/__init__.py +62 -0
  380. viam/proto/component/button/__init__.py +15 -0
  381. viam/proto/component/camera/__init__.py +46 -0
  382. viam/proto/component/encoder/__init__.py +28 -0
  383. viam/proto/component/gantry/__init__.py +40 -0
  384. viam/proto/component/generic/__init__.py +12 -0
  385. viam/proto/component/gripper/__init__.py +30 -0
  386. viam/proto/component/inputcontroller/__init__.py +38 -0
  387. viam/proto/component/motor/__init__.py +56 -0
  388. viam/proto/component/movementsensor/__init__.py +50 -0
  389. viam/proto/component/posetracker/__init__.py +19 -0
  390. viam/proto/component/powersensor/__init__.py +30 -0
  391. viam/proto/component/sensor/__init__.py +12 -0
  392. viam/proto/component/servo/__init__.py +32 -0
  393. viam/proto/component/switch/__init__.py +26 -0
  394. viam/proto/component/testecho/__init__.py +30 -0
  395. viam/proto/module/__init__.py +38 -0
  396. viam/proto/provisioning/__init__.py +36 -0
  397. viam/proto/robot/__init__.py +130 -0
  398. viam/proto/rpc/__init__.py +0 -0
  399. viam/proto/rpc/auth.py +34 -0
  400. viam/proto/rpc/examples/__init__.py +0 -0
  401. viam/proto/rpc/examples/echo/__init__.py +26 -0
  402. viam/proto/rpc/examples/echoresource/__init__.py +30 -0
  403. viam/proto/rpc/webrtc/__init__.py +0 -0
  404. viam/proto/rpc/webrtc/grpc.py +36 -0
  405. viam/proto/rpc/webrtc/signaling.py +58 -0
  406. viam/proto/service/__init__.py +0 -0
  407. viam/proto/service/datamanager/__init__.py +19 -0
  408. viam/proto/service/discovery/__init__.py +15 -0
  409. viam/proto/service/generic/__init__.py +12 -0
  410. viam/proto/service/mlmodel/__init__.py +54 -0
  411. viam/proto/service/motion/__init__.py +68 -0
  412. viam/proto/service/navigation/__init__.py +58 -0
  413. viam/proto/service/sensors/__init__.py +18 -0
  414. viam/proto/service/shell/__init__.py +36 -0
  415. viam/proto/service/slam/__init__.py +36 -0
  416. viam/proto/service/vision/__init__.py +46 -0
  417. viam/proto/stream/__init__.py +36 -0
  418. viam/proto/tagger/__init__.py +6 -0
  419. viam/py.typed +0 -0
  420. viam/resource/__init__.py +0 -0
  421. viam/resource/base.py +123 -0
  422. viam/resource/easy_resource.py +153 -0
  423. viam/resource/manager.py +126 -0
  424. viam/resource/registry.py +199 -0
  425. viam/resource/rpc_client_base.py +65 -0
  426. viam/resource/rpc_service_base.py +48 -0
  427. viam/resource/types.py +213 -0
  428. viam/robot/__init__.py +0 -0
  429. viam/robot/client.py +909 -0
  430. viam/robot/service.py +69 -0
  431. viam/rpc/__init__.py +0 -0
  432. viam/rpc/dial.py +420 -0
  433. viam/rpc/libviam_rust_utils.dll +0 -0
  434. viam/rpc/server.py +201 -0
  435. viam/rpc/signaling.py +29 -0
  436. viam/rpc/types.py +22 -0
  437. viam/services/__init__.py +0 -0
  438. viam/services/discovery/__init__.py +12 -0
  439. viam/services/discovery/client.py +55 -0
  440. viam/services/discovery/discovery.py +52 -0
  441. viam/services/discovery/service.py +43 -0
  442. viam/services/generic/__init__.py +18 -0
  443. viam/services/generic/client.py +58 -0
  444. viam/services/generic/generic.py +58 -0
  445. viam/services/generic/service.py +29 -0
  446. viam/services/mlmodel/__init__.py +24 -0
  447. viam/services/mlmodel/client.py +37 -0
  448. viam/services/mlmodel/mlmodel.py +78 -0
  449. viam/services/mlmodel/service.py +38 -0
  450. viam/services/mlmodel/utils.py +101 -0
  451. viam/services/motion/__init__.py +17 -0
  452. viam/services/motion/client.py +215 -0
  453. viam/services/motion/motion.py +378 -0
  454. viam/services/motion/service.py +132 -0
  455. viam/services/navigation/__init__.py +11 -0
  456. viam/services/navigation/client.py +99 -0
  457. viam/services/navigation/navigation.py +250 -0
  458. viam/services/navigation/service.py +137 -0
  459. viam/services/service_base.py +78 -0
  460. viam/services/service_client_base.py +46 -0
  461. viam/services/slam/__init__.py +17 -0
  462. viam/services/slam/client.py +62 -0
  463. viam/services/slam/service.py +75 -0
  464. viam/services/slam/slam.py +111 -0
  465. viam/services/vision/__init__.py +15 -0
  466. viam/services/vision/client.py +206 -0
  467. viam/services/vision/service.py +146 -0
  468. viam/services/vision/vision.py +315 -0
  469. viam/sessions_client.py +245 -0
  470. viam/streams.py +44 -0
  471. viam/utils.py +365 -0
  472. viam/version_metadata.py +4 -0
  473. viam_sdk-0.45.2.dist-info/METADATA +157 -0
  474. viam_sdk-0.45.2.dist-info/RECORD +476 -0
  475. viam_sdk-0.45.2.dist-info/WHEEL +4 -0
  476. viam_sdk-0.45.2.dist-info/licenses/LICENSE +202 -0
@@ -0,0 +1,150 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import google.protobuf.descriptor
7
+ import google.protobuf.message
8
+ import google.protobuf.struct_pb2
9
+ import typing
10
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
11
+
12
+ @typing.final
13
+ class MoveRequest(google.protobuf.message.Message):
14
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
15
+ NAME_FIELD_NUMBER: builtins.int
16
+ ANGLE_DEG_FIELD_NUMBER: builtins.int
17
+ EXTRA_FIELD_NUMBER: builtins.int
18
+ name: builtins.str
19
+ 'the name of the servo, as registered'
20
+ angle_deg: builtins.int
21
+ 'the degrees by which to rotate the servo.'
22
+
23
+ @property
24
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
25
+ """Additional arguments to the method"""
26
+
27
+ def __init__(self, *, name: builtins.str=..., angle_deg: builtins.int=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
28
+ ...
29
+
30
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
31
+ ...
32
+
33
+ def ClearField(self, field_name: typing.Literal['angle_deg', b'angle_deg', 'extra', b'extra', 'name', b'name']) -> None:
34
+ ...
35
+ global___MoveRequest = MoveRequest
36
+
37
+ @typing.final
38
+ class MoveResponse(google.protobuf.message.Message):
39
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
40
+
41
+ def __init__(self) -> None:
42
+ ...
43
+ global___MoveResponse = MoveResponse
44
+
45
+ @typing.final
46
+ class GetPositionRequest(google.protobuf.message.Message):
47
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
48
+ NAME_FIELD_NUMBER: builtins.int
49
+ EXTRA_FIELD_NUMBER: builtins.int
50
+ name: builtins.str
51
+ 'the name of the servo, as registered'
52
+
53
+ @property
54
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
55
+ """Additional arguments to the method"""
56
+
57
+ def __init__(self, *, name: builtins.str=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
58
+ ...
59
+
60
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
61
+ ...
62
+
63
+ def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name']) -> None:
64
+ ...
65
+ global___GetPositionRequest = GetPositionRequest
66
+
67
+ @typing.final
68
+ class GetPositionResponse(google.protobuf.message.Message):
69
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
70
+ POSITION_DEG_FIELD_NUMBER: builtins.int
71
+ position_deg: builtins.int
72
+ 'the degrees from neutral by which the servo is currently rotated.'
73
+
74
+ def __init__(self, *, position_deg: builtins.int=...) -> None:
75
+ ...
76
+
77
+ def ClearField(self, field_name: typing.Literal['position_deg', b'position_deg']) -> None:
78
+ ...
79
+ global___GetPositionResponse = GetPositionResponse
80
+
81
+ @typing.final
82
+ class StopRequest(google.protobuf.message.Message):
83
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
84
+ NAME_FIELD_NUMBER: builtins.int
85
+ EXTRA_FIELD_NUMBER: builtins.int
86
+ name: builtins.str
87
+ 'Name of a servo'
88
+
89
+ @property
90
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
91
+ """Additional arguments to the method"""
92
+
93
+ def __init__(self, *, name: builtins.str=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
94
+ ...
95
+
96
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
97
+ ...
98
+
99
+ def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name']) -> None:
100
+ ...
101
+ global___StopRequest = StopRequest
102
+
103
+ @typing.final
104
+ class StopResponse(google.protobuf.message.Message):
105
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
106
+
107
+ def __init__(self) -> None:
108
+ ...
109
+ global___StopResponse = StopResponse
110
+
111
+ @typing.final
112
+ class Status(google.protobuf.message.Message):
113
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
114
+ POSITION_DEG_FIELD_NUMBER: builtins.int
115
+ IS_MOVING_FIELD_NUMBER: builtins.int
116
+ position_deg: builtins.int
117
+ is_moving: builtins.bool
118
+
119
+ def __init__(self, *, position_deg: builtins.int=..., is_moving: builtins.bool=...) -> None:
120
+ ...
121
+
122
+ def ClearField(self, field_name: typing.Literal['is_moving', b'is_moving', 'position_deg', b'position_deg']) -> None:
123
+ ...
124
+ global___Status = Status
125
+
126
+ @typing.final
127
+ class IsMovingRequest(google.protobuf.message.Message):
128
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
129
+ NAME_FIELD_NUMBER: builtins.int
130
+ name: builtins.str
131
+
132
+ def __init__(self, *, name: builtins.str=...) -> None:
133
+ ...
134
+
135
+ def ClearField(self, field_name: typing.Literal['name', b'name']) -> None:
136
+ ...
137
+ global___IsMovingRequest = IsMovingRequest
138
+
139
+ @typing.final
140
+ class IsMovingResponse(google.protobuf.message.Message):
141
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
142
+ IS_MOVING_FIELD_NUMBER: builtins.int
143
+ is_moving: builtins.bool
144
+
145
+ def __init__(self, *, is_moving: builtins.bool=...) -> None:
146
+ ...
147
+
148
+ def ClearField(self, field_name: typing.Literal['is_moving', b'is_moving']) -> None:
149
+ ...
150
+ global___IsMovingResponse = IsMovingResponse
File without changes
File without changes
@@ -0,0 +1,54 @@
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 common
9
+ import google.api.annotations_pb2
10
+ import google.protobuf.struct_pb2
11
+ from .... import component
12
+
13
+ class SwitchServiceBase(abc.ABC):
14
+
15
+ @abc.abstractmethod
16
+ async def SetPosition(self, stream: 'grpclib.server.Stream[component.switch.v1.switch_pb2.SetPositionRequest, component.switch.v1.switch_pb2.SetPositionResponse]') -> None:
17
+ pass
18
+
19
+ @abc.abstractmethod
20
+ async def GetPosition(self, stream: 'grpclib.server.Stream[component.switch.v1.switch_pb2.GetPositionRequest, component.switch.v1.switch_pb2.GetPositionResponse]') -> None:
21
+ pass
22
+
23
+ @abc.abstractmethod
24
+ async def GetNumberOfPositions(self, stream: 'grpclib.server.Stream[component.switch.v1.switch_pb2.GetNumberOfPositionsRequest, component.switch.v1.switch_pb2.GetNumberOfPositionsResponse]') -> None:
25
+ pass
26
+
27
+ @abc.abstractmethod
28
+ async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None:
29
+ pass
30
+
31
+ def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
32
+ return {'/viam.component.switch.v1.SwitchService/SetPosition': grpclib.const.Handler(self.SetPosition, grpclib.const.Cardinality.UNARY_UNARY, component.switch.v1.switch_pb2.SetPositionRequest, component.switch.v1.switch_pb2.SetPositionResponse), '/viam.component.switch.v1.SwitchService/GetPosition': grpclib.const.Handler(self.GetPosition, grpclib.const.Cardinality.UNARY_UNARY, component.switch.v1.switch_pb2.GetPositionRequest, component.switch.v1.switch_pb2.GetPositionResponse), '/viam.component.switch.v1.SwitchService/GetNumberOfPositions': grpclib.const.Handler(self.GetNumberOfPositions, grpclib.const.Cardinality.UNARY_UNARY, component.switch.v1.switch_pb2.GetNumberOfPositionsRequest, component.switch.v1.switch_pb2.GetNumberOfPositionsResponse), '/viam.component.switch.v1.SwitchService/DoCommand': grpclib.const.Handler(self.DoCommand, grpclib.const.Cardinality.UNARY_UNARY, common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)}
33
+
34
+ class UnimplementedSwitchServiceBase(SwitchServiceBase):
35
+
36
+ async def SetPosition(self, stream: 'grpclib.server.Stream[component.switch.v1.switch_pb2.SetPositionRequest, component.switch.v1.switch_pb2.SetPositionResponse]') -> None:
37
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
38
+
39
+ async def GetPosition(self, stream: 'grpclib.server.Stream[component.switch.v1.switch_pb2.GetPositionRequest, component.switch.v1.switch_pb2.GetPositionResponse]') -> None:
40
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
41
+
42
+ async def GetNumberOfPositions(self, stream: 'grpclib.server.Stream[component.switch.v1.switch_pb2.GetNumberOfPositionsRequest, component.switch.v1.switch_pb2.GetNumberOfPositionsResponse]') -> None:
43
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
44
+
45
+ async def DoCommand(self, stream: 'grpclib.server.Stream[common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse]') -> None:
46
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
47
+
48
+ class SwitchServiceStub:
49
+
50
+ def __init__(self, channel: grpclib.client.Channel) -> None:
51
+ self.SetPosition = grpclib.client.UnaryUnaryMethod(channel, '/viam.component.switch.v1.SwitchService/SetPosition', component.switch.v1.switch_pb2.SetPositionRequest, component.switch.v1.switch_pb2.SetPositionResponse)
52
+ self.GetPosition = grpclib.client.UnaryUnaryMethod(channel, '/viam.component.switch.v1.SwitchService/GetPosition', component.switch.v1.switch_pb2.GetPositionRequest, component.switch.v1.switch_pb2.GetPositionResponse)
53
+ self.GetNumberOfPositions = grpclib.client.UnaryUnaryMethod(channel, '/viam.component.switch.v1.SwitchService/GetNumberOfPositions', component.switch.v1.switch_pb2.GetNumberOfPositionsRequest, component.switch.v1.switch_pb2.GetNumberOfPositionsResponse)
54
+ self.DoCommand = grpclib.client.UnaryUnaryMethod(channel, '/viam.component.switch.v1.SwitchService/DoCommand', common.v1.common_pb2.DoCommandRequest, common.v1.common_pb2.DoCommandResponse)
@@ -0,0 +1,40 @@
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, '', 'component/switch/v1/switch.proto')
8
+ _sym_db = _symbol_database.Default()
9
+ from ....common.v1 import common_pb2 as common_dot_v1_dot_common__pb2
10
+ from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
11
+ from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
12
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n component/switch/v1/switch.proto\x12\x18viam.component.switch.v1\x1a\x16common/v1/common.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto"s\n\x12SetPositionRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1a\n\x08position\x18\x02 \x01(\rR\x08position\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"\x15\n\x13SetPositionResponse"W\n\x12GetPositionRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"1\n\x13GetPositionResponse\x12\x1a\n\x08position\x18\x01 \x01(\rR\x08position"`\n\x1bGetNumberOfPositionsRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x05extra\x18c \x01(\x0b2\x17.google.protobuf.StructR\x05extra"N\n\x1cGetNumberOfPositionsResponse\x12.\n\x13number_of_positions\x18\x01 \x01(\rR\x11numberOfPositions2\xb9\x05\n\rSwitchService\x12\xa5\x01\n\x0bSetPosition\x12,.viam.component.switch.v1.SetPositionRequest\x1a-.viam.component.switch.v1.SetPositionResponse"9\x82\xd3\xe4\x93\x023\x1a1/viam/api/v1/component/switch/{name}/set_position\x12\xa5\x01\n\x0bGetPosition\x12,.viam.component.switch.v1.GetPositionRequest\x1a-.viam.component.switch.v1.GetPositionResponse"9\x82\xd3\xe4\x93\x023\x1a1/viam/api/v1/component/switch/{name}/get_position\x12\xcb\x01\n\x14GetNumberOfPositions\x125.viam.component.switch.v1.GetNumberOfPositionsRequest\x1a6.viam.component.switch.v1.GetNumberOfPositionsResponse"D\x82\xd3\xe4\x93\x02>\x1a</viam/api/v1/component/switch/{name}/get_number_of_positions\x12\x89\x01\n\tDoCommand\x12 .viam.common.v1.DoCommandRequest\x1a!.viam.common.v1.DoCommandResponse"7\x82\xd3\xe4\x93\x021"//viam/api/v1/component/switch/{name}/do_commandBC\n\x1ccom.viam.component.switch.v1Z#go.viam.com/api/component/switch/v1b\x06proto3')
13
+ _globals = globals()
14
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
15
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'component.switch.v1.switch_pb2', _globals)
16
+ if not _descriptor._USE_C_DESCRIPTORS:
17
+ _globals['DESCRIPTOR']._loaded_options = None
18
+ _globals['DESCRIPTOR']._serialized_options = b'\n\x1ccom.viam.component.switch.v1Z#go.viam.com/api/component/switch/v1'
19
+ _globals['_SWITCHSERVICE'].methods_by_name['SetPosition']._loaded_options = None
20
+ _globals['_SWITCHSERVICE'].methods_by_name['SetPosition']._serialized_options = b'\x82\xd3\xe4\x93\x023\x1a1/viam/api/v1/component/switch/{name}/set_position'
21
+ _globals['_SWITCHSERVICE'].methods_by_name['GetPosition']._loaded_options = None
22
+ _globals['_SWITCHSERVICE'].methods_by_name['GetPosition']._serialized_options = b'\x82\xd3\xe4\x93\x023\x1a1/viam/api/v1/component/switch/{name}/get_position'
23
+ _globals['_SWITCHSERVICE'].methods_by_name['GetNumberOfPositions']._loaded_options = None
24
+ _globals['_SWITCHSERVICE'].methods_by_name['GetNumberOfPositions']._serialized_options = b'\x82\xd3\xe4\x93\x02>\x1a</viam/api/v1/component/switch/{name}/get_number_of_positions'
25
+ _globals['_SWITCHSERVICE'].methods_by_name['DoCommand']._loaded_options = None
26
+ _globals['_SWITCHSERVICE'].methods_by_name['DoCommand']._serialized_options = b'\x82\xd3\xe4\x93\x021"//viam/api/v1/component/switch/{name}/do_command'
27
+ _globals['_SETPOSITIONREQUEST']._serialized_start = 146
28
+ _globals['_SETPOSITIONREQUEST']._serialized_end = 261
29
+ _globals['_SETPOSITIONRESPONSE']._serialized_start = 263
30
+ _globals['_SETPOSITIONRESPONSE']._serialized_end = 284
31
+ _globals['_GETPOSITIONREQUEST']._serialized_start = 286
32
+ _globals['_GETPOSITIONREQUEST']._serialized_end = 373
33
+ _globals['_GETPOSITIONRESPONSE']._serialized_start = 375
34
+ _globals['_GETPOSITIONRESPONSE']._serialized_end = 424
35
+ _globals['_GETNUMBEROFPOSITIONSREQUEST']._serialized_start = 426
36
+ _globals['_GETNUMBEROFPOSITIONSREQUEST']._serialized_end = 522
37
+ _globals['_GETNUMBEROFPOSITIONSRESPONSE']._serialized_start = 524
38
+ _globals['_GETNUMBEROFPOSITIONSRESPONSE']._serialized_end = 602
39
+ _globals['_SWITCHSERVICE']._serialized_start = 605
40
+ _globals['_SWITCHSERVICE']._serialized_end = 1302
@@ -0,0 +1,109 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import google.protobuf.descriptor
7
+ import google.protobuf.message
8
+ import google.protobuf.struct_pb2
9
+ import typing
10
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
11
+
12
+ @typing.final
13
+ class SetPositionRequest(google.protobuf.message.Message):
14
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
15
+ NAME_FIELD_NUMBER: builtins.int
16
+ POSITION_FIELD_NUMBER: builtins.int
17
+ EXTRA_FIELD_NUMBER: builtins.int
18
+ name: builtins.str
19
+ position: builtins.int
20
+
21
+ @property
22
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
23
+ ...
24
+
25
+ def __init__(self, *, name: builtins.str=..., position: builtins.int=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
26
+ ...
27
+
28
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
29
+ ...
30
+
31
+ def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name', 'position', b'position']) -> None:
32
+ ...
33
+ global___SetPositionRequest = SetPositionRequest
34
+
35
+ @typing.final
36
+ class SetPositionResponse(google.protobuf.message.Message):
37
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
38
+
39
+ def __init__(self) -> None:
40
+ ...
41
+ global___SetPositionResponse = SetPositionResponse
42
+
43
+ @typing.final
44
+ class GetPositionRequest(google.protobuf.message.Message):
45
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
46
+ NAME_FIELD_NUMBER: builtins.int
47
+ EXTRA_FIELD_NUMBER: builtins.int
48
+ name: builtins.str
49
+
50
+ @property
51
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
52
+ ...
53
+
54
+ def __init__(self, *, name: builtins.str=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
55
+ ...
56
+
57
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
58
+ ...
59
+
60
+ def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name']) -> None:
61
+ ...
62
+ global___GetPositionRequest = GetPositionRequest
63
+
64
+ @typing.final
65
+ class GetPositionResponse(google.protobuf.message.Message):
66
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
67
+ POSITION_FIELD_NUMBER: builtins.int
68
+ position: builtins.int
69
+
70
+ def __init__(self, *, position: builtins.int=...) -> None:
71
+ ...
72
+
73
+ def ClearField(self, field_name: typing.Literal['position', b'position']) -> None:
74
+ ...
75
+ global___GetPositionResponse = GetPositionResponse
76
+
77
+ @typing.final
78
+ class GetNumberOfPositionsRequest(google.protobuf.message.Message):
79
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
80
+ NAME_FIELD_NUMBER: builtins.int
81
+ EXTRA_FIELD_NUMBER: builtins.int
82
+ name: builtins.str
83
+
84
+ @property
85
+ def extra(self) -> google.protobuf.struct_pb2.Struct:
86
+ ...
87
+
88
+ def __init__(self, *, name: builtins.str=..., extra: google.protobuf.struct_pb2.Struct | None=...) -> None:
89
+ ...
90
+
91
+ def HasField(self, field_name: typing.Literal['extra', b'extra']) -> builtins.bool:
92
+ ...
93
+
94
+ def ClearField(self, field_name: typing.Literal['extra', b'extra', 'name', b'name']) -> None:
95
+ ...
96
+ global___GetNumberOfPositionsRequest = GetNumberOfPositionsRequest
97
+
98
+ @typing.final
99
+ class GetNumberOfPositionsResponse(google.protobuf.message.Message):
100
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
101
+ NUMBER_OF_POSITIONS_FIELD_NUMBER: builtins.int
102
+ number_of_positions: builtins.int
103
+
104
+ def __init__(self, *, number_of_positions: builtins.int=...) -> None:
105
+ ...
106
+
107
+ def ClearField(self, field_name: typing.Literal['number_of_positions', b'number_of_positions']) -> None:
108
+ ...
109
+ global___GetNumberOfPositionsResponse = GetNumberOfPositionsResponse
File without changes
File without changes
@@ -0,0 +1,52 @@
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 common
9
+ from .... import component
10
+
11
+ class TestEchoServiceBase(abc.ABC):
12
+
13
+ @abc.abstractmethod
14
+ async def Echo(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.EchoRequest, component.testecho.v1.testecho_pb2.EchoResponse]') -> None:
15
+ pass
16
+
17
+ @abc.abstractmethod
18
+ async def EchoMultiple(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.EchoMultipleRequest, component.testecho.v1.testecho_pb2.EchoMultipleResponse]') -> None:
19
+ pass
20
+
21
+ @abc.abstractmethod
22
+ async def EchoBiDi(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.EchoBiDiRequest, component.testecho.v1.testecho_pb2.EchoBiDiResponse]') -> None:
23
+ pass
24
+
25
+ @abc.abstractmethod
26
+ async def Stop(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.StopRequest, component.testecho.v1.testecho_pb2.StopResponse]') -> None:
27
+ pass
28
+
29
+ def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
30
+ return {'/viam.component.testecho.v1.TestEchoService/Echo': grpclib.const.Handler(self.Echo, grpclib.const.Cardinality.UNARY_UNARY, component.testecho.v1.testecho_pb2.EchoRequest, component.testecho.v1.testecho_pb2.EchoResponse), '/viam.component.testecho.v1.TestEchoService/EchoMultiple': grpclib.const.Handler(self.EchoMultiple, grpclib.const.Cardinality.UNARY_STREAM, component.testecho.v1.testecho_pb2.EchoMultipleRequest, component.testecho.v1.testecho_pb2.EchoMultipleResponse), '/viam.component.testecho.v1.TestEchoService/EchoBiDi': grpclib.const.Handler(self.EchoBiDi, grpclib.const.Cardinality.STREAM_STREAM, component.testecho.v1.testecho_pb2.EchoBiDiRequest, component.testecho.v1.testecho_pb2.EchoBiDiResponse), '/viam.component.testecho.v1.TestEchoService/Stop': grpclib.const.Handler(self.Stop, grpclib.const.Cardinality.UNARY_UNARY, component.testecho.v1.testecho_pb2.StopRequest, component.testecho.v1.testecho_pb2.StopResponse)}
31
+
32
+ class UnimplementedTestEchoServiceBase(TestEchoServiceBase):
33
+
34
+ async def Echo(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.EchoRequest, component.testecho.v1.testecho_pb2.EchoResponse]') -> None:
35
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
36
+
37
+ async def EchoMultiple(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.EchoMultipleRequest, component.testecho.v1.testecho_pb2.EchoMultipleResponse]') -> None:
38
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
39
+
40
+ async def EchoBiDi(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.EchoBiDiRequest, component.testecho.v1.testecho_pb2.EchoBiDiResponse]') -> None:
41
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
42
+
43
+ async def Stop(self, stream: 'grpclib.server.Stream[component.testecho.v1.testecho_pb2.StopRequest, component.testecho.v1.testecho_pb2.StopResponse]') -> None:
44
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
45
+
46
+ class TestEchoServiceStub:
47
+
48
+ def __init__(self, channel: grpclib.client.Channel) -> None:
49
+ self.Echo = grpclib.client.UnaryUnaryMethod(channel, '/viam.component.testecho.v1.TestEchoService/Echo', component.testecho.v1.testecho_pb2.EchoRequest, component.testecho.v1.testecho_pb2.EchoResponse)
50
+ self.EchoMultiple = grpclib.client.UnaryStreamMethod(channel, '/viam.component.testecho.v1.TestEchoService/EchoMultiple', component.testecho.v1.testecho_pb2.EchoMultipleRequest, component.testecho.v1.testecho_pb2.EchoMultipleResponse)
51
+ self.EchoBiDi = grpclib.client.StreamStreamMethod(channel, '/viam.component.testecho.v1.TestEchoService/EchoBiDi', component.testecho.v1.testecho_pb2.EchoBiDiRequest, component.testecho.v1.testecho_pb2.EchoBiDiResponse)
52
+ self.Stop = grpclib.client.UnaryUnaryMethod(channel, '/viam.component.testecho.v1.TestEchoService/Stop', component.testecho.v1.testecho_pb2.StopRequest, component.testecho.v1.testecho_pb2.StopResponse)
@@ -0,0 +1,36 @@
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, '', 'component/testecho/v1/testecho.proto')
8
+ _sym_db = _symbol_database.Default()
9
+ from ....common.v1 import common_pb2 as common_dot_v1_dot_common__pb2
10
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$component/testecho/v1/testecho.proto\x12\x1aviam.component.testecho.v1\x1a\x16common/v1/common.proto";\n\x0bEchoRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message"(\n\x0cEchoResponse\x12\x18\n\x07message\x18\x01 \x01(\tR\x07message"C\n\x13EchoMultipleRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message"0\n\x14EchoMultipleResponse\x12\x18\n\x07message\x18\x01 \x01(\tR\x07message"?\n\x0fEchoBiDiRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message",\n\x10EchoBiDiResponse\x12\x18\n\x07message\x18\x01 \x01(\tR\x07message"!\n\x0bStopRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name"\x0e\n\x0cStopResponse2\xb3\x03\n\x0fTestEchoService\x12[\n\x04Echo\x12\'.viam.component.testecho.v1.EchoRequest\x1a(.viam.component.testecho.v1.EchoResponse"\x00\x12y\n\x0cEchoMultiple\x12/.viam.component.testecho.v1.EchoMultipleRequest\x1a0.viam.component.testecho.v1.EchoMultipleResponse"\x04\xa0\x92)\x010\x01\x12k\n\x08EchoBiDi\x12+.viam.component.testecho.v1.EchoBiDiRequest\x1a,.viam.component.testecho.v1.EchoBiDiResponse"\x00(\x010\x01\x12[\n\x04Stop\x12\'.viam.component.testecho.v1.StopRequest\x1a(.viam.component.testecho.v1.StopResponse"\x00BG\n\x1ecom.viam.component.testecho.v1Z%go.viam.com/api/component/testecho/v1b\x06proto3')
11
+ _globals = globals()
12
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
13
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'component.testecho.v1.testecho_pb2', _globals)
14
+ if not _descriptor._USE_C_DESCRIPTORS:
15
+ _globals['DESCRIPTOR']._loaded_options = None
16
+ _globals['DESCRIPTOR']._serialized_options = b'\n\x1ecom.viam.component.testecho.v1Z%go.viam.com/api/component/testecho/v1'
17
+ _globals['_TESTECHOSERVICE'].methods_by_name['EchoMultiple']._loaded_options = None
18
+ _globals['_TESTECHOSERVICE'].methods_by_name['EchoMultiple']._serialized_options = b'\xa0\x92)\x01'
19
+ _globals['_ECHOREQUEST']._serialized_start = 92
20
+ _globals['_ECHOREQUEST']._serialized_end = 151
21
+ _globals['_ECHORESPONSE']._serialized_start = 153
22
+ _globals['_ECHORESPONSE']._serialized_end = 193
23
+ _globals['_ECHOMULTIPLEREQUEST']._serialized_start = 195
24
+ _globals['_ECHOMULTIPLEREQUEST']._serialized_end = 262
25
+ _globals['_ECHOMULTIPLERESPONSE']._serialized_start = 264
26
+ _globals['_ECHOMULTIPLERESPONSE']._serialized_end = 312
27
+ _globals['_ECHOBIDIREQUEST']._serialized_start = 314
28
+ _globals['_ECHOBIDIREQUEST']._serialized_end = 377
29
+ _globals['_ECHOBIDIRESPONSE']._serialized_start = 379
30
+ _globals['_ECHOBIDIRESPONSE']._serialized_end = 423
31
+ _globals['_STOPREQUEST']._serialized_start = 425
32
+ _globals['_STOPREQUEST']._serialized_end = 458
33
+ _globals['_STOPRESPONSE']._serialized_start = 460
34
+ _globals['_STOPRESPONSE']._serialized_end = 474
35
+ _globals['_TESTECHOSERVICE']._serialized_start = 477
36
+ _globals['_TESTECHOSERVICE']._serialized_end = 912
@@ -0,0 +1,114 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import google.protobuf.descriptor
7
+ import google.protobuf.message
8
+ import typing
9
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
10
+
11
+ @typing.final
12
+ class EchoRequest(google.protobuf.message.Message):
13
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
14
+ NAME_FIELD_NUMBER: builtins.int
15
+ MESSAGE_FIELD_NUMBER: builtins.int
16
+ name: builtins.str
17
+ message: builtins.str
18
+
19
+ def __init__(self, *, name: builtins.str=..., message: builtins.str=...) -> None:
20
+ ...
21
+
22
+ def ClearField(self, field_name: typing.Literal['message', b'message', 'name', b'name']) -> None:
23
+ ...
24
+ global___EchoRequest = EchoRequest
25
+
26
+ @typing.final
27
+ class EchoResponse(google.protobuf.message.Message):
28
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
29
+ MESSAGE_FIELD_NUMBER: builtins.int
30
+ message: builtins.str
31
+
32
+ def __init__(self, *, message: builtins.str=...) -> None:
33
+ ...
34
+
35
+ def ClearField(self, field_name: typing.Literal['message', b'message']) -> None:
36
+ ...
37
+ global___EchoResponse = EchoResponse
38
+
39
+ @typing.final
40
+ class EchoMultipleRequest(google.protobuf.message.Message):
41
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
42
+ NAME_FIELD_NUMBER: builtins.int
43
+ MESSAGE_FIELD_NUMBER: builtins.int
44
+ name: builtins.str
45
+ message: builtins.str
46
+
47
+ def __init__(self, *, name: builtins.str=..., message: builtins.str=...) -> None:
48
+ ...
49
+
50
+ def ClearField(self, field_name: typing.Literal['message', b'message', 'name', b'name']) -> None:
51
+ ...
52
+ global___EchoMultipleRequest = EchoMultipleRequest
53
+
54
+ @typing.final
55
+ class EchoMultipleResponse(google.protobuf.message.Message):
56
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
57
+ MESSAGE_FIELD_NUMBER: builtins.int
58
+ message: builtins.str
59
+
60
+ def __init__(self, *, message: builtins.str=...) -> None:
61
+ ...
62
+
63
+ def ClearField(self, field_name: typing.Literal['message', b'message']) -> None:
64
+ ...
65
+ global___EchoMultipleResponse = EchoMultipleResponse
66
+
67
+ @typing.final
68
+ class EchoBiDiRequest(google.protobuf.message.Message):
69
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
70
+ NAME_FIELD_NUMBER: builtins.int
71
+ MESSAGE_FIELD_NUMBER: builtins.int
72
+ name: builtins.str
73
+ message: builtins.str
74
+
75
+ def __init__(self, *, name: builtins.str=..., message: builtins.str=...) -> None:
76
+ ...
77
+
78
+ def ClearField(self, field_name: typing.Literal['message', b'message', 'name', b'name']) -> None:
79
+ ...
80
+ global___EchoBiDiRequest = EchoBiDiRequest
81
+
82
+ @typing.final
83
+ class EchoBiDiResponse(google.protobuf.message.Message):
84
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
85
+ MESSAGE_FIELD_NUMBER: builtins.int
86
+ message: builtins.str
87
+
88
+ def __init__(self, *, message: builtins.str=...) -> None:
89
+ ...
90
+
91
+ def ClearField(self, field_name: typing.Literal['message', b'message']) -> None:
92
+ ...
93
+ global___EchoBiDiResponse = EchoBiDiResponse
94
+
95
+ @typing.final
96
+ class StopRequest(google.protobuf.message.Message):
97
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
98
+ NAME_FIELD_NUMBER: builtins.int
99
+ name: builtins.str
100
+
101
+ def __init__(self, *, name: builtins.str=...) -> None:
102
+ ...
103
+
104
+ def ClearField(self, field_name: typing.Literal['name', b'name']) -> None:
105
+ ...
106
+ global___StopRequest = StopRequest
107
+
108
+ @typing.final
109
+ class StopResponse(google.protobuf.message.Message):
110
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
111
+
112
+ def __init__(self) -> None:
113
+ ...
114
+ global___StopResponse = StopResponse
File without changes
File without changes
@@ -0,0 +1,61 @@
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 robot
10
+ from ... import module
11
+
12
+ class ModuleServiceBase(abc.ABC):
13
+
14
+ @abc.abstractmethod
15
+ async def AddResource(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.AddResourceRequest, module.v1.module_pb2.AddResourceResponse]') -> None:
16
+ pass
17
+
18
+ @abc.abstractmethod
19
+ async def ReconfigureResource(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.ReconfigureResourceRequest, module.v1.module_pb2.ReconfigureResourceResponse]') -> None:
20
+ pass
21
+
22
+ @abc.abstractmethod
23
+ async def RemoveResource(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.RemoveResourceRequest, module.v1.module_pb2.RemoveResourceResponse]') -> None:
24
+ pass
25
+
26
+ @abc.abstractmethod
27
+ async def Ready(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.ReadyRequest, module.v1.module_pb2.ReadyResponse]') -> None:
28
+ pass
29
+
30
+ @abc.abstractmethod
31
+ async def ValidateConfig(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.ValidateConfigRequest, module.v1.module_pb2.ValidateConfigResponse]') -> None:
32
+ pass
33
+
34
+ def __mapping__(self) -> typing.Dict[str, grpclib.const.Handler]:
35
+ return {'/viam.module.v1.ModuleService/AddResource': grpclib.const.Handler(self.AddResource, grpclib.const.Cardinality.UNARY_UNARY, module.v1.module_pb2.AddResourceRequest, module.v1.module_pb2.AddResourceResponse), '/viam.module.v1.ModuleService/ReconfigureResource': grpclib.const.Handler(self.ReconfigureResource, grpclib.const.Cardinality.UNARY_UNARY, module.v1.module_pb2.ReconfigureResourceRequest, module.v1.module_pb2.ReconfigureResourceResponse), '/viam.module.v1.ModuleService/RemoveResource': grpclib.const.Handler(self.RemoveResource, grpclib.const.Cardinality.UNARY_UNARY, module.v1.module_pb2.RemoveResourceRequest, module.v1.module_pb2.RemoveResourceResponse), '/viam.module.v1.ModuleService/Ready': grpclib.const.Handler(self.Ready, grpclib.const.Cardinality.UNARY_UNARY, module.v1.module_pb2.ReadyRequest, module.v1.module_pb2.ReadyResponse), '/viam.module.v1.ModuleService/ValidateConfig': grpclib.const.Handler(self.ValidateConfig, grpclib.const.Cardinality.UNARY_UNARY, module.v1.module_pb2.ValidateConfigRequest, module.v1.module_pb2.ValidateConfigResponse)}
36
+
37
+ class UnimplementedModuleServiceBase(ModuleServiceBase):
38
+
39
+ async def AddResource(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.AddResourceRequest, module.v1.module_pb2.AddResourceResponse]') -> None:
40
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
41
+
42
+ async def ReconfigureResource(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.ReconfigureResourceRequest, module.v1.module_pb2.ReconfigureResourceResponse]') -> None:
43
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
44
+
45
+ async def RemoveResource(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.RemoveResourceRequest, module.v1.module_pb2.RemoveResourceResponse]') -> None:
46
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
47
+
48
+ async def Ready(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.ReadyRequest, module.v1.module_pb2.ReadyResponse]') -> None:
49
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
50
+
51
+ async def ValidateConfig(self, stream: 'grpclib.server.Stream[module.v1.module_pb2.ValidateConfigRequest, module.v1.module_pb2.ValidateConfigResponse]') -> None:
52
+ raise grpclib.exceptions.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
53
+
54
+ class ModuleServiceStub:
55
+
56
+ def __init__(self, channel: grpclib.client.Channel) -> None:
57
+ self.AddResource = grpclib.client.UnaryUnaryMethod(channel, '/viam.module.v1.ModuleService/AddResource', module.v1.module_pb2.AddResourceRequest, module.v1.module_pb2.AddResourceResponse)
58
+ self.ReconfigureResource = grpclib.client.UnaryUnaryMethod(channel, '/viam.module.v1.ModuleService/ReconfigureResource', module.v1.module_pb2.ReconfigureResourceRequest, module.v1.module_pb2.ReconfigureResourceResponse)
59
+ self.RemoveResource = grpclib.client.UnaryUnaryMethod(channel, '/viam.module.v1.ModuleService/RemoveResource', module.v1.module_pb2.RemoveResourceRequest, module.v1.module_pb2.RemoveResourceResponse)
60
+ self.Ready = grpclib.client.UnaryUnaryMethod(channel, '/viam.module.v1.ModuleService/Ready', module.v1.module_pb2.ReadyRequest, module.v1.module_pb2.ReadyResponse)
61
+ self.ValidateConfig = grpclib.client.UnaryUnaryMethod(channel, '/viam.module.v1.ModuleService/ValidateConfig', module.v1.module_pb2.ValidateConfigRequest, module.v1.module_pb2.ValidateConfigResponse)