wandelbots-api-client 25.6.0.dev7__py3-none-any.whl → 25.10.0rc2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. wandelbots_api_client/__init__.py +2 -3
  2. wandelbots_api_client/api/__init__.py +2 -0
  3. wandelbots_api_client/api/application_api.py +1 -2
  4. wandelbots_api_client/api/cell_api.py +1 -2
  5. wandelbots_api_client/api/controller_api.py +13 -8
  6. wandelbots_api_client/api/controller_ios_api.py +3 -6
  7. wandelbots_api_client/api/coordinate_systems_api.py +1 -2
  8. wandelbots_api_client/api/device_configuration_api.py +1 -2
  9. wandelbots_api_client/api/library_program_api.py +1 -2
  10. wandelbots_api_client/api/library_program_metadata_api.py +1 -2
  11. wandelbots_api_client/api/library_recipe_api.py +1 -2
  12. wandelbots_api_client/api/library_recipe_metadata_api.py +1 -2
  13. wandelbots_api_client/api/license_api.py +1 -2
  14. wandelbots_api_client/api/motion_api.py +59 -8
  15. wandelbots_api_client/api/motion_group_api.py +1 -2
  16. wandelbots_api_client/api/motion_group_infos_api.py +3 -2
  17. wandelbots_api_client/api/motion_group_jogging_api.py +53 -8
  18. wandelbots_api_client/api/motion_group_kinematic_api.py +1 -2
  19. wandelbots_api_client/api/program_api.py +1 -2
  20. wandelbots_api_client/api/program_operator_api.py +1 -2
  21. wandelbots_api_client/api/program_values_api.py +1 -2
  22. wandelbots_api_client/api/store_collision_components_api.py +10 -8
  23. wandelbots_api_client/api/store_collision_scenes_api.py +1 -2
  24. wandelbots_api_client/api/store_object_api.py +1 -2
  25. wandelbots_api_client/api/system_api.py +1 -2
  26. wandelbots_api_client/api/version_api.py +284 -0
  27. wandelbots_api_client/api/virtual_robot_api.py +1 -2
  28. wandelbots_api_client/api/virtual_robot_behavior_api.py +27 -5
  29. wandelbots_api_client/api/virtual_robot_mode_api.py +1 -2
  30. wandelbots_api_client/api/virtual_robot_setup_api.py +16 -17
  31. wandelbots_api_client/api_client.py +14 -7
  32. wandelbots_api_client/authorization.py +244 -0
  33. wandelbots_api_client/configuration.py +18 -7
  34. wandelbots_api_client/exceptions.py +1 -1
  35. wandelbots_api_client/models/__init__.py +3 -4
  36. wandelbots_api_client/models/abb_controller.py +5 -5
  37. wandelbots_api_client/models/abb_controller_egm_server.py +3 -3
  38. wandelbots_api_client/models/activate_license_request.py +2 -2
  39. wandelbots_api_client/models/add_request.py +3 -3
  40. wandelbots_api_client/models/all_joint_positions_request.py +3 -3
  41. wandelbots_api_client/models/all_joint_positions_response.py +2 -2
  42. wandelbots_api_client/{v2/models/error2.py → models/api_version.py} +10 -10
  43. wandelbots_api_client/models/app.py +8 -8
  44. wandelbots_api_client/models/array_input.py +2 -2
  45. wandelbots_api_client/models/array_output.py +2 -2
  46. wandelbots_api_client/models/behavior.py +1 -1
  47. wandelbots_api_client/models/blending_auto.py +3 -3
  48. wandelbots_api_client/models/blending_position.py +3 -3
  49. wandelbots_api_client/models/box.py +5 -5
  50. wandelbots_api_client/models/box2.py +6 -6
  51. wandelbots_api_client/models/box3.py +6 -6
  52. wandelbots_api_client/models/capsule.py +3 -3
  53. wandelbots_api_client/models/capsule2.py +4 -4
  54. wandelbots_api_client/models/capsule3.py +4 -4
  55. wandelbots_api_client/models/capture.py +2 -2
  56. wandelbots_api_client/models/cell.py +4 -4
  57. wandelbots_api_client/models/circle.py +3 -3
  58. wandelbots_api_client/models/code_with_arguments.py +7 -6
  59. wandelbots_api_client/models/collection_value.py +1 -1
  60. wandelbots_api_client/models/collider.py +4 -4
  61. wandelbots_api_client/models/collider_input.py +4 -4
  62. wandelbots_api_client/models/collider_output.py +4 -4
  63. wandelbots_api_client/models/collider_output_shape.py +1 -1
  64. wandelbots_api_client/models/collider_shape.py +1 -41
  65. wandelbots_api_client/models/collision.py +7 -7
  66. wandelbots_api_client/models/collision_contact.py +3 -3
  67. wandelbots_api_client/models/collision_motion_group.py +7 -6
  68. wandelbots_api_client/models/collision_motion_group_assembly.py +9 -8
  69. wandelbots_api_client/models/collision_robot_configuration_input.py +12 -10
  70. wandelbots_api_client/models/collision_robot_configuration_output.py +12 -10
  71. wandelbots_api_client/models/collision_scene.py +11 -9
  72. wandelbots_api_client/models/collision_scene_assembly.py +14 -12
  73. wandelbots_api_client/models/command.py +7 -7
  74. wandelbots_api_client/models/command_settings.py +4 -4
  75. wandelbots_api_client/models/comparator.py +1 -1
  76. wandelbots_api_client/models/compound.py +2 -2
  77. wandelbots_api_client/models/container_environment_inner.py +3 -3
  78. wandelbots_api_client/models/container_image.py +4 -4
  79. wandelbots_api_client/models/container_image_secrets_inner.py +2 -2
  80. wandelbots_api_client/models/container_resources.py +2 -2
  81. wandelbots_api_client/models/container_storage.py +3 -3
  82. wandelbots_api_client/models/controller_capabilities.py +3 -3
  83. wandelbots_api_client/models/controller_instance.py +9 -9
  84. wandelbots_api_client/models/controller_instance_list.py +2 -2
  85. wandelbots_api_client/models/convex_hull.py +2 -2
  86. wandelbots_api_client/models/convex_hull2.py +3 -3
  87. wandelbots_api_client/models/convex_hull3.py +3 -3
  88. wandelbots_api_client/models/coordinate_system.py +6 -6
  89. wandelbots_api_client/models/coordinate_systems.py +2 -2
  90. wandelbots_api_client/models/create_device_request_inner.py +1 -1
  91. wandelbots_api_client/models/create_program_run200_response.py +2 -2
  92. wandelbots_api_client/models/create_program_run_request.py +2 -2
  93. wandelbots_api_client/models/create_trigger200_response.py +2 -2
  94. wandelbots_api_client/models/create_trigger_request.py +7 -7
  95. wandelbots_api_client/models/cubic_spline.py +2 -2
  96. wandelbots_api_client/models/cubic_spline_cubic_spline_parameter.py +3 -3
  97. wandelbots_api_client/models/cubic_spline_parameter.py +3 -3
  98. wandelbots_api_client/models/cycle_time.py +2 -2
  99. wandelbots_api_client/models/cylinder.py +3 -3
  100. wandelbots_api_client/models/cylinder2.py +4 -4
  101. wandelbots_api_client/models/cylinder3.py +4 -4
  102. wandelbots_api_client/models/dh_parameter.py +6 -6
  103. wandelbots_api_client/models/direction.py +1 -1
  104. wandelbots_api_client/models/direction_jogging_request.py +10 -10
  105. wandelbots_api_client/models/error.py +3 -3
  106. wandelbots_api_client/models/execute_trajectory_request.py +1 -1
  107. wandelbots_api_client/models/execute_trajectory_response.py +1 -1
  108. wandelbots_api_client/models/execution_result.py +4 -4
  109. wandelbots_api_client/models/external_joint_stream_datapoint.py +3 -3
  110. wandelbots_api_client/models/external_joint_stream_datapoint_value.py +5 -5
  111. wandelbots_api_client/models/fanuc_controller.py +3 -3
  112. wandelbots_api_client/models/feedback_collision.py +5 -5
  113. wandelbots_api_client/models/feedback_joint_limit_exceeded.py +4 -4
  114. wandelbots_api_client/models/feedback_out_of_workspace.py +3 -3
  115. wandelbots_api_client/models/feedback_singularity.py +4 -4
  116. wandelbots_api_client/models/flag.py +2 -2
  117. wandelbots_api_client/models/force_vector.py +4 -4
  118. wandelbots_api_client/models/geometry.py +12 -12
  119. wandelbots_api_client/models/get_all_program_runs200_response.py +2 -2
  120. wandelbots_api_client/models/get_all_triggers200_response.py +2 -2
  121. wandelbots_api_client/models/get_mode_response.py +2 -2
  122. wandelbots_api_client/models/get_trajectory_response.py +2 -2
  123. wandelbots_api_client/models/get_trajectory_sample_response.py +2 -2
  124. wandelbots_api_client/models/google_protobuf_any.py +2 -2
  125. wandelbots_api_client/models/http_exception_response.py +2 -2
  126. wandelbots_api_client/models/http_validation_error.py +2 -2
  127. wandelbots_api_client/models/http_validation_error2.py +2 -2
  128. wandelbots_api_client/models/image_credentials.py +4 -4
  129. wandelbots_api_client/models/info_service_capabilities.py +8 -8
  130. wandelbots_api_client/models/initialize_movement_request.py +6 -6
  131. wandelbots_api_client/models/initialize_movement_response.py +2 -2
  132. wandelbots_api_client/models/initialize_movement_response_init_response.py +3 -3
  133. wandelbots_api_client/models/io.py +6 -6
  134. wandelbots_api_client/models/io_description.py +10 -10
  135. wandelbots_api_client/models/io_value.py +5 -5
  136. wandelbots_api_client/models/ios.py +2 -2
  137. wandelbots_api_client/models/jogging_response.py +4 -4
  138. wandelbots_api_client/models/jogging_service_capabilities.py +3 -3
  139. wandelbots_api_client/models/joint_jogging_request.py +6 -6
  140. wandelbots_api_client/models/joint_limit.py +5 -5
  141. wandelbots_api_client/models/joint_limit_exceeded.py +3 -3
  142. wandelbots_api_client/models/joint_position_request.py +4 -4
  143. wandelbots_api_client/models/joint_trajectory.py +4 -4
  144. wandelbots_api_client/models/joints.py +2 -2
  145. wandelbots_api_client/models/kinematic_service_capabilities.py +4 -4
  146. wandelbots_api_client/models/kuka_controller.py +10 -8
  147. wandelbots_api_client/models/kuka_controller_rsi_server.py +3 -3
  148. wandelbots_api_client/models/license.py +11 -11
  149. wandelbots_api_client/models/license_status.py +3 -3
  150. wandelbots_api_client/models/license_status_enum.py +1 -1
  151. wandelbots_api_client/models/limit_settings.py +13 -13
  152. wandelbots_api_client/models/limits_override.py +7 -7
  153. wandelbots_api_client/models/list_devices200_response_inner.py +1 -1
  154. wandelbots_api_client/models/list_io_descriptions_response.py +2 -2
  155. wandelbots_api_client/models/list_io_values_response.py +2 -2
  156. wandelbots_api_client/models/list_payloads_response.py +2 -2
  157. wandelbots_api_client/models/list_program_metadata_response.py +2 -2
  158. wandelbots_api_client/models/list_recipe_metadata_response.py +2 -2
  159. wandelbots_api_client/models/list_response.py +2 -2
  160. wandelbots_api_client/models/list_tcps_response.py +2 -2
  161. wandelbots_api_client/models/manufacturer.py +1 -1
  162. wandelbots_api_client/models/mode_change_response.py +5 -5
  163. wandelbots_api_client/models/motion_command.py +4 -4
  164. wandelbots_api_client/models/motion_command_blending.py +1 -1
  165. wandelbots_api_client/models/motion_command_path.py +1 -1
  166. wandelbots_api_client/models/motion_group_behavior_getter.py +2 -2
  167. wandelbots_api_client/models/motion_group_info.py +4 -4
  168. wandelbots_api_client/models/motion_group_infos.py +2 -2
  169. wandelbots_api_client/models/motion_group_instance.py +6 -6
  170. wandelbots_api_client/models/motion_group_instance_list.py +2 -2
  171. wandelbots_api_client/models/motion_group_joints.py +5 -5
  172. wandelbots_api_client/models/motion_group_physical.py +6 -6
  173. wandelbots_api_client/models/motion_group_specification.py +3 -3
  174. wandelbots_api_client/models/motion_group_state.py +13 -13
  175. wandelbots_api_client/models/motion_group_state_joint_limit_reached.py +2 -2
  176. wandelbots_api_client/models/motion_group_state_response.py +3 -3
  177. wandelbots_api_client/models/motion_id.py +2 -2
  178. wandelbots_api_client/models/motion_ids_list_response.py +2 -2
  179. wandelbots_api_client/models/motion_vector.py +4 -4
  180. wandelbots_api_client/models/mounting.py +3 -3
  181. wandelbots_api_client/models/move_request.py +9 -9
  182. wandelbots_api_client/models/move_response.py +3 -3
  183. wandelbots_api_client/models/move_to_trajectory_via_joint_ptp_request.py +5 -5
  184. wandelbots_api_client/models/movement.py +2 -2
  185. wandelbots_api_client/models/movement_error.py +2 -2
  186. wandelbots_api_client/models/movement_error_error.py +2 -2
  187. wandelbots_api_client/models/movement_movement.py +4 -4
  188. wandelbots_api_client/models/op_mode.py +2 -2
  189. wandelbots_api_client/models/opcua_node_value_trigger_config.py +4 -4
  190. wandelbots_api_client/models/opcua_node_value_trigger_config_node_value.py +1 -1
  191. wandelbots_api_client/models/optimizer_setup.py +8 -8
  192. wandelbots_api_client/models/out_of_workspace.py +2 -2
  193. wandelbots_api_client/models/path.py +2 -2
  194. wandelbots_api_client/models/path_cartesian_ptp.py +3 -3
  195. wandelbots_api_client/models/path_circle.py +4 -4
  196. wandelbots_api_client/models/path_cubic_spline.py +3 -3
  197. wandelbots_api_client/models/path_joint_ptp.py +3 -3
  198. wandelbots_api_client/models/path_line.py +3 -3
  199. wandelbots_api_client/models/pause_movement_request.py +3 -3
  200. wandelbots_api_client/models/pause_movement_response.py +2 -2
  201. wandelbots_api_client/models/pause_movement_response_pause_response.py +3 -3
  202. wandelbots_api_client/models/pause_on_io.py +3 -3
  203. wandelbots_api_client/models/payload.py +5 -5
  204. wandelbots_api_client/models/plan_collision_free_ptp_request.py +10 -9
  205. wandelbots_api_client/models/plan_collision_free_ptp_request_target.py +1 -1
  206. wandelbots_api_client/models/plan_failed_on_trajectory_response.py +10 -10
  207. wandelbots_api_client/models/plan_failed_response.py +8 -8
  208. wandelbots_api_client/models/plan_request.py +6 -6
  209. wandelbots_api_client/models/plan_response.py +4 -4
  210. wandelbots_api_client/models/plan_successful_response.py +3 -3
  211. wandelbots_api_client/models/plan_trajectory_failed_response.py +4 -4
  212. wandelbots_api_client/models/plan_trajectory_failed_response_error_feedback.py +1 -1
  213. wandelbots_api_client/models/plan_trajectory_request.py +10 -9
  214. wandelbots_api_client/models/plan_trajectory_response.py +2 -2
  215. wandelbots_api_client/models/plan_trajectory_response_response.py +1 -1
  216. wandelbots_api_client/models/plane2.py +2 -2
  217. wandelbots_api_client/models/plane3.py +2 -2
  218. wandelbots_api_client/models/planned_motion.py +6 -6
  219. wandelbots_api_client/models/planner_pose.py +3 -3
  220. wandelbots_api_client/models/planning_limits.py +13 -13
  221. wandelbots_api_client/models/planning_limits_limit_range.py +3 -3
  222. wandelbots_api_client/models/playback_speed_request.py +3 -3
  223. wandelbots_api_client/models/playback_speed_response.py +2 -2
  224. wandelbots_api_client/models/playback_speed_response_playback_speed_response.py +2 -2
  225. wandelbots_api_client/models/point_cloud.py +2 -2
  226. wandelbots_api_client/models/pose.py +4 -4
  227. wandelbots_api_client/models/pose2.py +3 -3
  228. wandelbots_api_client/models/program_metadata.py +7 -7
  229. wandelbots_api_client/models/program_run.py +15 -14
  230. wandelbots_api_client/models/program_run_object.py +7 -7
  231. wandelbots_api_client/models/program_run_state.py +1 -1
  232. wandelbots_api_client/models/program_runner_reference.py +3 -3
  233. wandelbots_api_client/models/pyjectory_datatypes_core_pose.py +3 -3
  234. wandelbots_api_client/models/pyjectory_datatypes_serializer_orientation.py +2 -2
  235. wandelbots_api_client/models/pyjectory_datatypes_serializer_pose.py +2 -2
  236. wandelbots_api_client/models/pyjectory_datatypes_serializer_position.py +2 -2
  237. wandelbots_api_client/models/pyriphery_etcd_etcd_configuration.py +5 -5
  238. wandelbots_api_client/models/pyriphery_hardware_isaac_isaac_configuration.py +5 -5
  239. wandelbots_api_client/models/pyriphery_opcua_opcua_configuration.py +4 -4
  240. wandelbots_api_client/models/pyriphery_pyrae_controller_controller_configuration.py +7 -7
  241. wandelbots_api_client/models/pyriphery_pyrae_robot_robot_configuration.py +8 -8
  242. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_input.py +13 -11
  243. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +13 -11
  244. wandelbots_api_client/models/pyriphery_robotics_robotcell_timer_configuration.py +3 -3
  245. wandelbots_api_client/models/pyriphery_robotics_simulation_robot_with_view_open3d_configuration.py +4 -4
  246. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_io_configuration.py +3 -3
  247. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_opcua_configuration.py +3 -3
  248. wandelbots_api_client/models/quaternion.py +5 -5
  249. wandelbots_api_client/models/recipe_metadata.py +8 -8
  250. wandelbots_api_client/models/rectangle.py +3 -3
  251. wandelbots_api_client/models/rectangle2.py +4 -4
  252. wandelbots_api_client/models/rectangle3.py +4 -4
  253. wandelbots_api_client/models/rectangular_capsule.py +4 -4
  254. wandelbots_api_client/models/rectangular_capsule2.py +5 -5
  255. wandelbots_api_client/models/rectangular_capsule3.py +5 -5
  256. wandelbots_api_client/models/release_channel.py +1 -1
  257. wandelbots_api_client/models/request.py +1 -1
  258. wandelbots_api_client/models/request1.py +1 -1
  259. wandelbots_api_client/models/response_get_value_programs_values_key_get.py +1 -1
  260. wandelbots_api_client/models/response_get_values_programs_values_get_value.py +1 -1
  261. wandelbots_api_client/models/robot_controller.py +3 -3
  262. wandelbots_api_client/models/robot_controller_configuration.py +1 -1
  263. wandelbots_api_client/models/robot_controller_state.py +8 -8
  264. wandelbots_api_client/models/robot_link_geometry.py +3 -3
  265. wandelbots_api_client/models/robot_state.py +3 -3
  266. wandelbots_api_client/models/robot_system_mode.py +1 -1
  267. wandelbots_api_client/models/robot_tcp.py +5 -5
  268. wandelbots_api_client/models/robot_tcps.py +2 -2
  269. wandelbots_api_client/models/rotation_angle_types.py +1 -1
  270. wandelbots_api_client/models/rotation_angles.py +3 -3
  271. wandelbots_api_client/models/safety_configuration.py +6 -6
  272. wandelbots_api_client/models/safety_setup.py +5 -5
  273. wandelbots_api_client/models/safety_setup_safety_settings.py +3 -3
  274. wandelbots_api_client/models/safety_setup_safety_zone.py +5 -5
  275. wandelbots_api_client/models/safety_zone.py +4 -4
  276. wandelbots_api_client/models/safety_zone_limits.py +3 -3
  277. wandelbots_api_client/models/safety_zone_violation.py +2 -2
  278. wandelbots_api_client/models/service_status.py +3 -3
  279. wandelbots_api_client/models/service_status_phase.py +1 -1
  280. wandelbots_api_client/models/service_status_severity.py +1 -1
  281. wandelbots_api_client/models/service_status_status.py +4 -4
  282. wandelbots_api_client/models/set_io.py +3 -3
  283. wandelbots_api_client/models/set_playback_speed.py +3 -3
  284. wandelbots_api_client/models/single_joint_limit.py +3 -3
  285. wandelbots_api_client/models/singularity.py +3 -3
  286. wandelbots_api_client/models/singularity_type_enum.py +1 -1
  287. wandelbots_api_client/models/sphere.py +2 -2
  288. wandelbots_api_client/models/sphere2.py +3 -3
  289. wandelbots_api_client/models/sphere3.py +3 -3
  290. wandelbots_api_client/models/standstill.py +2 -2
  291. wandelbots_api_client/models/standstill_reason.py +1 -1
  292. wandelbots_api_client/models/standstill_standstill.py +4 -4
  293. wandelbots_api_client/models/start_movement_request.py +6 -6
  294. wandelbots_api_client/models/start_on_io.py +3 -3
  295. wandelbots_api_client/models/status.py +4 -4
  296. wandelbots_api_client/models/stop_response.py +4 -4
  297. wandelbots_api_client/models/store_value.py +1 -1
  298. wandelbots_api_client/models/stream_move_backward.py +2 -2
  299. wandelbots_api_client/models/stream_move_forward.py +2 -2
  300. wandelbots_api_client/models/stream_move_playback_speed.py +2 -2
  301. wandelbots_api_client/models/stream_move_request.py +1 -1
  302. wandelbots_api_client/models/stream_move_response.py +4 -4
  303. wandelbots_api_client/models/stream_move_to_trajectory.py +2 -2
  304. wandelbots_api_client/models/stream_stop.py +2 -2
  305. wandelbots_api_client/models/tcp_pose.py +5 -5
  306. wandelbots_api_client/models/tcp_pose_request.py +5 -5
  307. wandelbots_api_client/models/tool_geometry.py +3 -3
  308. wandelbots_api_client/models/trajectory_sample.py +12 -12
  309. wandelbots_api_client/models/trigger_object.py +11 -11
  310. wandelbots_api_client/models/trigger_type.py +1 -1
  311. wandelbots_api_client/models/universalrobots_controller.py +3 -3
  312. wandelbots_api_client/models/update_nova_version_request.py +2 -2
  313. wandelbots_api_client/models/update_program_metadata_request.py +4 -4
  314. wandelbots_api_client/models/update_recipe_metadata_request.py +4 -4
  315. wandelbots_api_client/models/update_trigger_request.py +6 -6
  316. wandelbots_api_client/models/validation_error.py +4 -4
  317. wandelbots_api_client/models/validation_error2.py +4 -4
  318. wandelbots_api_client/models/validation_error2_loc_inner.py +1 -1
  319. wandelbots_api_client/models/validation_error_loc_inner.py +1 -1
  320. wandelbots_api_client/models/value.py +1 -1
  321. wandelbots_api_client/models/vector3d.py +4 -4
  322. wandelbots_api_client/models/version_number.py +9 -9
  323. wandelbots_api_client/models/virtual_controller.py +7 -7
  324. wandelbots_api_client/models/virtual_controller_types.py +17 -2
  325. wandelbots_api_client/models/virtual_robot_configuration.py +3 -3
  326. wandelbots_api_client/models/yaskawa_controller.py +3 -3
  327. wandelbots_api_client/rest.py +3 -2
  328. wandelbots_api_client/v2/__init__.py +3 -4
  329. wandelbots_api_client/v2/api/__init__.py +16 -16
  330. wandelbots_api_client/v2/api/application_api.py +11 -12
  331. wandelbots_api_client/v2/api/bus_inputs_outputs_api.py +4555 -0
  332. wandelbots_api_client/v2/api/cell_api.py +8 -9
  333. wandelbots_api_client/v2/api/controller_api.py +206 -202
  334. wandelbots_api_client/v2/api/controller_inputs_outputs_api.py +45 -44
  335. wandelbots_api_client/v2/api/jogging_api.py +33 -11
  336. wandelbots_api_client/v2/api/kinematics_api.py +636 -0
  337. wandelbots_api_client/v2/api/license_api.py +8 -9
  338. wandelbots_api_client/v2/api/motion_group_api.py +61 -31
  339. wandelbots_api_client/v2/api/motion_group_models_api.py +557 -0
  340. wandelbots_api_client/v2/api/program_api.py +167 -1308
  341. wandelbots_api_client/v2/api/store_collision_components_api.py +823 -50
  342. wandelbots_api_client/v2/api/store_collision_setups_api.py +1404 -0
  343. wandelbots_api_client/v2/api/store_object_api.py +11 -12
  344. wandelbots_api_client/v2/api/system_api.py +282 -18
  345. wandelbots_api_client/v2/api/trajectory_caching_api.py +94 -20
  346. wandelbots_api_client/v2/api/trajectory_execution_api.py +33 -11
  347. wandelbots_api_client/v2/api/trajectory_planning_api.py +68 -323
  348. wandelbots_api_client/v2/api/{inverse_kinematics_api.py → version_api.py} +24 -81
  349. wandelbots_api_client/v2/api/virtual_controller_api.py +4565 -0
  350. wandelbots_api_client/v2/api/virtual_controller_behavior_api.py +982 -0
  351. wandelbots_api_client/v2/api/virtual_controller_inputs_outputs_api.py +1003 -0
  352. wandelbots_api_client/v2/api_client.py +15 -8
  353. wandelbots_api_client/v2/configuration.py +19 -8
  354. wandelbots_api_client/v2/exceptions.py +2 -2
  355. wandelbots_api_client/v2/models/__init__.py +210 -159
  356. wandelbots_api_client/v2/models/abb_controller.py +8 -11
  357. wandelbots_api_client/v2/models/abb_controller_egm_server.py +4 -4
  358. wandelbots_api_client/v2/models/activate_license_request.py +3 -3
  359. wandelbots_api_client/v2/models/add_trajectory_error.py +5 -5
  360. wandelbots_api_client/v2/models/add_trajectory_error_data.py +66 -66
  361. wandelbots_api_client/v2/models/add_trajectory_request.py +5 -5
  362. wandelbots_api_client/v2/models/add_trajectory_response.py +4 -4
  363. wandelbots_api_client/v2/models/{jogging_error_response_error.py → api_version.py} +9 -9
  364. wandelbots_api_client/v2/models/app.py +19 -11
  365. wandelbots_api_client/v2/models/behavior.py +3 -3
  366. wandelbots_api_client/v2/models/blending_auto.py +6 -5
  367. wandelbots_api_client/v2/models/blending_position.py +4 -4
  368. wandelbots_api_client/v2/models/boolean_value.py +7 -10
  369. wandelbots_api_client/v2/models/box.py +7 -7
  370. wandelbots_api_client/v2/models/{program_run_object.py → bus_io_description.py} +31 -20
  371. wandelbots_api_client/v2/models/{jogging_error_response.py → bus_io_modbus_client.py} +23 -14
  372. wandelbots_api_client/v2/models/bus_io_modbus_server.py +115 -0
  373. wandelbots_api_client/v2/models/bus_io_modbus_tcp_client.py +106 -0
  374. wandelbots_api_client/v2/models/bus_io_modbus_tcp_server.py +104 -0
  375. wandelbots_api_client/v2/models/{movement_error_error.py → bus_io_modbus_virtual.py} +17 -10
  376. wandelbots_api_client/v2/models/bus_io_profinet.py +114 -0
  377. wandelbots_api_client/v2/models/{motion_group_behavior_getter.py → bus_io_profinet_default_route.py} +12 -11
  378. wandelbots_api_client/v2/models/bus_io_profinet_ip_config.py +95 -0
  379. wandelbots_api_client/v2/models/{update_trigger_request.py → bus_io_profinet_network.py} +18 -18
  380. wandelbots_api_client/v2/models/bus_io_profinet_virtual.py +98 -0
  381. wandelbots_api_client/v2/models/bus_io_type.py +212 -0
  382. wandelbots_api_client/v2/models/{create_trigger200_response.py → bus_ios_state.py} +12 -9
  383. wandelbots_api_client/v2/models/bus_ios_state_enum.py +39 -0
  384. wandelbots_api_client/v2/models/capsule.py +5 -5
  385. wandelbots_api_client/v2/models/{robot_state.py → cartesian_limits.py} +15 -15
  386. wandelbots_api_client/v2/models/cell.py +7 -7
  387. wandelbots_api_client/v2/models/collider.py +5 -5
  388. wandelbots_api_client/v2/models/collider_shape.py +2 -42
  389. wandelbots_api_client/v2/models/collision.py +11 -11
  390. wandelbots_api_client/v2/models/collision_contact.py +6 -6
  391. wandelbots_api_client/v2/models/{collision2.py → collision_error.py} +7 -7
  392. wandelbots_api_client/v2/models/collision_free_algorithm.py +155 -0
  393. wandelbots_api_client/v2/models/{collision_motion_group_assembly.py → collision_setup.py} +32 -18
  394. wandelbots_api_client/v2/models/comparator.py +2 -2
  395. wandelbots_api_client/v2/models/configuration_archive_status.py +174 -0
  396. wandelbots_api_client/v2/models/{joints.py → configuration_archive_status_creating.py} +20 -10
  397. wandelbots_api_client/v2/models/configuration_archive_status_error.py +100 -0
  398. wandelbots_api_client/v2/models/configuration_archive_status_success.py +98 -0
  399. wandelbots_api_client/v2/models/configuration_resource.py +5 -5
  400. wandelbots_api_client/v2/models/container_environment_inner.py +4 -4
  401. wandelbots_api_client/v2/models/container_image.py +5 -5
  402. wandelbots_api_client/v2/models/container_image_secrets_inner.py +3 -3
  403. wandelbots_api_client/v2/models/{create_program_operator_run200_response.py → container_resources.py} +12 -9
  404. wandelbots_api_client/v2/models/container_storage.py +4 -4
  405. wandelbots_api_client/v2/models/{create_trigger_request.py → controller_description.py} +16 -21
  406. wandelbots_api_client/v2/models/convex_hull.py +4 -4
  407. wandelbots_api_client/v2/models/coordinate_system.py +11 -11
  408. wandelbots_api_client/v2/models/coordinate_system_data.py +101 -0
  409. wandelbots_api_client/v2/models/cubic_spline_parameter.py +4 -4
  410. wandelbots_api_client/v2/models/cycle_time.py +5 -4
  411. wandelbots_api_client/v2/models/cylinder.py +5 -5
  412. wandelbots_api_client/v2/models/dh_parameter.py +7 -7
  413. wandelbots_api_client/v2/models/direction.py +2 -2
  414. wandelbots_api_client/v2/models/error.py +4 -4
  415. wandelbots_api_client/v2/models/{jogging_paused_collision.py → error_invalid_joint_count.py} +21 -14
  416. wandelbots_api_client/v2/models/error_joint_limit_exceeded.py +103 -0
  417. wandelbots_api_client/v2/models/{coordinate_systems.py → error_joint_position_collision.py} +30 -19
  418. wandelbots_api_client/v2/models/error_max_iterations_exceeded.py +100 -0
  419. wandelbots_api_client/v2/models/execute.py +97 -0
  420. wandelbots_api_client/v2/models/{set_io_values_request_inner.py → execute_details.py} +47 -43
  421. wandelbots_api_client/v2/models/execute_jogging_request.py +52 -10
  422. wandelbots_api_client/v2/models/execute_jogging_response.py +87 -26
  423. wandelbots_api_client/v2/models/execute_trajectory_request.py +30 -2
  424. wandelbots_api_client/v2/models/execute_trajectory_response.py +61 -42
  425. wandelbots_api_client/v2/models/external_joint_stream_datapoint.py +6 -6
  426. wandelbots_api_client/v2/models/{robot_tcps.py → external_joint_stream_request.py} +17 -17
  427. wandelbots_api_client/v2/models/fanuc_controller.py +6 -9
  428. wandelbots_api_client/v2/models/feedback_collision.py +6 -6
  429. wandelbots_api_client/v2/models/feedback_joint_limit_exceeded.py +7 -6
  430. wandelbots_api_client/v2/models/feedback_out_of_workspace.py +4 -4
  431. wandelbots_api_client/v2/models/feedback_singularity.py +5 -5
  432. wandelbots_api_client/v2/models/flag.py +3 -3
  433. wandelbots_api_client/v2/models/float_value.py +8 -11
  434. wandelbots_api_client/v2/models/{get_all_triggers200_response.py → forward_kinematics422_response.py} +17 -17
  435. wandelbots_api_client/v2/models/forward_kinematics_request.py +104 -0
  436. wandelbots_api_client/v2/models/{controllers_list.py → forward_kinematics_response.py} +18 -18
  437. wandelbots_api_client/v2/models/{list_coordinate_systems_response.py → forward_kinematics_validation_error.py} +30 -18
  438. wandelbots_api_client/v2/models/get_trajectory_response.py +5 -5
  439. wandelbots_api_client/v2/models/http_validation_error.py +5 -5
  440. wandelbots_api_client/v2/models/image_credentials.py +5 -5
  441. wandelbots_api_client/v2/models/{inconsitent_trajectory_size.py → inconsistent_trajectory_size_error.py} +9 -9
  442. wandelbots_api_client/v2/models/{inconsitent_trajectory_size_inconsistent_trajectory_size.py → inconsistent_trajectory_size_error_inconsistent_trajectory_size.py} +9 -9
  443. wandelbots_api_client/v2/models/initialize_jogging_request.py +9 -16
  444. wandelbots_api_client/v2/models/initialize_jogging_response.py +17 -12
  445. wandelbots_api_client/v2/models/initialize_movement_request.py +7 -12
  446. wandelbots_api_client/v2/models/initialize_movement_request_trajectory.py +2 -2
  447. wandelbots_api_client/v2/models/initialize_movement_response.py +22 -11
  448. wandelbots_api_client/v2/models/integer_value.py +8 -11
  449. wandelbots_api_client/v2/models/{invalid_dof.py → invalid_dof_error.py} +9 -9
  450. wandelbots_api_client/v2/models/{invalid_dof_invalid_dof.py → invalid_dof_error_invalid_dof.py} +8 -8
  451. wandelbots_api_client/v2/models/{motion_group_infos.py → inverse_kinematics422_response.py} +18 -18
  452. wandelbots_api_client/v2/models/inverse_kinematics_request.py +51 -31
  453. wandelbots_api_client/v2/models/inverse_kinematics_response.py +3 -3
  454. wandelbots_api_client/v2/models/inverse_kinematics_validation_error.py +120 -0
  455. wandelbots_api_client/v2/models/inverse_kinematics_validation_error_all_of_data.py +155 -0
  456. wandelbots_api_client/v2/models/io_boolean_value.py +8 -11
  457. wandelbots_api_client/v2/models/{io_description_min.py → io_boundary.py} +10 -25
  458. wandelbots_api_client/v2/models/io_description.py +15 -15
  459. wandelbots_api_client/v2/models/io_direction.py +2 -2
  460. wandelbots_api_client/v2/models/io_float_value.py +9 -12
  461. wandelbots_api_client/v2/models/io_integer_value.py +9 -12
  462. wandelbots_api_client/v2/models/{trigger_type.py → io_origin.py} +7 -6
  463. wandelbots_api_client/v2/models/{set_output_values_request_inner.py → io_value.py} +10 -25
  464. wandelbots_api_client/v2/models/io_value_type.py +2 -2
  465. wandelbots_api_client/v2/models/{movement_movement.py → jogging_details.py} +21 -16
  466. wandelbots_api_client/v2/models/{jogging_state.py → jogging_details_state.py} +76 -43
  467. wandelbots_api_client/v2/models/{program_run_reference.py → jogging_paused_by_user.py} +17 -13
  468. wandelbots_api_client/v2/models/{jogging_paused_collision_paused_near_collision.py → jogging_paused_near_collision.py} +19 -10
  469. wandelbots_api_client/v2/models/{jogging_paused_joint_limit_paused_near_joint_limit.py → jogging_paused_near_joint_limit.py} +20 -10
  470. wandelbots_api_client/v2/models/jogging_paused_on_io.py +14 -7
  471. wandelbots_api_client/v2/models/jogging_running.py +14 -7
  472. wandelbots_api_client/v2/models/{joint_limit_exceeded.py → joint_limit_exceeded_error.py} +7 -7
  473. wandelbots_api_client/v2/models/joint_limits.py +101 -0
  474. wandelbots_api_client/v2/models/joint_trajectory.py +6 -23
  475. wandelbots_api_client/v2/models/joint_velocity_request.py +7 -14
  476. wandelbots_api_client/v2/models/joint_velocity_response.py +100 -0
  477. wandelbots_api_client/v2/models/kuka_controller.py +12 -13
  478. wandelbots_api_client/v2/models/kuka_controller_rsi_server.py +4 -4
  479. wandelbots_api_client/v2/models/license.py +12 -12
  480. wandelbots_api_client/v2/models/license_status.py +4 -4
  481. wandelbots_api_client/v2/models/license_status_enum.py +2 -2
  482. wandelbots_api_client/v2/models/{planning_limits_limit_range.py → limit_range.py} +8 -8
  483. wandelbots_api_client/v2/models/limit_set.py +129 -0
  484. wandelbots_api_client/v2/models/limits_override.py +8 -8
  485. wandelbots_api_client/v2/models/list_trajectories_response.py +3 -3
  486. wandelbots_api_client/v2/models/manufacturer.py +2 -2
  487. wandelbots_api_client/v2/models/midpoint_insertion_algorithm.py +101 -0
  488. wandelbots_api_client/v2/models/modbus_io.py +105 -0
  489. wandelbots_api_client/v2/models/modbus_io_area.py +40 -0
  490. wandelbots_api_client/v2/models/modbus_io_byte_order.py +40 -0
  491. wandelbots_api_client/v2/models/modbus_io_data.py +103 -0
  492. wandelbots_api_client/v2/models/modbus_io_type_enum.py +39 -0
  493. wandelbots_api_client/v2/models/motion_command.py +5 -5
  494. wandelbots_api_client/v2/models/motion_command_blending.py +2 -2
  495. wandelbots_api_client/v2/models/motion_command_path.py +2 -2
  496. wandelbots_api_client/v2/models/{planning_parameters.py → motion_group_description.py} +40 -35
  497. wandelbots_api_client/v2/models/motion_group_info.py +7 -6
  498. wandelbots_api_client/v2/models/motion_group_joints.py +6 -6
  499. wandelbots_api_client/v2/models/{robot_setup.py → motion_group_setup.py} +33 -35
  500. wandelbots_api_client/v2/models/motion_group_state.py +32 -44
  501. wandelbots_api_client/v2/models/motion_group_state_joint_limit_reached.py +3 -3
  502. wandelbots_api_client/v2/models/movement_error_response.py +100 -0
  503. wandelbots_api_client/v2/models/{nan_value.py → nan_value_error.py} +9 -9
  504. wandelbots_api_client/v2/models/{nan_value_nan_value.py → nan_value_error_nan_value.py} +6 -6
  505. wandelbots_api_client/v2/models/op_mode.py +3 -3
  506. wandelbots_api_client/v2/models/operating_state.py +2 -2
  507. wandelbots_api_client/v2/models/operation_limits.py +110 -0
  508. wandelbots_api_client/v2/models/operation_mode.py +2 -2
  509. wandelbots_api_client/v2/models/orientation_type.py +2 -2
  510. wandelbots_api_client/v2/models/path_cartesian_ptp.py +4 -4
  511. wandelbots_api_client/v2/models/path_circle.py +5 -5
  512. wandelbots_api_client/v2/models/path_cubic_spline.py +4 -4
  513. wandelbots_api_client/v2/models/path_joint_ptp.py +4 -4
  514. wandelbots_api_client/v2/models/path_line.py +4 -4
  515. wandelbots_api_client/v2/models/pause_jogging_request.py +98 -0
  516. wandelbots_api_client/v2/models/{initialize_jogging_response_init_response.py → pause_jogging_response.py} +19 -12
  517. wandelbots_api_client/v2/models/pause_movement_request.py +7 -12
  518. wandelbots_api_client/v2/models/pause_movement_response.py +17 -12
  519. wandelbots_api_client/v2/models/pause_on_io.py +11 -8
  520. wandelbots_api_client/v2/models/payload.py +6 -6
  521. wandelbots_api_client/v2/models/{http_validation_error2.py → plan422_response.py} +9 -9
  522. wandelbots_api_client/v2/models/{movement.py → plan_collision_free_failed_response.py} +13 -13
  523. wandelbots_api_client/v2/models/{jogging_response_jogging.py → plan_collision_free_request.py} +25 -21
  524. wandelbots_api_client/v2/models/{standstill.py → plan_collision_free_response.py} +13 -13
  525. wandelbots_api_client/{models/create_trigger_request_config.py → v2/models/plan_collision_free_response_response.py} +34 -20
  526. wandelbots_api_client/v2/models/plan_trajectory_failed_response.py +5 -5
  527. wandelbots_api_client/v2/models/plan_trajectory_failed_response_error_feedback.py +2 -2
  528. wandelbots_api_client/v2/models/plan_trajectory_request.py +11 -11
  529. wandelbots_api_client/v2/models/plan_trajectory_response.py +3 -3
  530. wandelbots_api_client/v2/models/plan_trajectory_response_response.py +2 -2
  531. wandelbots_api_client/v2/models/{get_all_program_operator_runs200_response.py → plan_validation_error.py} +30 -18
  532. wandelbots_api_client/v2/models/plan_validation_error_all_of_data.py +174 -0
  533. wandelbots_api_client/v2/models/plane.py +3 -3
  534. wandelbots_api_client/v2/models/playback_speed_request.py +7 -9
  535. wandelbots_api_client/v2/models/playback_speed_response.py +17 -12
  536. wandelbots_api_client/v2/models/pose.py +4 -4
  537. wandelbots_api_client/v2/models/profinet_description.py +120 -0
  538. wandelbots_api_client/v2/models/{opcua_node_value_trigger_config.py → profinet_input_output_config.py} +14 -17
  539. wandelbots_api_client/v2/models/profinet_io.py +104 -0
  540. wandelbots_api_client/v2/models/{program_request.py → profinet_io_data.py} +20 -39
  541. wandelbots_api_client/v2/models/profinet_io_direction.py +38 -0
  542. wandelbots_api_client/v2/models/profinet_io_type_enum.py +45 -0
  543. wandelbots_api_client/v2/models/{list_io_descriptions_response.py → profinet_slot_description.py} +23 -18
  544. wandelbots_api_client/v2/models/profinet_sub_slot_description.py +96 -0
  545. wandelbots_api_client/v2/models/program.py +109 -0
  546. wandelbots_api_client/v2/models/program_run.py +23 -35
  547. wandelbots_api_client/v2/models/program_run_state.py +8 -8
  548. wandelbots_api_client/v2/models/{jogging_paused_user_request.py → program_start_request.py} +10 -10
  549. wandelbots_api_client/v2/models/rectangle.py +5 -5
  550. wandelbots_api_client/v2/models/rectangular_capsule.py +6 -6
  551. wandelbots_api_client/v2/models/release_channel.py +2 -2
  552. wandelbots_api_client/v2/models/robot_controller.py +4 -4
  553. wandelbots_api_client/v2/models/robot_controller_configuration.py +2 -2
  554. wandelbots_api_client/v2/models/robot_controller_state.py +17 -11
  555. wandelbots_api_client/v2/models/robot_system_mode.py +8 -8
  556. wandelbots_api_client/v2/models/robot_tcp.py +10 -10
  557. wandelbots_api_client/v2/models/{motion_vector.py → robot_tcp_data.py} +16 -13
  558. wandelbots_api_client/v2/models/rrt_connect_algorithm.py +109 -0
  559. wandelbots_api_client/v2/models/safety_state_type.py +2 -2
  560. wandelbots_api_client/v2/models/service_group.py +2 -2
  561. wandelbots_api_client/v2/models/service_status.py +5 -5
  562. wandelbots_api_client/v2/models/service_status_phase.py +2 -2
  563. wandelbots_api_client/v2/models/service_status_response.py +4 -4
  564. wandelbots_api_client/v2/models/service_status_severity.py +2 -2
  565. wandelbots_api_client/v2/models/service_status_status.py +5 -5
  566. wandelbots_api_client/v2/models/{standstill_standstill.py → set_io.py} +17 -17
  567. wandelbots_api_client/v2/models/settable_robot_system_mode.py +2 -2
  568. wandelbots_api_client/v2/models/singularity_type_enum.py +2 -2
  569. wandelbots_api_client/v2/models/sphere.py +4 -4
  570. wandelbots_api_client/v2/models/start_movement_request.py +14 -15
  571. wandelbots_api_client/v2/models/start_movement_response.py +100 -0
  572. wandelbots_api_client/v2/models/start_on_io.py +11 -8
  573. wandelbots_api_client/v2/models/{list_io_values_response.py → stream_io_values_response.py} +17 -11
  574. wandelbots_api_client/v2/models/tcp_offset.py +4 -4
  575. wandelbots_api_client/v2/models/{tcp_required.py → tcp_required_error.py} +6 -6
  576. wandelbots_api_client/v2/models/tcp_velocity_request.py +6 -9
  577. wandelbots_api_client/v2/models/tcp_velocity_response.py +100 -0
  578. wandelbots_api_client/v2/models/{torque_exceeded.py → torque_exceeded_error.py} +9 -9
  579. wandelbots_api_client/v2/models/{torque_exceeded_torque_exceeded.py → torque_exceeded_error_torque_exceeded.py} +8 -8
  580. wandelbots_api_client/v2/models/trajectory_data.py +6 -6
  581. wandelbots_api_client/v2/models/trajectory_details.py +108 -0
  582. wandelbots_api_client/v2/models/trajectory_details_state.py +212 -0
  583. wandelbots_api_client/v2/models/trajectory_ended.py +98 -0
  584. wandelbots_api_client/v2/models/trajectory_id.py +4 -4
  585. wandelbots_api_client/v2/models/{get_mode_response.py → trajectory_paused_by_user.py} +17 -11
  586. wandelbots_api_client/v2/models/trajectory_paused_on_io.py +98 -0
  587. wandelbots_api_client/v2/models/trajectory_running.py +101 -0
  588. wandelbots_api_client/v2/models/{create_program_operator_run_request.py → trajectory_wait_for_io.py} +17 -10
  589. wandelbots_api_client/v2/models/unit_type.py +3 -3
  590. wandelbots_api_client/v2/models/universalrobots_controller.py +6 -9
  591. wandelbots_api_client/v2/models/update_nova_version_request.py +3 -3
  592. wandelbots_api_client/v2/models/validation_error.py +9 -7
  593. wandelbots_api_client/v2/models/validation_error2.py +6 -6
  594. wandelbots_api_client/v2/models/validation_error_loc_inner.py +2 -2
  595. wandelbots_api_client/v2/models/virtual_controller.py +11 -14
  596. wandelbots_api_client/v2/models/virtual_controller_types.py +18 -3
  597. wandelbots_api_client/v2/models/virtual_robot_configuration.py +4 -4
  598. wandelbots_api_client/v2/models/wait_for_io_event_request.py +6 -6
  599. wandelbots_api_client/v2/models/yaskawa_controller.py +6 -9
  600. wandelbots_api_client/v2/rest.py +4 -3
  601. wandelbots_api_client/v2_pydantic/__init__.py +50 -0
  602. wandelbots_api_client/v2_pydantic/api/__init__.py +51 -0
  603. wandelbots_api_client/{v2/api/virtual_robot_api.py → v2_pydantic/api/application_api.py} +327 -426
  604. wandelbots_api_client/v2_pydantic/api/bus_inputs_outputs_api.py +4603 -0
  605. wandelbots_api_client/{v2/api/virtual_robot_setup_api.py → v2_pydantic/api/cell_api.py} +291 -771
  606. wandelbots_api_client/v2_pydantic/api/controller_api.py +3721 -0
  607. wandelbots_api_client/v2_pydantic/api/controller_inputs_outputs_api.py +1395 -0
  608. wandelbots_api_client/v2_pydantic/api/jogging_api.py +125 -0
  609. wandelbots_api_client/v2_pydantic/api/kinematics_api.py +642 -0
  610. wandelbots_api_client/{v2/api/store_collision_scenes_api.py → v2_pydantic/api/license_api.py} +158 -248
  611. wandelbots_api_client/{v2/api/virtual_robot_behavior_api.py → v2_pydantic/api/motion_group_api.py} +156 -131
  612. wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +563 -0
  613. wandelbots_api_client/{v2/api/store_program_api.py → v2_pydantic/api/program_api.py} +191 -181
  614. wandelbots_api_client/v2_pydantic/api/store_collision_components_api.py +4170 -0
  615. wandelbots_api_client/v2_pydantic/api/store_collision_setups_api.py +1419 -0
  616. wandelbots_api_client/v2_pydantic/api/store_object_api.py +1719 -0
  617. wandelbots_api_client/{v2/api/program_operator_api.py → v2_pydantic/api/system_api.py} +625 -476
  618. wandelbots_api_client/{v2/api/virtual_robot_mode_api.py → v2_pydantic/api/trajectory_caching_api.py} +208 -162
  619. wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +125 -0
  620. wandelbots_api_client/v2_pydantic/api/trajectory_planning_api.py +642 -0
  621. wandelbots_api_client/v2_pydantic/api/version_api.py +287 -0
  622. wandelbots_api_client/v2_pydantic/api/virtual_controller_api.py +4610 -0
  623. wandelbots_api_client/v2_pydantic/api/virtual_controller_behavior_api.py +991 -0
  624. wandelbots_api_client/v2_pydantic/api/virtual_controller_inputs_outputs_api.py +1012 -0
  625. wandelbots_api_client/v2_pydantic/api_client.py +809 -0
  626. wandelbots_api_client/v2_pydantic/api_response.py +21 -0
  627. wandelbots_api_client/v2_pydantic/configuration.py +606 -0
  628. wandelbots_api_client/v2_pydantic/exceptions.py +216 -0
  629. wandelbots_api_client/v2_pydantic/models.py +4561 -0
  630. wandelbots_api_client/v2_pydantic/py.typed +0 -0
  631. wandelbots_api_client/v2_pydantic/rest.py +213 -0
  632. wandelbots_api_client-25.10.0rc2.dist-info/METADATA +62 -0
  633. wandelbots_api_client-25.10.0rc2.dist-info/RECORD +640 -0
  634. {wandelbots_api_client-25.6.0.dev7.dist-info → wandelbots_api_client-25.10.0rc2.dist-info}/WHEEL +2 -1
  635. wandelbots_api_client-25.10.0rc2.dist-info/top_level.txt +1 -0
  636. wandelbots_api_client/v2/models/collision_motion_group.py +0 -121
  637. wandelbots_api_client/v2/models/collision_scene.py +0 -119
  638. wandelbots_api_client/v2/models/collision_scene_assembly.py +0 -129
  639. wandelbots_api_client/v2/models/controller.py +0 -132
  640. wandelbots_api_client/v2/models/external_joint_stream_datapoint_value.py +0 -97
  641. wandelbots_api_client/v2/models/initialize_movement_response_init_response.py +0 -93
  642. wandelbots_api_client/v2/models/jogging_paused_joint_limit.py +0 -95
  643. wandelbots_api_client/v2/models/jogging_response.py +0 -95
  644. wandelbots_api_client/v2/models/motion_group_instance.py +0 -101
  645. wandelbots_api_client/v2/models/motion_group_state_without_payload.py +0 -146
  646. wandelbots_api_client/v2/models/movement_error.py +0 -95
  647. wandelbots_api_client/v2/models/opcua_node_value_trigger_config_node_value.py +0 -160
  648. wandelbots_api_client/v2/models/pause_movement_response_pause_response.py +0 -93
  649. wandelbots_api_client/v2/models/planning_limits.py +0 -130
  650. wandelbots_api_client/v2/models/playback_speed_response_playback_speed_response.py +0 -91
  651. wandelbots_api_client/v2/models/program_run_result.py +0 -108
  652. wandelbots_api_client/v2/models/single_motion_group_collision_scene.py +0 -135
  653. wandelbots_api_client/v2/models/standstill_reason.py +0 -39
  654. wandelbots_api_client/v2/models/trigger_object.py +0 -111
  655. wandelbots_api_client/v2/models/version_number.py +0 -105
  656. wandelbots_api_client-25.6.0.dev7.dist-info/METADATA +0 -63
  657. wandelbots_api_client-25.6.0.dev7.dist-info/RECORD +0 -580
  658. {wandelbots_api_client-25.6.0.dev7.dist-info → wandelbots_api_client-25.10.0rc2.dist-info/licenses}/LICENSE +0 -0
