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