@@ -0,0 +1,1395 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Wandelbots NOVA API
5
+
6
+ Interact with robots in an easy and intuitive way.
7
+
8
+ The version of the OpenAPI document: 2.1.0 dev
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ from furl import furl
15
+ import json
16
+ import humps
17
+ import re
18
+ import warnings
19
+ import websockets
20
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
21
+ from typing import Any, AsyncGenerator, Callable, Dict, List, Optional, Tuple, Union
22
+ from typing_extensions import Annotated
23
+ from urllib.parse import quote
24
+
25
+ from pydantic import Field, StrictBool, StrictStr
26
+ from typing import List, Optional
27
+ from typing_extensions import Annotated
28
+ from wandelbots_api_client.v2_pydantic.models import IODescription
29
+ from wandelbots_api_client.v2_pydantic.models import IODirection
30
+ from wandelbots_api_client.v2_pydantic.models import IOValue
31
+ from wandelbots_api_client.v2_pydantic.models import IOValueType
32
+ from wandelbots_api_client.v2_pydantic.models import StreamIOValuesResponse
33
+ from wandelbots_api_client.v2_pydantic.models import WaitForIOEventRequest
34
+
35
+ from wandelbots_api_client.v2_pydantic.api_client import ApiClient, RequestSerialized
36
+ from wandelbots_api_client.v2_pydantic.api_response import ApiResponse
37
+ from wandelbots_api_client.v2_pydantic.rest import RESTResponseType
38
+
39
+ class ControllerInputsOutputsApi:
40
+ """NOTE: This class is auto generated by OpenAPI Generator
41
+ Ref: https://openapi-generator.tech
42
+
43
+ Do not edit the class manually.
44
+ """
45
+
46
+ def __init__(self, api_client=None) -> None:
47
+ if api_client is None:
48
+ api_client = ApiClient.get_default()
49
+ self.api_client = api_client
50
+
51
+ @validate_call
52
+ async def list_io_descriptions(
53
+ self,
54
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
55
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
56
+ ios: Optional[List[StrictStr]] = None,
57
+ direction: Annotated[Optional[IODirection], Field(description="Return only inputs/outputs with the specified direction. ")] = None,
58
+ value_type: Annotated[Optional[IOValueType], Field(description="Return only inputs/outputs with the specified value type. ")] = None,
59
+ group: Annotated[Optional[StrictStr], Field(description="Return only inputs/outputs from the specified group. ")] = None,
60
+ _request_timeout: Union[
61
+ None,
62
+ Annotated[StrictFloat, Field(gt=0)],
63
+ Tuple[
64
+ Annotated[StrictFloat, Field(gt=0)],
65
+ Annotated[StrictFloat, Field(gt=0)]
66
+ ]
67
+ ] = None,
68
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
69
+ _content_type: Optional[StrictStr] = None,
70
+ _headers: Optional[Dict[StrictStr, Any]] = None,
71
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
72
+ ) -> List[IODescription]:
73
+ """List Descriptions
74
+
75
+ Lists the input/output descriptions of the robot controller. The input/output descriptions contain information like name, type and unit.\\ Available inputs/outputs are defined by the robot controller\\ Each input/output has a unique identifier. - If no identifiers and no filters are specified in the request, all available inputs/outputs are retrieved by this endpoint. - If a filter, e.g., `direction`, `value_type`, `group` is applied, only matching inputs/outputs are returned.
76
+
77
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
78
+ :type cell: str
79
+ :param controller: Unique identifier to address a controller in the cell. (required)
80
+ :type controller: str
81
+ :param ios:
82
+ :type ios: List[str]
83
+ :param direction: Return only inputs/outputs with the specified direction.
84
+ :type direction: IODirection
85
+ :param value_type: Return only inputs/outputs with the specified value type.
86
+ :type value_type: IOValueType
87
+ :param group: Return only inputs/outputs from the specified group.
88
+ :type group: str
89
+ :param _request_timeout: timeout setting for this request. If one
90
+ number provided, it will be total request
91
+ timeout. It can also be a pair (tuple) of
92
+ (connection, read) timeouts.
93
+ :type _request_timeout: int, tuple(int, int), optional
94
+ :param _request_auth: set to override the auth_settings for an a single
95
+ request; this effectively ignores the
96
+ authentication in the spec for a single request.
97
+ :type _request_auth: dict, optional
98
+ :param _content_type: force content-type for the request.
99
+ :type _content_type: str, Optional
100
+ :param _headers: set to override the headers for a single
101
+ request; this effectively ignores the headers
102
+ in the spec for a single request.
103
+ :type _headers: dict, optional
104
+ :param _host_index: set to override the host_index for a single
105
+ request; this effectively ignores the host_index
106
+ in the spec for a single request.
107
+ :type _host_index: int, optional
108
+ :return: Returns the result object.
109
+ """ # noqa: E501
110
+
111
+ _param = self._list_io_descriptions_serialize(
112
+ cell=cell,
113
+ controller=controller,
114
+ ios=ios,
115
+ direction=direction,
116
+ value_type=value_type,
117
+ group=group,
118
+ _request_auth=_request_auth,
119
+ _content_type=_content_type,
120
+ _headers=_headers,
121
+ _host_index=_host_index
122
+ )
123
+
124
+ _response_types_map: Dict[str, Optional[str]] = {
125
+ '200': "List[IODescription]",
126
+ '400': "Error",
127
+ '404': "Error",
128
+ }
129
+
130
+ response_data = await self.api_client.call_api(
131
+ *_param,
132
+ _request_timeout=_request_timeout
133
+ )
134
+ await response_data.read()
135
+ return self.api_client.response_deserialize(
136
+ response_data=response_data,
137
+ response_types_map=_response_types_map,
138
+ ).data
139
+
140
+
141
+ @validate_call
142
+ async def list_io_descriptions_with_http_info(
143
+ self,
144
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
145
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
146
+ ios: Optional[List[StrictStr]] = None,
147
+ direction: Annotated[Optional[IODirection], Field(description="Return only inputs/outputs with the specified direction. ")] = None,
148
+ value_type: Annotated[Optional[IOValueType], Field(description="Return only inputs/outputs with the specified value type. ")] = None,
149
+ group: Annotated[Optional[StrictStr], Field(description="Return only inputs/outputs from the specified group. ")] = None,
150
+ _request_timeout: Union[
151
+ None,
152
+ Annotated[StrictFloat, Field(gt=0)],
153
+ Tuple[
154
+ Annotated[StrictFloat, Field(gt=0)],
155
+ Annotated[StrictFloat, Field(gt=0)]
156
+ ]
157
+ ] = None,
158
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
159
+ _content_type: Optional[StrictStr] = None,
160
+ _headers: Optional[Dict[StrictStr, Any]] = None,
161
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
162
+ ) -> ApiResponse[List[IODescription]]:
163
+ """List Descriptions
164
+
165
+ Lists the input/output descriptions of the robot controller. The input/output descriptions contain information like name, type and unit.\\ Available inputs/outputs are defined by the robot controller\\ Each input/output has a unique identifier. - If no identifiers and no filters are specified in the request, all available inputs/outputs are retrieved by this endpoint. - If a filter, e.g., `direction`, `value_type`, `group` is applied, only matching inputs/outputs are returned.
166
+
167
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
168
+ :type cell: str
169
+ :param controller: Unique identifier to address a controller in the cell. (required)
170
+ :type controller: str
171
+ :param ios:
172
+ :type ios: List[str]
173
+ :param direction: Return only inputs/outputs with the specified direction.
174
+ :type direction: IODirection
175
+ :param value_type: Return only inputs/outputs with the specified value type.
176
+ :type value_type: IOValueType
177
+ :param group: Return only inputs/outputs from the specified group.
178
+ :type group: str
179
+ :param _request_timeout: timeout setting for this request. If one
180
+ number provided, it will be total request
181
+ timeout. It can also be a pair (tuple) of
182
+ (connection, read) timeouts.
183
+ :type _request_timeout: int, tuple(int, int), optional
184
+ :param _request_auth: set to override the auth_settings for an a single
185
+ request; this effectively ignores the
186
+ authentication in the spec for a single request.
187
+ :type _request_auth: dict, optional
188
+ :param _content_type: force content-type for the request.
189
+ :type _content_type: str, Optional
190
+ :param _headers: set to override the headers for a single
191
+ request; this effectively ignores the headers
192
+ in the spec for a single request.
193
+ :type _headers: dict, optional
194
+ :param _host_index: set to override the host_index for a single
195
+ request; this effectively ignores the host_index
196
+ in the spec for a single request.
197
+ :type _host_index: int, optional
198
+ :return: Returns the result object.
199
+ """ # noqa: E501
200
+
201
+ _param = self._list_io_descriptions_serialize(
202
+ cell=cell,
203
+ controller=controller,
204
+ ios=ios,
205
+ direction=direction,
206
+ value_type=value_type,
207
+ group=group,
208
+ _request_auth=_request_auth,
209
+ _content_type=_content_type,
210
+ _headers=_headers,
211
+ _host_index=_host_index
212
+ )
213
+
214
+ _response_types_map: Dict[str, Optional[str]] = {
215
+ '200': "List[IODescription]",
216
+ '400': "Error",
217
+ '404': "Error",
218
+ }
219
+
220
+ response_data = await self.api_client.call_api(
221
+ *_param,
222
+ _request_timeout=_request_timeout
223
+ )
224
+ await response_data.read()
225
+ return self.api_client.response_deserialize(
226
+ response_data=response_data,
227
+ response_types_map=_response_types_map,
228
+ )
229
+
230
+
231
+ @validate_call
232
+ async def list_io_descriptions_without_preload_content(
233
+ self,
234
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
235
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
236
+ ios: Optional[List[StrictStr]] = None,
237
+ direction: Annotated[Optional[IODirection], Field(description="Return only inputs/outputs with the specified direction. ")] = None,
238
+ value_type: Annotated[Optional[IOValueType], Field(description="Return only inputs/outputs with the specified value type. ")] = None,
239
+ group: Annotated[Optional[StrictStr], Field(description="Return only inputs/outputs from the specified group. ")] = None,
240
+ _request_timeout: Union[
241
+ None,
242
+ Annotated[StrictFloat, Field(gt=0)],
243
+ Tuple[
244
+ Annotated[StrictFloat, Field(gt=0)],
245
+ Annotated[StrictFloat, Field(gt=0)]
246
+ ]
247
+ ] = None,
248
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
249
+ _content_type: Optional[StrictStr] = None,
250
+ _headers: Optional[Dict[StrictStr, Any]] = None,
251
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
252
+ ) -> RESTResponseType:
253
+ """List Descriptions
254
+
255
+ Lists the input/output descriptions of the robot controller. The input/output descriptions contain information like name, type and unit.\\ Available inputs/outputs are defined by the robot controller\\ Each input/output has a unique identifier. - If no identifiers and no filters are specified in the request, all available inputs/outputs are retrieved by this endpoint. - If a filter, e.g., `direction`, `value_type`, `group` is applied, only matching inputs/outputs are returned.
256
+
257
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
258
+ :type cell: str
259
+ :param controller: Unique identifier to address a controller in the cell. (required)
260
+ :type controller: str
261
+ :param ios:
262
+ :type ios: List[str]
263
+ :param direction: Return only inputs/outputs with the specified direction.
264
+ :type direction: IODirection
265
+ :param value_type: Return only inputs/outputs with the specified value type.
266
+ :type value_type: IOValueType
267
+ :param group: Return only inputs/outputs from the specified group.
268
+ :type group: str
269
+ :param _request_timeout: timeout setting for this request. If one
270
+ number provided, it will be total request
271
+ timeout. It can also be a pair (tuple) of
272
+ (connection, read) timeouts.
273
+ :type _request_timeout: int, tuple(int, int), optional
274
+ :param _request_auth: set to override the auth_settings for an a single
275
+ request; this effectively ignores the
276
+ authentication in the spec for a single request.
277
+ :type _request_auth: dict, optional
278
+ :param _content_type: force content-type for the request.
279
+ :type _content_type: str, Optional
280
+ :param _headers: set to override the headers for a single
281
+ request; this effectively ignores the headers
282
+ in the spec for a single request.
283
+ :type _headers: dict, optional
284
+ :param _host_index: set to override the host_index for a single
285
+ request; this effectively ignores the host_index
286
+ in the spec for a single request.
287
+ :type _host_index: int, optional
288
+ :return: Returns the result object.
289
+ """ # noqa: E501
290
+
291
+ _param = self._list_io_descriptions_serialize(
292
+ cell=cell,
293
+ controller=controller,
294
+ ios=ios,
295
+ direction=direction,
296
+ value_type=value_type,
297
+ group=group,
298
+ _request_auth=_request_auth,
299
+ _content_type=_content_type,
300
+ _headers=_headers,
301
+ _host_index=_host_index
302
+ )
303
+
304
+ _response_types_map: Dict[str, Optional[str]] = {
305
+ '200': "List[IODescription]",
306
+ '400': "Error",
307
+ '404': "Error",
308
+ }
309
+
310
+ response_data = await self.api_client.call_api(
311
+ *_param,
312
+ _request_timeout=_request_timeout
313
+ )
314
+ return response_data.response
315
+
316
+
317
+ def _list_io_descriptions_serialize(
318
+ self,
319
+ cell,
320
+ controller,
321
+ ios,
322
+ direction,
323
+ value_type,
324
+ group,
325
+ _request_auth,
326
+ _content_type,
327
+ _headers,
328
+ _host_index,
329
+ ) -> RequestSerialized:
330
+
331
+ _host = None
332
+
333
+ _collection_formats: Dict[str, str] = {
334
+ 'ios': 'multi',
335
+ }
336
+
337
+ _path_params: Dict[str, str] = {}
338
+ _query_params: List[Tuple[str, str]] = []
339
+ _header_params: Dict[str, Optional[str]] = _headers or {}
340
+ _form_params: List[Tuple[str, str]] = []
341
+ _files: Dict[str, Union[str, bytes]] = {}
342
+ _body_params: Optional[bytes] = None
343
+
344
+ # process the path parameters
345
+ if cell is not None:
346
+ _path_params['cell'] = cell
347
+ if controller is not None:
348
+ _path_params['controller'] = controller
349
+ # process the query parameters
350
+ if ios is not None:
351
+
352
+ _query_params.append(('ios', ios))
353
+
354
+ if direction is not None:
355
+
356
+ _query_params.append(('direction', direction.value))
357
+
358
+ if value_type is not None:
359
+
360
+ _query_params.append(('value_type', value_type.value))
361
+
362
+ if group is not None:
363
+
364
+ _query_params.append(('group', group))
365
+
366
+ # process the header parameters
367
+ # process the form parameters
368
+ # process the body parameter
369
+
370
+
371
+ # set the HTTP header `Accept`
372
+ _header_params['Accept'] = self.api_client.select_header_accept(
373
+ [
374
+ 'application/json'
375
+ ]
376
+ )
377
+
378
+
379
+ # authentication setting
380
+ _auth_settings: List[str] = [
381
+ 'BasicAuth',
382
+ 'BearerAuth'
383
+ ]
384
+
385
+ return self.api_client.param_serialize(
386
+ method='GET',
387
+ resource_path='/cells/{cell}/controllers/{controller}/ios/description',
388
+ path_params=_path_params,
389
+ query_params=_query_params,
390
+ header_params=_header_params,
391
+ body=_body_params,
392
+ post_params=_form_params,
393
+ files=_files,
394
+ auth_settings=_auth_settings,
395
+ collection_formats=_collection_formats,
396
+ _host=_host,
397
+ _request_auth=_request_auth
398
+ )
399
+
400
+
401
+
402
+ @validate_call
403
+ async def list_io_values(
404
+ self,
405
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
406
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
407
+ ios: Optional[List[StrictStr]] = None,
408
+ _request_timeout: Union[
409
+ None,
410
+ Annotated[StrictFloat, Field(gt=0)],
411
+ Tuple[
412
+ Annotated[StrictFloat, Field(gt=0)],
413
+ Annotated[StrictFloat, Field(gt=0)]
414
+ ]
415
+ ] = None,
416
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
417
+ _content_type: Optional[StrictStr] = None,
418
+ _headers: Optional[Dict[StrictStr, Any]] = None,
419
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
420
+ ) -> List[IOValue]:
421
+ """Get Input/Output Values
422
+
423
+ Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listIODescriptions](listIODescriptions).
424
+
425
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
426
+ :type cell: str
427
+ :param controller: Unique identifier to address a controller in the cell. (required)
428
+ :type controller: str
429
+ :param ios:
430
+ :type ios: List[str]
431
+ :param _request_timeout: timeout setting for this request. If one
432
+ number provided, it will be total request
433
+ timeout. It can also be a pair (tuple) of
434
+ (connection, read) timeouts.
435
+ :type _request_timeout: int, tuple(int, int), optional
436
+ :param _request_auth: set to override the auth_settings for an a single
437
+ request; this effectively ignores the
438
+ authentication in the spec for a single request.
439
+ :type _request_auth: dict, optional
440
+ :param _content_type: force content-type for the request.
441
+ :type _content_type: str, Optional
442
+ :param _headers: set to override the headers for a single
443
+ request; this effectively ignores the headers
444
+ in the spec for a single request.
445
+ :type _headers: dict, optional
446
+ :param _host_index: set to override the host_index for a single
447
+ request; this effectively ignores the host_index
448
+ in the spec for a single request.
449
+ :type _host_index: int, optional
450
+ :return: Returns the result object.
451
+ """ # noqa: E501
452
+
453
+ _param = self._list_io_values_serialize(
454
+ cell=cell,
455
+ controller=controller,
456
+ ios=ios,
457
+ _request_auth=_request_auth,
458
+ _content_type=_content_type,
459
+ _headers=_headers,
460
+ _host_index=_host_index
461
+ )
462
+
463
+ _response_types_map: Dict[str, Optional[str]] = {
464
+ '200': "List[IOValue]",
465
+ '400': "Error",
466
+ '404': "Error",
467
+ }
468
+
469
+ response_data = await self.api_client.call_api(
470
+ *_param,
471
+ _request_timeout=_request_timeout
472
+ )
473
+ await response_data.read()
474
+ return self.api_client.response_deserialize(
475
+ response_data=response_data,
476
+ response_types_map=_response_types_map,
477
+ ).data
478
+
479
+
480
+ @validate_call
481
+ async def list_io_values_with_http_info(
482
+ self,
483
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
484
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
485
+ ios: Optional[List[StrictStr]] = None,
486
+ _request_timeout: Union[
487
+ None,
488
+ Annotated[StrictFloat, Field(gt=0)],
489
+ Tuple[
490
+ Annotated[StrictFloat, Field(gt=0)],
491
+ Annotated[StrictFloat, Field(gt=0)]
492
+ ]
493
+ ] = None,
494
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
495
+ _content_type: Optional[StrictStr] = None,
496
+ _headers: Optional[Dict[StrictStr, Any]] = None,
497
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
498
+ ) -> ApiResponse[List[IOValue]]:
499
+ """Get Input/Output Values
500
+
501
+ Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listIODescriptions](listIODescriptions).
502
+
503
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
504
+ :type cell: str
505
+ :param controller: Unique identifier to address a controller in the cell. (required)
506
+ :type controller: str
507
+ :param ios:
508
+ :type ios: List[str]
509
+ :param _request_timeout: timeout setting for this request. If one
510
+ number provided, it will be total request
511
+ timeout. It can also be a pair (tuple) of
512
+ (connection, read) timeouts.
513
+ :type _request_timeout: int, tuple(int, int), optional
514
+ :param _request_auth: set to override the auth_settings for an a single
515
+ request; this effectively ignores the
516
+ authentication in the spec for a single request.
517
+ :type _request_auth: dict, optional
518
+ :param _content_type: force content-type for the request.
519
+ :type _content_type: str, Optional
520
+ :param _headers: set to override the headers for a single
521
+ request; this effectively ignores the headers
522
+ in the spec for a single request.
523
+ :type _headers: dict, optional
524
+ :param _host_index: set to override the host_index for a single
525
+ request; this effectively ignores the host_index
526
+ in the spec for a single request.
527
+ :type _host_index: int, optional
528
+ :return: Returns the result object.
529
+ """ # noqa: E501
530
+
531
+ _param = self._list_io_values_serialize(
532
+ cell=cell,
533
+ controller=controller,
534
+ ios=ios,
535
+ _request_auth=_request_auth,
536
+ _content_type=_content_type,
537
+ _headers=_headers,
538
+ _host_index=_host_index
539
+ )
540
+
541
+ _response_types_map: Dict[str, Optional[str]] = {
542
+ '200': "List[IOValue]",
543
+ '400': "Error",
544
+ '404': "Error",
545
+ }
546
+
547
+ response_data = await self.api_client.call_api(
548
+ *_param,
549
+ _request_timeout=_request_timeout
550
+ )
551
+ await response_data.read()
552
+ return self.api_client.response_deserialize(
553
+ response_data=response_data,
554
+ response_types_map=_response_types_map,
555
+ )
556
+
557
+
558
+ @validate_call
559
+ async def list_io_values_without_preload_content(
560
+ self,
561
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
562
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
563
+ ios: Optional[List[StrictStr]] = None,
564
+ _request_timeout: Union[
565
+ None,
566
+ Annotated[StrictFloat, Field(gt=0)],
567
+ Tuple[
568
+ Annotated[StrictFloat, Field(gt=0)],
569
+ Annotated[StrictFloat, Field(gt=0)]
570
+ ]
571
+ ] = None,
572
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
573
+ _content_type: Optional[StrictStr] = None,
574
+ _headers: Optional[Dict[StrictStr, Any]] = None,
575
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
576
+ ) -> RESTResponseType:
577
+ """Get Input/Output Values
578
+
579
+ Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listIODescriptions](listIODescriptions).
580
+
581
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
582
+ :type cell: str
583
+ :param controller: Unique identifier to address a controller in the cell. (required)
584
+ :type controller: str
585
+ :param ios:
586
+ :type ios: List[str]
587
+ :param _request_timeout: timeout setting for this request. If one
588
+ number provided, it will be total request
589
+ timeout. It can also be a pair (tuple) of
590
+ (connection, read) timeouts.
591
+ :type _request_timeout: int, tuple(int, int), optional
592
+ :param _request_auth: set to override the auth_settings for an a single
593
+ request; this effectively ignores the
594
+ authentication in the spec for a single request.
595
+ :type _request_auth: dict, optional
596
+ :param _content_type: force content-type for the request.
597
+ :type _content_type: str, Optional
598
+ :param _headers: set to override the headers for a single
599
+ request; this effectively ignores the headers
600
+ in the spec for a single request.
601
+ :type _headers: dict, optional
602
+ :param _host_index: set to override the host_index for a single
603
+ request; this effectively ignores the host_index
604
+ in the spec for a single request.
605
+ :type _host_index: int, optional
606
+ :return: Returns the result object.
607
+ """ # noqa: E501
608
+
609
+ _param = self._list_io_values_serialize(
610
+ cell=cell,
611
+ controller=controller,
612
+ ios=ios,
613
+ _request_auth=_request_auth,
614
+ _content_type=_content_type,
615
+ _headers=_headers,
616
+ _host_index=_host_index
617
+ )
618
+
619
+ _response_types_map: Dict[str, Optional[str]] = {
620
+ '200': "List[IOValue]",
621
+ '400': "Error",
622
+ '404': "Error",
623
+ }
624
+
625
+ response_data = await self.api_client.call_api(
626
+ *_param,
627
+ _request_timeout=_request_timeout
628
+ )
629
+ return response_data.response
630
+
631
+
632
+ def _list_io_values_serialize(
633
+ self,
634
+ cell,
635
+ controller,
636
+ ios,
637
+ _request_auth,
638
+ _content_type,
639
+ _headers,
640
+ _host_index,
641
+ ) -> RequestSerialized:
642
+
643
+ _host = None
644
+
645
+ _collection_formats: Dict[str, str] = {
646
+ 'ios': 'multi',
647
+ }
648
+
649
+ _path_params: Dict[str, str] = {}
650
+ _query_params: List[Tuple[str, str]] = []
651
+ _header_params: Dict[str, Optional[str]] = _headers or {}
652
+ _form_params: List[Tuple[str, str]] = []
653
+ _files: Dict[str, Union[str, bytes]] = {}
654
+ _body_params: Optional[bytes] = None
655
+
656
+ # process the path parameters
657
+ if cell is not None:
658
+ _path_params['cell'] = cell
659
+ if controller is not None:
660
+ _path_params['controller'] = controller
661
+ # process the query parameters
662
+ if ios is not None:
663
+
664
+ _query_params.append(('ios', ios))
665
+
666
+ # process the header parameters
667
+ # process the form parameters
668
+ # process the body parameter
669
+
670
+
671
+ # set the HTTP header `Accept`
672
+ _header_params['Accept'] = self.api_client.select_header_accept(
673
+ [
674
+ 'application/json'
675
+ ]
676
+ )
677
+
678
+
679
+ # authentication setting
680
+ _auth_settings: List[str] = [
681
+ 'BasicAuth',
682
+ 'BearerAuth'
683
+ ]
684
+
685
+ return self.api_client.param_serialize(
686
+ method='GET',
687
+ resource_path='/cells/{cell}/controllers/{controller}/ios/values',
688
+ path_params=_path_params,
689
+ query_params=_query_params,
690
+ header_params=_header_params,
691
+ body=_body_params,
692
+ post_params=_form_params,
693
+ files=_files,
694
+ auth_settings=_auth_settings,
695
+ collection_formats=_collection_formats,
696
+ _host=_host,
697
+ _request_auth=_request_auth
698
+ )
699
+
700
+
701
+
702
+ @validate_call
703
+ async def set_output_values(
704
+ self,
705
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
706
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
707
+ io_value: List[IOValue],
708
+ _request_timeout: Union[
709
+ None,
710
+ Annotated[StrictFloat, Field(gt=0)],
711
+ Tuple[
712
+ Annotated[StrictFloat, Field(gt=0)],
713
+ Annotated[StrictFloat, Field(gt=0)]
714
+ ]
715
+ ] = None,
716
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
717
+ _content_type: Optional[StrictStr] = None,
718
+ _headers: Optional[Dict[StrictStr, Any]] = None,
719
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
720
+ ) -> None:
721
+ """Set Output Values
722
+
723
+ Set the values of outputs. All available output identifiers and possible value ranges can be requested via [listIODescriptions](listIODescriptions). The call will return once the values have been set on and accepted by the robot. This can take up to 200 milliseconds. > **NOTE** > > Do not call this endpoint while another request is still in progress. The second call will fail.
724
+
725
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
726
+ :type cell: str
727
+ :param controller: Unique identifier to address a controller in the cell. (required)
728
+ :type controller: str
729
+ :param io_value: (required)
730
+ :type io_value: List[IOValue]
731
+ :param _request_timeout: timeout setting for this request. If one
732
+ number provided, it will be total request
733
+ timeout. It can also be a pair (tuple) of
734
+ (connection, read) timeouts.
735
+ :type _request_timeout: int, tuple(int, int), optional
736
+ :param _request_auth: set to override the auth_settings for an a single
737
+ request; this effectively ignores the
738
+ authentication in the spec for a single request.
739
+ :type _request_auth: dict, optional
740
+ :param _content_type: force content-type for the request.
741
+ :type _content_type: str, Optional
742
+ :param _headers: set to override the headers for a single
743
+ request; this effectively ignores the headers
744
+ in the spec for a single request.
745
+ :type _headers: dict, optional
746
+ :param _host_index: set to override the host_index for a single
747
+ request; this effectively ignores the host_index
748
+ in the spec for a single request.
749
+ :type _host_index: int, optional
750
+ :return: Returns the result object.
751
+ """ # noqa: E501
752
+
753
+ _param = self._set_output_values_serialize(
754
+ cell=cell,
755
+ controller=controller,
756
+ io_value=io_value,
757
+ _request_auth=_request_auth,
758
+ _content_type=_content_type,
759
+ _headers=_headers,
760
+ _host_index=_host_index
761
+ )
762
+
763
+ _response_types_map: Dict[str, Optional[str]] = {
764
+ '200': None,
765
+ '400': "Error",
766
+ '404': "Error",
767
+ '429': "Error",
768
+ }
769
+
770
+ response_data = await self.api_client.call_api(
771
+ *_param,
772
+ _request_timeout=_request_timeout
773
+ )
774
+ await response_data.read()
775
+ return self.api_client.response_deserialize(
776
+ response_data=response_data,
777
+ response_types_map=_response_types_map,
778
+ ).data
779
+
780
+
781
+ @validate_call
782
+ async def set_output_values_with_http_info(
783
+ self,
784
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
785
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
786
+ io_value: List[IOValue],
787
+ _request_timeout: Union[
788
+ None,
789
+ Annotated[StrictFloat, Field(gt=0)],
790
+ Tuple[
791
+ Annotated[StrictFloat, Field(gt=0)],
792
+ Annotated[StrictFloat, Field(gt=0)]
793
+ ]
794
+ ] = None,
795
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
796
+ _content_type: Optional[StrictStr] = None,
797
+ _headers: Optional[Dict[StrictStr, Any]] = None,
798
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
799
+ ) -> ApiResponse[None]:
800
+ """Set Output Values
801
+
802
+ Set the values of outputs. All available output identifiers and possible value ranges can be requested via [listIODescriptions](listIODescriptions). The call will return once the values have been set on and accepted by the robot. This can take up to 200 milliseconds. > **NOTE** > > Do not call this endpoint while another request is still in progress. The second call will fail.
803
+
804
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
805
+ :type cell: str
806
+ :param controller: Unique identifier to address a controller in the cell. (required)
807
+ :type controller: str
808
+ :param io_value: (required)
809
+ :type io_value: List[IOValue]
810
+ :param _request_timeout: timeout setting for this request. If one
811
+ number provided, it will be total request
812
+ timeout. It can also be a pair (tuple) of
813
+ (connection, read) timeouts.
814
+ :type _request_timeout: int, tuple(int, int), optional
815
+ :param _request_auth: set to override the auth_settings for an a single
816
+ request; this effectively ignores the
817
+ authentication in the spec for a single request.
818
+ :type _request_auth: dict, optional
819
+ :param _content_type: force content-type for the request.
820
+ :type _content_type: str, Optional
821
+ :param _headers: set to override the headers for a single
822
+ request; this effectively ignores the headers
823
+ in the spec for a single request.
824
+ :type _headers: dict, optional
825
+ :param _host_index: set to override the host_index for a single
826
+ request; this effectively ignores the host_index
827
+ in the spec for a single request.
828
+ :type _host_index: int, optional
829
+ :return: Returns the result object.
830
+ """ # noqa: E501
831
+
832
+ _param = self._set_output_values_serialize(
833
+ cell=cell,
834
+ controller=controller,
835
+ io_value=io_value,
836
+ _request_auth=_request_auth,
837
+ _content_type=_content_type,
838
+ _headers=_headers,
839
+ _host_index=_host_index
840
+ )
841
+
842
+ _response_types_map: Dict[str, Optional[str]] = {
843
+ '200': None,
844
+ '400': "Error",
845
+ '404': "Error",
846
+ '429': "Error",
847
+ }
848
+
849
+ response_data = await self.api_client.call_api(
850
+ *_param,
851
+ _request_timeout=_request_timeout
852
+ )
853
+ await response_data.read()
854
+ return self.api_client.response_deserialize(
855
+ response_data=response_data,
856
+ response_types_map=_response_types_map,
857
+ )
858
+
859
+
860
+ @validate_call
861
+ async def set_output_values_without_preload_content(
862
+ self,
863
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
864
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
865
+ io_value: List[IOValue],
866
+ _request_timeout: Union[
867
+ None,
868
+ Annotated[StrictFloat, Field(gt=0)],
869
+ Tuple[
870
+ Annotated[StrictFloat, Field(gt=0)],
871
+ Annotated[StrictFloat, Field(gt=0)]
872
+ ]
873
+ ] = None,
874
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
875
+ _content_type: Optional[StrictStr] = None,
876
+ _headers: Optional[Dict[StrictStr, Any]] = None,
877
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
878
+ ) -> RESTResponseType:
879
+ """Set Output Values
880
+
881
+ Set the values of outputs. All available output identifiers and possible value ranges can be requested via [listIODescriptions](listIODescriptions). The call will return once the values have been set on and accepted by the robot. This can take up to 200 milliseconds. > **NOTE** > > Do not call this endpoint while another request is still in progress. The second call will fail.
882
+
883
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
884
+ :type cell: str
885
+ :param controller: Unique identifier to address a controller in the cell. (required)
886
+ :type controller: str
887
+ :param io_value: (required)
888
+ :type io_value: List[IOValue]
889
+ :param _request_timeout: timeout setting for this request. If one
890
+ number provided, it will be total request
891
+ timeout. It can also be a pair (tuple) of
892
+ (connection, read) timeouts.
893
+ :type _request_timeout: int, tuple(int, int), optional
894
+ :param _request_auth: set to override the auth_settings for an a single
895
+ request; this effectively ignores the
896
+ authentication in the spec for a single request.
897
+ :type _request_auth: dict, optional
898
+ :param _content_type: force content-type for the request.
899
+ :type _content_type: str, Optional
900
+ :param _headers: set to override the headers for a single
901
+ request; this effectively ignores the headers
902
+ in the spec for a single request.
903
+ :type _headers: dict, optional
904
+ :param _host_index: set to override the host_index for a single
905
+ request; this effectively ignores the host_index
906
+ in the spec for a single request.
907
+ :type _host_index: int, optional
908
+ :return: Returns the result object.
909
+ """ # noqa: E501
910
+
911
+ _param = self._set_output_values_serialize(
912
+ cell=cell,
913
+ controller=controller,
914
+ io_value=io_value,
915
+ _request_auth=_request_auth,
916
+ _content_type=_content_type,
917
+ _headers=_headers,
918
+ _host_index=_host_index
919
+ )
920
+
921
+ _response_types_map: Dict[str, Optional[str]] = {
922
+ '200': None,
923
+ '400': "Error",
924
+ '404': "Error",
925
+ '429': "Error",
926
+ }
927
+
928
+ response_data = await self.api_client.call_api(
929
+ *_param,
930
+ _request_timeout=_request_timeout
931
+ )
932
+ return response_data.response
933
+
934
+
935
+ def _set_output_values_serialize(
936
+ self,
937
+ cell,
938
+ controller,
939
+ io_value,
940
+ _request_auth,
941
+ _content_type,
942
+ _headers,
943
+ _host_index,
944
+ ) -> RequestSerialized:
945
+
946
+ _host = None
947
+
948
+ _collection_formats: Dict[str, str] = {
949
+ 'IOValue': '',
950
+ }
951
+
952
+ _path_params: Dict[str, str] = {}
953
+ _query_params: List[Tuple[str, str]] = []
954
+ _header_params: Dict[str, Optional[str]] = _headers or {}
955
+ _form_params: List[Tuple[str, str]] = []
956
+ _files: Dict[str, Union[str, bytes]] = {}
957
+ _body_params: Optional[bytes] = None
958
+
959
+ # process the path parameters
960
+ if cell is not None:
961
+ _path_params['cell'] = cell
962
+ if controller is not None:
963
+ _path_params['controller'] = controller
964
+ # process the query parameters
965
+ # process the header parameters
966
+ # process the form parameters
967
+ # process the body parameter
968
+ if io_value is not None:
969
+ _body_params = io_value
970
+
971
+
972
+ # set the HTTP header `Accept`
973
+ _header_params['Accept'] = self.api_client.select_header_accept(
974
+ [
975
+ 'application/json'
976
+ ]
977
+ )
978
+
979
+ # set the HTTP header `Content-Type`
980
+ if _content_type:
981
+ _header_params['Content-Type'] = _content_type
982
+ else:
983
+ _default_content_type = (
984
+ self.api_client.select_header_content_type(
985
+ [
986
+ 'application/json'
987
+ ]
988
+ )
989
+ )
990
+ if _default_content_type is not None:
991
+ _header_params['Content-Type'] = _default_content_type
992
+
993
+ # authentication setting
994
+ _auth_settings: List[str] = [
995
+ 'BasicAuth',
996
+ 'BearerAuth'
997
+ ]
998
+
999
+ return self.api_client.param_serialize(
1000
+ method='PUT',
1001
+ resource_path='/cells/{cell}/controllers/{controller}/ios/values',
1002
+ path_params=_path_params,
1003
+ query_params=_query_params,
1004
+ header_params=_header_params,
1005
+ body=_body_params,
1006
+ post_params=_form_params,
1007
+ files=_files,
1008
+ auth_settings=_auth_settings,
1009
+ collection_formats=_collection_formats,
1010
+ _host=_host,
1011
+ _request_auth=_request_auth
1012
+ )
1013
+
1014
+
1015
+
1016
+ @validate_call
1017
+ async def stream_io_values(self, cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")], controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")], ios: Optional[List[StrictStr]] = None) -> AsyncGenerator[StreamIOValuesResponse, None]: # noqa: E501
1018
+ """Stream Input/Output Values # noqa: E501
1019
+
1020
+ <!-- theme: success --> > Websocket endpoint Continuously receive updates of input/output values via websocket. Updates are sent in the update rate of the controller. > **NOTE** > > If you request many values simultaneously, the request is likely to fail. The amount of values that can be streamed simultaneously depends on the specific robot controller. > **NOTE** > > The inputs and outputs are sent in the update rate of the controller to prevent losing any values. This can lead to a high amount of data transmitted. # noqa: E501
1021
+ :param request: A StreamIoValuesRequest
1022
+ :info All responses from the server will be yielded
1023
+ :type StreamIoValuesRequest
1024
+ """
1025
+ def format_path_parameters(path):
1026
+ # Find all substrings that are enclosed in brackets
1027
+ bracket_contents = re.findall(r'\{(.*?)\}', path)
1028
+
1029
+ # For each found substring, replace underscores with spaces
1030
+ for content in bracket_contents:
1031
+ content = "{" + content + "}"
1032
+ modified_content = humps.dekebabize(content)
1033
+ path = path.replace(content, modified_content)
1034
+
1035
+ return path
1036
+
1037
+ def append_parameter_connector(url_schema):
1038
+ if not "?" in url_schema:
1039
+ url_schema += "?"
1040
+ else:
1041
+ url_schema += "&"
1042
+ return url_schema
1043
+
1044
+ path = format_path_parameters("/cells/{cell}/controllers/{controller}/ios/stream")
1045
+ path = path.format(cell=cell,controller=controller,)
1046
+
1047
+ headers = websockets.Headers()
1048
+ tmp_host = self.api_client.configuration.host
1049
+ if self.api_client.configuration.host.startswith("https://"):
1050
+ # Basic Auth
1051
+ if self.api_client.configuration.username:
1052
+ tmp_host = self.api_client.configuration.host.replace("https://", "")
1053
+ tmp_host = f"wss://{self.api_client.configuration.username}:{self.api_client.configuration.password}@{tmp_host}"
1054
+
1055
+ # OAuth2
1056
+ elif self.api_client.configuration.access_token:
1057
+ tmp_host = self.api_client.configuration.host.replace("https://", "")
1058
+ tmp_host = f"wss://{tmp_host}"
1059
+ headers = websockets.Headers([
1060
+ ("Authorization", f"Bearer {self.api_client.configuration.access_token}")
1061
+ ])
1062
+ else:
1063
+ tmp_host = tmp_host.replace("http://", "ws://")
1064
+
1065
+ url_schema = tmp_host + path
1066
+ if locals().get("ios") is not None:
1067
+ url_schema = append_parameter_connector(url_schema)
1068
+ if isinstance(ios, list):
1069
+ url_schema += "&".join(["ios=" + s for s in ios])
1070
+ else:
1071
+ url_schema += "ios="+str(ios)
1072
+ full_url = furl(url_schema)
1073
+
1074
+ async with websockets.connect(full_url.url, open_timeout=10, additional_headers=headers) as websocket:
1075
+ try:
1076
+ async for response in websocket:
1077
+ response_data = json.loads(response)
1078
+ if "result" not in response_data:
1079
+ raise Exception(response_data)
1080
+ yield StreamIOValuesResponse.model_validate(response_data["result"])
1081
+ except websockets.exceptions.ConnectionClosed:
1082
+ return
1083
+ finally:
1084
+ await websocket.close()
1085
+
1086
+
1087
+ @validate_call
1088
+ async def wait_for_io_event(
1089
+ self,
1090
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1091
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
1092
+ wait_for_io_event_request: WaitForIOEventRequest,
1093
+ _request_timeout: Union[
1094
+ None,
1095
+ Annotated[StrictFloat, Field(gt=0)],
1096
+ Tuple[
1097
+ Annotated[StrictFloat, Field(gt=0)],
1098
+ Annotated[StrictFloat, Field(gt=0)]
1099
+ ]
1100
+ ] = None,
1101
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1102
+ _content_type: Optional[StrictStr] = None,
1103
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1104
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1105
+ ) -> bool:
1106
+ """Wait For
1107
+
1108
+ Wait until an input/output reaches a certain value. This call returns as soon as the condition is met or the request fails. The `comparison_type` value is used to define how the current value of the input/output is compared with given value. Only set the value that corresponds to the `value_type` of the input/output. See [listIODescriptions](listIODescriptions) for more information. **Examples** 1. Wait until analog input `AI_1` < 10: ``` io: \"AI_1\" comparison_type: \"COMPARISON_LESS\" value: 10 ``` 2. Wait until analog input `AI_2` > 5.0: ``` io: \"AI_2\" comparison_type: \"COMPARISON_GREATER\" value: 5.0 ``` 3. Wait until digital input `DI_3` is true: ``` io: \"DI_3\" comparison_type: \"COMPARISON_EQUAL\" value: true ```
1109
+
1110
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1111
+ :type cell: str
1112
+ :param controller: Unique identifier to address a controller in the cell. (required)
1113
+ :type controller: str
1114
+ :param wait_for_io_event_request: (required)
1115
+ :type wait_for_io_event_request: WaitForIOEventRequest
1116
+ :param _request_timeout: timeout setting for this request. If one
1117
+ number provided, it will be total request
1118
+ timeout. It can also be a pair (tuple) of
1119
+ (connection, read) timeouts.
1120
+ :type _request_timeout: int, tuple(int, int), optional
1121
+ :param _request_auth: set to override the auth_settings for an a single
1122
+ request; this effectively ignores the
1123
+ authentication in the spec for a single request.
1124
+ :type _request_auth: dict, optional
1125
+ :param _content_type: force content-type for the request.
1126
+ :type _content_type: str, Optional
1127
+ :param _headers: set to override the headers for a single
1128
+ request; this effectively ignores the headers
1129
+ in the spec for a single request.
1130
+ :type _headers: dict, optional
1131
+ :param _host_index: set to override the host_index for a single
1132
+ request; this effectively ignores the host_index
1133
+ in the spec for a single request.
1134
+ :type _host_index: int, optional
1135
+ :return: Returns the result object.
1136
+ """ # noqa: E501
1137
+
1138
+ _param = self._wait_for_io_event_serialize(
1139
+ cell=cell,
1140
+ controller=controller,
1141
+ wait_for_io_event_request=wait_for_io_event_request,
1142
+ _request_auth=_request_auth,
1143
+ _content_type=_content_type,
1144
+ _headers=_headers,
1145
+ _host_index=_host_index
1146
+ )
1147
+
1148
+ _response_types_map: Dict[str, Optional[str]] = {
1149
+ '200': "bool",
1150
+ '400': "Error",
1151
+ '404': "Error",
1152
+ }
1153
+
1154
+ response_data = await self.api_client.call_api(
1155
+ *_param,
1156
+ _request_timeout=_request_timeout
1157
+ )
1158
+ await response_data.read()
1159
+ return self.api_client.response_deserialize(
1160
+ response_data=response_data,
1161
+ response_types_map=_response_types_map,
1162
+ ).data
1163
+
1164
+
1165
+ @validate_call
1166
+ async def wait_for_io_event_with_http_info(
1167
+ self,
1168
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1169
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
1170
+ wait_for_io_event_request: WaitForIOEventRequest,
1171
+ _request_timeout: Union[
1172
+ None,
1173
+ Annotated[StrictFloat, Field(gt=0)],
1174
+ Tuple[
1175
+ Annotated[StrictFloat, Field(gt=0)],
1176
+ Annotated[StrictFloat, Field(gt=0)]
1177
+ ]
1178
+ ] = None,
1179
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1180
+ _content_type: Optional[StrictStr] = None,
1181
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1182
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1183
+ ) -> ApiResponse[bool]:
1184
+ """Wait For
1185
+
1186
+ Wait until an input/output reaches a certain value. This call returns as soon as the condition is met or the request fails. The `comparison_type` value is used to define how the current value of the input/output is compared with given value. Only set the value that corresponds to the `value_type` of the input/output. See [listIODescriptions](listIODescriptions) for more information. **Examples** 1. Wait until analog input `AI_1` < 10: ``` io: \"AI_1\" comparison_type: \"COMPARISON_LESS\" value: 10 ``` 2. Wait until analog input `AI_2` > 5.0: ``` io: \"AI_2\" comparison_type: \"COMPARISON_GREATER\" value: 5.0 ``` 3. Wait until digital input `DI_3` is true: ``` io: \"DI_3\" comparison_type: \"COMPARISON_EQUAL\" value: true ```
1187
+
1188
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1189
+ :type cell: str
1190
+ :param controller: Unique identifier to address a controller in the cell. (required)
1191
+ :type controller: str
1192
+ :param wait_for_io_event_request: (required)
1193
+ :type wait_for_io_event_request: WaitForIOEventRequest
1194
+ :param _request_timeout: timeout setting for this request. If one
1195
+ number provided, it will be total request
1196
+ timeout. It can also be a pair (tuple) of
1197
+ (connection, read) timeouts.
1198
+ :type _request_timeout: int, tuple(int, int), optional
1199
+ :param _request_auth: set to override the auth_settings for an a single
1200
+ request; this effectively ignores the
1201
+ authentication in the spec for a single request.
1202
+ :type _request_auth: dict, optional
1203
+ :param _content_type: force content-type for the request.
1204
+ :type _content_type: str, Optional
1205
+ :param _headers: set to override the headers for a single
1206
+ request; this effectively ignores the headers
1207
+ in the spec for a single request.
1208
+ :type _headers: dict, optional
1209
+ :param _host_index: set to override the host_index for a single
1210
+ request; this effectively ignores the host_index
1211
+ in the spec for a single request.
1212
+ :type _host_index: int, optional
1213
+ :return: Returns the result object.
1214
+ """ # noqa: E501
1215
+
1216
+ _param = self._wait_for_io_event_serialize(
1217
+ cell=cell,
1218
+ controller=controller,
1219
+ wait_for_io_event_request=wait_for_io_event_request,
1220
+ _request_auth=_request_auth,
1221
+ _content_type=_content_type,
1222
+ _headers=_headers,
1223
+ _host_index=_host_index
1224
+ )
1225
+
1226
+ _response_types_map: Dict[str, Optional[str]] = {
1227
+ '200': "bool",
1228
+ '400': "Error",
1229
+ '404': "Error",
1230
+ }
1231
+
1232
+ response_data = await self.api_client.call_api(
1233
+ *_param,
1234
+ _request_timeout=_request_timeout
1235
+ )
1236
+ await response_data.read()
1237
+ return self.api_client.response_deserialize(
1238
+ response_data=response_data,
1239
+ response_types_map=_response_types_map,
1240
+ )
1241
+
1242
+
1243
+ @validate_call
1244
+ async def wait_for_io_event_without_preload_content(
1245
+ self,
1246
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1247
+ controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")],
1248
+ wait_for_io_event_request: WaitForIOEventRequest,
1249
+ _request_timeout: Union[
1250
+ None,
1251
+ Annotated[StrictFloat, Field(gt=0)],
1252
+ Tuple[
1253
+ Annotated[StrictFloat, Field(gt=0)],
1254
+ Annotated[StrictFloat, Field(gt=0)]
1255
+ ]
1256
+ ] = None,
1257
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1258
+ _content_type: Optional[StrictStr] = None,
1259
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1260
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1261
+ ) -> RESTResponseType:
1262
+ """Wait For
1263
+
1264
+ Wait until an input/output reaches a certain value. This call returns as soon as the condition is met or the request fails. The `comparison_type` value is used to define how the current value of the input/output is compared with given value. Only set the value that corresponds to the `value_type` of the input/output. See [listIODescriptions](listIODescriptions) for more information. **Examples** 1. Wait until analog input `AI_1` < 10: ``` io: \"AI_1\" comparison_type: \"COMPARISON_LESS\" value: 10 ``` 2. Wait until analog input `AI_2` > 5.0: ``` io: \"AI_2\" comparison_type: \"COMPARISON_GREATER\" value: 5.0 ``` 3. Wait until digital input `DI_3` is true: ``` io: \"DI_3\" comparison_type: \"COMPARISON_EQUAL\" value: true ```
1265
+
1266
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1267
+ :type cell: str
1268
+ :param controller: Unique identifier to address a controller in the cell. (required)
1269
+ :type controller: str
1270
+ :param wait_for_io_event_request: (required)
1271
+ :type wait_for_io_event_request: WaitForIOEventRequest
1272
+ :param _request_timeout: timeout setting for this request. If one
1273
+ number provided, it will be total request
1274
+ timeout. It can also be a pair (tuple) of
1275
+ (connection, read) timeouts.
1276
+ :type _request_timeout: int, tuple(int, int), optional
1277
+ :param _request_auth: set to override the auth_settings for an a single
1278
+ request; this effectively ignores the
1279
+ authentication in the spec for a single request.
1280
+ :type _request_auth: dict, optional
1281
+ :param _content_type: force content-type for the request.
1282
+ :type _content_type: str, Optional
1283
+ :param _headers: set to override the headers for a single
1284
+ request; this effectively ignores the headers
1285
+ in the spec for a single request.
1286
+ :type _headers: dict, optional
1287
+ :param _host_index: set to override the host_index for a single
1288
+ request; this effectively ignores the host_index
1289
+ in the spec for a single request.
1290
+ :type _host_index: int, optional
1291
+ :return: Returns the result object.
1292
+ """ # noqa: E501
1293
+
1294
+ _param = self._wait_for_io_event_serialize(
1295
+ cell=cell,
1296
+ controller=controller,
1297
+ wait_for_io_event_request=wait_for_io_event_request,
1298
+ _request_auth=_request_auth,
1299
+ _content_type=_content_type,
1300
+ _headers=_headers,
1301
+ _host_index=_host_index
1302
+ )
1303
+
1304
+ _response_types_map: Dict[str, Optional[str]] = {
1305
+ '200': "bool",
1306
+ '400': "Error",
1307
+ '404': "Error",
1308
+ }
1309
+
1310
+ response_data = await self.api_client.call_api(
1311
+ *_param,
1312
+ _request_timeout=_request_timeout
1313
+ )
1314
+ return response_data.response
1315
+
1316
+
1317
+ def _wait_for_io_event_serialize(
1318
+ self,
1319
+ cell,
1320
+ controller,
1321
+ wait_for_io_event_request,
1322
+ _request_auth,
1323
+ _content_type,
1324
+ _headers,
1325
+ _host_index,
1326
+ ) -> RequestSerialized:
1327
+
1328
+ _host = None
1329
+
1330
+ _collection_formats: Dict[str, str] = {
1331
+ }
1332
+
1333
+ _path_params: Dict[str, str] = {}
1334
+ _query_params: List[Tuple[str, str]] = []
1335
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1336
+ _form_params: List[Tuple[str, str]] = []
1337
+ _files: Dict[str, Union[str, bytes]] = {}
1338
+ _body_params: Optional[bytes] = None
1339
+
1340
+ # process the path parameters
1341
+ if cell is not None:
1342
+ _path_params['cell'] = cell
1343
+ if controller is not None:
1344
+ _path_params['controller'] = controller
1345
+ # process the query parameters
1346
+ # process the header parameters
1347
+ # process the form parameters
1348
+ # process the body parameter
1349
+ if wait_for_io_event_request is not None:
1350
+ _body_params = wait_for_io_event_request
1351
+
1352
+
1353
+ # set the HTTP header `Accept`
1354
+ _header_params['Accept'] = self.api_client.select_header_accept(
1355
+ [
1356
+ 'application/json'
1357
+ ]
1358
+ )
1359
+
1360
+ # set the HTTP header `Content-Type`
1361
+ if _content_type:
1362
+ _header_params['Content-Type'] = _content_type
1363
+ else:
1364
+ _default_content_type = (
1365
+ self.api_client.select_header_content_type(
1366
+ [
1367
+ 'application/json'
1368
+ ]
1369
+ )
1370
+ )
1371
+ if _default_content_type is not None:
1372
+ _header_params['Content-Type'] = _default_content_type
1373
+
1374
+ # authentication setting
1375
+ _auth_settings: List[str] = [
1376
+ 'BasicAuth',
1377
+ 'BearerAuth'
1378
+ ]
1379
+
1380
+ return self.api_client.param_serialize(
1381
+ method='POST',
1382
+ resource_path='/cells/{cell}/controllers/{controller}/ios/wait-for',
1383
+ path_params=_path_params,
1384
+ query_params=_query_params,
1385
+ header_params=_header_params,
1386
+ body=_body_params,
1387
+ post_params=_form_params,
1388
+ files=_files,
1389
+ auth_settings=_auth_settings,
1390
+ collection_formats=_collection_formats,
1391
+ _host=_host,
1392
+ _request_auth=_request_auth
1393
+ )
1394
+
1395
+