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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. wandelbots_api_client/__init__.py +2 -3
  2. wandelbots_api_client/api/__init__.py +2 -0
  3. wandelbots_api_client/api/application_api.py +1 -2
  4. wandelbots_api_client/api/cell_api.py +1 -2
  5. wandelbots_api_client/api/controller_api.py +13 -8
  6. wandelbots_api_client/api/controller_ios_api.py +3 -6
  7. wandelbots_api_client/api/coordinate_systems_api.py +1 -2
  8. wandelbots_api_client/api/device_configuration_api.py +1 -2
  9. wandelbots_api_client/api/library_program_api.py +1 -2
  10. wandelbots_api_client/api/library_program_metadata_api.py +1 -2
  11. wandelbots_api_client/api/library_recipe_api.py +1 -2
  12. wandelbots_api_client/api/library_recipe_metadata_api.py +1 -2
  13. wandelbots_api_client/api/license_api.py +1 -2
  14. wandelbots_api_client/api/motion_api.py +59 -8
  15. wandelbots_api_client/api/motion_group_api.py +1 -2
  16. wandelbots_api_client/api/motion_group_infos_api.py +3 -2
  17. wandelbots_api_client/api/motion_group_jogging_api.py +53 -8
  18. wandelbots_api_client/api/motion_group_kinematic_api.py +1 -2
  19. wandelbots_api_client/api/program_api.py +1 -2
  20. wandelbots_api_client/api/program_operator_api.py +1 -2
  21. wandelbots_api_client/api/program_values_api.py +1 -2
  22. wandelbots_api_client/api/store_collision_components_api.py +10 -8
  23. wandelbots_api_client/api/store_collision_scenes_api.py +1 -2
  24. wandelbots_api_client/api/store_object_api.py +1 -2
  25. wandelbots_api_client/api/system_api.py +1 -2
  26. wandelbots_api_client/api/version_api.py +284 -0
  27. wandelbots_api_client/api/virtual_robot_api.py +1 -2
  28. wandelbots_api_client/api/virtual_robot_behavior_api.py +27 -5
  29. wandelbots_api_client/api/virtual_robot_mode_api.py +1 -2
  30. wandelbots_api_client/api/virtual_robot_setup_api.py +16 -17
  31. wandelbots_api_client/api_client.py +14 -7
  32. wandelbots_api_client/authorization.py +244 -0
  33. wandelbots_api_client/configuration.py +18 -7
  34. wandelbots_api_client/exceptions.py +1 -1
  35. wandelbots_api_client/models/__init__.py +3 -4
  36. wandelbots_api_client/models/abb_controller.py +5 -5
  37. wandelbots_api_client/models/abb_controller_egm_server.py +3 -3
  38. wandelbots_api_client/models/activate_license_request.py +2 -2
  39. wandelbots_api_client/models/add_request.py +3 -3
  40. wandelbots_api_client/models/all_joint_positions_request.py +3 -3
  41. wandelbots_api_client/models/all_joint_positions_response.py +2 -2
  42. wandelbots_api_client/{v2/models/error2.py → models/api_version.py} +10 -10
  43. wandelbots_api_client/models/app.py +8 -8
  44. wandelbots_api_client/models/array_input.py +2 -2
  45. wandelbots_api_client/models/array_output.py +2 -2
  46. wandelbots_api_client/models/behavior.py +1 -1
  47. wandelbots_api_client/models/blending_auto.py +3 -3
  48. wandelbots_api_client/models/blending_position.py +3 -3
  49. wandelbots_api_client/models/box.py +5 -5
  50. wandelbots_api_client/models/box2.py +6 -6
  51. wandelbots_api_client/models/box3.py +6 -6
  52. wandelbots_api_client/models/capsule.py +3 -3
  53. wandelbots_api_client/models/capsule2.py +4 -4
  54. wandelbots_api_client/models/capsule3.py +4 -4
  55. wandelbots_api_client/models/capture.py +2 -2
  56. wandelbots_api_client/models/cell.py +4 -4
  57. wandelbots_api_client/models/circle.py +3 -3
  58. wandelbots_api_client/models/code_with_arguments.py +7 -6
  59. wandelbots_api_client/models/collection_value.py +1 -1
  60. wandelbots_api_client/models/collider.py +4 -4
  61. wandelbots_api_client/models/collider_input.py +4 -4
  62. wandelbots_api_client/models/collider_output.py +4 -4
  63. wandelbots_api_client/models/collider_output_shape.py +1 -1
  64. wandelbots_api_client/models/collider_shape.py +1 -41
  65. wandelbots_api_client/models/collision.py +7 -7
  66. wandelbots_api_client/models/collision_contact.py +3 -3
  67. wandelbots_api_client/models/collision_motion_group.py +7 -6
  68. wandelbots_api_client/models/collision_motion_group_assembly.py +9 -8
  69. wandelbots_api_client/models/collision_robot_configuration_input.py +12 -10
  70. wandelbots_api_client/models/collision_robot_configuration_output.py +12 -10
  71. wandelbots_api_client/models/collision_scene.py +11 -9
  72. wandelbots_api_client/models/collision_scene_assembly.py +14 -12
  73. wandelbots_api_client/models/command.py +7 -7
  74. wandelbots_api_client/models/command_settings.py +4 -4
  75. wandelbots_api_client/models/comparator.py +1 -1
  76. wandelbots_api_client/models/compound.py +2 -2
  77. wandelbots_api_client/models/container_environment_inner.py +3 -3
  78. wandelbots_api_client/models/container_image.py +4 -4
  79. wandelbots_api_client/models/container_image_secrets_inner.py +2 -2
  80. wandelbots_api_client/models/container_resources.py +2 -2
  81. wandelbots_api_client/models/container_storage.py +3 -3
  82. wandelbots_api_client/models/controller_capabilities.py +3 -3
  83. wandelbots_api_client/models/controller_instance.py +9 -9
  84. wandelbots_api_client/models/controller_instance_list.py +2 -2
  85. wandelbots_api_client/models/convex_hull.py +2 -2
  86. wandelbots_api_client/models/convex_hull2.py +3 -3
  87. wandelbots_api_client/models/convex_hull3.py +3 -3
  88. wandelbots_api_client/models/coordinate_system.py +6 -6
  89. wandelbots_api_client/models/coordinate_systems.py +2 -2
  90. wandelbots_api_client/models/create_device_request_inner.py +1 -1
  91. wandelbots_api_client/models/create_program_run200_response.py +2 -2
  92. wandelbots_api_client/models/create_program_run_request.py +2 -2
  93. wandelbots_api_client/models/create_trigger200_response.py +2 -2
  94. wandelbots_api_client/models/create_trigger_request.py +7 -7
  95. wandelbots_api_client/models/cubic_spline.py +2 -2
  96. wandelbots_api_client/models/cubic_spline_cubic_spline_parameter.py +3 -3
  97. wandelbots_api_client/models/cubic_spline_parameter.py +3 -3
  98. wandelbots_api_client/models/cycle_time.py +2 -2
  99. wandelbots_api_client/models/cylinder.py +3 -3
  100. wandelbots_api_client/models/cylinder2.py +4 -4
  101. wandelbots_api_client/models/cylinder3.py +4 -4
  102. wandelbots_api_client/models/dh_parameter.py +6 -6
  103. wandelbots_api_client/models/direction.py +1 -1
  104. wandelbots_api_client/models/direction_jogging_request.py +10 -10
  105. wandelbots_api_client/models/error.py +3 -3
  106. wandelbots_api_client/models/execute_trajectory_request.py +1 -1
  107. wandelbots_api_client/models/execute_trajectory_response.py +1 -1
  108. wandelbots_api_client/models/execution_result.py +4 -4
  109. wandelbots_api_client/models/external_joint_stream_datapoint.py +3 -3
  110. wandelbots_api_client/models/external_joint_stream_datapoint_value.py +5 -5
  111. wandelbots_api_client/models/fanuc_controller.py +3 -3
  112. wandelbots_api_client/models/feedback_collision.py +5 -5
  113. wandelbots_api_client/models/feedback_joint_limit_exceeded.py +4 -4
  114. wandelbots_api_client/models/feedback_out_of_workspace.py +3 -3
  115. wandelbots_api_client/models/feedback_singularity.py +4 -4
  116. wandelbots_api_client/models/flag.py +2 -2
  117. wandelbots_api_client/models/force_vector.py +4 -4
  118. wandelbots_api_client/models/geometry.py +12 -12
  119. wandelbots_api_client/models/get_all_program_runs200_response.py +2 -2
  120. wandelbots_api_client/models/get_all_triggers200_response.py +2 -2
  121. wandelbots_api_client/models/get_mode_response.py +2 -2
  122. wandelbots_api_client/models/get_trajectory_response.py +2 -2
  123. wandelbots_api_client/models/get_trajectory_sample_response.py +2 -2
  124. wandelbots_api_client/models/google_protobuf_any.py +2 -2
  125. wandelbots_api_client/models/http_exception_response.py +2 -2
  126. wandelbots_api_client/models/http_validation_error.py +2 -2
  127. wandelbots_api_client/models/http_validation_error2.py +2 -2
  128. wandelbots_api_client/models/image_credentials.py +4 -4
  129. wandelbots_api_client/models/info_service_capabilities.py +8 -8
  130. wandelbots_api_client/models/initialize_movement_request.py +6 -6
  131. wandelbots_api_client/models/initialize_movement_response.py +2 -2
  132. wandelbots_api_client/models/initialize_movement_response_init_response.py +3 -3
  133. wandelbots_api_client/models/io.py +6 -6
  134. wandelbots_api_client/models/io_description.py +10 -10
  135. wandelbots_api_client/models/io_value.py +5 -5
  136. wandelbots_api_client/models/ios.py +2 -2
  137. wandelbots_api_client/models/jogging_response.py +4 -4
  138. wandelbots_api_client/models/jogging_service_capabilities.py +3 -3
  139. wandelbots_api_client/models/joint_jogging_request.py +6 -6
  140. wandelbots_api_client/models/joint_limit.py +5 -5
  141. wandelbots_api_client/models/joint_limit_exceeded.py +3 -3
  142. wandelbots_api_client/models/joint_position_request.py +4 -4
  143. wandelbots_api_client/models/joint_trajectory.py +4 -4
  144. wandelbots_api_client/models/joints.py +2 -2
  145. wandelbots_api_client/models/kinematic_service_capabilities.py +4 -4
  146. wandelbots_api_client/models/kuka_controller.py +10 -8
  147. wandelbots_api_client/models/kuka_controller_rsi_server.py +3 -3
  148. wandelbots_api_client/models/license.py +11 -11
  149. wandelbots_api_client/models/license_status.py +3 -3
  150. wandelbots_api_client/models/license_status_enum.py +1 -1
  151. wandelbots_api_client/models/limit_settings.py +13 -13
  152. wandelbots_api_client/models/limits_override.py +7 -7
  153. wandelbots_api_client/models/list_devices200_response_inner.py +1 -1
  154. wandelbots_api_client/models/list_io_descriptions_response.py +2 -2
  155. wandelbots_api_client/models/list_io_values_response.py +2 -2
  156. wandelbots_api_client/models/list_payloads_response.py +2 -2
  157. wandelbots_api_client/models/list_program_metadata_response.py +2 -2
  158. wandelbots_api_client/models/list_recipe_metadata_response.py +2 -2
  159. wandelbots_api_client/models/list_response.py +2 -2
  160. wandelbots_api_client/models/list_tcps_response.py +2 -2
  161. wandelbots_api_client/models/manufacturer.py +1 -1
  162. wandelbots_api_client/models/mode_change_response.py +5 -5
  163. wandelbots_api_client/models/motion_command.py +4 -4
  164. wandelbots_api_client/models/motion_command_blending.py +1 -1
  165. wandelbots_api_client/models/motion_command_path.py +1 -1
  166. wandelbots_api_client/models/motion_group_behavior_getter.py +2 -2
  167. wandelbots_api_client/models/motion_group_info.py +4 -4
  168. wandelbots_api_client/models/motion_group_infos.py +2 -2
  169. wandelbots_api_client/models/motion_group_instance.py +6 -6
  170. wandelbots_api_client/models/motion_group_instance_list.py +2 -2
  171. wandelbots_api_client/models/motion_group_joints.py +5 -5
  172. wandelbots_api_client/models/motion_group_physical.py +6 -6
  173. wandelbots_api_client/models/motion_group_specification.py +3 -3
  174. wandelbots_api_client/models/motion_group_state.py +13 -13
  175. wandelbots_api_client/models/motion_group_state_joint_limit_reached.py +2 -2
  176. wandelbots_api_client/models/motion_group_state_response.py +3 -3
  177. wandelbots_api_client/models/motion_id.py +2 -2
  178. wandelbots_api_client/models/motion_ids_list_response.py +2 -2
  179. wandelbots_api_client/models/motion_vector.py +4 -4
  180. wandelbots_api_client/models/mounting.py +3 -3
  181. wandelbots_api_client/models/move_request.py +9 -9
  182. wandelbots_api_client/models/move_response.py +3 -3
  183. wandelbots_api_client/models/move_to_trajectory_via_joint_ptp_request.py +5 -5
  184. wandelbots_api_client/models/movement.py +2 -2
  185. wandelbots_api_client/models/movement_error.py +2 -2
  186. wandelbots_api_client/models/movement_error_error.py +2 -2
  187. wandelbots_api_client/models/movement_movement.py +4 -4
  188. wandelbots_api_client/models/op_mode.py +2 -2
  189. wandelbots_api_client/models/opcua_node_value_trigger_config.py +4 -4
  190. wandelbots_api_client/models/opcua_node_value_trigger_config_node_value.py +1 -1
  191. wandelbots_api_client/models/optimizer_setup.py +8 -8
  192. wandelbots_api_client/models/out_of_workspace.py +2 -2
  193. wandelbots_api_client/models/path.py +2 -2
  194. wandelbots_api_client/models/path_cartesian_ptp.py +3 -3
  195. wandelbots_api_client/models/path_circle.py +4 -4
  196. wandelbots_api_client/models/path_cubic_spline.py +3 -3
  197. wandelbots_api_client/models/path_joint_ptp.py +3 -3
  198. wandelbots_api_client/models/path_line.py +3 -3
  199. wandelbots_api_client/models/pause_movement_request.py +3 -3
  200. wandelbots_api_client/models/pause_movement_response.py +2 -2
  201. wandelbots_api_client/models/pause_movement_response_pause_response.py +3 -3
  202. wandelbots_api_client/models/pause_on_io.py +3 -3
  203. wandelbots_api_client/models/payload.py +5 -5
  204. wandelbots_api_client/models/plan_collision_free_ptp_request.py +10 -9
  205. wandelbots_api_client/models/plan_collision_free_ptp_request_target.py +1 -1
  206. wandelbots_api_client/models/plan_failed_on_trajectory_response.py +10 -10
  207. wandelbots_api_client/models/plan_failed_response.py +8 -8
  208. wandelbots_api_client/models/plan_request.py +6 -6
  209. wandelbots_api_client/models/plan_response.py +4 -4
  210. wandelbots_api_client/models/plan_successful_response.py +3 -3
  211. wandelbots_api_client/models/plan_trajectory_failed_response.py +4 -4
  212. wandelbots_api_client/models/plan_trajectory_failed_response_error_feedback.py +1 -1
  213. wandelbots_api_client/models/plan_trajectory_request.py +10 -9
  214. wandelbots_api_client/models/plan_trajectory_response.py +2 -2
  215. wandelbots_api_client/models/plan_trajectory_response_response.py +1 -1
  216. wandelbots_api_client/models/plane2.py +2 -2
  217. wandelbots_api_client/models/plane3.py +2 -2
  218. wandelbots_api_client/models/planned_motion.py +6 -6
  219. wandelbots_api_client/models/planner_pose.py +3 -3
  220. wandelbots_api_client/models/planning_limits.py +13 -13
  221. wandelbots_api_client/models/planning_limits_limit_range.py +3 -3
  222. wandelbots_api_client/models/playback_speed_request.py +3 -3
  223. wandelbots_api_client/models/playback_speed_response.py +2 -2
  224. wandelbots_api_client/models/playback_speed_response_playback_speed_response.py +2 -2
  225. wandelbots_api_client/models/point_cloud.py +2 -2
  226. wandelbots_api_client/models/pose.py +4 -4
  227. wandelbots_api_client/models/pose2.py +3 -3
  228. wandelbots_api_client/models/program_metadata.py +7 -7
  229. wandelbots_api_client/models/program_run.py +15 -14
  230. wandelbots_api_client/models/program_run_object.py +7 -7
  231. wandelbots_api_client/models/program_run_state.py +1 -1
  232. wandelbots_api_client/models/program_runner_reference.py +3 -3
  233. wandelbots_api_client/models/pyjectory_datatypes_core_pose.py +3 -3
  234. wandelbots_api_client/models/pyjectory_datatypes_serializer_orientation.py +2 -2
  235. wandelbots_api_client/models/pyjectory_datatypes_serializer_pose.py +2 -2
  236. wandelbots_api_client/models/pyjectory_datatypes_serializer_position.py +2 -2
  237. wandelbots_api_client/models/pyriphery_etcd_etcd_configuration.py +5 -5
  238. wandelbots_api_client/models/pyriphery_hardware_isaac_isaac_configuration.py +5 -5
  239. wandelbots_api_client/models/pyriphery_opcua_opcua_configuration.py +4 -4
  240. wandelbots_api_client/models/pyriphery_pyrae_controller_controller_configuration.py +7 -7
  241. wandelbots_api_client/models/pyriphery_pyrae_robot_robot_configuration.py +8 -8
  242. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_input.py +13 -11
  243. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +13 -11
  244. wandelbots_api_client/models/pyriphery_robotics_robotcell_timer_configuration.py +3 -3
  245. wandelbots_api_client/models/pyriphery_robotics_simulation_robot_with_view_open3d_configuration.py +4 -4
  246. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_io_configuration.py +3 -3
  247. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_opcua_configuration.py +3 -3
  248. wandelbots_api_client/models/quaternion.py +5 -5
  249. wandelbots_api_client/models/recipe_metadata.py +8 -8
  250. wandelbots_api_client/models/rectangle.py +3 -3
  251. wandelbots_api_client/models/rectangle2.py +4 -4
  252. wandelbots_api_client/models/rectangle3.py +4 -4
  253. wandelbots_api_client/models/rectangular_capsule.py +4 -4
  254. wandelbots_api_client/models/rectangular_capsule2.py +5 -5
  255. wandelbots_api_client/models/rectangular_capsule3.py +5 -5
  256. wandelbots_api_client/models/release_channel.py +1 -1
  257. wandelbots_api_client/models/request.py +1 -1
  258. wandelbots_api_client/models/request1.py +1 -1
  259. wandelbots_api_client/models/response_get_value_programs_values_key_get.py +1 -1
  260. wandelbots_api_client/models/response_get_values_programs_values_get_value.py +1 -1
  261. wandelbots_api_client/models/robot_controller.py +3 -3
  262. wandelbots_api_client/models/robot_controller_configuration.py +1 -1
  263. wandelbots_api_client/models/robot_controller_state.py +8 -8
  264. wandelbots_api_client/models/robot_link_geometry.py +3 -3
  265. wandelbots_api_client/models/robot_state.py +3 -3
  266. wandelbots_api_client/models/robot_system_mode.py +1 -1
  267. wandelbots_api_client/models/robot_tcp.py +5 -5
  268. wandelbots_api_client/models/robot_tcps.py +2 -2
  269. wandelbots_api_client/models/rotation_angle_types.py +1 -1
  270. wandelbots_api_client/models/rotation_angles.py +3 -3
  271. wandelbots_api_client/models/safety_configuration.py +6 -6
  272. wandelbots_api_client/models/safety_setup.py +5 -5
  273. wandelbots_api_client/models/safety_setup_safety_settings.py +3 -3
  274. wandelbots_api_client/models/safety_setup_safety_zone.py +5 -5
  275. wandelbots_api_client/models/safety_zone.py +4 -4
  276. wandelbots_api_client/models/safety_zone_limits.py +3 -3
  277. wandelbots_api_client/models/safety_zone_violation.py +2 -2
  278. wandelbots_api_client/models/service_status.py +3 -3
  279. wandelbots_api_client/models/service_status_phase.py +1 -1
  280. wandelbots_api_client/models/service_status_severity.py +1 -1
  281. wandelbots_api_client/models/service_status_status.py +4 -4
  282. wandelbots_api_client/models/set_io.py +3 -3
  283. wandelbots_api_client/models/set_playback_speed.py +3 -3
  284. wandelbots_api_client/models/single_joint_limit.py +3 -3
  285. wandelbots_api_client/models/singularity.py +3 -3
  286. wandelbots_api_client/models/singularity_type_enum.py +1 -1
  287. wandelbots_api_client/models/sphere.py +2 -2
  288. wandelbots_api_client/models/sphere2.py +3 -3
  289. wandelbots_api_client/models/sphere3.py +3 -3
  290. wandelbots_api_client/models/standstill.py +2 -2
  291. wandelbots_api_client/models/standstill_reason.py +1 -1
  292. wandelbots_api_client/models/standstill_standstill.py +4 -4
  293. wandelbots_api_client/models/start_movement_request.py +6 -6
  294. wandelbots_api_client/models/start_on_io.py +3 -3
  295. wandelbots_api_client/models/status.py +4 -4
  296. wandelbots_api_client/models/stop_response.py +4 -4
  297. wandelbots_api_client/models/store_value.py +1 -1
  298. wandelbots_api_client/models/stream_move_backward.py +2 -2
  299. wandelbots_api_client/models/stream_move_forward.py +2 -2
  300. wandelbots_api_client/models/stream_move_playback_speed.py +2 -2
  301. wandelbots_api_client/models/stream_move_request.py +1 -1
  302. wandelbots_api_client/models/stream_move_response.py +4 -4
  303. wandelbots_api_client/models/stream_move_to_trajectory.py +2 -2
  304. wandelbots_api_client/models/stream_stop.py +2 -2
  305. wandelbots_api_client/models/tcp_pose.py +5 -5
  306. wandelbots_api_client/models/tcp_pose_request.py +5 -5
  307. wandelbots_api_client/models/tool_geometry.py +3 -3
  308. wandelbots_api_client/models/trajectory_sample.py +12 -12
  309. wandelbots_api_client/models/trigger_object.py +11 -11
  310. wandelbots_api_client/models/trigger_type.py +1 -1
  311. wandelbots_api_client/models/universalrobots_controller.py +3 -3
  312. wandelbots_api_client/models/update_nova_version_request.py +2 -2
  313. wandelbots_api_client/models/update_program_metadata_request.py +4 -4
  314. wandelbots_api_client/models/update_recipe_metadata_request.py +4 -4
  315. wandelbots_api_client/models/update_trigger_request.py +6 -6
  316. wandelbots_api_client/models/validation_error.py +4 -4
  317. wandelbots_api_client/models/validation_error2.py +4 -4
  318. wandelbots_api_client/models/validation_error2_loc_inner.py +1 -1
  319. wandelbots_api_client/models/validation_error_loc_inner.py +1 -1
  320. wandelbots_api_client/models/value.py +1 -1
  321. wandelbots_api_client/models/vector3d.py +4 -4
  322. wandelbots_api_client/models/version_number.py +9 -9
  323. wandelbots_api_client/models/virtual_controller.py +7 -7
  324. wandelbots_api_client/models/virtual_controller_types.py +17 -2
  325. wandelbots_api_client/models/virtual_robot_configuration.py +3 -3
  326. wandelbots_api_client/models/yaskawa_controller.py +3 -3
  327. wandelbots_api_client/rest.py +3 -2
  328. wandelbots_api_client/v2/__init__.py +3 -4
  329. wandelbots_api_client/v2/api/__init__.py +16 -16
  330. wandelbots_api_client/v2/api/application_api.py +11 -12
  331. wandelbots_api_client/v2/api/bus_inputs_outputs_api.py +4555 -0
  332. wandelbots_api_client/v2/api/cell_api.py +8 -9
  333. wandelbots_api_client/v2/api/controller_api.py +206 -202
  334. wandelbots_api_client/v2/api/controller_inputs_outputs_api.py +45 -44
  335. wandelbots_api_client/v2/api/jogging_api.py +33 -11
  336. wandelbots_api_client/v2/api/kinematics_api.py +636 -0
  337. wandelbots_api_client/v2/api/license_api.py +8 -9
  338. wandelbots_api_client/v2/api/motion_group_api.py +61 -31
  339. wandelbots_api_client/v2/api/motion_group_models_api.py +557 -0
  340. wandelbots_api_client/v2/api/program_api.py +167 -1308
  341. wandelbots_api_client/v2/api/store_collision_components_api.py +823 -50
  342. wandelbots_api_client/v2/api/store_collision_setups_api.py +1404 -0
  343. wandelbots_api_client/v2/api/store_object_api.py +11 -12
  344. wandelbots_api_client/v2/api/system_api.py +282 -18
  345. wandelbots_api_client/v2/api/trajectory_caching_api.py +94 -20
  346. wandelbots_api_client/v2/api/trajectory_execution_api.py +33 -11
  347. wandelbots_api_client/v2/api/trajectory_planning_api.py +68 -323
  348. wandelbots_api_client/v2/api/{inverse_kinematics_api.py → version_api.py} +24 -81
  349. wandelbots_api_client/v2/api/virtual_controller_api.py +4565 -0
  350. wandelbots_api_client/v2/api/virtual_controller_behavior_api.py +982 -0
  351. wandelbots_api_client/v2/api/virtual_controller_inputs_outputs_api.py +1003 -0
  352. wandelbots_api_client/v2/api_client.py +15 -8
  353. wandelbots_api_client/v2/configuration.py +19 -8
  354. wandelbots_api_client/v2/exceptions.py +2 -2
  355. wandelbots_api_client/v2/models/__init__.py +210 -159
  356. wandelbots_api_client/v2/models/abb_controller.py +8 -11
  357. wandelbots_api_client/v2/models/abb_controller_egm_server.py +4 -4
  358. wandelbots_api_client/v2/models/activate_license_request.py +3 -3
  359. wandelbots_api_client/v2/models/add_trajectory_error.py +5 -5
  360. wandelbots_api_client/v2/models/add_trajectory_error_data.py +66 -66
  361. wandelbots_api_client/v2/models/add_trajectory_request.py +5 -5
  362. wandelbots_api_client/v2/models/add_trajectory_response.py +4 -4
  363. wandelbots_api_client/v2/models/{jogging_error_response_error.py → api_version.py} +9 -9
  364. wandelbots_api_client/v2/models/app.py +19 -11
  365. wandelbots_api_client/v2/models/behavior.py +3 -3
  366. wandelbots_api_client/v2/models/blending_auto.py +6 -5
  367. wandelbots_api_client/v2/models/blending_position.py +4 -4
  368. wandelbots_api_client/v2/models/boolean_value.py +7 -10
  369. wandelbots_api_client/v2/models/box.py +7 -7
  370. wandelbots_api_client/v2/models/{program_run_object.py → bus_io_description.py} +31 -20
  371. wandelbots_api_client/v2/models/{jogging_error_response.py → bus_io_modbus_client.py} +23 -14
  372. wandelbots_api_client/v2/models/bus_io_modbus_server.py +115 -0
  373. wandelbots_api_client/v2/models/bus_io_modbus_tcp_client.py +106 -0
  374. wandelbots_api_client/v2/models/bus_io_modbus_tcp_server.py +104 -0
  375. wandelbots_api_client/v2/models/{movement_error_error.py → bus_io_modbus_virtual.py} +17 -10
  376. wandelbots_api_client/v2/models/bus_io_profinet.py +114 -0
  377. wandelbots_api_client/v2/models/{motion_group_behavior_getter.py → bus_io_profinet_default_route.py} +12 -11
  378. wandelbots_api_client/v2/models/bus_io_profinet_ip_config.py +95 -0
  379. wandelbots_api_client/v2/models/{update_trigger_request.py → bus_io_profinet_network.py} +18 -18
  380. wandelbots_api_client/v2/models/bus_io_profinet_virtual.py +98 -0
  381. wandelbots_api_client/v2/models/bus_io_type.py +212 -0
  382. wandelbots_api_client/v2/models/{create_trigger200_response.py → bus_ios_state.py} +12 -9
  383. wandelbots_api_client/v2/models/bus_ios_state_enum.py +39 -0
  384. wandelbots_api_client/v2/models/capsule.py +5 -5
  385. wandelbots_api_client/v2/models/{robot_state.py → cartesian_limits.py} +15 -15
  386. wandelbots_api_client/v2/models/cell.py +7 -7
  387. wandelbots_api_client/v2/models/collider.py +5 -5
  388. wandelbots_api_client/v2/models/collider_shape.py +2 -42
  389. wandelbots_api_client/v2/models/collision.py +11 -11
  390. wandelbots_api_client/v2/models/collision_contact.py +6 -6
  391. wandelbots_api_client/v2/models/{collision2.py → collision_error.py} +7 -7
  392. wandelbots_api_client/v2/models/collision_free_algorithm.py +155 -0
  393. wandelbots_api_client/v2/models/{collision_motion_group_assembly.py → collision_setup.py} +32 -18
  394. wandelbots_api_client/v2/models/comparator.py +2 -2
  395. wandelbots_api_client/v2/models/configuration_archive_status.py +174 -0
  396. wandelbots_api_client/v2/models/{joints.py → configuration_archive_status_creating.py} +20 -10
  397. wandelbots_api_client/v2/models/configuration_archive_status_error.py +100 -0
  398. wandelbots_api_client/v2/models/configuration_archive_status_success.py +98 -0
  399. wandelbots_api_client/v2/models/configuration_resource.py +5 -5
  400. wandelbots_api_client/v2/models/container_environment_inner.py +4 -4
  401. wandelbots_api_client/v2/models/container_image.py +5 -5
  402. wandelbots_api_client/v2/models/container_image_secrets_inner.py +3 -3
  403. wandelbots_api_client/v2/models/{create_program_operator_run200_response.py → container_resources.py} +12 -9
  404. wandelbots_api_client/v2/models/container_storage.py +4 -4
  405. wandelbots_api_client/v2/models/{create_trigger_request.py → controller_description.py} +16 -21
  406. wandelbots_api_client/v2/models/convex_hull.py +4 -4
  407. wandelbots_api_client/v2/models/coordinate_system.py +11 -11
  408. wandelbots_api_client/v2/models/coordinate_system_data.py +101 -0
  409. wandelbots_api_client/v2/models/cubic_spline_parameter.py +4 -4
  410. wandelbots_api_client/v2/models/cycle_time.py +5 -4
  411. wandelbots_api_client/v2/models/cylinder.py +5 -5
  412. wandelbots_api_client/v2/models/dh_parameter.py +7 -7
  413. wandelbots_api_client/v2/models/direction.py +2 -2
  414. wandelbots_api_client/v2/models/error.py +4 -4
  415. wandelbots_api_client/v2/models/{jogging_paused_collision.py → error_invalid_joint_count.py} +21 -14
  416. wandelbots_api_client/v2/models/error_joint_limit_exceeded.py +103 -0
  417. wandelbots_api_client/v2/models/{coordinate_systems.py → error_joint_position_collision.py} +30 -19
  418. wandelbots_api_client/v2/models/error_max_iterations_exceeded.py +100 -0
  419. wandelbots_api_client/v2/models/execute.py +97 -0
  420. wandelbots_api_client/v2/models/{set_io_values_request_inner.py → execute_details.py} +47 -43
  421. wandelbots_api_client/v2/models/execute_jogging_request.py +52 -10
  422. wandelbots_api_client/v2/models/execute_jogging_response.py +87 -26
  423. wandelbots_api_client/v2/models/execute_trajectory_request.py +30 -2
  424. wandelbots_api_client/v2/models/execute_trajectory_response.py +61 -42
  425. wandelbots_api_client/v2/models/external_joint_stream_datapoint.py +6 -6
  426. wandelbots_api_client/v2/models/{robot_tcps.py → external_joint_stream_request.py} +17 -17
  427. wandelbots_api_client/v2/models/fanuc_controller.py +6 -9
  428. wandelbots_api_client/v2/models/feedback_collision.py +6 -6
  429. wandelbots_api_client/v2/models/feedback_joint_limit_exceeded.py +7 -6
  430. wandelbots_api_client/v2/models/feedback_out_of_workspace.py +4 -4
  431. wandelbots_api_client/v2/models/feedback_singularity.py +5 -5
  432. wandelbots_api_client/v2/models/flag.py +3 -3
  433. wandelbots_api_client/v2/models/float_value.py +8 -11
  434. wandelbots_api_client/v2/models/{get_all_triggers200_response.py → forward_kinematics422_response.py} +17 -17
  435. wandelbots_api_client/v2/models/forward_kinematics_request.py +104 -0
  436. wandelbots_api_client/v2/models/{controllers_list.py → forward_kinematics_response.py} +18 -18
  437. wandelbots_api_client/v2/models/{list_coordinate_systems_response.py → forward_kinematics_validation_error.py} +30 -18
  438. wandelbots_api_client/v2/models/get_trajectory_response.py +5 -5
  439. wandelbots_api_client/v2/models/http_validation_error.py +5 -5
  440. wandelbots_api_client/v2/models/image_credentials.py +5 -5
  441. wandelbots_api_client/v2/models/{inconsitent_trajectory_size.py → inconsistent_trajectory_size_error.py} +9 -9
  442. wandelbots_api_client/v2/models/{inconsitent_trajectory_size_inconsistent_trajectory_size.py → inconsistent_trajectory_size_error_inconsistent_trajectory_size.py} +9 -9
  443. wandelbots_api_client/v2/models/initialize_jogging_request.py +9 -16
  444. wandelbots_api_client/v2/models/initialize_jogging_response.py +17 -12
  445. wandelbots_api_client/v2/models/initialize_movement_request.py +7 -12
  446. wandelbots_api_client/v2/models/initialize_movement_request_trajectory.py +2 -2
  447. wandelbots_api_client/v2/models/initialize_movement_response.py +22 -11
  448. wandelbots_api_client/v2/models/integer_value.py +8 -11
  449. wandelbots_api_client/v2/models/{invalid_dof.py → invalid_dof_error.py} +9 -9
  450. wandelbots_api_client/v2/models/{invalid_dof_invalid_dof.py → invalid_dof_error_invalid_dof.py} +8 -8
  451. wandelbots_api_client/v2/models/{motion_group_infos.py → inverse_kinematics422_response.py} +18 -18
  452. wandelbots_api_client/v2/models/inverse_kinematics_request.py +51 -31
  453. wandelbots_api_client/v2/models/inverse_kinematics_response.py +3 -3
  454. wandelbots_api_client/v2/models/inverse_kinematics_validation_error.py +120 -0
  455. wandelbots_api_client/v2/models/inverse_kinematics_validation_error_all_of_data.py +155 -0
  456. wandelbots_api_client/v2/models/io_boolean_value.py +8 -11
  457. wandelbots_api_client/v2/models/{io_description_min.py → io_boundary.py} +10 -25
  458. wandelbots_api_client/v2/models/io_description.py +15 -15
  459. wandelbots_api_client/v2/models/io_direction.py +2 -2
  460. wandelbots_api_client/v2/models/io_float_value.py +9 -12
  461. wandelbots_api_client/v2/models/io_integer_value.py +9 -12
  462. wandelbots_api_client/v2/models/{trigger_type.py → io_origin.py} +7 -6
  463. wandelbots_api_client/v2/models/{set_output_values_request_inner.py → io_value.py} +10 -25
  464. wandelbots_api_client/v2/models/io_value_type.py +2 -2
  465. wandelbots_api_client/v2/models/{movement_movement.py → jogging_details.py} +21 -16
  466. wandelbots_api_client/v2/models/{jogging_state.py → jogging_details_state.py} +76 -43
  467. wandelbots_api_client/v2/models/{program_run_reference.py → jogging_paused_by_user.py} +17 -13
  468. wandelbots_api_client/v2/models/{jogging_paused_collision_paused_near_collision.py → jogging_paused_near_collision.py} +19 -10
  469. wandelbots_api_client/v2/models/{jogging_paused_joint_limit_paused_near_joint_limit.py → jogging_paused_near_joint_limit.py} +20 -10
  470. wandelbots_api_client/v2/models/jogging_paused_on_io.py +14 -7
  471. wandelbots_api_client/v2/models/jogging_running.py +14 -7
  472. wandelbots_api_client/v2/models/{joint_limit_exceeded.py → joint_limit_exceeded_error.py} +7 -7
  473. wandelbots_api_client/v2/models/joint_limits.py +101 -0
  474. wandelbots_api_client/v2/models/joint_trajectory.py +6 -23
  475. wandelbots_api_client/v2/models/joint_velocity_request.py +7 -14
  476. wandelbots_api_client/v2/models/joint_velocity_response.py +100 -0
  477. wandelbots_api_client/v2/models/kuka_controller.py +12 -13
  478. wandelbots_api_client/v2/models/kuka_controller_rsi_server.py +4 -4
  479. wandelbots_api_client/v2/models/license.py +12 -12
  480. wandelbots_api_client/v2/models/license_status.py +4 -4
  481. wandelbots_api_client/v2/models/license_status_enum.py +2 -2
  482. wandelbots_api_client/v2/models/{planning_limits_limit_range.py → limit_range.py} +8 -8
  483. wandelbots_api_client/v2/models/limit_set.py +129 -0
  484. wandelbots_api_client/v2/models/limits_override.py +8 -8
  485. wandelbots_api_client/v2/models/list_trajectories_response.py +3 -3
  486. wandelbots_api_client/v2/models/manufacturer.py +2 -2
  487. wandelbots_api_client/v2/models/midpoint_insertion_algorithm.py +101 -0
  488. wandelbots_api_client/v2/models/modbus_io.py +105 -0
  489. wandelbots_api_client/v2/models/modbus_io_area.py +40 -0
  490. wandelbots_api_client/v2/models/modbus_io_byte_order.py +40 -0
  491. wandelbots_api_client/v2/models/modbus_io_data.py +103 -0
  492. wandelbots_api_client/v2/models/modbus_io_type_enum.py +39 -0
  493. wandelbots_api_client/v2/models/motion_command.py +5 -5
  494. wandelbots_api_client/v2/models/motion_command_blending.py +2 -2
  495. wandelbots_api_client/v2/models/motion_command_path.py +2 -2
  496. wandelbots_api_client/v2/models/{planning_parameters.py → motion_group_description.py} +40 -35
  497. wandelbots_api_client/v2/models/motion_group_info.py +7 -6
  498. wandelbots_api_client/v2/models/motion_group_joints.py +6 -6
  499. wandelbots_api_client/v2/models/{robot_setup.py → motion_group_setup.py} +33 -35
  500. wandelbots_api_client/v2/models/motion_group_state.py +32 -44
  501. wandelbots_api_client/v2/models/motion_group_state_joint_limit_reached.py +3 -3
  502. wandelbots_api_client/v2/models/movement_error_response.py +100 -0
  503. wandelbots_api_client/v2/models/{nan_value.py → nan_value_error.py} +9 -9
  504. wandelbots_api_client/v2/models/{nan_value_nan_value.py → nan_value_error_nan_value.py} +6 -6
  505. wandelbots_api_client/v2/models/op_mode.py +3 -3
  506. wandelbots_api_client/v2/models/operating_state.py +2 -2
  507. wandelbots_api_client/v2/models/operation_limits.py +110 -0
  508. wandelbots_api_client/v2/models/operation_mode.py +2 -2
  509. wandelbots_api_client/v2/models/orientation_type.py +2 -2
  510. wandelbots_api_client/v2/models/path_cartesian_ptp.py +4 -4
  511. wandelbots_api_client/v2/models/path_circle.py +5 -5
  512. wandelbots_api_client/v2/models/path_cubic_spline.py +4 -4
  513. wandelbots_api_client/v2/models/path_joint_ptp.py +4 -4
  514. wandelbots_api_client/v2/models/path_line.py +4 -4
  515. wandelbots_api_client/v2/models/pause_jogging_request.py +98 -0
  516. wandelbots_api_client/v2/models/{initialize_jogging_response_init_response.py → pause_jogging_response.py} +19 -12
  517. wandelbots_api_client/v2/models/pause_movement_request.py +7 -12
  518. wandelbots_api_client/v2/models/pause_movement_response.py +17 -12
  519. wandelbots_api_client/v2/models/pause_on_io.py +11 -8
  520. wandelbots_api_client/v2/models/payload.py +6 -6
  521. wandelbots_api_client/v2/models/{http_validation_error2.py → plan422_response.py} +9 -9
  522. wandelbots_api_client/v2/models/{movement.py → plan_collision_free_failed_response.py} +13 -13
  523. wandelbots_api_client/v2/models/{jogging_response_jogging.py → plan_collision_free_request.py} +25 -21
  524. wandelbots_api_client/v2/models/{standstill.py → plan_collision_free_response.py} +13 -13
  525. wandelbots_api_client/{models/create_trigger_request_config.py → v2/models/plan_collision_free_response_response.py} +34 -20
  526. wandelbots_api_client/v2/models/plan_trajectory_failed_response.py +5 -5
  527. wandelbots_api_client/v2/models/plan_trajectory_failed_response_error_feedback.py +2 -2
  528. wandelbots_api_client/v2/models/plan_trajectory_request.py +11 -11
  529. wandelbots_api_client/v2/models/plan_trajectory_response.py +3 -3
  530. wandelbots_api_client/v2/models/plan_trajectory_response_response.py +2 -2
  531. wandelbots_api_client/v2/models/{get_all_program_operator_runs200_response.py → plan_validation_error.py} +30 -18
  532. wandelbots_api_client/v2/models/plan_validation_error_all_of_data.py +174 -0
  533. wandelbots_api_client/v2/models/plane.py +3 -3
  534. wandelbots_api_client/v2/models/playback_speed_request.py +7 -9
  535. wandelbots_api_client/v2/models/playback_speed_response.py +17 -12
  536. wandelbots_api_client/v2/models/pose.py +4 -4
  537. wandelbots_api_client/v2/models/profinet_description.py +120 -0
  538. wandelbots_api_client/v2/models/{opcua_node_value_trigger_config.py → profinet_input_output_config.py} +14 -17
  539. wandelbots_api_client/v2/models/profinet_io.py +104 -0
  540. wandelbots_api_client/v2/models/{program_request.py → profinet_io_data.py} +20 -39
  541. wandelbots_api_client/v2/models/profinet_io_direction.py +38 -0
  542. wandelbots_api_client/v2/models/profinet_io_type_enum.py +45 -0
  543. wandelbots_api_client/v2/models/{list_io_descriptions_response.py → profinet_slot_description.py} +23 -18
  544. wandelbots_api_client/v2/models/profinet_sub_slot_description.py +96 -0
  545. wandelbots_api_client/v2/models/program.py +109 -0
  546. wandelbots_api_client/v2/models/program_run.py +23 -35
  547. wandelbots_api_client/v2/models/program_run_state.py +8 -8
  548. wandelbots_api_client/v2/models/{jogging_paused_user_request.py → program_start_request.py} +10 -10
  549. wandelbots_api_client/v2/models/rectangle.py +5 -5
  550. wandelbots_api_client/v2/models/rectangular_capsule.py +6 -6
  551. wandelbots_api_client/v2/models/release_channel.py +2 -2
  552. wandelbots_api_client/v2/models/robot_controller.py +4 -4
  553. wandelbots_api_client/v2/models/robot_controller_configuration.py +2 -2
  554. wandelbots_api_client/v2/models/robot_controller_state.py +17 -11
  555. wandelbots_api_client/v2/models/robot_system_mode.py +8 -8
  556. wandelbots_api_client/v2/models/robot_tcp.py +10 -10
  557. wandelbots_api_client/v2/models/{motion_vector.py → robot_tcp_data.py} +16 -13
  558. wandelbots_api_client/v2/models/rrt_connect_algorithm.py +109 -0
  559. wandelbots_api_client/v2/models/safety_state_type.py +2 -2
  560. wandelbots_api_client/v2/models/service_group.py +2 -2
  561. wandelbots_api_client/v2/models/service_status.py +5 -5
  562. wandelbots_api_client/v2/models/service_status_phase.py +2 -2
  563. wandelbots_api_client/v2/models/service_status_response.py +4 -4
  564. wandelbots_api_client/v2/models/service_status_severity.py +2 -2
  565. wandelbots_api_client/v2/models/service_status_status.py +5 -5
  566. wandelbots_api_client/v2/models/{standstill_standstill.py → set_io.py} +17 -17
  567. wandelbots_api_client/v2/models/settable_robot_system_mode.py +2 -2
  568. wandelbots_api_client/v2/models/singularity_type_enum.py +2 -2
  569. wandelbots_api_client/v2/models/sphere.py +4 -4
  570. wandelbots_api_client/v2/models/start_movement_request.py +14 -15
  571. wandelbots_api_client/v2/models/start_movement_response.py +100 -0
  572. wandelbots_api_client/v2/models/start_on_io.py +11 -8
  573. wandelbots_api_client/v2/models/{list_io_values_response.py → stream_io_values_response.py} +17 -11
  574. wandelbots_api_client/v2/models/tcp_offset.py +4 -4
  575. wandelbots_api_client/v2/models/{tcp_required.py → tcp_required_error.py} +6 -6
  576. wandelbots_api_client/v2/models/tcp_velocity_request.py +6 -9
  577. wandelbots_api_client/v2/models/tcp_velocity_response.py +100 -0
  578. wandelbots_api_client/v2/models/{torque_exceeded.py → torque_exceeded_error.py} +9 -9
  579. wandelbots_api_client/v2/models/{torque_exceeded_torque_exceeded.py → torque_exceeded_error_torque_exceeded.py} +8 -8
  580. wandelbots_api_client/v2/models/trajectory_data.py +6 -6
  581. wandelbots_api_client/v2/models/trajectory_details.py +108 -0
  582. wandelbots_api_client/v2/models/trajectory_details_state.py +212 -0
  583. wandelbots_api_client/v2/models/trajectory_ended.py +98 -0
  584. wandelbots_api_client/v2/models/trajectory_id.py +4 -4
  585. wandelbots_api_client/v2/models/{get_mode_response.py → trajectory_paused_by_user.py} +17 -11
  586. wandelbots_api_client/v2/models/trajectory_paused_on_io.py +98 -0
  587. wandelbots_api_client/v2/models/trajectory_running.py +101 -0
  588. wandelbots_api_client/v2/models/{create_program_operator_run_request.py → trajectory_wait_for_io.py} +17 -10
  589. wandelbots_api_client/v2/models/unit_type.py +3 -3
  590. wandelbots_api_client/v2/models/universalrobots_controller.py +6 -9
  591. wandelbots_api_client/v2/models/update_nova_version_request.py +3 -3
  592. wandelbots_api_client/v2/models/validation_error.py +9 -7
  593. wandelbots_api_client/v2/models/validation_error2.py +6 -6
  594. wandelbots_api_client/v2/models/validation_error_loc_inner.py +2 -2
  595. wandelbots_api_client/v2/models/virtual_controller.py +11 -14
  596. wandelbots_api_client/v2/models/virtual_controller_types.py +18 -3
  597. wandelbots_api_client/v2/models/virtual_robot_configuration.py +4 -4
  598. wandelbots_api_client/v2/models/wait_for_io_event_request.py +6 -6
  599. wandelbots_api_client/v2/models/yaskawa_controller.py +6 -9
  600. wandelbots_api_client/v2/rest.py +4 -3
  601. wandelbots_api_client/v2_pydantic/__init__.py +50 -0
  602. wandelbots_api_client/v2_pydantic/api/__init__.py +51 -0
  603. wandelbots_api_client/{v2/api/virtual_robot_api.py → v2_pydantic/api/application_api.py} +327 -426
  604. wandelbots_api_client/v2_pydantic/api/bus_inputs_outputs_api.py +4603 -0
  605. wandelbots_api_client/{v2/api/virtual_robot_setup_api.py → v2_pydantic/api/cell_api.py} +291 -771
  606. wandelbots_api_client/v2_pydantic/api/controller_api.py +3721 -0
  607. wandelbots_api_client/v2_pydantic/api/controller_inputs_outputs_api.py +1395 -0
  608. wandelbots_api_client/v2_pydantic/api/jogging_api.py +125 -0
  609. wandelbots_api_client/v2_pydantic/api/kinematics_api.py +642 -0
  610. wandelbots_api_client/{v2/api/store_collision_scenes_api.py → v2_pydantic/api/license_api.py} +158 -248
  611. wandelbots_api_client/{v2/api/virtual_robot_behavior_api.py → v2_pydantic/api/motion_group_api.py} +156 -131
  612. wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +563 -0
  613. wandelbots_api_client/{v2/api/store_program_api.py → v2_pydantic/api/program_api.py} +191 -181
  614. wandelbots_api_client/v2_pydantic/api/store_collision_components_api.py +4170 -0
  615. wandelbots_api_client/v2_pydantic/api/store_collision_setups_api.py +1419 -0
  616. wandelbots_api_client/v2_pydantic/api/store_object_api.py +1719 -0
  617. wandelbots_api_client/{v2/api/program_operator_api.py → v2_pydantic/api/system_api.py} +625 -476
  618. wandelbots_api_client/{v2/api/virtual_robot_mode_api.py → v2_pydantic/api/trajectory_caching_api.py} +208 -162
  619. wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +125 -0
  620. wandelbots_api_client/v2_pydantic/api/trajectory_planning_api.py +642 -0
  621. wandelbots_api_client/v2_pydantic/api/version_api.py +287 -0
  622. wandelbots_api_client/v2_pydantic/api/virtual_controller_api.py +4610 -0
  623. wandelbots_api_client/v2_pydantic/api/virtual_controller_behavior_api.py +991 -0
  624. wandelbots_api_client/v2_pydantic/api/virtual_controller_inputs_outputs_api.py +1012 -0
  625. wandelbots_api_client/v2_pydantic/api_client.py +809 -0
  626. wandelbots_api_client/v2_pydantic/api_response.py +21 -0
  627. wandelbots_api_client/v2_pydantic/configuration.py +606 -0
  628. wandelbots_api_client/v2_pydantic/exceptions.py +216 -0
  629. wandelbots_api_client/v2_pydantic/models.py +4561 -0
  630. wandelbots_api_client/v2_pydantic/py.typed +0 -0
  631. wandelbots_api_client/v2_pydantic/rest.py +213 -0
  632. wandelbots_api_client-25.10.0rc2.dist-info/METADATA +62 -0
  633. wandelbots_api_client-25.10.0rc2.dist-info/RECORD +640 -0
  634. {wandelbots_api_client-25.6.0.dev7.dist-info → wandelbots_api_client-25.10.0rc2.dist-info}/WHEEL +2 -1
  635. wandelbots_api_client-25.10.0rc2.dist-info/top_level.txt +1 -0
  636. wandelbots_api_client/v2/models/collision_motion_group.py +0 -121
  637. wandelbots_api_client/v2/models/collision_scene.py +0 -119
  638. wandelbots_api_client/v2/models/collision_scene_assembly.py +0 -129
  639. wandelbots_api_client/v2/models/controller.py +0 -132
  640. wandelbots_api_client/v2/models/external_joint_stream_datapoint_value.py +0 -97
  641. wandelbots_api_client/v2/models/initialize_movement_response_init_response.py +0 -93
  642. wandelbots_api_client/v2/models/jogging_paused_joint_limit.py +0 -95
  643. wandelbots_api_client/v2/models/jogging_response.py +0 -95
  644. wandelbots_api_client/v2/models/motion_group_instance.py +0 -101
  645. wandelbots_api_client/v2/models/motion_group_state_without_payload.py +0 -146
  646. wandelbots_api_client/v2/models/movement_error.py +0 -95
  647. wandelbots_api_client/v2/models/opcua_node_value_trigger_config_node_value.py +0 -160
  648. wandelbots_api_client/v2/models/pause_movement_response_pause_response.py +0 -93
  649. wandelbots_api_client/v2/models/planning_limits.py +0 -130
  650. wandelbots_api_client/v2/models/playback_speed_response_playback_speed_response.py +0 -91
  651. wandelbots_api_client/v2/models/program_run_result.py +0 -108
  652. wandelbots_api_client/v2/models/single_motion_group_collision_scene.py +0 -135
  653. wandelbots_api_client/v2/models/standstill_reason.py +0 -39
  654. wandelbots_api_client/v2/models/trigger_object.py +0 -111
  655. wandelbots_api_client/v2/models/version_number.py +0 -105
  656. wandelbots_api_client-25.6.0.dev7.dist-info/METADATA +0 -63
  657. wandelbots_api_client-25.6.0.dev7.dist-info/RECORD +0 -580
  658. {wandelbots_api_client-25.6.0.dev7.dist-info → wandelbots_api_client-25.10.0rc2.dist-info/licenses}/LICENSE +0 -0
@@ -0,0 +1,4555 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Wandelbots NOVA API
5
+
6
+ Interact with robots in an easy and intuitive way.
7
+
8
+ The version of the OpenAPI document: 2.1.0 dev
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ from furl import furl
15
+ import json
16
+ import humps
17
+ import re
18
+ import warnings
19
+ import websockets
20
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
21
+ from typing import Any, AsyncGenerator, Callable, Dict, List, Optional, Tuple, Union
22
+ from typing_extensions import Annotated
23
+ from urllib.parse import quote
24
+
25
+ from pydantic import Field, StrictStr
26
+ from typing import List, Optional
27
+ from typing_extensions import Annotated
28
+ from wandelbots_api_client.v2.models.bus_io_description import BusIODescription
29
+ from wandelbots_api_client.v2.models.bus_io_type import BusIOType
30
+ from wandelbots_api_client.v2.models.bus_ios_state import BusIOsState
31
+ from wandelbots_api_client.v2.models.io_value import IOValue
32
+ from wandelbots_api_client.v2.models.modbus_io import ModbusIO
33
+ from wandelbots_api_client.v2.models.modbus_io_data import ModbusIOData
34
+ from wandelbots_api_client.v2.models.profinet_description import ProfinetDescription
35
+ from wandelbots_api_client.v2.models.profinet_io import ProfinetIO
36
+ from wandelbots_api_client.v2.models.profinet_io_data import ProfinetIOData
37
+ from wandelbots_api_client.v2.models.profinet_input_output_config import ProfinetInputOutputConfig
38
+
39
+ from wandelbots_api_client.v2.api_client import ApiClient, RequestSerialized
40
+ from wandelbots_api_client.v2.api_response import ApiResponse
41
+ from wandelbots_api_client.v2.rest import RESTResponseType
42
+
43
+ class BUSInputsOutputsApi:
44
+ """NOTE: This class is auto generated by OpenAPI Generator
45
+ Ref: https://openapi-generator.tech
46
+
47
+ Do not edit the class manually.
48
+ """
49
+
50
+ def __init__(self, api_client=None) -> None:
51
+ if api_client is None:
52
+ api_client = ApiClient.get_default()
53
+ self.api_client = api_client
54
+
55
+ @validate_call
56
+ async def add_bus_io_service(
57
+ self,
58
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
59
+ bus_io_type: BusIOType,
60
+ completion_timeout: Optional[Annotated[int, Field(strict=True, ge=1)]] = 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
+ ) -> None:
74
+ """Add Service
75
+
76
+ Add the BUS inputs/outputs service to the cell. Starts a containerized service that enables BUS connections via the specified ethernet port.
77
+
78
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
79
+ :type cell: str
80
+ :param bus_io_type: (required)
81
+ :type bus_io_type: BusIOType
82
+ :param completion_timeout:
83
+ :type completion_timeout: int
84
+ :param _request_timeout: timeout setting for this request. If one
85
+ number provided, it will be total request
86
+ timeout. It can also be a pair (tuple) of
87
+ (connection, read) timeouts.
88
+ :type _request_timeout: int, tuple(int, int), optional
89
+ :param _request_auth: set to override the auth_settings for an a single
90
+ request; this effectively ignores the
91
+ authentication in the spec for a single request.
92
+ :type _request_auth: dict, optional
93
+ :param _content_type: force content-type for the request.
94
+ :type _content_type: str, Optional
95
+ :param _headers: set to override the headers for a single
96
+ request; this effectively ignores the headers
97
+ in the spec for a single request.
98
+ :type _headers: dict, optional
99
+ :param _host_index: set to override the host_index for a single
100
+ request; this effectively ignores the host_index
101
+ in the spec for a single request.
102
+ :type _host_index: int, optional
103
+ :return: Returns the result object.
104
+ """ # noqa: E501
105
+
106
+ _param = self._add_bus_io_service_serialize(
107
+ cell=cell,
108
+ bus_io_type=bus_io_type,
109
+ completion_timeout=completion_timeout,
110
+ _request_auth=_request_auth,
111
+ _content_type=_content_type,
112
+ _headers=_headers,
113
+ _host_index=_host_index
114
+ )
115
+
116
+ _response_types_map: Dict[str, Optional[str]] = {
117
+ '200': None,
118
+ '202': None,
119
+ '403': "Error",
120
+ '404': "Error",
121
+ '409': None,
122
+ }
123
+ response_data = await self.api_client.call_api(
124
+ *_param,
125
+ _request_timeout=_request_timeout
126
+ )
127
+ await response_data.read()
128
+ return self.api_client.response_deserialize(
129
+ response_data=response_data,
130
+ response_types_map=_response_types_map,
131
+ ).data
132
+
133
+
134
+ @validate_call
135
+ async def add_bus_io_service_with_http_info(
136
+ self,
137
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
138
+ bus_io_type: BusIOType,
139
+ completion_timeout: Optional[Annotated[int, Field(strict=True, ge=1)]] = None,
140
+ _request_timeout: Union[
141
+ None,
142
+ Annotated[StrictFloat, Field(gt=0)],
143
+ Tuple[
144
+ Annotated[StrictFloat, Field(gt=0)],
145
+ Annotated[StrictFloat, Field(gt=0)]
146
+ ]
147
+ ] = None,
148
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
149
+ _content_type: Optional[StrictStr] = None,
150
+ _headers: Optional[Dict[StrictStr, Any]] = None,
151
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
152
+ ) -> ApiResponse[None]:
153
+ """Add Service
154
+
155
+ Add the BUS inputs/outputs service to the cell. Starts a containerized service that enables BUS connections via the specified ethernet port.
156
+
157
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
158
+ :type cell: str
159
+ :param bus_io_type: (required)
160
+ :type bus_io_type: BusIOType
161
+ :param completion_timeout:
162
+ :type completion_timeout: int
163
+ :param _request_timeout: timeout setting for this request. If one
164
+ number provided, it will be total request
165
+ timeout. It can also be a pair (tuple) of
166
+ (connection, read) timeouts.
167
+ :type _request_timeout: int, tuple(int, int), optional
168
+ :param _request_auth: set to override the auth_settings for an a single
169
+ request; this effectively ignores the
170
+ authentication in the spec for a single request.
171
+ :type _request_auth: dict, optional
172
+ :param _content_type: force content-type for the request.
173
+ :type _content_type: str, Optional
174
+ :param _headers: set to override the headers for a single
175
+ request; this effectively ignores the headers
176
+ in the spec for a single request.
177
+ :type _headers: dict, optional
178
+ :param _host_index: set to override the host_index for a single
179
+ request; this effectively ignores the host_index
180
+ in the spec for a single request.
181
+ :type _host_index: int, optional
182
+ :return: Returns the result object.
183
+ """ # noqa: E501
184
+
185
+ _param = self._add_bus_io_service_serialize(
186
+ cell=cell,
187
+ bus_io_type=bus_io_type,
188
+ completion_timeout=completion_timeout,
189
+ _request_auth=_request_auth,
190
+ _content_type=_content_type,
191
+ _headers=_headers,
192
+ _host_index=_host_index
193
+ )
194
+
195
+ _response_types_map: Dict[str, Optional[str]] = {
196
+ '200': None,
197
+ '202': None,
198
+ '403': "Error",
199
+ '404': "Error",
200
+ '409': None,
201
+ }
202
+ response_data = await self.api_client.call_api(
203
+ *_param,
204
+ _request_timeout=_request_timeout
205
+ )
206
+ await response_data.read()
207
+ return self.api_client.response_deserialize(
208
+ response_data=response_data,
209
+ response_types_map=_response_types_map,
210
+ )
211
+
212
+
213
+ @validate_call
214
+ async def add_bus_io_service_without_preload_content(
215
+ self,
216
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
217
+ bus_io_type: BusIOType,
218
+ completion_timeout: Optional[Annotated[int, Field(strict=True, ge=1)]] = None,
219
+ _request_timeout: Union[
220
+ None,
221
+ Annotated[StrictFloat, Field(gt=0)],
222
+ Tuple[
223
+ Annotated[StrictFloat, Field(gt=0)],
224
+ Annotated[StrictFloat, Field(gt=0)]
225
+ ]
226
+ ] = None,
227
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
228
+ _content_type: Optional[StrictStr] = None,
229
+ _headers: Optional[Dict[StrictStr, Any]] = None,
230
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
231
+ ) -> RESTResponseType:
232
+ """Add Service
233
+
234
+ Add the BUS inputs/outputs service to the cell. Starts a containerized service that enables BUS connections via the specified ethernet port.
235
+
236
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
237
+ :type cell: str
238
+ :param bus_io_type: (required)
239
+ :type bus_io_type: BusIOType
240
+ :param completion_timeout:
241
+ :type completion_timeout: int
242
+ :param _request_timeout: timeout setting for this request. If one
243
+ number provided, it will be total request
244
+ timeout. It can also be a pair (tuple) of
245
+ (connection, read) timeouts.
246
+ :type _request_timeout: int, tuple(int, int), optional
247
+ :param _request_auth: set to override the auth_settings for an a single
248
+ request; this effectively ignores the
249
+ authentication in the spec for a single request.
250
+ :type _request_auth: dict, optional
251
+ :param _content_type: force content-type for the request.
252
+ :type _content_type: str, Optional
253
+ :param _headers: set to override the headers for a single
254
+ request; this effectively ignores the headers
255
+ in the spec for a single request.
256
+ :type _headers: dict, optional
257
+ :param _host_index: set to override the host_index for a single
258
+ request; this effectively ignores the host_index
259
+ in the spec for a single request.
260
+ :type _host_index: int, optional
261
+ :return: Returns the result object.
262
+ """ # noqa: E501
263
+
264
+ _param = self._add_bus_io_service_serialize(
265
+ cell=cell,
266
+ bus_io_type=bus_io_type,
267
+ completion_timeout=completion_timeout,
268
+ _request_auth=_request_auth,
269
+ _content_type=_content_type,
270
+ _headers=_headers,
271
+ _host_index=_host_index
272
+ )
273
+
274
+ _response_types_map: Dict[str, Optional[str]] = {
275
+ '200': None,
276
+ '202': None,
277
+ '403': "Error",
278
+ '404': "Error",
279
+ '409': None,
280
+ }
281
+ response_data = await self.api_client.call_api(
282
+ *_param,
283
+ _request_timeout=_request_timeout
284
+ )
285
+ return response_data.response
286
+
287
+
288
+ def _add_bus_io_service_serialize(
289
+ self,
290
+ cell,
291
+ bus_io_type,
292
+ completion_timeout,
293
+ _request_auth,
294
+ _content_type,
295
+ _headers,
296
+ _host_index,
297
+ ) -> RequestSerialized:
298
+
299
+ _host = None
300
+
301
+ _collection_formats: Dict[str, str] = {
302
+ }
303
+
304
+ _path_params: Dict[str, str] = {}
305
+ _query_params: List[Tuple[str, str]] = []
306
+ _header_params: Dict[str, Optional[str]] = _headers or {}
307
+ _form_params: List[Tuple[str, str]] = []
308
+ _files: Dict[str, Union[str, bytes]] = {}
309
+ _body_params: Optional[bytes] = None
310
+
311
+ # process the path parameters
312
+ if cell is not None:
313
+ _path_params['cell'] = cell
314
+ # process the query parameters
315
+ if completion_timeout is not None:
316
+
317
+ _query_params.append(('completion_timeout', completion_timeout))
318
+
319
+ # process the header parameters
320
+ # process the form parameters
321
+ # process the body parameter
322
+ if bus_io_type is not None:
323
+ _body_params = bus_io_type
324
+
325
+
326
+ # set the HTTP header `Accept`
327
+ _header_params['Accept'] = self.api_client.select_header_accept(
328
+ [
329
+ 'application/json'
330
+ ]
331
+ )
332
+
333
+ # set the HTTP header `Content-Type`
334
+ if _content_type:
335
+ _header_params['Content-Type'] = _content_type
336
+ else:
337
+ _default_content_type = (
338
+ self.api_client.select_header_content_type(
339
+ [
340
+ 'application/json'
341
+ ]
342
+ )
343
+ )
344
+ if _default_content_type is not None:
345
+ _header_params['Content-Type'] = _default_content_type
346
+
347
+ # authentication setting
348
+ _auth_settings: List[str] = [
349
+ 'BasicAuth',
350
+ 'BearerAuth'
351
+ ]
352
+
353
+ return self.api_client.param_serialize(
354
+ method='POST',
355
+ resource_path='/cells/{cell}/bus-ios',
356
+ path_params=_path_params,
357
+ query_params=_query_params,
358
+ header_params=_header_params,
359
+ body=_body_params,
360
+ post_params=_form_params,
361
+ files=_files,
362
+ auth_settings=_auth_settings,
363
+ collection_formats=_collection_formats,
364
+ _host=_host,
365
+ _request_auth=_request_auth
366
+ )
367
+
368
+
369
+
370
+ @validate_call
371
+ async def add_modbus_io(
372
+ self,
373
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
374
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
375
+ modbus_io_data: ModbusIOData,
376
+ _request_timeout: Union[
377
+ None,
378
+ Annotated[StrictFloat, Field(gt=0)],
379
+ Tuple[
380
+ Annotated[StrictFloat, Field(gt=0)],
381
+ Annotated[StrictFloat, Field(gt=0)]
382
+ ]
383
+ ] = None,
384
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
385
+ _content_type: Optional[StrictStr] = None,
386
+ _headers: Optional[Dict[StrictStr, Any]] = None,
387
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
388
+ ) -> None:
389
+ """Add MODBUS Input/Output
390
+
391
+ Adds an input/output variable to or updates an input/output variable on the MODBUS device, e.g., NOVA's MODBUS service. The inputs/outputs map variables to specific memory addresses in the process image. The NOVA's MODBUS service's configuration can be viewed via [listModbusIOs](listModbusIOs).
392
+
393
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
394
+ :type cell: str
395
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
396
+ :type io: str
397
+ :param modbus_io_data: (required)
398
+ :type modbus_io_data: ModbusIOData
399
+ :param _request_timeout: timeout setting for this request. If one
400
+ number provided, it will be total request
401
+ timeout. It can also be a pair (tuple) of
402
+ (connection, read) timeouts.
403
+ :type _request_timeout: int, tuple(int, int), optional
404
+ :param _request_auth: set to override the auth_settings for an a single
405
+ request; this effectively ignores the
406
+ authentication in the spec for a single request.
407
+ :type _request_auth: dict, optional
408
+ :param _content_type: force content-type for the request.
409
+ :type _content_type: str, Optional
410
+ :param _headers: set to override the headers for a single
411
+ request; this effectively ignores the headers
412
+ in the spec for a single request.
413
+ :type _headers: dict, optional
414
+ :param _host_index: set to override the host_index for a single
415
+ request; this effectively ignores the host_index
416
+ in the spec for a single request.
417
+ :type _host_index: int, optional
418
+ :return: Returns the result object.
419
+ """ # noqa: E501
420
+
421
+ _param = self._add_modbus_io_serialize(
422
+ cell=cell,
423
+ io=io,
424
+ modbus_io_data=modbus_io_data,
425
+ _request_auth=_request_auth,
426
+ _content_type=_content_type,
427
+ _headers=_headers,
428
+ _host_index=_host_index
429
+ )
430
+
431
+ _response_types_map: Dict[str, Optional[str]] = {
432
+ '200': None,
433
+ '400': "Error",
434
+ '404': "Error",
435
+ }
436
+ response_data = await self.api_client.call_api(
437
+ *_param,
438
+ _request_timeout=_request_timeout
439
+ )
440
+ await response_data.read()
441
+ return self.api_client.response_deserialize(
442
+ response_data=response_data,
443
+ response_types_map=_response_types_map,
444
+ ).data
445
+
446
+
447
+ @validate_call
448
+ async def add_modbus_io_with_http_info(
449
+ self,
450
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
451
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
452
+ modbus_io_data: ModbusIOData,
453
+ _request_timeout: Union[
454
+ None,
455
+ Annotated[StrictFloat, Field(gt=0)],
456
+ Tuple[
457
+ Annotated[StrictFloat, Field(gt=0)],
458
+ Annotated[StrictFloat, Field(gt=0)]
459
+ ]
460
+ ] = None,
461
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
462
+ _content_type: Optional[StrictStr] = None,
463
+ _headers: Optional[Dict[StrictStr, Any]] = None,
464
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
465
+ ) -> ApiResponse[None]:
466
+ """Add MODBUS Input/Output
467
+
468
+ Adds an input/output variable to or updates an input/output variable on the MODBUS device, e.g., NOVA's MODBUS service. The inputs/outputs map variables to specific memory addresses in the process image. The NOVA's MODBUS service's configuration can be viewed via [listModbusIOs](listModbusIOs).
469
+
470
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
471
+ :type cell: str
472
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
473
+ :type io: str
474
+ :param modbus_io_data: (required)
475
+ :type modbus_io_data: ModbusIOData
476
+ :param _request_timeout: timeout setting for this request. If one
477
+ number provided, it will be total request
478
+ timeout. It can also be a pair (tuple) of
479
+ (connection, read) timeouts.
480
+ :type _request_timeout: int, tuple(int, int), optional
481
+ :param _request_auth: set to override the auth_settings for an a single
482
+ request; this effectively ignores the
483
+ authentication in the spec for a single request.
484
+ :type _request_auth: dict, optional
485
+ :param _content_type: force content-type for the request.
486
+ :type _content_type: str, Optional
487
+ :param _headers: set to override the headers for a single
488
+ request; this effectively ignores the headers
489
+ in the spec for a single request.
490
+ :type _headers: dict, optional
491
+ :param _host_index: set to override the host_index for a single
492
+ request; this effectively ignores the host_index
493
+ in the spec for a single request.
494
+ :type _host_index: int, optional
495
+ :return: Returns the result object.
496
+ """ # noqa: E501
497
+
498
+ _param = self._add_modbus_io_serialize(
499
+ cell=cell,
500
+ io=io,
501
+ modbus_io_data=modbus_io_data,
502
+ _request_auth=_request_auth,
503
+ _content_type=_content_type,
504
+ _headers=_headers,
505
+ _host_index=_host_index
506
+ )
507
+
508
+ _response_types_map: Dict[str, Optional[str]] = {
509
+ '200': None,
510
+ '400': "Error",
511
+ '404': "Error",
512
+ }
513
+ response_data = await self.api_client.call_api(
514
+ *_param,
515
+ _request_timeout=_request_timeout
516
+ )
517
+ await response_data.read()
518
+ return self.api_client.response_deserialize(
519
+ response_data=response_data,
520
+ response_types_map=_response_types_map,
521
+ )
522
+
523
+
524
+ @validate_call
525
+ async def add_modbus_io_without_preload_content(
526
+ self,
527
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
528
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
529
+ modbus_io_data: ModbusIOData,
530
+ _request_timeout: Union[
531
+ None,
532
+ Annotated[StrictFloat, Field(gt=0)],
533
+ Tuple[
534
+ Annotated[StrictFloat, Field(gt=0)],
535
+ Annotated[StrictFloat, Field(gt=0)]
536
+ ]
537
+ ] = None,
538
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
539
+ _content_type: Optional[StrictStr] = None,
540
+ _headers: Optional[Dict[StrictStr, Any]] = None,
541
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
542
+ ) -> RESTResponseType:
543
+ """Add MODBUS Input/Output
544
+
545
+ Adds an input/output variable to or updates an input/output variable on the MODBUS device, e.g., NOVA's MODBUS service. The inputs/outputs map variables to specific memory addresses in the process image. The NOVA's MODBUS service's configuration can be viewed via [listModbusIOs](listModbusIOs).
546
+
547
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
548
+ :type cell: str
549
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
550
+ :type io: str
551
+ :param modbus_io_data: (required)
552
+ :type modbus_io_data: ModbusIOData
553
+ :param _request_timeout: timeout setting for this request. If one
554
+ number provided, it will be total request
555
+ timeout. It can also be a pair (tuple) of
556
+ (connection, read) timeouts.
557
+ :type _request_timeout: int, tuple(int, int), optional
558
+ :param _request_auth: set to override the auth_settings for an a single
559
+ request; this effectively ignores the
560
+ authentication in the spec for a single request.
561
+ :type _request_auth: dict, optional
562
+ :param _content_type: force content-type for the request.
563
+ :type _content_type: str, Optional
564
+ :param _headers: set to override the headers for a single
565
+ request; this effectively ignores the headers
566
+ in the spec for a single request.
567
+ :type _headers: dict, optional
568
+ :param _host_index: set to override the host_index for a single
569
+ request; this effectively ignores the host_index
570
+ in the spec for a single request.
571
+ :type _host_index: int, optional
572
+ :return: Returns the result object.
573
+ """ # noqa: E501
574
+
575
+ _param = self._add_modbus_io_serialize(
576
+ cell=cell,
577
+ io=io,
578
+ modbus_io_data=modbus_io_data,
579
+ _request_auth=_request_auth,
580
+ _content_type=_content_type,
581
+ _headers=_headers,
582
+ _host_index=_host_index
583
+ )
584
+
585
+ _response_types_map: Dict[str, Optional[str]] = {
586
+ '200': None,
587
+ '400': "Error",
588
+ '404': "Error",
589
+ }
590
+ response_data = await self.api_client.call_api(
591
+ *_param,
592
+ _request_timeout=_request_timeout
593
+ )
594
+ return response_data.response
595
+
596
+
597
+ def _add_modbus_io_serialize(
598
+ self,
599
+ cell,
600
+ io,
601
+ modbus_io_data,
602
+ _request_auth,
603
+ _content_type,
604
+ _headers,
605
+ _host_index,
606
+ ) -> RequestSerialized:
607
+
608
+ _host = None
609
+
610
+ _collection_formats: Dict[str, str] = {
611
+ }
612
+
613
+ _path_params: Dict[str, str] = {}
614
+ _query_params: List[Tuple[str, str]] = []
615
+ _header_params: Dict[str, Optional[str]] = _headers or {}
616
+ _form_params: List[Tuple[str, str]] = []
617
+ _files: Dict[str, Union[str, bytes]] = {}
618
+ _body_params: Optional[bytes] = None
619
+
620
+ # process the path parameters
621
+ if cell is not None:
622
+ _path_params['cell'] = cell
623
+ if io is not None:
624
+ _path_params['io'] = io
625
+ # process the query parameters
626
+ # process the header parameters
627
+ # process the form parameters
628
+ # process the body parameter
629
+ if modbus_io_data is not None:
630
+ _body_params = modbus_io_data
631
+
632
+
633
+ # set the HTTP header `Accept`
634
+ _header_params['Accept'] = self.api_client.select_header_accept(
635
+ [
636
+ 'application/json'
637
+ ]
638
+ )
639
+
640
+ # set the HTTP header `Content-Type`
641
+ if _content_type:
642
+ _header_params['Content-Type'] = _content_type
643
+ else:
644
+ _default_content_type = (
645
+ self.api_client.select_header_content_type(
646
+ [
647
+ 'application/json'
648
+ ]
649
+ )
650
+ )
651
+ if _default_content_type is not None:
652
+ _header_params['Content-Type'] = _default_content_type
653
+
654
+ # authentication setting
655
+ _auth_settings: List[str] = [
656
+ 'BasicAuth',
657
+ 'BearerAuth'
658
+ ]
659
+
660
+ return self.api_client.param_serialize(
661
+ method='PUT',
662
+ resource_path='/cells/{cell}/bus-ios/modbus/ios/{io}',
663
+ path_params=_path_params,
664
+ query_params=_query_params,
665
+ header_params=_header_params,
666
+ body=_body_params,
667
+ post_params=_form_params,
668
+ files=_files,
669
+ auth_settings=_auth_settings,
670
+ collection_formats=_collection_formats,
671
+ _host=_host,
672
+ _request_auth=_request_auth
673
+ )
674
+
675
+
676
+
677
+ @validate_call
678
+ async def add_profinet_io(
679
+ self,
680
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
681
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
682
+ profinet_io_data: ProfinetIOData,
683
+ _request_timeout: Union[
684
+ None,
685
+ Annotated[StrictFloat, Field(gt=0)],
686
+ Tuple[
687
+ Annotated[StrictFloat, Field(gt=0)],
688
+ Annotated[StrictFloat, Field(gt=0)]
689
+ ]
690
+ ] = None,
691
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
692
+ _content_type: Optional[StrictStr] = None,
693
+ _headers: Optional[Dict[StrictStr, Any]] = None,
694
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
695
+ ) -> None:
696
+ """Add PROFINET Input/Output
697
+
698
+ Adds an input/output variable to or updates an input/output variable on the PROFINET device, e.g., NOVA's PROFINET service. The inputs/outputs map variables to specific memory addresses in the process image. The default process image has buffer lengths of 64 bytes for input and output. - The size of the buffer is determined by the `config_file_content` that is passed in [addBusIOService](addBusIOService) and has to be in accordance with the GSDML file describing the PROFINET device. The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input/output process image. - The NOVA's PROFINET service's configuration can be viewed via [listProfinetIOs](listProfinetIOs). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding third party software, e.g., TIA portal).
699
+
700
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
701
+ :type cell: str
702
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
703
+ :type io: str
704
+ :param profinet_io_data: (required)
705
+ :type profinet_io_data: ProfinetIOData
706
+ :param _request_timeout: timeout setting for this request. If one
707
+ number provided, it will be total request
708
+ timeout. It can also be a pair (tuple) of
709
+ (connection, read) timeouts.
710
+ :type _request_timeout: int, tuple(int, int), optional
711
+ :param _request_auth: set to override the auth_settings for an a single
712
+ request; this effectively ignores the
713
+ authentication in the spec for a single request.
714
+ :type _request_auth: dict, optional
715
+ :param _content_type: force content-type for the request.
716
+ :type _content_type: str, Optional
717
+ :param _headers: set to override the headers for a single
718
+ request; this effectively ignores the headers
719
+ in the spec for a single request.
720
+ :type _headers: dict, optional
721
+ :param _host_index: set to override the host_index for a single
722
+ request; this effectively ignores the host_index
723
+ in the spec for a single request.
724
+ :type _host_index: int, optional
725
+ :return: Returns the result object.
726
+ """ # noqa: E501
727
+
728
+ _param = self._add_profinet_io_serialize(
729
+ cell=cell,
730
+ io=io,
731
+ profinet_io_data=profinet_io_data,
732
+ _request_auth=_request_auth,
733
+ _content_type=_content_type,
734
+ _headers=_headers,
735
+ _host_index=_host_index
736
+ )
737
+
738
+ _response_types_map: Dict[str, Optional[str]] = {
739
+ '200': None,
740
+ '400': "Error",
741
+ '404': "Error",
742
+ }
743
+ response_data = await self.api_client.call_api(
744
+ *_param,
745
+ _request_timeout=_request_timeout
746
+ )
747
+ await response_data.read()
748
+ return self.api_client.response_deserialize(
749
+ response_data=response_data,
750
+ response_types_map=_response_types_map,
751
+ ).data
752
+
753
+
754
+ @validate_call
755
+ async def add_profinet_io_with_http_info(
756
+ self,
757
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
758
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
759
+ profinet_io_data: ProfinetIOData,
760
+ _request_timeout: Union[
761
+ None,
762
+ Annotated[StrictFloat, Field(gt=0)],
763
+ Tuple[
764
+ Annotated[StrictFloat, Field(gt=0)],
765
+ Annotated[StrictFloat, Field(gt=0)]
766
+ ]
767
+ ] = None,
768
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
769
+ _content_type: Optional[StrictStr] = None,
770
+ _headers: Optional[Dict[StrictStr, Any]] = None,
771
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
772
+ ) -> ApiResponse[None]:
773
+ """Add PROFINET Input/Output
774
+
775
+ Adds an input/output variable to or updates an input/output variable on the PROFINET device, e.g., NOVA's PROFINET service. The inputs/outputs map variables to specific memory addresses in the process image. The default process image has buffer lengths of 64 bytes for input and output. - The size of the buffer is determined by the `config_file_content` that is passed in [addBusIOService](addBusIOService) and has to be in accordance with the GSDML file describing the PROFINET device. The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input/output process image. - The NOVA's PROFINET service's configuration can be viewed via [listProfinetIOs](listProfinetIOs). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding third party software, e.g., TIA portal).
776
+
777
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
778
+ :type cell: str
779
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
780
+ :type io: str
781
+ :param profinet_io_data: (required)
782
+ :type profinet_io_data: ProfinetIOData
783
+ :param _request_timeout: timeout setting for this request. If one
784
+ number provided, it will be total request
785
+ timeout. It can also be a pair (tuple) of
786
+ (connection, read) timeouts.
787
+ :type _request_timeout: int, tuple(int, int), optional
788
+ :param _request_auth: set to override the auth_settings for an a single
789
+ request; this effectively ignores the
790
+ authentication in the spec for a single request.
791
+ :type _request_auth: dict, optional
792
+ :param _content_type: force content-type for the request.
793
+ :type _content_type: str, Optional
794
+ :param _headers: set to override the headers for a single
795
+ request; this effectively ignores the headers
796
+ in the spec for a single request.
797
+ :type _headers: dict, optional
798
+ :param _host_index: set to override the host_index for a single
799
+ request; this effectively ignores the host_index
800
+ in the spec for a single request.
801
+ :type _host_index: int, optional
802
+ :return: Returns the result object.
803
+ """ # noqa: E501
804
+
805
+ _param = self._add_profinet_io_serialize(
806
+ cell=cell,
807
+ io=io,
808
+ profinet_io_data=profinet_io_data,
809
+ _request_auth=_request_auth,
810
+ _content_type=_content_type,
811
+ _headers=_headers,
812
+ _host_index=_host_index
813
+ )
814
+
815
+ _response_types_map: Dict[str, Optional[str]] = {
816
+ '200': None,
817
+ '400': "Error",
818
+ '404': "Error",
819
+ }
820
+ response_data = await self.api_client.call_api(
821
+ *_param,
822
+ _request_timeout=_request_timeout
823
+ )
824
+ await response_data.read()
825
+ return self.api_client.response_deserialize(
826
+ response_data=response_data,
827
+ response_types_map=_response_types_map,
828
+ )
829
+
830
+
831
+ @validate_call
832
+ async def add_profinet_io_without_preload_content(
833
+ self,
834
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
835
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
836
+ profinet_io_data: ProfinetIOData,
837
+ _request_timeout: Union[
838
+ None,
839
+ Annotated[StrictFloat, Field(gt=0)],
840
+ Tuple[
841
+ Annotated[StrictFloat, Field(gt=0)],
842
+ Annotated[StrictFloat, Field(gt=0)]
843
+ ]
844
+ ] = None,
845
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
846
+ _content_type: Optional[StrictStr] = None,
847
+ _headers: Optional[Dict[StrictStr, Any]] = None,
848
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
849
+ ) -> RESTResponseType:
850
+ """Add PROFINET Input/Output
851
+
852
+ Adds an input/output variable to or updates an input/output variable on the PROFINET device, e.g., NOVA's PROFINET service. The inputs/outputs map variables to specific memory addresses in the process image. The default process image has buffer lengths of 64 bytes for input and output. - The size of the buffer is determined by the `config_file_content` that is passed in [addBusIOService](addBusIOService) and has to be in accordance with the GSDML file describing the PROFINET device. The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input/output process image. - The NOVA's PROFINET service's configuration can be viewed via [listProfinetIOs](listProfinetIOs). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding third party software, e.g., TIA portal).
853
+
854
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
855
+ :type cell: str
856
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
857
+ :type io: str
858
+ :param profinet_io_data: (required)
859
+ :type profinet_io_data: ProfinetIOData
860
+ :param _request_timeout: timeout setting for this request. If one
861
+ number provided, it will be total request
862
+ timeout. It can also be a pair (tuple) of
863
+ (connection, read) timeouts.
864
+ :type _request_timeout: int, tuple(int, int), optional
865
+ :param _request_auth: set to override the auth_settings for an a single
866
+ request; this effectively ignores the
867
+ authentication in the spec for a single request.
868
+ :type _request_auth: dict, optional
869
+ :param _content_type: force content-type for the request.
870
+ :type _content_type: str, Optional
871
+ :param _headers: set to override the headers for a single
872
+ request; this effectively ignores the headers
873
+ in the spec for a single request.
874
+ :type _headers: dict, optional
875
+ :param _host_index: set to override the host_index for a single
876
+ request; this effectively ignores the host_index
877
+ in the spec for a single request.
878
+ :type _host_index: int, optional
879
+ :return: Returns the result object.
880
+ """ # noqa: E501
881
+
882
+ _param = self._add_profinet_io_serialize(
883
+ cell=cell,
884
+ io=io,
885
+ profinet_io_data=profinet_io_data,
886
+ _request_auth=_request_auth,
887
+ _content_type=_content_type,
888
+ _headers=_headers,
889
+ _host_index=_host_index
890
+ )
891
+
892
+ _response_types_map: Dict[str, Optional[str]] = {
893
+ '200': None,
894
+ '400': "Error",
895
+ '404': "Error",
896
+ }
897
+ response_data = await self.api_client.call_api(
898
+ *_param,
899
+ _request_timeout=_request_timeout
900
+ )
901
+ return response_data.response
902
+
903
+
904
+ def _add_profinet_io_serialize(
905
+ self,
906
+ cell,
907
+ io,
908
+ profinet_io_data,
909
+ _request_auth,
910
+ _content_type,
911
+ _headers,
912
+ _host_index,
913
+ ) -> RequestSerialized:
914
+
915
+ _host = None
916
+
917
+ _collection_formats: Dict[str, str] = {
918
+ }
919
+
920
+ _path_params: Dict[str, str] = {}
921
+ _query_params: List[Tuple[str, str]] = []
922
+ _header_params: Dict[str, Optional[str]] = _headers or {}
923
+ _form_params: List[Tuple[str, str]] = []
924
+ _files: Dict[str, Union[str, bytes]] = {}
925
+ _body_params: Optional[bytes] = None
926
+
927
+ # process the path parameters
928
+ if cell is not None:
929
+ _path_params['cell'] = cell
930
+ if io is not None:
931
+ _path_params['io'] = io
932
+ # process the query parameters
933
+ # process the header parameters
934
+ # process the form parameters
935
+ # process the body parameter
936
+ if profinet_io_data is not None:
937
+ _body_params = profinet_io_data
938
+
939
+
940
+ # set the HTTP header `Accept`
941
+ _header_params['Accept'] = self.api_client.select_header_accept(
942
+ [
943
+ 'application/json'
944
+ ]
945
+ )
946
+
947
+ # set the HTTP header `Content-Type`
948
+ if _content_type:
949
+ _header_params['Content-Type'] = _content_type
950
+ else:
951
+ _default_content_type = (
952
+ self.api_client.select_header_content_type(
953
+ [
954
+ 'application/json'
955
+ ]
956
+ )
957
+ )
958
+ if _default_content_type is not None:
959
+ _header_params['Content-Type'] = _default_content_type
960
+
961
+ # authentication setting
962
+ _auth_settings: List[str] = [
963
+ 'BasicAuth',
964
+ 'BearerAuth'
965
+ ]
966
+
967
+ return self.api_client.param_serialize(
968
+ method='PUT',
969
+ resource_path='/cells/{cell}/bus-ios/profinet/ios/{io}',
970
+ path_params=_path_params,
971
+ query_params=_query_params,
972
+ header_params=_header_params,
973
+ body=_body_params,
974
+ post_params=_form_params,
975
+ files=_files,
976
+ auth_settings=_auth_settings,
977
+ collection_formats=_collection_formats,
978
+ _host=_host,
979
+ _request_auth=_request_auth
980
+ )
981
+
982
+
983
+
984
+ @validate_call
985
+ async def clear_bus_io_service(
986
+ self,
987
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
988
+ completion_timeout: Optional[Annotated[int, Field(strict=True, ge=1)]] = None,
989
+ _request_timeout: Union[
990
+ None,
991
+ Annotated[StrictFloat, Field(gt=0)],
992
+ Tuple[
993
+ Annotated[StrictFloat, Field(gt=0)],
994
+ Annotated[StrictFloat, Field(gt=0)]
995
+ ]
996
+ ] = None,
997
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
998
+ _content_type: Optional[StrictStr] = None,
999
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1000
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1001
+ ) -> None:
1002
+ """Clear Service
1003
+
1004
+ Remove the BUS inputs/outputs service from the cell.
1005
+
1006
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1007
+ :type cell: str
1008
+ :param completion_timeout:
1009
+ :type completion_timeout: int
1010
+ :param _request_timeout: timeout setting for this request. If one
1011
+ number provided, it will be total request
1012
+ timeout. It can also be a pair (tuple) of
1013
+ (connection, read) timeouts.
1014
+ :type _request_timeout: int, tuple(int, int), optional
1015
+ :param _request_auth: set to override the auth_settings for an a single
1016
+ request; this effectively ignores the
1017
+ authentication in the spec for a single request.
1018
+ :type _request_auth: dict, optional
1019
+ :param _content_type: force content-type for the request.
1020
+ :type _content_type: str, Optional
1021
+ :param _headers: set to override the headers for a single
1022
+ request; this effectively ignores the headers
1023
+ in the spec for a single request.
1024
+ :type _headers: dict, optional
1025
+ :param _host_index: set to override the host_index for a single
1026
+ request; this effectively ignores the host_index
1027
+ in the spec for a single request.
1028
+ :type _host_index: int, optional
1029
+ :return: Returns the result object.
1030
+ """ # noqa: E501
1031
+
1032
+ _param = self._clear_bus_io_service_serialize(
1033
+ cell=cell,
1034
+ completion_timeout=completion_timeout,
1035
+ _request_auth=_request_auth,
1036
+ _content_type=_content_type,
1037
+ _headers=_headers,
1038
+ _host_index=_host_index
1039
+ )
1040
+
1041
+ _response_types_map: Dict[str, Optional[str]] = {
1042
+ '200': None,
1043
+ '202': None,
1044
+ '404': "Error",
1045
+ }
1046
+ response_data = await self.api_client.call_api(
1047
+ *_param,
1048
+ _request_timeout=_request_timeout
1049
+ )
1050
+ await response_data.read()
1051
+ return self.api_client.response_deserialize(
1052
+ response_data=response_data,
1053
+ response_types_map=_response_types_map,
1054
+ ).data
1055
+
1056
+
1057
+ @validate_call
1058
+ async def clear_bus_io_service_with_http_info(
1059
+ self,
1060
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1061
+ completion_timeout: Optional[Annotated[int, Field(strict=True, ge=1)]] = None,
1062
+ _request_timeout: Union[
1063
+ None,
1064
+ Annotated[StrictFloat, Field(gt=0)],
1065
+ Tuple[
1066
+ Annotated[StrictFloat, Field(gt=0)],
1067
+ Annotated[StrictFloat, Field(gt=0)]
1068
+ ]
1069
+ ] = None,
1070
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1071
+ _content_type: Optional[StrictStr] = None,
1072
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1073
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1074
+ ) -> ApiResponse[None]:
1075
+ """Clear Service
1076
+
1077
+ Remove the BUS inputs/outputs service from the cell.
1078
+
1079
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1080
+ :type cell: str
1081
+ :param completion_timeout:
1082
+ :type completion_timeout: int
1083
+ :param _request_timeout: timeout setting for this request. If one
1084
+ number provided, it will be total request
1085
+ timeout. It can also be a pair (tuple) of
1086
+ (connection, read) timeouts.
1087
+ :type _request_timeout: int, tuple(int, int), optional
1088
+ :param _request_auth: set to override the auth_settings for an a single
1089
+ request; this effectively ignores the
1090
+ authentication in the spec for a single request.
1091
+ :type _request_auth: dict, optional
1092
+ :param _content_type: force content-type for the request.
1093
+ :type _content_type: str, Optional
1094
+ :param _headers: set to override the headers for a single
1095
+ request; this effectively ignores the headers
1096
+ in the spec for a single request.
1097
+ :type _headers: dict, optional
1098
+ :param _host_index: set to override the host_index for a single
1099
+ request; this effectively ignores the host_index
1100
+ in the spec for a single request.
1101
+ :type _host_index: int, optional
1102
+ :return: Returns the result object.
1103
+ """ # noqa: E501
1104
+
1105
+ _param = self._clear_bus_io_service_serialize(
1106
+ cell=cell,
1107
+ completion_timeout=completion_timeout,
1108
+ _request_auth=_request_auth,
1109
+ _content_type=_content_type,
1110
+ _headers=_headers,
1111
+ _host_index=_host_index
1112
+ )
1113
+
1114
+ _response_types_map: Dict[str, Optional[str]] = {
1115
+ '200': None,
1116
+ '202': None,
1117
+ '404': "Error",
1118
+ }
1119
+ response_data = await self.api_client.call_api(
1120
+ *_param,
1121
+ _request_timeout=_request_timeout
1122
+ )
1123
+ await response_data.read()
1124
+ return self.api_client.response_deserialize(
1125
+ response_data=response_data,
1126
+ response_types_map=_response_types_map,
1127
+ )
1128
+
1129
+
1130
+ @validate_call
1131
+ async def clear_bus_io_service_without_preload_content(
1132
+ self,
1133
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1134
+ completion_timeout: Optional[Annotated[int, Field(strict=True, ge=1)]] = None,
1135
+ _request_timeout: Union[
1136
+ None,
1137
+ Annotated[StrictFloat, Field(gt=0)],
1138
+ Tuple[
1139
+ Annotated[StrictFloat, Field(gt=0)],
1140
+ Annotated[StrictFloat, Field(gt=0)]
1141
+ ]
1142
+ ] = None,
1143
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1144
+ _content_type: Optional[StrictStr] = None,
1145
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1146
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1147
+ ) -> RESTResponseType:
1148
+ """Clear Service
1149
+
1150
+ Remove the BUS inputs/outputs service from the cell.
1151
+
1152
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1153
+ :type cell: str
1154
+ :param completion_timeout:
1155
+ :type completion_timeout: int
1156
+ :param _request_timeout: timeout setting for this request. If one
1157
+ number provided, it will be total request
1158
+ timeout. It can also be a pair (tuple) of
1159
+ (connection, read) timeouts.
1160
+ :type _request_timeout: int, tuple(int, int), optional
1161
+ :param _request_auth: set to override the auth_settings for an a single
1162
+ request; this effectively ignores the
1163
+ authentication in the spec for a single request.
1164
+ :type _request_auth: dict, optional
1165
+ :param _content_type: force content-type for the request.
1166
+ :type _content_type: str, Optional
1167
+ :param _headers: set to override the headers for a single
1168
+ request; this effectively ignores the headers
1169
+ in the spec for a single request.
1170
+ :type _headers: dict, optional
1171
+ :param _host_index: set to override the host_index for a single
1172
+ request; this effectively ignores the host_index
1173
+ in the spec for a single request.
1174
+ :type _host_index: int, optional
1175
+ :return: Returns the result object.
1176
+ """ # noqa: E501
1177
+
1178
+ _param = self._clear_bus_io_service_serialize(
1179
+ cell=cell,
1180
+ completion_timeout=completion_timeout,
1181
+ _request_auth=_request_auth,
1182
+ _content_type=_content_type,
1183
+ _headers=_headers,
1184
+ _host_index=_host_index
1185
+ )
1186
+
1187
+ _response_types_map: Dict[str, Optional[str]] = {
1188
+ '200': None,
1189
+ '202': None,
1190
+ '404': "Error",
1191
+ }
1192
+ response_data = await self.api_client.call_api(
1193
+ *_param,
1194
+ _request_timeout=_request_timeout
1195
+ )
1196
+ return response_data.response
1197
+
1198
+
1199
+ def _clear_bus_io_service_serialize(
1200
+ self,
1201
+ cell,
1202
+ completion_timeout,
1203
+ _request_auth,
1204
+ _content_type,
1205
+ _headers,
1206
+ _host_index,
1207
+ ) -> RequestSerialized:
1208
+
1209
+ _host = None
1210
+
1211
+ _collection_formats: Dict[str, str] = {
1212
+ }
1213
+
1214
+ _path_params: Dict[str, str] = {}
1215
+ _query_params: List[Tuple[str, str]] = []
1216
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1217
+ _form_params: List[Tuple[str, str]] = []
1218
+ _files: Dict[str, Union[str, bytes]] = {}
1219
+ _body_params: Optional[bytes] = None
1220
+
1221
+ # process the path parameters
1222
+ if cell is not None:
1223
+ _path_params['cell'] = cell
1224
+ # process the query parameters
1225
+ if completion_timeout is not None:
1226
+
1227
+ _query_params.append(('completion_timeout', completion_timeout))
1228
+
1229
+ # process the header parameters
1230
+ # process the form parameters
1231
+ # process the body parameter
1232
+
1233
+
1234
+ # set the HTTP header `Accept`
1235
+ _header_params['Accept'] = self.api_client.select_header_accept(
1236
+ [
1237
+ 'application/json'
1238
+ ]
1239
+ )
1240
+
1241
+
1242
+ # authentication setting
1243
+ _auth_settings: List[str] = [
1244
+ 'BasicAuth',
1245
+ 'BearerAuth'
1246
+ ]
1247
+
1248
+ return self.api_client.param_serialize(
1249
+ method='DELETE',
1250
+ resource_path='/cells/{cell}/bus-ios',
1251
+ path_params=_path_params,
1252
+ query_params=_query_params,
1253
+ header_params=_header_params,
1254
+ body=_body_params,
1255
+ post_params=_form_params,
1256
+ files=_files,
1257
+ auth_settings=_auth_settings,
1258
+ collection_formats=_collection_formats,
1259
+ _host=_host,
1260
+ _request_auth=_request_auth
1261
+ )
1262
+
1263
+
1264
+
1265
+ @validate_call
1266
+ async def delete_modbus_io(
1267
+ self,
1268
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1269
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
1270
+ _request_timeout: Union[
1271
+ None,
1272
+ Annotated[StrictFloat, Field(gt=0)],
1273
+ Tuple[
1274
+ Annotated[StrictFloat, Field(gt=0)],
1275
+ Annotated[StrictFloat, Field(gt=0)]
1276
+ ]
1277
+ ] = None,
1278
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1279
+ _content_type: Optional[StrictStr] = None,
1280
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1281
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1282
+ ) -> None:
1283
+ """Remove MODBUS Input/Ouptut
1284
+
1285
+ Removes an input/output variable configuration from the MODBUS device, e.g., NOVA's MODBUS service.
1286
+
1287
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1288
+ :type cell: str
1289
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
1290
+ :type io: str
1291
+ :param _request_timeout: timeout setting for this request. If one
1292
+ number provided, it will be total request
1293
+ timeout. It can also be a pair (tuple) of
1294
+ (connection, read) timeouts.
1295
+ :type _request_timeout: int, tuple(int, int), optional
1296
+ :param _request_auth: set to override the auth_settings for an a single
1297
+ request; this effectively ignores the
1298
+ authentication in the spec for a single request.
1299
+ :type _request_auth: dict, optional
1300
+ :param _content_type: force content-type for the request.
1301
+ :type _content_type: str, Optional
1302
+ :param _headers: set to override the headers for a single
1303
+ request; this effectively ignores the headers
1304
+ in the spec for a single request.
1305
+ :type _headers: dict, optional
1306
+ :param _host_index: set to override the host_index for a single
1307
+ request; this effectively ignores the host_index
1308
+ in the spec for a single request.
1309
+ :type _host_index: int, optional
1310
+ :return: Returns the result object.
1311
+ """ # noqa: E501
1312
+
1313
+ _param = self._delete_modbus_io_serialize(
1314
+ cell=cell,
1315
+ io=io,
1316
+ _request_auth=_request_auth,
1317
+ _content_type=_content_type,
1318
+ _headers=_headers,
1319
+ _host_index=_host_index
1320
+ )
1321
+
1322
+ _response_types_map: Dict[str, Optional[str]] = {
1323
+ '200': None,
1324
+ '400': "Error",
1325
+ '404': "Error",
1326
+ }
1327
+ response_data = await self.api_client.call_api(
1328
+ *_param,
1329
+ _request_timeout=_request_timeout
1330
+ )
1331
+ await response_data.read()
1332
+ return self.api_client.response_deserialize(
1333
+ response_data=response_data,
1334
+ response_types_map=_response_types_map,
1335
+ ).data
1336
+
1337
+
1338
+ @validate_call
1339
+ async def delete_modbus_io_with_http_info(
1340
+ self,
1341
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1342
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
1343
+ _request_timeout: Union[
1344
+ None,
1345
+ Annotated[StrictFloat, Field(gt=0)],
1346
+ Tuple[
1347
+ Annotated[StrictFloat, Field(gt=0)],
1348
+ Annotated[StrictFloat, Field(gt=0)]
1349
+ ]
1350
+ ] = None,
1351
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1352
+ _content_type: Optional[StrictStr] = None,
1353
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1354
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1355
+ ) -> ApiResponse[None]:
1356
+ """Remove MODBUS Input/Ouptut
1357
+
1358
+ Removes an input/output variable configuration from the MODBUS device, e.g., NOVA's MODBUS service.
1359
+
1360
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1361
+ :type cell: str
1362
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
1363
+ :type io: str
1364
+ :param _request_timeout: timeout setting for this request. If one
1365
+ number provided, it will be total request
1366
+ timeout. It can also be a pair (tuple) of
1367
+ (connection, read) timeouts.
1368
+ :type _request_timeout: int, tuple(int, int), optional
1369
+ :param _request_auth: set to override the auth_settings for an a single
1370
+ request; this effectively ignores the
1371
+ authentication in the spec for a single request.
1372
+ :type _request_auth: dict, optional
1373
+ :param _content_type: force content-type for the request.
1374
+ :type _content_type: str, Optional
1375
+ :param _headers: set to override the headers for a single
1376
+ request; this effectively ignores the headers
1377
+ in the spec for a single request.
1378
+ :type _headers: dict, optional
1379
+ :param _host_index: set to override the host_index for a single
1380
+ request; this effectively ignores the host_index
1381
+ in the spec for a single request.
1382
+ :type _host_index: int, optional
1383
+ :return: Returns the result object.
1384
+ """ # noqa: E501
1385
+
1386
+ _param = self._delete_modbus_io_serialize(
1387
+ cell=cell,
1388
+ io=io,
1389
+ _request_auth=_request_auth,
1390
+ _content_type=_content_type,
1391
+ _headers=_headers,
1392
+ _host_index=_host_index
1393
+ )
1394
+
1395
+ _response_types_map: Dict[str, Optional[str]] = {
1396
+ '200': None,
1397
+ '400': "Error",
1398
+ '404': "Error",
1399
+ }
1400
+ response_data = await self.api_client.call_api(
1401
+ *_param,
1402
+ _request_timeout=_request_timeout
1403
+ )
1404
+ await response_data.read()
1405
+ return self.api_client.response_deserialize(
1406
+ response_data=response_data,
1407
+ response_types_map=_response_types_map,
1408
+ )
1409
+
1410
+
1411
+ @validate_call
1412
+ async def delete_modbus_io_without_preload_content(
1413
+ self,
1414
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1415
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
1416
+ _request_timeout: Union[
1417
+ None,
1418
+ Annotated[StrictFloat, Field(gt=0)],
1419
+ Tuple[
1420
+ Annotated[StrictFloat, Field(gt=0)],
1421
+ Annotated[StrictFloat, Field(gt=0)]
1422
+ ]
1423
+ ] = None,
1424
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1425
+ _content_type: Optional[StrictStr] = None,
1426
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1427
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1428
+ ) -> RESTResponseType:
1429
+ """Remove MODBUS Input/Ouptut
1430
+
1431
+ Removes an input/output variable configuration from the MODBUS device, e.g., NOVA's MODBUS service.
1432
+
1433
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1434
+ :type cell: str
1435
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
1436
+ :type io: str
1437
+ :param _request_timeout: timeout setting for this request. If one
1438
+ number provided, it will be total request
1439
+ timeout. It can also be a pair (tuple) of
1440
+ (connection, read) timeouts.
1441
+ :type _request_timeout: int, tuple(int, int), optional
1442
+ :param _request_auth: set to override the auth_settings for an a single
1443
+ request; this effectively ignores the
1444
+ authentication in the spec for a single request.
1445
+ :type _request_auth: dict, optional
1446
+ :param _content_type: force content-type for the request.
1447
+ :type _content_type: str, Optional
1448
+ :param _headers: set to override the headers for a single
1449
+ request; this effectively ignores the headers
1450
+ in the spec for a single request.
1451
+ :type _headers: dict, optional
1452
+ :param _host_index: set to override the host_index for a single
1453
+ request; this effectively ignores the host_index
1454
+ in the spec for a single request.
1455
+ :type _host_index: int, optional
1456
+ :return: Returns the result object.
1457
+ """ # noqa: E501
1458
+
1459
+ _param = self._delete_modbus_io_serialize(
1460
+ cell=cell,
1461
+ io=io,
1462
+ _request_auth=_request_auth,
1463
+ _content_type=_content_type,
1464
+ _headers=_headers,
1465
+ _host_index=_host_index
1466
+ )
1467
+
1468
+ _response_types_map: Dict[str, Optional[str]] = {
1469
+ '200': None,
1470
+ '400': "Error",
1471
+ '404': "Error",
1472
+ }
1473
+ response_data = await self.api_client.call_api(
1474
+ *_param,
1475
+ _request_timeout=_request_timeout
1476
+ )
1477
+ return response_data.response
1478
+
1479
+
1480
+ def _delete_modbus_io_serialize(
1481
+ self,
1482
+ cell,
1483
+ io,
1484
+ _request_auth,
1485
+ _content_type,
1486
+ _headers,
1487
+ _host_index,
1488
+ ) -> RequestSerialized:
1489
+
1490
+ _host = None
1491
+
1492
+ _collection_formats: Dict[str, str] = {
1493
+ }
1494
+
1495
+ _path_params: Dict[str, str] = {}
1496
+ _query_params: List[Tuple[str, str]] = []
1497
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1498
+ _form_params: List[Tuple[str, str]] = []
1499
+ _files: Dict[str, Union[str, bytes]] = {}
1500
+ _body_params: Optional[bytes] = None
1501
+
1502
+ # process the path parameters
1503
+ if cell is not None:
1504
+ _path_params['cell'] = cell
1505
+ if io is not None:
1506
+ _path_params['io'] = io
1507
+ # process the query parameters
1508
+ # process the header parameters
1509
+ # process the form parameters
1510
+ # process the body parameter
1511
+
1512
+
1513
+ # set the HTTP header `Accept`
1514
+ _header_params['Accept'] = self.api_client.select_header_accept(
1515
+ [
1516
+ 'application/json'
1517
+ ]
1518
+ )
1519
+
1520
+
1521
+ # authentication setting
1522
+ _auth_settings: List[str] = [
1523
+ 'BasicAuth',
1524
+ 'BearerAuth'
1525
+ ]
1526
+
1527
+ return self.api_client.param_serialize(
1528
+ method='DELETE',
1529
+ resource_path='/cells/{cell}/bus-ios/modbus/ios/{io}',
1530
+ path_params=_path_params,
1531
+ query_params=_query_params,
1532
+ header_params=_header_params,
1533
+ body=_body_params,
1534
+ post_params=_form_params,
1535
+ files=_files,
1536
+ auth_settings=_auth_settings,
1537
+ collection_formats=_collection_formats,
1538
+ _host=_host,
1539
+ _request_auth=_request_auth
1540
+ )
1541
+
1542
+
1543
+
1544
+ @validate_call
1545
+ async def delete_profinet_io(
1546
+ self,
1547
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1548
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
1549
+ _request_timeout: Union[
1550
+ None,
1551
+ Annotated[StrictFloat, Field(gt=0)],
1552
+ Tuple[
1553
+ Annotated[StrictFloat, Field(gt=0)],
1554
+ Annotated[StrictFloat, Field(gt=0)]
1555
+ ]
1556
+ ] = None,
1557
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1558
+ _content_type: Optional[StrictStr] = None,
1559
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1560
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1561
+ ) -> None:
1562
+ """Remove PROFINET Input/Ouptut
1563
+
1564
+ Removes an input/output variable configuration from the PROFINET device, e.g., NOVA's PROFINET service.
1565
+
1566
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1567
+ :type cell: str
1568
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
1569
+ :type io: str
1570
+ :param _request_timeout: timeout setting for this request. If one
1571
+ number provided, it will be total request
1572
+ timeout. It can also be a pair (tuple) of
1573
+ (connection, read) timeouts.
1574
+ :type _request_timeout: int, tuple(int, int), optional
1575
+ :param _request_auth: set to override the auth_settings for an a single
1576
+ request; this effectively ignores the
1577
+ authentication in the spec for a single request.
1578
+ :type _request_auth: dict, optional
1579
+ :param _content_type: force content-type for the request.
1580
+ :type _content_type: str, Optional
1581
+ :param _headers: set to override the headers for a single
1582
+ request; this effectively ignores the headers
1583
+ in the spec for a single request.
1584
+ :type _headers: dict, optional
1585
+ :param _host_index: set to override the host_index for a single
1586
+ request; this effectively ignores the host_index
1587
+ in the spec for a single request.
1588
+ :type _host_index: int, optional
1589
+ :return: Returns the result object.
1590
+ """ # noqa: E501
1591
+
1592
+ _param = self._delete_profinet_io_serialize(
1593
+ cell=cell,
1594
+ io=io,
1595
+ _request_auth=_request_auth,
1596
+ _content_type=_content_type,
1597
+ _headers=_headers,
1598
+ _host_index=_host_index
1599
+ )
1600
+
1601
+ _response_types_map: Dict[str, Optional[str]] = {
1602
+ '200': None,
1603
+ '400': "Error",
1604
+ '404': "Error",
1605
+ }
1606
+ response_data = await self.api_client.call_api(
1607
+ *_param,
1608
+ _request_timeout=_request_timeout
1609
+ )
1610
+ await response_data.read()
1611
+ return self.api_client.response_deserialize(
1612
+ response_data=response_data,
1613
+ response_types_map=_response_types_map,
1614
+ ).data
1615
+
1616
+
1617
+ @validate_call
1618
+ async def delete_profinet_io_with_http_info(
1619
+ self,
1620
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1621
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
1622
+ _request_timeout: Union[
1623
+ None,
1624
+ Annotated[StrictFloat, Field(gt=0)],
1625
+ Tuple[
1626
+ Annotated[StrictFloat, Field(gt=0)],
1627
+ Annotated[StrictFloat, Field(gt=0)]
1628
+ ]
1629
+ ] = None,
1630
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1631
+ _content_type: Optional[StrictStr] = None,
1632
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1633
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1634
+ ) -> ApiResponse[None]:
1635
+ """Remove PROFINET Input/Ouptut
1636
+
1637
+ Removes an input/output variable configuration from the PROFINET device, e.g., NOVA's PROFINET service.
1638
+
1639
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1640
+ :type cell: str
1641
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
1642
+ :type io: str
1643
+ :param _request_timeout: timeout setting for this request. If one
1644
+ number provided, it will be total request
1645
+ timeout. It can also be a pair (tuple) of
1646
+ (connection, read) timeouts.
1647
+ :type _request_timeout: int, tuple(int, int), optional
1648
+ :param _request_auth: set to override the auth_settings for an a single
1649
+ request; this effectively ignores the
1650
+ authentication in the spec for a single request.
1651
+ :type _request_auth: dict, optional
1652
+ :param _content_type: force content-type for the request.
1653
+ :type _content_type: str, Optional
1654
+ :param _headers: set to override the headers for a single
1655
+ request; this effectively ignores the headers
1656
+ in the spec for a single request.
1657
+ :type _headers: dict, optional
1658
+ :param _host_index: set to override the host_index for a single
1659
+ request; this effectively ignores the host_index
1660
+ in the spec for a single request.
1661
+ :type _host_index: int, optional
1662
+ :return: Returns the result object.
1663
+ """ # noqa: E501
1664
+
1665
+ _param = self._delete_profinet_io_serialize(
1666
+ cell=cell,
1667
+ io=io,
1668
+ _request_auth=_request_auth,
1669
+ _content_type=_content_type,
1670
+ _headers=_headers,
1671
+ _host_index=_host_index
1672
+ )
1673
+
1674
+ _response_types_map: Dict[str, Optional[str]] = {
1675
+ '200': None,
1676
+ '400': "Error",
1677
+ '404': "Error",
1678
+ }
1679
+ response_data = await self.api_client.call_api(
1680
+ *_param,
1681
+ _request_timeout=_request_timeout
1682
+ )
1683
+ await response_data.read()
1684
+ return self.api_client.response_deserialize(
1685
+ response_data=response_data,
1686
+ response_types_map=_response_types_map,
1687
+ )
1688
+
1689
+
1690
+ @validate_call
1691
+ async def delete_profinet_io_without_preload_content(
1692
+ self,
1693
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1694
+ io: Annotated[StrictStr, Field(description="Unique identifier to address an Input/Output in the cell.")],
1695
+ _request_timeout: Union[
1696
+ None,
1697
+ Annotated[StrictFloat, Field(gt=0)],
1698
+ Tuple[
1699
+ Annotated[StrictFloat, Field(gt=0)],
1700
+ Annotated[StrictFloat, Field(gt=0)]
1701
+ ]
1702
+ ] = None,
1703
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1704
+ _content_type: Optional[StrictStr] = None,
1705
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1706
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1707
+ ) -> RESTResponseType:
1708
+ """Remove PROFINET Input/Ouptut
1709
+
1710
+ Removes an input/output variable configuration from the PROFINET device, e.g., NOVA's PROFINET service.
1711
+
1712
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1713
+ :type cell: str
1714
+ :param io: Unique identifier to address an Input/Output in the cell. (required)
1715
+ :type io: str
1716
+ :param _request_timeout: timeout setting for this request. If one
1717
+ number provided, it will be total request
1718
+ timeout. It can also be a pair (tuple) of
1719
+ (connection, read) timeouts.
1720
+ :type _request_timeout: int, tuple(int, int), optional
1721
+ :param _request_auth: set to override the auth_settings for an a single
1722
+ request; this effectively ignores the
1723
+ authentication in the spec for a single request.
1724
+ :type _request_auth: dict, optional
1725
+ :param _content_type: force content-type for the request.
1726
+ :type _content_type: str, Optional
1727
+ :param _headers: set to override the headers for a single
1728
+ request; this effectively ignores the headers
1729
+ in the spec for a single request.
1730
+ :type _headers: dict, optional
1731
+ :param _host_index: set to override the host_index for a single
1732
+ request; this effectively ignores the host_index
1733
+ in the spec for a single request.
1734
+ :type _host_index: int, optional
1735
+ :return: Returns the result object.
1736
+ """ # noqa: E501
1737
+
1738
+ _param = self._delete_profinet_io_serialize(
1739
+ cell=cell,
1740
+ io=io,
1741
+ _request_auth=_request_auth,
1742
+ _content_type=_content_type,
1743
+ _headers=_headers,
1744
+ _host_index=_host_index
1745
+ )
1746
+
1747
+ _response_types_map: Dict[str, Optional[str]] = {
1748
+ '200': None,
1749
+ '400': "Error",
1750
+ '404': "Error",
1751
+ }
1752
+ response_data = await self.api_client.call_api(
1753
+ *_param,
1754
+ _request_timeout=_request_timeout
1755
+ )
1756
+ return response_data.response
1757
+
1758
+
1759
+ def _delete_profinet_io_serialize(
1760
+ self,
1761
+ cell,
1762
+ io,
1763
+ _request_auth,
1764
+ _content_type,
1765
+ _headers,
1766
+ _host_index,
1767
+ ) -> RequestSerialized:
1768
+
1769
+ _host = None
1770
+
1771
+ _collection_formats: Dict[str, str] = {
1772
+ }
1773
+
1774
+ _path_params: Dict[str, str] = {}
1775
+ _query_params: List[Tuple[str, str]] = []
1776
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1777
+ _form_params: List[Tuple[str, str]] = []
1778
+ _files: Dict[str, Union[str, bytes]] = {}
1779
+ _body_params: Optional[bytes] = None
1780
+
1781
+ # process the path parameters
1782
+ if cell is not None:
1783
+ _path_params['cell'] = cell
1784
+ if io is not None:
1785
+ _path_params['io'] = io
1786
+ # process the query parameters
1787
+ # process the header parameters
1788
+ # process the form parameters
1789
+ # process the body parameter
1790
+
1791
+
1792
+ # set the HTTP header `Accept`
1793
+ _header_params['Accept'] = self.api_client.select_header_accept(
1794
+ [
1795
+ 'application/json'
1796
+ ]
1797
+ )
1798
+
1799
+
1800
+ # authentication setting
1801
+ _auth_settings: List[str] = [
1802
+ 'BasicAuth',
1803
+ 'BearerAuth'
1804
+ ]
1805
+
1806
+ return self.api_client.param_serialize(
1807
+ method='DELETE',
1808
+ resource_path='/cells/{cell}/bus-ios/profinet/ios/{io}',
1809
+ path_params=_path_params,
1810
+ query_params=_query_params,
1811
+ header_params=_header_params,
1812
+ body=_body_params,
1813
+ post_params=_form_params,
1814
+ files=_files,
1815
+ auth_settings=_auth_settings,
1816
+ collection_formats=_collection_formats,
1817
+ _host=_host,
1818
+ _request_auth=_request_auth
1819
+ )
1820
+
1821
+
1822
+
1823
+ @validate_call
1824
+ async def get_bus_io_service(
1825
+ self,
1826
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1827
+ _request_timeout: Union[
1828
+ None,
1829
+ Annotated[StrictFloat, Field(gt=0)],
1830
+ Tuple[
1831
+ Annotated[StrictFloat, Field(gt=0)],
1832
+ Annotated[StrictFloat, Field(gt=0)]
1833
+ ]
1834
+ ] = None,
1835
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1836
+ _content_type: Optional[StrictStr] = None,
1837
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1838
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1839
+ ) -> BusIOType:
1840
+ """Get Service
1841
+
1842
+ Get deployed BUS inputs/outputs service.
1843
+
1844
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1845
+ :type cell: str
1846
+ :param _request_timeout: timeout setting for this request. If one
1847
+ number provided, it will be total request
1848
+ timeout. It can also be a pair (tuple) of
1849
+ (connection, read) timeouts.
1850
+ :type _request_timeout: int, tuple(int, int), optional
1851
+ :param _request_auth: set to override the auth_settings for an a single
1852
+ request; this effectively ignores the
1853
+ authentication in the spec for a single request.
1854
+ :type _request_auth: dict, optional
1855
+ :param _content_type: force content-type for the request.
1856
+ :type _content_type: str, Optional
1857
+ :param _headers: set to override the headers for a single
1858
+ request; this effectively ignores the headers
1859
+ in the spec for a single request.
1860
+ :type _headers: dict, optional
1861
+ :param _host_index: set to override the host_index for a single
1862
+ request; this effectively ignores the host_index
1863
+ in the spec for a single request.
1864
+ :type _host_index: int, optional
1865
+ :return: Returns the result object.
1866
+ """ # noqa: E501
1867
+
1868
+ _param = self._get_bus_io_service_serialize(
1869
+ cell=cell,
1870
+ _request_auth=_request_auth,
1871
+ _content_type=_content_type,
1872
+ _headers=_headers,
1873
+ _host_index=_host_index
1874
+ )
1875
+
1876
+ _response_types_map: Dict[str, Optional[str]] = {
1877
+ '200': "BusIOType",
1878
+ '404': "Error",
1879
+ }
1880
+ response_data = await self.api_client.call_api(
1881
+ *_param,
1882
+ _request_timeout=_request_timeout
1883
+ )
1884
+ await response_data.read()
1885
+ return self.api_client.response_deserialize(
1886
+ response_data=response_data,
1887
+ response_types_map=_response_types_map,
1888
+ ).data
1889
+
1890
+
1891
+ @validate_call
1892
+ async def get_bus_io_service_with_http_info(
1893
+ self,
1894
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1895
+ _request_timeout: Union[
1896
+ None,
1897
+ Annotated[StrictFloat, Field(gt=0)],
1898
+ Tuple[
1899
+ Annotated[StrictFloat, Field(gt=0)],
1900
+ Annotated[StrictFloat, Field(gt=0)]
1901
+ ]
1902
+ ] = None,
1903
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1904
+ _content_type: Optional[StrictStr] = None,
1905
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1906
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1907
+ ) -> ApiResponse[BusIOType]:
1908
+ """Get Service
1909
+
1910
+ Get deployed BUS inputs/outputs service.
1911
+
1912
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1913
+ :type cell: str
1914
+ :param _request_timeout: timeout setting for this request. If one
1915
+ number provided, it will be total request
1916
+ timeout. It can also be a pair (tuple) of
1917
+ (connection, read) timeouts.
1918
+ :type _request_timeout: int, tuple(int, int), optional
1919
+ :param _request_auth: set to override the auth_settings for an a single
1920
+ request; this effectively ignores the
1921
+ authentication in the spec for a single request.
1922
+ :type _request_auth: dict, optional
1923
+ :param _content_type: force content-type for the request.
1924
+ :type _content_type: str, Optional
1925
+ :param _headers: set to override the headers for a single
1926
+ request; this effectively ignores the headers
1927
+ in the spec for a single request.
1928
+ :type _headers: dict, optional
1929
+ :param _host_index: set to override the host_index for a single
1930
+ request; this effectively ignores the host_index
1931
+ in the spec for a single request.
1932
+ :type _host_index: int, optional
1933
+ :return: Returns the result object.
1934
+ """ # noqa: E501
1935
+
1936
+ _param = self._get_bus_io_service_serialize(
1937
+ cell=cell,
1938
+ _request_auth=_request_auth,
1939
+ _content_type=_content_type,
1940
+ _headers=_headers,
1941
+ _host_index=_host_index
1942
+ )
1943
+
1944
+ _response_types_map: Dict[str, Optional[str]] = {
1945
+ '200': "BusIOType",
1946
+ '404': "Error",
1947
+ }
1948
+ response_data = await self.api_client.call_api(
1949
+ *_param,
1950
+ _request_timeout=_request_timeout
1951
+ )
1952
+ await response_data.read()
1953
+ return self.api_client.response_deserialize(
1954
+ response_data=response_data,
1955
+ response_types_map=_response_types_map,
1956
+ )
1957
+
1958
+
1959
+ @validate_call
1960
+ async def get_bus_io_service_without_preload_content(
1961
+ self,
1962
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
1963
+ _request_timeout: Union[
1964
+ None,
1965
+ Annotated[StrictFloat, Field(gt=0)],
1966
+ Tuple[
1967
+ Annotated[StrictFloat, Field(gt=0)],
1968
+ Annotated[StrictFloat, Field(gt=0)]
1969
+ ]
1970
+ ] = None,
1971
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1972
+ _content_type: Optional[StrictStr] = None,
1973
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1974
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1975
+ ) -> RESTResponseType:
1976
+ """Get Service
1977
+
1978
+ Get deployed BUS inputs/outputs service.
1979
+
1980
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
1981
+ :type cell: str
1982
+ :param _request_timeout: timeout setting for this request. If one
1983
+ number provided, it will be total request
1984
+ timeout. It can also be a pair (tuple) of
1985
+ (connection, read) timeouts.
1986
+ :type _request_timeout: int, tuple(int, int), optional
1987
+ :param _request_auth: set to override the auth_settings for an a single
1988
+ request; this effectively ignores the
1989
+ authentication in the spec for a single request.
1990
+ :type _request_auth: dict, optional
1991
+ :param _content_type: force content-type for the request.
1992
+ :type _content_type: str, Optional
1993
+ :param _headers: set to override the headers for a single
1994
+ request; this effectively ignores the headers
1995
+ in the spec for a single request.
1996
+ :type _headers: dict, optional
1997
+ :param _host_index: set to override the host_index for a single
1998
+ request; this effectively ignores the host_index
1999
+ in the spec for a single request.
2000
+ :type _host_index: int, optional
2001
+ :return: Returns the result object.
2002
+ """ # noqa: E501
2003
+
2004
+ _param = self._get_bus_io_service_serialize(
2005
+ cell=cell,
2006
+ _request_auth=_request_auth,
2007
+ _content_type=_content_type,
2008
+ _headers=_headers,
2009
+ _host_index=_host_index
2010
+ )
2011
+
2012
+ _response_types_map: Dict[str, Optional[str]] = {
2013
+ '200': "BusIOType",
2014
+ '404': "Error",
2015
+ }
2016
+ response_data = await self.api_client.call_api(
2017
+ *_param,
2018
+ _request_timeout=_request_timeout
2019
+ )
2020
+ return response_data.response
2021
+
2022
+
2023
+ def _get_bus_io_service_serialize(
2024
+ self,
2025
+ cell,
2026
+ _request_auth,
2027
+ _content_type,
2028
+ _headers,
2029
+ _host_index,
2030
+ ) -> RequestSerialized:
2031
+
2032
+ _host = None
2033
+
2034
+ _collection_formats: Dict[str, str] = {
2035
+ }
2036
+
2037
+ _path_params: Dict[str, str] = {}
2038
+ _query_params: List[Tuple[str, str]] = []
2039
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2040
+ _form_params: List[Tuple[str, str]] = []
2041
+ _files: Dict[str, Union[str, bytes]] = {}
2042
+ _body_params: Optional[bytes] = None
2043
+
2044
+ # process the path parameters
2045
+ if cell is not None:
2046
+ _path_params['cell'] = cell
2047
+ # process the query parameters
2048
+ # process the header parameters
2049
+ # process the form parameters
2050
+ # process the body parameter
2051
+
2052
+
2053
+ # set the HTTP header `Accept`
2054
+ _header_params['Accept'] = self.api_client.select_header_accept(
2055
+ [
2056
+ 'application/json'
2057
+ ]
2058
+ )
2059
+
2060
+
2061
+ # authentication setting
2062
+ _auth_settings: List[str] = [
2063
+ 'BasicAuth',
2064
+ 'BearerAuth'
2065
+ ]
2066
+
2067
+ return self.api_client.param_serialize(
2068
+ method='GET',
2069
+ resource_path='/cells/{cell}/bus-ios',
2070
+ path_params=_path_params,
2071
+ query_params=_query_params,
2072
+ header_params=_header_params,
2073
+ body=_body_params,
2074
+ post_params=_form_params,
2075
+ files=_files,
2076
+ auth_settings=_auth_settings,
2077
+ collection_formats=_collection_formats,
2078
+ _host=_host,
2079
+ _request_auth=_request_auth
2080
+ )
2081
+
2082
+
2083
+
2084
+ @validate_call
2085
+ async def get_bus_io_state(
2086
+ self,
2087
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2088
+ _request_timeout: Union[
2089
+ None,
2090
+ Annotated[StrictFloat, Field(gt=0)],
2091
+ Tuple[
2092
+ Annotated[StrictFloat, Field(gt=0)],
2093
+ Annotated[StrictFloat, Field(gt=0)]
2094
+ ]
2095
+ ] = None,
2096
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2097
+ _content_type: Optional[StrictStr] = None,
2098
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2099
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2100
+ ) -> BusIOsState:
2101
+ """State
2102
+
2103
+ Get the current state of the BUS Inputs/Outputs service.
2104
+
2105
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2106
+ :type cell: str
2107
+ :param _request_timeout: timeout setting for this request. If one
2108
+ number provided, it will be total request
2109
+ timeout. It can also be a pair (tuple) of
2110
+ (connection, read) timeouts.
2111
+ :type _request_timeout: int, tuple(int, int), optional
2112
+ :param _request_auth: set to override the auth_settings for an a single
2113
+ request; this effectively ignores the
2114
+ authentication in the spec for a single request.
2115
+ :type _request_auth: dict, optional
2116
+ :param _content_type: force content-type for the request.
2117
+ :type _content_type: str, Optional
2118
+ :param _headers: set to override the headers for a single
2119
+ request; this effectively ignores the headers
2120
+ in the spec for a single request.
2121
+ :type _headers: dict, optional
2122
+ :param _host_index: set to override the host_index for a single
2123
+ request; this effectively ignores the host_index
2124
+ in the spec for a single request.
2125
+ :type _host_index: int, optional
2126
+ :return: Returns the result object.
2127
+ """ # noqa: E501
2128
+
2129
+ _param = self._get_bus_io_state_serialize(
2130
+ cell=cell,
2131
+ _request_auth=_request_auth,
2132
+ _content_type=_content_type,
2133
+ _headers=_headers,
2134
+ _host_index=_host_index
2135
+ )
2136
+
2137
+ _response_types_map: Dict[str, Optional[str]] = {
2138
+ '200': "BusIOsState",
2139
+ '404': "Error",
2140
+ }
2141
+ response_data = await self.api_client.call_api(
2142
+ *_param,
2143
+ _request_timeout=_request_timeout
2144
+ )
2145
+ await response_data.read()
2146
+ return self.api_client.response_deserialize(
2147
+ response_data=response_data,
2148
+ response_types_map=_response_types_map,
2149
+ ).data
2150
+
2151
+
2152
+ @validate_call
2153
+ async def get_bus_io_state_with_http_info(
2154
+ self,
2155
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2156
+ _request_timeout: Union[
2157
+ None,
2158
+ Annotated[StrictFloat, Field(gt=0)],
2159
+ Tuple[
2160
+ Annotated[StrictFloat, Field(gt=0)],
2161
+ Annotated[StrictFloat, Field(gt=0)]
2162
+ ]
2163
+ ] = None,
2164
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2165
+ _content_type: Optional[StrictStr] = None,
2166
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2167
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2168
+ ) -> ApiResponse[BusIOsState]:
2169
+ """State
2170
+
2171
+ Get the current state of the BUS Inputs/Outputs service.
2172
+
2173
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2174
+ :type cell: str
2175
+ :param _request_timeout: timeout setting for this request. If one
2176
+ number provided, it will be total request
2177
+ timeout. It can also be a pair (tuple) of
2178
+ (connection, read) timeouts.
2179
+ :type _request_timeout: int, tuple(int, int), optional
2180
+ :param _request_auth: set to override the auth_settings for an a single
2181
+ request; this effectively ignores the
2182
+ authentication in the spec for a single request.
2183
+ :type _request_auth: dict, optional
2184
+ :param _content_type: force content-type for the request.
2185
+ :type _content_type: str, Optional
2186
+ :param _headers: set to override the headers for a single
2187
+ request; this effectively ignores the headers
2188
+ in the spec for a single request.
2189
+ :type _headers: dict, optional
2190
+ :param _host_index: set to override the host_index for a single
2191
+ request; this effectively ignores the host_index
2192
+ in the spec for a single request.
2193
+ :type _host_index: int, optional
2194
+ :return: Returns the result object.
2195
+ """ # noqa: E501
2196
+
2197
+ _param = self._get_bus_io_state_serialize(
2198
+ cell=cell,
2199
+ _request_auth=_request_auth,
2200
+ _content_type=_content_type,
2201
+ _headers=_headers,
2202
+ _host_index=_host_index
2203
+ )
2204
+
2205
+ _response_types_map: Dict[str, Optional[str]] = {
2206
+ '200': "BusIOsState",
2207
+ '404': "Error",
2208
+ }
2209
+ response_data = await self.api_client.call_api(
2210
+ *_param,
2211
+ _request_timeout=_request_timeout
2212
+ )
2213
+ await response_data.read()
2214
+ return self.api_client.response_deserialize(
2215
+ response_data=response_data,
2216
+ response_types_map=_response_types_map,
2217
+ )
2218
+
2219
+
2220
+ @validate_call
2221
+ async def get_bus_io_state_without_preload_content(
2222
+ self,
2223
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2224
+ _request_timeout: Union[
2225
+ None,
2226
+ Annotated[StrictFloat, Field(gt=0)],
2227
+ Tuple[
2228
+ Annotated[StrictFloat, Field(gt=0)],
2229
+ Annotated[StrictFloat, Field(gt=0)]
2230
+ ]
2231
+ ] = None,
2232
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2233
+ _content_type: Optional[StrictStr] = None,
2234
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2235
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2236
+ ) -> RESTResponseType:
2237
+ """State
2238
+
2239
+ Get the current state of the BUS Inputs/Outputs service.
2240
+
2241
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2242
+ :type cell: str
2243
+ :param _request_timeout: timeout setting for this request. If one
2244
+ number provided, it will be total request
2245
+ timeout. It can also be a pair (tuple) of
2246
+ (connection, read) timeouts.
2247
+ :type _request_timeout: int, tuple(int, int), optional
2248
+ :param _request_auth: set to override the auth_settings for an a single
2249
+ request; this effectively ignores the
2250
+ authentication in the spec for a single request.
2251
+ :type _request_auth: dict, optional
2252
+ :param _content_type: force content-type for the request.
2253
+ :type _content_type: str, Optional
2254
+ :param _headers: set to override the headers for a single
2255
+ request; this effectively ignores the headers
2256
+ in the spec for a single request.
2257
+ :type _headers: dict, optional
2258
+ :param _host_index: set to override the host_index for a single
2259
+ request; this effectively ignores the host_index
2260
+ in the spec for a single request.
2261
+ :type _host_index: int, optional
2262
+ :return: Returns the result object.
2263
+ """ # noqa: E501
2264
+
2265
+ _param = self._get_bus_io_state_serialize(
2266
+ cell=cell,
2267
+ _request_auth=_request_auth,
2268
+ _content_type=_content_type,
2269
+ _headers=_headers,
2270
+ _host_index=_host_index
2271
+ )
2272
+
2273
+ _response_types_map: Dict[str, Optional[str]] = {
2274
+ '200': "BusIOsState",
2275
+ '404': "Error",
2276
+ }
2277
+ response_data = await self.api_client.call_api(
2278
+ *_param,
2279
+ _request_timeout=_request_timeout
2280
+ )
2281
+ return response_data.response
2282
+
2283
+
2284
+ def _get_bus_io_state_serialize(
2285
+ self,
2286
+ cell,
2287
+ _request_auth,
2288
+ _content_type,
2289
+ _headers,
2290
+ _host_index,
2291
+ ) -> RequestSerialized:
2292
+
2293
+ _host = None
2294
+
2295
+ _collection_formats: Dict[str, str] = {
2296
+ }
2297
+
2298
+ _path_params: Dict[str, str] = {}
2299
+ _query_params: List[Tuple[str, str]] = []
2300
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2301
+ _form_params: List[Tuple[str, str]] = []
2302
+ _files: Dict[str, Union[str, bytes]] = {}
2303
+ _body_params: Optional[bytes] = None
2304
+
2305
+ # process the path parameters
2306
+ if cell is not None:
2307
+ _path_params['cell'] = cell
2308
+ # process the query parameters
2309
+ # process the header parameters
2310
+ # process the form parameters
2311
+ # process the body parameter
2312
+
2313
+
2314
+ # set the HTTP header `Accept`
2315
+ _header_params['Accept'] = self.api_client.select_header_accept(
2316
+ [
2317
+ 'application/json'
2318
+ ]
2319
+ )
2320
+
2321
+
2322
+ # authentication setting
2323
+ _auth_settings: List[str] = [
2324
+ 'BasicAuth',
2325
+ 'BearerAuth'
2326
+ ]
2327
+
2328
+ return self.api_client.param_serialize(
2329
+ method='GET',
2330
+ resource_path='/cells/{cell}/bus-ios/state',
2331
+ path_params=_path_params,
2332
+ query_params=_query_params,
2333
+ header_params=_header_params,
2334
+ body=_body_params,
2335
+ post_params=_form_params,
2336
+ files=_files,
2337
+ auth_settings=_auth_settings,
2338
+ collection_formats=_collection_formats,
2339
+ _host=_host,
2340
+ _request_auth=_request_auth
2341
+ )
2342
+
2343
+
2344
+
2345
+ @validate_call
2346
+ async def get_bus_io_values(
2347
+ self,
2348
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2349
+ ios: Optional[List[StrictStr]] = None,
2350
+ _request_timeout: Union[
2351
+ None,
2352
+ Annotated[StrictFloat, Field(gt=0)],
2353
+ Tuple[
2354
+ Annotated[StrictFloat, Field(gt=0)],
2355
+ Annotated[StrictFloat, Field(gt=0)]
2356
+ ]
2357
+ ] = None,
2358
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2359
+ _content_type: Optional[StrictStr] = None,
2360
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2361
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2362
+ ) -> List[IOValue]:
2363
+ """Get Input/Output Values
2364
+
2365
+ 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 [listBusIODescriptions](listBusIODescriptions).
2366
+
2367
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2368
+ :type cell: str
2369
+ :param ios:
2370
+ :type ios: List[str]
2371
+ :param _request_timeout: timeout setting for this request. If one
2372
+ number provided, it will be total request
2373
+ timeout. It can also be a pair (tuple) of
2374
+ (connection, read) timeouts.
2375
+ :type _request_timeout: int, tuple(int, int), optional
2376
+ :param _request_auth: set to override the auth_settings for an a single
2377
+ request; this effectively ignores the
2378
+ authentication in the spec for a single request.
2379
+ :type _request_auth: dict, optional
2380
+ :param _content_type: force content-type for the request.
2381
+ :type _content_type: str, Optional
2382
+ :param _headers: set to override the headers for a single
2383
+ request; this effectively ignores the headers
2384
+ in the spec for a single request.
2385
+ :type _headers: dict, optional
2386
+ :param _host_index: set to override the host_index for a single
2387
+ request; this effectively ignores the host_index
2388
+ in the spec for a single request.
2389
+ :type _host_index: int, optional
2390
+ :return: Returns the result object.
2391
+ """ # noqa: E501
2392
+
2393
+ _param = self._get_bus_io_values_serialize(
2394
+ cell=cell,
2395
+ ios=ios,
2396
+ _request_auth=_request_auth,
2397
+ _content_type=_content_type,
2398
+ _headers=_headers,
2399
+ _host_index=_host_index
2400
+ )
2401
+
2402
+ _response_types_map: Dict[str, Optional[str]] = {
2403
+ '200': "List[IOValue]",
2404
+ '400': "Error",
2405
+ '404': "Error",
2406
+ }
2407
+ response_data = await self.api_client.call_api(
2408
+ *_param,
2409
+ _request_timeout=_request_timeout
2410
+ )
2411
+ await response_data.read()
2412
+ return self.api_client.response_deserialize(
2413
+ response_data=response_data,
2414
+ response_types_map=_response_types_map,
2415
+ ).data
2416
+
2417
+
2418
+ @validate_call
2419
+ async def get_bus_io_values_with_http_info(
2420
+ self,
2421
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2422
+ ios: Optional[List[StrictStr]] = None,
2423
+ _request_timeout: Union[
2424
+ None,
2425
+ Annotated[StrictFloat, Field(gt=0)],
2426
+ Tuple[
2427
+ Annotated[StrictFloat, Field(gt=0)],
2428
+ Annotated[StrictFloat, Field(gt=0)]
2429
+ ]
2430
+ ] = None,
2431
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2432
+ _content_type: Optional[StrictStr] = None,
2433
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2434
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2435
+ ) -> ApiResponse[List[IOValue]]:
2436
+ """Get Input/Output Values
2437
+
2438
+ 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 [listBusIODescriptions](listBusIODescriptions).
2439
+
2440
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2441
+ :type cell: str
2442
+ :param ios:
2443
+ :type ios: List[str]
2444
+ :param _request_timeout: timeout setting for this request. If one
2445
+ number provided, it will be total request
2446
+ timeout. It can also be a pair (tuple) of
2447
+ (connection, read) timeouts.
2448
+ :type _request_timeout: int, tuple(int, int), optional
2449
+ :param _request_auth: set to override the auth_settings for an a single
2450
+ request; this effectively ignores the
2451
+ authentication in the spec for a single request.
2452
+ :type _request_auth: dict, optional
2453
+ :param _content_type: force content-type for the request.
2454
+ :type _content_type: str, Optional
2455
+ :param _headers: set to override the headers for a single
2456
+ request; this effectively ignores the headers
2457
+ in the spec for a single request.
2458
+ :type _headers: dict, optional
2459
+ :param _host_index: set to override the host_index for a single
2460
+ request; this effectively ignores the host_index
2461
+ in the spec for a single request.
2462
+ :type _host_index: int, optional
2463
+ :return: Returns the result object.
2464
+ """ # noqa: E501
2465
+
2466
+ _param = self._get_bus_io_values_serialize(
2467
+ cell=cell,
2468
+ ios=ios,
2469
+ _request_auth=_request_auth,
2470
+ _content_type=_content_type,
2471
+ _headers=_headers,
2472
+ _host_index=_host_index
2473
+ )
2474
+
2475
+ _response_types_map: Dict[str, Optional[str]] = {
2476
+ '200': "List[IOValue]",
2477
+ '400': "Error",
2478
+ '404': "Error",
2479
+ }
2480
+ response_data = await self.api_client.call_api(
2481
+ *_param,
2482
+ _request_timeout=_request_timeout
2483
+ )
2484
+ await response_data.read()
2485
+ return self.api_client.response_deserialize(
2486
+ response_data=response_data,
2487
+ response_types_map=_response_types_map,
2488
+ )
2489
+
2490
+
2491
+ @validate_call
2492
+ async def get_bus_io_values_without_preload_content(
2493
+ self,
2494
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2495
+ ios: Optional[List[StrictStr]] = None,
2496
+ _request_timeout: Union[
2497
+ None,
2498
+ Annotated[StrictFloat, Field(gt=0)],
2499
+ Tuple[
2500
+ Annotated[StrictFloat, Field(gt=0)],
2501
+ Annotated[StrictFloat, Field(gt=0)]
2502
+ ]
2503
+ ] = None,
2504
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2505
+ _content_type: Optional[StrictStr] = None,
2506
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2507
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2508
+ ) -> RESTResponseType:
2509
+ """Get Input/Output Values
2510
+
2511
+ 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 [listBusIODescriptions](listBusIODescriptions).
2512
+
2513
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2514
+ :type cell: str
2515
+ :param ios:
2516
+ :type ios: List[str]
2517
+ :param _request_timeout: timeout setting for this request. If one
2518
+ number provided, it will be total request
2519
+ timeout. It can also be a pair (tuple) of
2520
+ (connection, read) timeouts.
2521
+ :type _request_timeout: int, tuple(int, int), optional
2522
+ :param _request_auth: set to override the auth_settings for an a single
2523
+ request; this effectively ignores the
2524
+ authentication in the spec for a single request.
2525
+ :type _request_auth: dict, optional
2526
+ :param _content_type: force content-type for the request.
2527
+ :type _content_type: str, Optional
2528
+ :param _headers: set to override the headers for a single
2529
+ request; this effectively ignores the headers
2530
+ in the spec for a single request.
2531
+ :type _headers: dict, optional
2532
+ :param _host_index: set to override the host_index for a single
2533
+ request; this effectively ignores the host_index
2534
+ in the spec for a single request.
2535
+ :type _host_index: int, optional
2536
+ :return: Returns the result object.
2537
+ """ # noqa: E501
2538
+
2539
+ _param = self._get_bus_io_values_serialize(
2540
+ cell=cell,
2541
+ ios=ios,
2542
+ _request_auth=_request_auth,
2543
+ _content_type=_content_type,
2544
+ _headers=_headers,
2545
+ _host_index=_host_index
2546
+ )
2547
+
2548
+ _response_types_map: Dict[str, Optional[str]] = {
2549
+ '200': "List[IOValue]",
2550
+ '400': "Error",
2551
+ '404': "Error",
2552
+ }
2553
+ response_data = await self.api_client.call_api(
2554
+ *_param,
2555
+ _request_timeout=_request_timeout
2556
+ )
2557
+ return response_data.response
2558
+
2559
+
2560
+ def _get_bus_io_values_serialize(
2561
+ self,
2562
+ cell,
2563
+ ios,
2564
+ _request_auth,
2565
+ _content_type,
2566
+ _headers,
2567
+ _host_index,
2568
+ ) -> RequestSerialized:
2569
+
2570
+ _host = None
2571
+
2572
+ _collection_formats: Dict[str, str] = {
2573
+ 'ios': 'multi',
2574
+ }
2575
+
2576
+ _path_params: Dict[str, str] = {}
2577
+ _query_params: List[Tuple[str, str]] = []
2578
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2579
+ _form_params: List[Tuple[str, str]] = []
2580
+ _files: Dict[str, Union[str, bytes]] = {}
2581
+ _body_params: Optional[bytes] = None
2582
+
2583
+ # process the path parameters
2584
+ if cell is not None:
2585
+ _path_params['cell'] = cell
2586
+ # process the query parameters
2587
+ if ios is not None:
2588
+
2589
+ _query_params.append(('ios', ios))
2590
+
2591
+ # process the header parameters
2592
+ # process the form parameters
2593
+ # process the body parameter
2594
+
2595
+
2596
+ # set the HTTP header `Accept`
2597
+ _header_params['Accept'] = self.api_client.select_header_accept(
2598
+ [
2599
+ 'application/json'
2600
+ ]
2601
+ )
2602
+
2603
+
2604
+ # authentication setting
2605
+ _auth_settings: List[str] = [
2606
+ 'BasicAuth',
2607
+ 'BearerAuth'
2608
+ ]
2609
+
2610
+ return self.api_client.param_serialize(
2611
+ method='GET',
2612
+ resource_path='/cells/{cell}/bus-ios/ios/values',
2613
+ path_params=_path_params,
2614
+ query_params=_query_params,
2615
+ header_params=_header_params,
2616
+ body=_body_params,
2617
+ post_params=_form_params,
2618
+ files=_files,
2619
+ auth_settings=_auth_settings,
2620
+ collection_formats=_collection_formats,
2621
+ _host=_host,
2622
+ _request_auth=_request_auth
2623
+ )
2624
+
2625
+
2626
+
2627
+ @validate_call
2628
+ async def get_profinet_description(
2629
+ self,
2630
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2631
+ _request_timeout: Union[
2632
+ None,
2633
+ Annotated[StrictFloat, Field(gt=0)],
2634
+ Tuple[
2635
+ Annotated[StrictFloat, Field(gt=0)],
2636
+ Annotated[StrictFloat, Field(gt=0)]
2637
+ ]
2638
+ ] = None,
2639
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2640
+ _content_type: Optional[StrictStr] = None,
2641
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2642
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2643
+ ) -> ProfinetDescription:
2644
+ """Get PROFINET Description
2645
+
2646
+ Get description of NOVA as a PROFINET device.
2647
+
2648
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2649
+ :type cell: str
2650
+ :param _request_timeout: timeout setting for this request. If one
2651
+ number provided, it will be total request
2652
+ timeout. It can also be a pair (tuple) of
2653
+ (connection, read) timeouts.
2654
+ :type _request_timeout: int, tuple(int, int), optional
2655
+ :param _request_auth: set to override the auth_settings for an a single
2656
+ request; this effectively ignores the
2657
+ authentication in the spec for a single request.
2658
+ :type _request_auth: dict, optional
2659
+ :param _content_type: force content-type for the request.
2660
+ :type _content_type: str, Optional
2661
+ :param _headers: set to override the headers for a single
2662
+ request; this effectively ignores the headers
2663
+ in the spec for a single request.
2664
+ :type _headers: dict, optional
2665
+ :param _host_index: set to override the host_index for a single
2666
+ request; this effectively ignores the host_index
2667
+ in the spec for a single request.
2668
+ :type _host_index: int, optional
2669
+ :return: Returns the result object.
2670
+ """ # noqa: E501
2671
+
2672
+ _param = self._get_profinet_description_serialize(
2673
+ cell=cell,
2674
+ _request_auth=_request_auth,
2675
+ _content_type=_content_type,
2676
+ _headers=_headers,
2677
+ _host_index=_host_index
2678
+ )
2679
+
2680
+ _response_types_map: Dict[str, Optional[str]] = {
2681
+ '200': "ProfinetDescription",
2682
+ '400': "Error",
2683
+ '404': "Error",
2684
+ }
2685
+ response_data = await self.api_client.call_api(
2686
+ *_param,
2687
+ _request_timeout=_request_timeout
2688
+ )
2689
+ await response_data.read()
2690
+ return self.api_client.response_deserialize(
2691
+ response_data=response_data,
2692
+ response_types_map=_response_types_map,
2693
+ ).data
2694
+
2695
+
2696
+ @validate_call
2697
+ async def get_profinet_description_with_http_info(
2698
+ self,
2699
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2700
+ _request_timeout: Union[
2701
+ None,
2702
+ Annotated[StrictFloat, Field(gt=0)],
2703
+ Tuple[
2704
+ Annotated[StrictFloat, Field(gt=0)],
2705
+ Annotated[StrictFloat, Field(gt=0)]
2706
+ ]
2707
+ ] = None,
2708
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2709
+ _content_type: Optional[StrictStr] = None,
2710
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2711
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2712
+ ) -> ApiResponse[ProfinetDescription]:
2713
+ """Get PROFINET Description
2714
+
2715
+ Get description of NOVA as a PROFINET device.
2716
+
2717
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2718
+ :type cell: str
2719
+ :param _request_timeout: timeout setting for this request. If one
2720
+ number provided, it will be total request
2721
+ timeout. It can also be a pair (tuple) of
2722
+ (connection, read) timeouts.
2723
+ :type _request_timeout: int, tuple(int, int), optional
2724
+ :param _request_auth: set to override the auth_settings for an a single
2725
+ request; this effectively ignores the
2726
+ authentication in the spec for a single request.
2727
+ :type _request_auth: dict, optional
2728
+ :param _content_type: force content-type for the request.
2729
+ :type _content_type: str, Optional
2730
+ :param _headers: set to override the headers for a single
2731
+ request; this effectively ignores the headers
2732
+ in the spec for a single request.
2733
+ :type _headers: dict, optional
2734
+ :param _host_index: set to override the host_index for a single
2735
+ request; this effectively ignores the host_index
2736
+ in the spec for a single request.
2737
+ :type _host_index: int, optional
2738
+ :return: Returns the result object.
2739
+ """ # noqa: E501
2740
+
2741
+ _param = self._get_profinet_description_serialize(
2742
+ cell=cell,
2743
+ _request_auth=_request_auth,
2744
+ _content_type=_content_type,
2745
+ _headers=_headers,
2746
+ _host_index=_host_index
2747
+ )
2748
+
2749
+ _response_types_map: Dict[str, Optional[str]] = {
2750
+ '200': "ProfinetDescription",
2751
+ '400': "Error",
2752
+ '404': "Error",
2753
+ }
2754
+ response_data = await self.api_client.call_api(
2755
+ *_param,
2756
+ _request_timeout=_request_timeout
2757
+ )
2758
+ await response_data.read()
2759
+ return self.api_client.response_deserialize(
2760
+ response_data=response_data,
2761
+ response_types_map=_response_types_map,
2762
+ )
2763
+
2764
+
2765
+ @validate_call
2766
+ async def get_profinet_description_without_preload_content(
2767
+ self,
2768
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2769
+ _request_timeout: Union[
2770
+ None,
2771
+ Annotated[StrictFloat, Field(gt=0)],
2772
+ Tuple[
2773
+ Annotated[StrictFloat, Field(gt=0)],
2774
+ Annotated[StrictFloat, Field(gt=0)]
2775
+ ]
2776
+ ] = None,
2777
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2778
+ _content_type: Optional[StrictStr] = None,
2779
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2780
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2781
+ ) -> RESTResponseType:
2782
+ """Get PROFINET Description
2783
+
2784
+ Get description of NOVA as a PROFINET device.
2785
+
2786
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2787
+ :type cell: str
2788
+ :param _request_timeout: timeout setting for this request. If one
2789
+ number provided, it will be total request
2790
+ timeout. It can also be a pair (tuple) of
2791
+ (connection, read) timeouts.
2792
+ :type _request_timeout: int, tuple(int, int), optional
2793
+ :param _request_auth: set to override the auth_settings for an a single
2794
+ request; this effectively ignores the
2795
+ authentication in the spec for a single request.
2796
+ :type _request_auth: dict, optional
2797
+ :param _content_type: force content-type for the request.
2798
+ :type _content_type: str, Optional
2799
+ :param _headers: set to override the headers for a single
2800
+ request; this effectively ignores the headers
2801
+ in the spec for a single request.
2802
+ :type _headers: dict, optional
2803
+ :param _host_index: set to override the host_index for a single
2804
+ request; this effectively ignores the host_index
2805
+ in the spec for a single request.
2806
+ :type _host_index: int, optional
2807
+ :return: Returns the result object.
2808
+ """ # noqa: E501
2809
+
2810
+ _param = self._get_profinet_description_serialize(
2811
+ cell=cell,
2812
+ _request_auth=_request_auth,
2813
+ _content_type=_content_type,
2814
+ _headers=_headers,
2815
+ _host_index=_host_index
2816
+ )
2817
+
2818
+ _response_types_map: Dict[str, Optional[str]] = {
2819
+ '200': "ProfinetDescription",
2820
+ '400': "Error",
2821
+ '404': "Error",
2822
+ }
2823
+ response_data = await self.api_client.call_api(
2824
+ *_param,
2825
+ _request_timeout=_request_timeout
2826
+ )
2827
+ return response_data.response
2828
+
2829
+
2830
+ def _get_profinet_description_serialize(
2831
+ self,
2832
+ cell,
2833
+ _request_auth,
2834
+ _content_type,
2835
+ _headers,
2836
+ _host_index,
2837
+ ) -> RequestSerialized:
2838
+
2839
+ _host = None
2840
+
2841
+ _collection_formats: Dict[str, str] = {
2842
+ }
2843
+
2844
+ _path_params: Dict[str, str] = {}
2845
+ _query_params: List[Tuple[str, str]] = []
2846
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2847
+ _form_params: List[Tuple[str, str]] = []
2848
+ _files: Dict[str, Union[str, bytes]] = {}
2849
+ _body_params: Optional[bytes] = None
2850
+
2851
+ # process the path parameters
2852
+ if cell is not None:
2853
+ _path_params['cell'] = cell
2854
+ # process the query parameters
2855
+ # process the header parameters
2856
+ # process the form parameters
2857
+ # process the body parameter
2858
+
2859
+
2860
+ # set the HTTP header `Accept`
2861
+ _header_params['Accept'] = self.api_client.select_header_accept(
2862
+ [
2863
+ 'application/json'
2864
+ ]
2865
+ )
2866
+
2867
+
2868
+ # authentication setting
2869
+ _auth_settings: List[str] = [
2870
+ 'BasicAuth',
2871
+ 'BearerAuth'
2872
+ ]
2873
+
2874
+ return self.api_client.param_serialize(
2875
+ method='GET',
2876
+ resource_path='/cells/{cell}/bus-ios/profinet/description',
2877
+ path_params=_path_params,
2878
+ query_params=_query_params,
2879
+ header_params=_header_params,
2880
+ body=_body_params,
2881
+ post_params=_form_params,
2882
+ files=_files,
2883
+ auth_settings=_auth_settings,
2884
+ collection_formats=_collection_formats,
2885
+ _host=_host,
2886
+ _request_auth=_request_auth
2887
+ )
2888
+
2889
+
2890
+
2891
+ @validate_call
2892
+ async def get_profinet_ios_from_file(
2893
+ self,
2894
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2895
+ input_offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
2896
+ output_offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
2897
+ _request_timeout: Union[
2898
+ None,
2899
+ Annotated[StrictFloat, Field(gt=0)],
2900
+ Tuple[
2901
+ Annotated[StrictFloat, Field(gt=0)],
2902
+ Annotated[StrictFloat, Field(gt=0)]
2903
+ ]
2904
+ ] = None,
2905
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2906
+ _content_type: Optional[StrictStr] = None,
2907
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2908
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2909
+ ) -> str:
2910
+ """PROFINET Inputs/Outputs to File
2911
+
2912
+ Get input/output variable configuration of the PROFINET device, e.g., NOVA's PROFINET service as file. You can specify byte offsets for the input and output variable addresses to get an XML tagmap that is ready to paste to the third party software, e.g., TIA portal.
2913
+
2914
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2915
+ :type cell: str
2916
+ :param input_offset:
2917
+ :type input_offset: int
2918
+ :param output_offset:
2919
+ :type output_offset: int
2920
+ :param _request_timeout: timeout setting for this request. If one
2921
+ number provided, it will be total request
2922
+ timeout. It can also be a pair (tuple) of
2923
+ (connection, read) timeouts.
2924
+ :type _request_timeout: int, tuple(int, int), optional
2925
+ :param _request_auth: set to override the auth_settings for an a single
2926
+ request; this effectively ignores the
2927
+ authentication in the spec for a single request.
2928
+ :type _request_auth: dict, optional
2929
+ :param _content_type: force content-type for the request.
2930
+ :type _content_type: str, Optional
2931
+ :param _headers: set to override the headers for a single
2932
+ request; this effectively ignores the headers
2933
+ in the spec for a single request.
2934
+ :type _headers: dict, optional
2935
+ :param _host_index: set to override the host_index for a single
2936
+ request; this effectively ignores the host_index
2937
+ in the spec for a single request.
2938
+ :type _host_index: int, optional
2939
+ :return: Returns the result object.
2940
+ """ # noqa: E501
2941
+
2942
+ _param = self._get_profinet_ios_from_file_serialize(
2943
+ cell=cell,
2944
+ input_offset=input_offset,
2945
+ output_offset=output_offset,
2946
+ _request_auth=_request_auth,
2947
+ _content_type=_content_type,
2948
+ _headers=_headers,
2949
+ _host_index=_host_index
2950
+ )
2951
+
2952
+ _response_types_map: Dict[str, Optional[str]] = {
2953
+ '200': "str",
2954
+ '400': "Error",
2955
+ '404': "Error",
2956
+ }
2957
+ response_data = await self.api_client.call_api(
2958
+ *_param,
2959
+ _request_timeout=_request_timeout
2960
+ )
2961
+ await response_data.read()
2962
+ return self.api_client.response_deserialize(
2963
+ response_data=response_data,
2964
+ response_types_map=_response_types_map,
2965
+ ).data
2966
+
2967
+
2968
+ @validate_call
2969
+ async def get_profinet_ios_from_file_with_http_info(
2970
+ self,
2971
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
2972
+ input_offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
2973
+ output_offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
2974
+ _request_timeout: Union[
2975
+ None,
2976
+ Annotated[StrictFloat, Field(gt=0)],
2977
+ Tuple[
2978
+ Annotated[StrictFloat, Field(gt=0)],
2979
+ Annotated[StrictFloat, Field(gt=0)]
2980
+ ]
2981
+ ] = None,
2982
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2983
+ _content_type: Optional[StrictStr] = None,
2984
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2985
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2986
+ ) -> ApiResponse[str]:
2987
+ """PROFINET Inputs/Outputs to File
2988
+
2989
+ Get input/output variable configuration of the PROFINET device, e.g., NOVA's PROFINET service as file. You can specify byte offsets for the input and output variable addresses to get an XML tagmap that is ready to paste to the third party software, e.g., TIA portal.
2990
+
2991
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
2992
+ :type cell: str
2993
+ :param input_offset:
2994
+ :type input_offset: int
2995
+ :param output_offset:
2996
+ :type output_offset: int
2997
+ :param _request_timeout: timeout setting for this request. If one
2998
+ number provided, it will be total request
2999
+ timeout. It can also be a pair (tuple) of
3000
+ (connection, read) timeouts.
3001
+ :type _request_timeout: int, tuple(int, int), optional
3002
+ :param _request_auth: set to override the auth_settings for an a single
3003
+ request; this effectively ignores the
3004
+ authentication in the spec for a single request.
3005
+ :type _request_auth: dict, optional
3006
+ :param _content_type: force content-type for the request.
3007
+ :type _content_type: str, Optional
3008
+ :param _headers: set to override the headers for a single
3009
+ request; this effectively ignores the headers
3010
+ in the spec for a single request.
3011
+ :type _headers: dict, optional
3012
+ :param _host_index: set to override the host_index for a single
3013
+ request; this effectively ignores the host_index
3014
+ in the spec for a single request.
3015
+ :type _host_index: int, optional
3016
+ :return: Returns the result object.
3017
+ """ # noqa: E501
3018
+
3019
+ _param = self._get_profinet_ios_from_file_serialize(
3020
+ cell=cell,
3021
+ input_offset=input_offset,
3022
+ output_offset=output_offset,
3023
+ _request_auth=_request_auth,
3024
+ _content_type=_content_type,
3025
+ _headers=_headers,
3026
+ _host_index=_host_index
3027
+ )
3028
+
3029
+ _response_types_map: Dict[str, Optional[str]] = {
3030
+ '200': "str",
3031
+ '400': "Error",
3032
+ '404': "Error",
3033
+ }
3034
+ response_data = await self.api_client.call_api(
3035
+ *_param,
3036
+ _request_timeout=_request_timeout
3037
+ )
3038
+ await response_data.read()
3039
+ return self.api_client.response_deserialize(
3040
+ response_data=response_data,
3041
+ response_types_map=_response_types_map,
3042
+ )
3043
+
3044
+
3045
+ @validate_call
3046
+ async def get_profinet_ios_from_file_without_preload_content(
3047
+ self,
3048
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3049
+ input_offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
3050
+ output_offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
3051
+ _request_timeout: Union[
3052
+ None,
3053
+ Annotated[StrictFloat, Field(gt=0)],
3054
+ Tuple[
3055
+ Annotated[StrictFloat, Field(gt=0)],
3056
+ Annotated[StrictFloat, Field(gt=0)]
3057
+ ]
3058
+ ] = None,
3059
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3060
+ _content_type: Optional[StrictStr] = None,
3061
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3062
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3063
+ ) -> RESTResponseType:
3064
+ """PROFINET Inputs/Outputs to File
3065
+
3066
+ Get input/output variable configuration of the PROFINET device, e.g., NOVA's PROFINET service as file. You can specify byte offsets for the input and output variable addresses to get an XML tagmap that is ready to paste to the third party software, e.g., TIA portal.
3067
+
3068
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3069
+ :type cell: str
3070
+ :param input_offset:
3071
+ :type input_offset: int
3072
+ :param output_offset:
3073
+ :type output_offset: int
3074
+ :param _request_timeout: timeout setting for this request. If one
3075
+ number provided, it will be total request
3076
+ timeout. It can also be a pair (tuple) of
3077
+ (connection, read) timeouts.
3078
+ :type _request_timeout: int, tuple(int, int), optional
3079
+ :param _request_auth: set to override the auth_settings for an a single
3080
+ request; this effectively ignores the
3081
+ authentication in the spec for a single request.
3082
+ :type _request_auth: dict, optional
3083
+ :param _content_type: force content-type for the request.
3084
+ :type _content_type: str, Optional
3085
+ :param _headers: set to override the headers for a single
3086
+ request; this effectively ignores the headers
3087
+ in the spec for a single request.
3088
+ :type _headers: dict, optional
3089
+ :param _host_index: set to override the host_index for a single
3090
+ request; this effectively ignores the host_index
3091
+ in the spec for a single request.
3092
+ :type _host_index: int, optional
3093
+ :return: Returns the result object.
3094
+ """ # noqa: E501
3095
+
3096
+ _param = self._get_profinet_ios_from_file_serialize(
3097
+ cell=cell,
3098
+ input_offset=input_offset,
3099
+ output_offset=output_offset,
3100
+ _request_auth=_request_auth,
3101
+ _content_type=_content_type,
3102
+ _headers=_headers,
3103
+ _host_index=_host_index
3104
+ )
3105
+
3106
+ _response_types_map: Dict[str, Optional[str]] = {
3107
+ '200': "str",
3108
+ '400': "Error",
3109
+ '404': "Error",
3110
+ }
3111
+ response_data = await self.api_client.call_api(
3112
+ *_param,
3113
+ _request_timeout=_request_timeout
3114
+ )
3115
+ return response_data.response
3116
+
3117
+
3118
+ def _get_profinet_ios_from_file_serialize(
3119
+ self,
3120
+ cell,
3121
+ input_offset,
3122
+ output_offset,
3123
+ _request_auth,
3124
+ _content_type,
3125
+ _headers,
3126
+ _host_index,
3127
+ ) -> RequestSerialized:
3128
+
3129
+ _host = None
3130
+
3131
+ _collection_formats: Dict[str, str] = {
3132
+ }
3133
+
3134
+ _path_params: Dict[str, str] = {}
3135
+ _query_params: List[Tuple[str, str]] = []
3136
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3137
+ _form_params: List[Tuple[str, str]] = []
3138
+ _files: Dict[str, Union[str, bytes]] = {}
3139
+ _body_params: Optional[bytes] = None
3140
+
3141
+ # process the path parameters
3142
+ if cell is not None:
3143
+ _path_params['cell'] = cell
3144
+ # process the query parameters
3145
+ if input_offset is not None:
3146
+
3147
+ _query_params.append(('input_offset', input_offset))
3148
+
3149
+ if output_offset is not None:
3150
+
3151
+ _query_params.append(('output_offset', output_offset))
3152
+
3153
+ # process the header parameters
3154
+ # process the form parameters
3155
+ # process the body parameter
3156
+
3157
+
3158
+ # set the HTTP header `Accept`
3159
+ _header_params['Accept'] = self.api_client.select_header_accept(
3160
+ [
3161
+ 'application/json'
3162
+ ]
3163
+ )
3164
+
3165
+
3166
+ # authentication setting
3167
+ _auth_settings: List[str] = [
3168
+ 'BasicAuth',
3169
+ 'BearerAuth'
3170
+ ]
3171
+
3172
+ return self.api_client.param_serialize(
3173
+ method='GET',
3174
+ resource_path='/cells/{cell}/bus-ios/profinet/iofile',
3175
+ path_params=_path_params,
3176
+ query_params=_query_params,
3177
+ header_params=_header_params,
3178
+ body=_body_params,
3179
+ post_params=_form_params,
3180
+ files=_files,
3181
+ auth_settings=_auth_settings,
3182
+ collection_formats=_collection_formats,
3183
+ _host=_host,
3184
+ _request_auth=_request_auth
3185
+ )
3186
+
3187
+
3188
+
3189
+ @validate_call
3190
+ async def list_bus_io_descriptions(
3191
+ self,
3192
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3193
+ _request_timeout: Union[
3194
+ None,
3195
+ Annotated[StrictFloat, Field(gt=0)],
3196
+ Tuple[
3197
+ Annotated[StrictFloat, Field(gt=0)],
3198
+ Annotated[StrictFloat, Field(gt=0)]
3199
+ ]
3200
+ ] = None,
3201
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3202
+ _content_type: Optional[StrictStr] = None,
3203
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3204
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3205
+ ) -> List[BusIODescription]:
3206
+ """List Descriptions
3207
+
3208
+ List all input/output descriptions for configured BUS services. The input/output descriptions contain information like name, type and unit. The input/output direction is given in perspective of the BUS service.
3209
+
3210
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3211
+ :type cell: str
3212
+ :param _request_timeout: timeout setting for this request. If one
3213
+ number provided, it will be total request
3214
+ timeout. It can also be a pair (tuple) of
3215
+ (connection, read) timeouts.
3216
+ :type _request_timeout: int, tuple(int, int), optional
3217
+ :param _request_auth: set to override the auth_settings for an a single
3218
+ request; this effectively ignores the
3219
+ authentication in the spec for a single request.
3220
+ :type _request_auth: dict, optional
3221
+ :param _content_type: force content-type for the request.
3222
+ :type _content_type: str, Optional
3223
+ :param _headers: set to override the headers for a single
3224
+ request; this effectively ignores the headers
3225
+ in the spec for a single request.
3226
+ :type _headers: dict, optional
3227
+ :param _host_index: set to override the host_index for a single
3228
+ request; this effectively ignores the host_index
3229
+ in the spec for a single request.
3230
+ :type _host_index: int, optional
3231
+ :return: Returns the result object.
3232
+ """ # noqa: E501
3233
+
3234
+ _param = self._list_bus_io_descriptions_serialize(
3235
+ cell=cell,
3236
+ _request_auth=_request_auth,
3237
+ _content_type=_content_type,
3238
+ _headers=_headers,
3239
+ _host_index=_host_index
3240
+ )
3241
+
3242
+ _response_types_map: Dict[str, Optional[str]] = {
3243
+ '200': "List[BusIODescription]",
3244
+ '404': "Error",
3245
+ }
3246
+ response_data = await self.api_client.call_api(
3247
+ *_param,
3248
+ _request_timeout=_request_timeout
3249
+ )
3250
+ await response_data.read()
3251
+ return self.api_client.response_deserialize(
3252
+ response_data=response_data,
3253
+ response_types_map=_response_types_map,
3254
+ ).data
3255
+
3256
+
3257
+ @validate_call
3258
+ async def list_bus_io_descriptions_with_http_info(
3259
+ self,
3260
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3261
+ _request_timeout: Union[
3262
+ None,
3263
+ Annotated[StrictFloat, Field(gt=0)],
3264
+ Tuple[
3265
+ Annotated[StrictFloat, Field(gt=0)],
3266
+ Annotated[StrictFloat, Field(gt=0)]
3267
+ ]
3268
+ ] = None,
3269
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3270
+ _content_type: Optional[StrictStr] = None,
3271
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3272
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3273
+ ) -> ApiResponse[List[BusIODescription]]:
3274
+ """List Descriptions
3275
+
3276
+ List all input/output descriptions for configured BUS services. The input/output descriptions contain information like name, type and unit. The input/output direction is given in perspective of the BUS service.
3277
+
3278
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3279
+ :type cell: str
3280
+ :param _request_timeout: timeout setting for this request. If one
3281
+ number provided, it will be total request
3282
+ timeout. It can also be a pair (tuple) of
3283
+ (connection, read) timeouts.
3284
+ :type _request_timeout: int, tuple(int, int), optional
3285
+ :param _request_auth: set to override the auth_settings for an a single
3286
+ request; this effectively ignores the
3287
+ authentication in the spec for a single request.
3288
+ :type _request_auth: dict, optional
3289
+ :param _content_type: force content-type for the request.
3290
+ :type _content_type: str, Optional
3291
+ :param _headers: set to override the headers for a single
3292
+ request; this effectively ignores the headers
3293
+ in the spec for a single request.
3294
+ :type _headers: dict, optional
3295
+ :param _host_index: set to override the host_index for a single
3296
+ request; this effectively ignores the host_index
3297
+ in the spec for a single request.
3298
+ :type _host_index: int, optional
3299
+ :return: Returns the result object.
3300
+ """ # noqa: E501
3301
+
3302
+ _param = self._list_bus_io_descriptions_serialize(
3303
+ cell=cell,
3304
+ _request_auth=_request_auth,
3305
+ _content_type=_content_type,
3306
+ _headers=_headers,
3307
+ _host_index=_host_index
3308
+ )
3309
+
3310
+ _response_types_map: Dict[str, Optional[str]] = {
3311
+ '200': "List[BusIODescription]",
3312
+ '404': "Error",
3313
+ }
3314
+ response_data = await self.api_client.call_api(
3315
+ *_param,
3316
+ _request_timeout=_request_timeout
3317
+ )
3318
+ await response_data.read()
3319
+ return self.api_client.response_deserialize(
3320
+ response_data=response_data,
3321
+ response_types_map=_response_types_map,
3322
+ )
3323
+
3324
+
3325
+ @validate_call
3326
+ async def list_bus_io_descriptions_without_preload_content(
3327
+ self,
3328
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3329
+ _request_timeout: Union[
3330
+ None,
3331
+ Annotated[StrictFloat, Field(gt=0)],
3332
+ Tuple[
3333
+ Annotated[StrictFloat, Field(gt=0)],
3334
+ Annotated[StrictFloat, Field(gt=0)]
3335
+ ]
3336
+ ] = None,
3337
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3338
+ _content_type: Optional[StrictStr] = None,
3339
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3340
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3341
+ ) -> RESTResponseType:
3342
+ """List Descriptions
3343
+
3344
+ List all input/output descriptions for configured BUS services. The input/output descriptions contain information like name, type and unit. The input/output direction is given in perspective of the BUS service.
3345
+
3346
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3347
+ :type cell: str
3348
+ :param _request_timeout: timeout setting for this request. If one
3349
+ number provided, it will be total request
3350
+ timeout. It can also be a pair (tuple) of
3351
+ (connection, read) timeouts.
3352
+ :type _request_timeout: int, tuple(int, int), optional
3353
+ :param _request_auth: set to override the auth_settings for an a single
3354
+ request; this effectively ignores the
3355
+ authentication in the spec for a single request.
3356
+ :type _request_auth: dict, optional
3357
+ :param _content_type: force content-type for the request.
3358
+ :type _content_type: str, Optional
3359
+ :param _headers: set to override the headers for a single
3360
+ request; this effectively ignores the headers
3361
+ in the spec for a single request.
3362
+ :type _headers: dict, optional
3363
+ :param _host_index: set to override the host_index for a single
3364
+ request; this effectively ignores the host_index
3365
+ in the spec for a single request.
3366
+ :type _host_index: int, optional
3367
+ :return: Returns the result object.
3368
+ """ # noqa: E501
3369
+
3370
+ _param = self._list_bus_io_descriptions_serialize(
3371
+ cell=cell,
3372
+ _request_auth=_request_auth,
3373
+ _content_type=_content_type,
3374
+ _headers=_headers,
3375
+ _host_index=_host_index
3376
+ )
3377
+
3378
+ _response_types_map: Dict[str, Optional[str]] = {
3379
+ '200': "List[BusIODescription]",
3380
+ '404': "Error",
3381
+ }
3382
+ response_data = await self.api_client.call_api(
3383
+ *_param,
3384
+ _request_timeout=_request_timeout
3385
+ )
3386
+ return response_data.response
3387
+
3388
+
3389
+ def _list_bus_io_descriptions_serialize(
3390
+ self,
3391
+ cell,
3392
+ _request_auth,
3393
+ _content_type,
3394
+ _headers,
3395
+ _host_index,
3396
+ ) -> RequestSerialized:
3397
+
3398
+ _host = None
3399
+
3400
+ _collection_formats: Dict[str, str] = {
3401
+ }
3402
+
3403
+ _path_params: Dict[str, str] = {}
3404
+ _query_params: List[Tuple[str, str]] = []
3405
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3406
+ _form_params: List[Tuple[str, str]] = []
3407
+ _files: Dict[str, Union[str, bytes]] = {}
3408
+ _body_params: Optional[bytes] = None
3409
+
3410
+ # process the path parameters
3411
+ if cell is not None:
3412
+ _path_params['cell'] = cell
3413
+ # process the query parameters
3414
+ # process the header parameters
3415
+ # process the form parameters
3416
+ # process the body parameter
3417
+
3418
+
3419
+ # set the HTTP header `Accept`
3420
+ _header_params['Accept'] = self.api_client.select_header_accept(
3421
+ [
3422
+ 'application/json'
3423
+ ]
3424
+ )
3425
+
3426
+
3427
+ # authentication setting
3428
+ _auth_settings: List[str] = [
3429
+ 'BasicAuth',
3430
+ 'BearerAuth'
3431
+ ]
3432
+
3433
+ return self.api_client.param_serialize(
3434
+ method='GET',
3435
+ resource_path='/cells/{cell}/bus-ios/ios/description',
3436
+ path_params=_path_params,
3437
+ query_params=_query_params,
3438
+ header_params=_header_params,
3439
+ body=_body_params,
3440
+ post_params=_form_params,
3441
+ files=_files,
3442
+ auth_settings=_auth_settings,
3443
+ collection_formats=_collection_formats,
3444
+ _host=_host,
3445
+ _request_auth=_request_auth
3446
+ )
3447
+
3448
+
3449
+
3450
+ @validate_call
3451
+ async def list_modbus_ios(
3452
+ self,
3453
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3454
+ _request_timeout: Union[
3455
+ None,
3456
+ Annotated[StrictFloat, Field(gt=0)],
3457
+ Tuple[
3458
+ Annotated[StrictFloat, Field(gt=0)],
3459
+ Annotated[StrictFloat, Field(gt=0)]
3460
+ ]
3461
+ ] = None,
3462
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3463
+ _content_type: Optional[StrictStr] = None,
3464
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3465
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3466
+ ) -> List[ModbusIO]:
3467
+ """List MODBUS Input/Output Configuration
3468
+
3469
+ List descriptions for all configured input/output variables of the MODBUS service. The input/output descriptions contain information like name, type and address. The input/output direction is given in perspective of the active MODBUS type (service or client). - The byte and bit addresses are the locations in the MODBUS input/output process image the variable points to. - The MODBUS controller as well as NOVA's MODBUS service use an input/output variable configuration to interpret the bits of the input and output process image. - The NOVA MODBUS service's configuration is modified via [addModbusIO](addModbusIO).
3470
+
3471
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3472
+ :type cell: str
3473
+ :param _request_timeout: timeout setting for this request. If one
3474
+ number provided, it will be total request
3475
+ timeout. It can also be a pair (tuple) of
3476
+ (connection, read) timeouts.
3477
+ :type _request_timeout: int, tuple(int, int), optional
3478
+ :param _request_auth: set to override the auth_settings for an a single
3479
+ request; this effectively ignores the
3480
+ authentication in the spec for a single request.
3481
+ :type _request_auth: dict, optional
3482
+ :param _content_type: force content-type for the request.
3483
+ :type _content_type: str, Optional
3484
+ :param _headers: set to override the headers for a single
3485
+ request; this effectively ignores the headers
3486
+ in the spec for a single request.
3487
+ :type _headers: dict, optional
3488
+ :param _host_index: set to override the host_index for a single
3489
+ request; this effectively ignores the host_index
3490
+ in the spec for a single request.
3491
+ :type _host_index: int, optional
3492
+ :return: Returns the result object.
3493
+ """ # noqa: E501
3494
+
3495
+ _param = self._list_modbus_ios_serialize(
3496
+ cell=cell,
3497
+ _request_auth=_request_auth,
3498
+ _content_type=_content_type,
3499
+ _headers=_headers,
3500
+ _host_index=_host_index
3501
+ )
3502
+
3503
+ _response_types_map: Dict[str, Optional[str]] = {
3504
+ '200': "List[ModbusIO]",
3505
+ '404': "Error",
3506
+ }
3507
+ response_data = await self.api_client.call_api(
3508
+ *_param,
3509
+ _request_timeout=_request_timeout
3510
+ )
3511
+ await response_data.read()
3512
+ return self.api_client.response_deserialize(
3513
+ response_data=response_data,
3514
+ response_types_map=_response_types_map,
3515
+ ).data
3516
+
3517
+
3518
+ @validate_call
3519
+ async def list_modbus_ios_with_http_info(
3520
+ self,
3521
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3522
+ _request_timeout: Union[
3523
+ None,
3524
+ Annotated[StrictFloat, Field(gt=0)],
3525
+ Tuple[
3526
+ Annotated[StrictFloat, Field(gt=0)],
3527
+ Annotated[StrictFloat, Field(gt=0)]
3528
+ ]
3529
+ ] = None,
3530
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3531
+ _content_type: Optional[StrictStr] = None,
3532
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3533
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3534
+ ) -> ApiResponse[List[ModbusIO]]:
3535
+ """List MODBUS Input/Output Configuration
3536
+
3537
+ List descriptions for all configured input/output variables of the MODBUS service. The input/output descriptions contain information like name, type and address. The input/output direction is given in perspective of the active MODBUS type (service or client). - The byte and bit addresses are the locations in the MODBUS input/output process image the variable points to. - The MODBUS controller as well as NOVA's MODBUS service use an input/output variable configuration to interpret the bits of the input and output process image. - The NOVA MODBUS service's configuration is modified via [addModbusIO](addModbusIO).
3538
+
3539
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3540
+ :type cell: str
3541
+ :param _request_timeout: timeout setting for this request. If one
3542
+ number provided, it will be total request
3543
+ timeout. It can also be a pair (tuple) of
3544
+ (connection, read) timeouts.
3545
+ :type _request_timeout: int, tuple(int, int), optional
3546
+ :param _request_auth: set to override the auth_settings for an a single
3547
+ request; this effectively ignores the
3548
+ authentication in the spec for a single request.
3549
+ :type _request_auth: dict, optional
3550
+ :param _content_type: force content-type for the request.
3551
+ :type _content_type: str, Optional
3552
+ :param _headers: set to override the headers for a single
3553
+ request; this effectively ignores the headers
3554
+ in the spec for a single request.
3555
+ :type _headers: dict, optional
3556
+ :param _host_index: set to override the host_index for a single
3557
+ request; this effectively ignores the host_index
3558
+ in the spec for a single request.
3559
+ :type _host_index: int, optional
3560
+ :return: Returns the result object.
3561
+ """ # noqa: E501
3562
+
3563
+ _param = self._list_modbus_ios_serialize(
3564
+ cell=cell,
3565
+ _request_auth=_request_auth,
3566
+ _content_type=_content_type,
3567
+ _headers=_headers,
3568
+ _host_index=_host_index
3569
+ )
3570
+
3571
+ _response_types_map: Dict[str, Optional[str]] = {
3572
+ '200': "List[ModbusIO]",
3573
+ '404': "Error",
3574
+ }
3575
+ response_data = await self.api_client.call_api(
3576
+ *_param,
3577
+ _request_timeout=_request_timeout
3578
+ )
3579
+ await response_data.read()
3580
+ return self.api_client.response_deserialize(
3581
+ response_data=response_data,
3582
+ response_types_map=_response_types_map,
3583
+ )
3584
+
3585
+
3586
+ @validate_call
3587
+ async def list_modbus_ios_without_preload_content(
3588
+ self,
3589
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3590
+ _request_timeout: Union[
3591
+ None,
3592
+ Annotated[StrictFloat, Field(gt=0)],
3593
+ Tuple[
3594
+ Annotated[StrictFloat, Field(gt=0)],
3595
+ Annotated[StrictFloat, Field(gt=0)]
3596
+ ]
3597
+ ] = None,
3598
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3599
+ _content_type: Optional[StrictStr] = None,
3600
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3601
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3602
+ ) -> RESTResponseType:
3603
+ """List MODBUS Input/Output Configuration
3604
+
3605
+ List descriptions for all configured input/output variables of the MODBUS service. The input/output descriptions contain information like name, type and address. The input/output direction is given in perspective of the active MODBUS type (service or client). - The byte and bit addresses are the locations in the MODBUS input/output process image the variable points to. - The MODBUS controller as well as NOVA's MODBUS service use an input/output variable configuration to interpret the bits of the input and output process image. - The NOVA MODBUS service's configuration is modified via [addModbusIO](addModbusIO).
3606
+
3607
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3608
+ :type cell: str
3609
+ :param _request_timeout: timeout setting for this request. If one
3610
+ number provided, it will be total request
3611
+ timeout. It can also be a pair (tuple) of
3612
+ (connection, read) timeouts.
3613
+ :type _request_timeout: int, tuple(int, int), optional
3614
+ :param _request_auth: set to override the auth_settings for an a single
3615
+ request; this effectively ignores the
3616
+ authentication in the spec for a single request.
3617
+ :type _request_auth: dict, optional
3618
+ :param _content_type: force content-type for the request.
3619
+ :type _content_type: str, Optional
3620
+ :param _headers: set to override the headers for a single
3621
+ request; this effectively ignores the headers
3622
+ in the spec for a single request.
3623
+ :type _headers: dict, optional
3624
+ :param _host_index: set to override the host_index for a single
3625
+ request; this effectively ignores the host_index
3626
+ in the spec for a single request.
3627
+ :type _host_index: int, optional
3628
+ :return: Returns the result object.
3629
+ """ # noqa: E501
3630
+
3631
+ _param = self._list_modbus_ios_serialize(
3632
+ cell=cell,
3633
+ _request_auth=_request_auth,
3634
+ _content_type=_content_type,
3635
+ _headers=_headers,
3636
+ _host_index=_host_index
3637
+ )
3638
+
3639
+ _response_types_map: Dict[str, Optional[str]] = {
3640
+ '200': "List[ModbusIO]",
3641
+ '404': "Error",
3642
+ }
3643
+ response_data = await self.api_client.call_api(
3644
+ *_param,
3645
+ _request_timeout=_request_timeout
3646
+ )
3647
+ return response_data.response
3648
+
3649
+
3650
+ def _list_modbus_ios_serialize(
3651
+ self,
3652
+ cell,
3653
+ _request_auth,
3654
+ _content_type,
3655
+ _headers,
3656
+ _host_index,
3657
+ ) -> RequestSerialized:
3658
+
3659
+ _host = None
3660
+
3661
+ _collection_formats: Dict[str, str] = {
3662
+ }
3663
+
3664
+ _path_params: Dict[str, str] = {}
3665
+ _query_params: List[Tuple[str, str]] = []
3666
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3667
+ _form_params: List[Tuple[str, str]] = []
3668
+ _files: Dict[str, Union[str, bytes]] = {}
3669
+ _body_params: Optional[bytes] = None
3670
+
3671
+ # process the path parameters
3672
+ if cell is not None:
3673
+ _path_params['cell'] = cell
3674
+ # process the query parameters
3675
+ # process the header parameters
3676
+ # process the form parameters
3677
+ # process the body parameter
3678
+
3679
+
3680
+ # set the HTTP header `Accept`
3681
+ _header_params['Accept'] = self.api_client.select_header_accept(
3682
+ [
3683
+ 'application/json'
3684
+ ]
3685
+ )
3686
+
3687
+
3688
+ # authentication setting
3689
+ _auth_settings: List[str] = [
3690
+ 'BasicAuth',
3691
+ 'BearerAuth'
3692
+ ]
3693
+
3694
+ return self.api_client.param_serialize(
3695
+ method='GET',
3696
+ resource_path='/cells/{cell}/bus-ios/modbus/ios',
3697
+ path_params=_path_params,
3698
+ query_params=_query_params,
3699
+ header_params=_header_params,
3700
+ body=_body_params,
3701
+ post_params=_form_params,
3702
+ files=_files,
3703
+ auth_settings=_auth_settings,
3704
+ collection_formats=_collection_formats,
3705
+ _host=_host,
3706
+ _request_auth=_request_auth
3707
+ )
3708
+
3709
+
3710
+
3711
+ @validate_call
3712
+ async def list_profinet_ios(
3713
+ self,
3714
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3715
+ _request_timeout: Union[
3716
+ None,
3717
+ Annotated[StrictFloat, Field(gt=0)],
3718
+ Tuple[
3719
+ Annotated[StrictFloat, Field(gt=0)],
3720
+ Annotated[StrictFloat, Field(gt=0)]
3721
+ ]
3722
+ ] = None,
3723
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3724
+ _content_type: Optional[StrictStr] = None,
3725
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3726
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3727
+ ) -> List[ProfinetIO]:
3728
+ """List PROFINET Input/Output Configuration
3729
+
3730
+ List descriptions for all configured input/output variables of the PROFINET service. The input/output descriptions contain information like name, type and unit. The input/output direction is given in perspective of the PROFINET device, e.g., the configured PROFINET service. - The byte and bit addresses are the locations in the PROFINET input/output process image the variable points to. - The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input and output process image. - The NOVA PROFINET service's configuration is modified via [addProfinetIO](addProfinetIO) and [setProfinetIOsFromFile](setProfinetIOsFromFile). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding third party software, e.g., TIA portal.
3731
+
3732
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3733
+ :type cell: str
3734
+ :param _request_timeout: timeout setting for this request. If one
3735
+ number provided, it will be total request
3736
+ timeout. It can also be a pair (tuple) of
3737
+ (connection, read) timeouts.
3738
+ :type _request_timeout: int, tuple(int, int), optional
3739
+ :param _request_auth: set to override the auth_settings for an a single
3740
+ request; this effectively ignores the
3741
+ authentication in the spec for a single request.
3742
+ :type _request_auth: dict, optional
3743
+ :param _content_type: force content-type for the request.
3744
+ :type _content_type: str, Optional
3745
+ :param _headers: set to override the headers for a single
3746
+ request; this effectively ignores the headers
3747
+ in the spec for a single request.
3748
+ :type _headers: dict, optional
3749
+ :param _host_index: set to override the host_index for a single
3750
+ request; this effectively ignores the host_index
3751
+ in the spec for a single request.
3752
+ :type _host_index: int, optional
3753
+ :return: Returns the result object.
3754
+ """ # noqa: E501
3755
+
3756
+ _param = self._list_profinet_ios_serialize(
3757
+ cell=cell,
3758
+ _request_auth=_request_auth,
3759
+ _content_type=_content_type,
3760
+ _headers=_headers,
3761
+ _host_index=_host_index
3762
+ )
3763
+
3764
+ _response_types_map: Dict[str, Optional[str]] = {
3765
+ '200': "List[ProfinetIO]",
3766
+ '404': "Error",
3767
+ }
3768
+ response_data = await self.api_client.call_api(
3769
+ *_param,
3770
+ _request_timeout=_request_timeout
3771
+ )
3772
+ await response_data.read()
3773
+ return self.api_client.response_deserialize(
3774
+ response_data=response_data,
3775
+ response_types_map=_response_types_map,
3776
+ ).data
3777
+
3778
+
3779
+ @validate_call
3780
+ async def list_profinet_ios_with_http_info(
3781
+ self,
3782
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3783
+ _request_timeout: Union[
3784
+ None,
3785
+ Annotated[StrictFloat, Field(gt=0)],
3786
+ Tuple[
3787
+ Annotated[StrictFloat, Field(gt=0)],
3788
+ Annotated[StrictFloat, Field(gt=0)]
3789
+ ]
3790
+ ] = None,
3791
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3792
+ _content_type: Optional[StrictStr] = None,
3793
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3794
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3795
+ ) -> ApiResponse[List[ProfinetIO]]:
3796
+ """List PROFINET Input/Output Configuration
3797
+
3798
+ List descriptions for all configured input/output variables of the PROFINET service. The input/output descriptions contain information like name, type and unit. The input/output direction is given in perspective of the PROFINET device, e.g., the configured PROFINET service. - The byte and bit addresses are the locations in the PROFINET input/output process image the variable points to. - The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input and output process image. - The NOVA PROFINET service's configuration is modified via [addProfinetIO](addProfinetIO) and [setProfinetIOsFromFile](setProfinetIOsFromFile). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding third party software, e.g., TIA portal.
3799
+
3800
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3801
+ :type cell: str
3802
+ :param _request_timeout: timeout setting for this request. If one
3803
+ number provided, it will be total request
3804
+ timeout. It can also be a pair (tuple) of
3805
+ (connection, read) timeouts.
3806
+ :type _request_timeout: int, tuple(int, int), optional
3807
+ :param _request_auth: set to override the auth_settings for an a single
3808
+ request; this effectively ignores the
3809
+ authentication in the spec for a single request.
3810
+ :type _request_auth: dict, optional
3811
+ :param _content_type: force content-type for the request.
3812
+ :type _content_type: str, Optional
3813
+ :param _headers: set to override the headers for a single
3814
+ request; this effectively ignores the headers
3815
+ in the spec for a single request.
3816
+ :type _headers: dict, optional
3817
+ :param _host_index: set to override the host_index for a single
3818
+ request; this effectively ignores the host_index
3819
+ in the spec for a single request.
3820
+ :type _host_index: int, optional
3821
+ :return: Returns the result object.
3822
+ """ # noqa: E501
3823
+
3824
+ _param = self._list_profinet_ios_serialize(
3825
+ cell=cell,
3826
+ _request_auth=_request_auth,
3827
+ _content_type=_content_type,
3828
+ _headers=_headers,
3829
+ _host_index=_host_index
3830
+ )
3831
+
3832
+ _response_types_map: Dict[str, Optional[str]] = {
3833
+ '200': "List[ProfinetIO]",
3834
+ '404': "Error",
3835
+ }
3836
+ response_data = await self.api_client.call_api(
3837
+ *_param,
3838
+ _request_timeout=_request_timeout
3839
+ )
3840
+ await response_data.read()
3841
+ return self.api_client.response_deserialize(
3842
+ response_data=response_data,
3843
+ response_types_map=_response_types_map,
3844
+ )
3845
+
3846
+
3847
+ @validate_call
3848
+ async def list_profinet_ios_without_preload_content(
3849
+ self,
3850
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3851
+ _request_timeout: Union[
3852
+ None,
3853
+ Annotated[StrictFloat, Field(gt=0)],
3854
+ Tuple[
3855
+ Annotated[StrictFloat, Field(gt=0)],
3856
+ Annotated[StrictFloat, Field(gt=0)]
3857
+ ]
3858
+ ] = None,
3859
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3860
+ _content_type: Optional[StrictStr] = None,
3861
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3862
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3863
+ ) -> RESTResponseType:
3864
+ """List PROFINET Input/Output Configuration
3865
+
3866
+ List descriptions for all configured input/output variables of the PROFINET service. The input/output descriptions contain information like name, type and unit. The input/output direction is given in perspective of the PROFINET device, e.g., the configured PROFINET service. - The byte and bit addresses are the locations in the PROFINET input/output process image the variable points to. - The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input and output process image. - The NOVA PROFINET service's configuration is modified via [addProfinetIO](addProfinetIO) and [setProfinetIOsFromFile](setProfinetIOsFromFile). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding third party software, e.g., TIA portal.
3867
+
3868
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3869
+ :type cell: str
3870
+ :param _request_timeout: timeout setting for this request. If one
3871
+ number provided, it will be total request
3872
+ timeout. It can also be a pair (tuple) of
3873
+ (connection, read) timeouts.
3874
+ :type _request_timeout: int, tuple(int, int), optional
3875
+ :param _request_auth: set to override the auth_settings for an a single
3876
+ request; this effectively ignores the
3877
+ authentication in the spec for a single request.
3878
+ :type _request_auth: dict, optional
3879
+ :param _content_type: force content-type for the request.
3880
+ :type _content_type: str, Optional
3881
+ :param _headers: set to override the headers for a single
3882
+ request; this effectively ignores the headers
3883
+ in the spec for a single request.
3884
+ :type _headers: dict, optional
3885
+ :param _host_index: set to override the host_index for a single
3886
+ request; this effectively ignores the host_index
3887
+ in the spec for a single request.
3888
+ :type _host_index: int, optional
3889
+ :return: Returns the result object.
3890
+ """ # noqa: E501
3891
+
3892
+ _param = self._list_profinet_ios_serialize(
3893
+ cell=cell,
3894
+ _request_auth=_request_auth,
3895
+ _content_type=_content_type,
3896
+ _headers=_headers,
3897
+ _host_index=_host_index
3898
+ )
3899
+
3900
+ _response_types_map: Dict[str, Optional[str]] = {
3901
+ '200': "List[ProfinetIO]",
3902
+ '404': "Error",
3903
+ }
3904
+ response_data = await self.api_client.call_api(
3905
+ *_param,
3906
+ _request_timeout=_request_timeout
3907
+ )
3908
+ return response_data.response
3909
+
3910
+
3911
+ def _list_profinet_ios_serialize(
3912
+ self,
3913
+ cell,
3914
+ _request_auth,
3915
+ _content_type,
3916
+ _headers,
3917
+ _host_index,
3918
+ ) -> RequestSerialized:
3919
+
3920
+ _host = None
3921
+
3922
+ _collection_formats: Dict[str, str] = {
3923
+ }
3924
+
3925
+ _path_params: Dict[str, str] = {}
3926
+ _query_params: List[Tuple[str, str]] = []
3927
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3928
+ _form_params: List[Tuple[str, str]] = []
3929
+ _files: Dict[str, Union[str, bytes]] = {}
3930
+ _body_params: Optional[bytes] = None
3931
+
3932
+ # process the path parameters
3933
+ if cell is not None:
3934
+ _path_params['cell'] = cell
3935
+ # process the query parameters
3936
+ # process the header parameters
3937
+ # process the form parameters
3938
+ # process the body parameter
3939
+
3940
+
3941
+ # set the HTTP header `Accept`
3942
+ _header_params['Accept'] = self.api_client.select_header_accept(
3943
+ [
3944
+ 'application/json'
3945
+ ]
3946
+ )
3947
+
3948
+
3949
+ # authentication setting
3950
+ _auth_settings: List[str] = [
3951
+ 'BasicAuth',
3952
+ 'BearerAuth'
3953
+ ]
3954
+
3955
+ return self.api_client.param_serialize(
3956
+ method='GET',
3957
+ resource_path='/cells/{cell}/bus-ios/profinet/ios',
3958
+ path_params=_path_params,
3959
+ query_params=_query_params,
3960
+ header_params=_header_params,
3961
+ body=_body_params,
3962
+ post_params=_form_params,
3963
+ files=_files,
3964
+ auth_settings=_auth_settings,
3965
+ collection_formats=_collection_formats,
3966
+ _host=_host,
3967
+ _request_auth=_request_auth
3968
+ )
3969
+
3970
+
3971
+
3972
+ @validate_call
3973
+ async def set_bus_io_values(
3974
+ self,
3975
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
3976
+ io_value: List[IOValue],
3977
+ _request_timeout: Union[
3978
+ None,
3979
+ Annotated[StrictFloat, Field(gt=0)],
3980
+ Tuple[
3981
+ Annotated[StrictFloat, Field(gt=0)],
3982
+ Annotated[StrictFloat, Field(gt=0)]
3983
+ ]
3984
+ ] = None,
3985
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3986
+ _content_type: Optional[StrictStr] = None,
3987
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3988
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3989
+ ) -> None:
3990
+ """Set Output Values
3991
+
3992
+ Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
3993
+
3994
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
3995
+ :type cell: str
3996
+ :param io_value: (required)
3997
+ :type io_value: List[IOValue]
3998
+ :param _request_timeout: timeout setting for this request. If one
3999
+ number provided, it will be total request
4000
+ timeout. It can also be a pair (tuple) of
4001
+ (connection, read) timeouts.
4002
+ :type _request_timeout: int, tuple(int, int), optional
4003
+ :param _request_auth: set to override the auth_settings for an a single
4004
+ request; this effectively ignores the
4005
+ authentication in the spec for a single request.
4006
+ :type _request_auth: dict, optional
4007
+ :param _content_type: force content-type for the request.
4008
+ :type _content_type: str, Optional
4009
+ :param _headers: set to override the headers for a single
4010
+ request; this effectively ignores the headers
4011
+ in the spec for a single request.
4012
+ :type _headers: dict, optional
4013
+ :param _host_index: set to override the host_index for a single
4014
+ request; this effectively ignores the host_index
4015
+ in the spec for a single request.
4016
+ :type _host_index: int, optional
4017
+ :return: Returns the result object.
4018
+ """ # noqa: E501
4019
+
4020
+ _param = self._set_bus_io_values_serialize(
4021
+ cell=cell,
4022
+ io_value=io_value,
4023
+ _request_auth=_request_auth,
4024
+ _content_type=_content_type,
4025
+ _headers=_headers,
4026
+ _host_index=_host_index
4027
+ )
4028
+
4029
+ _response_types_map: Dict[str, Optional[str]] = {
4030
+ '200': None,
4031
+ '400': "Error",
4032
+ '404': "Error",
4033
+ }
4034
+ response_data = await self.api_client.call_api(
4035
+ *_param,
4036
+ _request_timeout=_request_timeout
4037
+ )
4038
+ await response_data.read()
4039
+ return self.api_client.response_deserialize(
4040
+ response_data=response_data,
4041
+ response_types_map=_response_types_map,
4042
+ ).data
4043
+
4044
+
4045
+ @validate_call
4046
+ async def set_bus_io_values_with_http_info(
4047
+ self,
4048
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
4049
+ io_value: List[IOValue],
4050
+ _request_timeout: Union[
4051
+ None,
4052
+ Annotated[StrictFloat, Field(gt=0)],
4053
+ Tuple[
4054
+ Annotated[StrictFloat, Field(gt=0)],
4055
+ Annotated[StrictFloat, Field(gt=0)]
4056
+ ]
4057
+ ] = None,
4058
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4059
+ _content_type: Optional[StrictStr] = None,
4060
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4061
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4062
+ ) -> ApiResponse[None]:
4063
+ """Set Output Values
4064
+
4065
+ Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
4066
+
4067
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
4068
+ :type cell: str
4069
+ :param io_value: (required)
4070
+ :type io_value: List[IOValue]
4071
+ :param _request_timeout: timeout setting for this request. If one
4072
+ number provided, it will be total request
4073
+ timeout. It can also be a pair (tuple) of
4074
+ (connection, read) timeouts.
4075
+ :type _request_timeout: int, tuple(int, int), optional
4076
+ :param _request_auth: set to override the auth_settings for an a single
4077
+ request; this effectively ignores the
4078
+ authentication in the spec for a single request.
4079
+ :type _request_auth: dict, optional
4080
+ :param _content_type: force content-type for the request.
4081
+ :type _content_type: str, Optional
4082
+ :param _headers: set to override the headers for a single
4083
+ request; this effectively ignores the headers
4084
+ in the spec for a single request.
4085
+ :type _headers: dict, optional
4086
+ :param _host_index: set to override the host_index for a single
4087
+ request; this effectively ignores the host_index
4088
+ in the spec for a single request.
4089
+ :type _host_index: int, optional
4090
+ :return: Returns the result object.
4091
+ """ # noqa: E501
4092
+
4093
+ _param = self._set_bus_io_values_serialize(
4094
+ cell=cell,
4095
+ io_value=io_value,
4096
+ _request_auth=_request_auth,
4097
+ _content_type=_content_type,
4098
+ _headers=_headers,
4099
+ _host_index=_host_index
4100
+ )
4101
+
4102
+ _response_types_map: Dict[str, Optional[str]] = {
4103
+ '200': None,
4104
+ '400': "Error",
4105
+ '404': "Error",
4106
+ }
4107
+ response_data = await self.api_client.call_api(
4108
+ *_param,
4109
+ _request_timeout=_request_timeout
4110
+ )
4111
+ await response_data.read()
4112
+ return self.api_client.response_deserialize(
4113
+ response_data=response_data,
4114
+ response_types_map=_response_types_map,
4115
+ )
4116
+
4117
+
4118
+ @validate_call
4119
+ async def set_bus_io_values_without_preload_content(
4120
+ self,
4121
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
4122
+ io_value: List[IOValue],
4123
+ _request_timeout: Union[
4124
+ None,
4125
+ Annotated[StrictFloat, Field(gt=0)],
4126
+ Tuple[
4127
+ Annotated[StrictFloat, Field(gt=0)],
4128
+ Annotated[StrictFloat, Field(gt=0)]
4129
+ ]
4130
+ ] = None,
4131
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4132
+ _content_type: Optional[StrictStr] = None,
4133
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4134
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4135
+ ) -> RESTResponseType:
4136
+ """Set Output Values
4137
+
4138
+ Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
4139
+
4140
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
4141
+ :type cell: str
4142
+ :param io_value: (required)
4143
+ :type io_value: List[IOValue]
4144
+ :param _request_timeout: timeout setting for this request. If one
4145
+ number provided, it will be total request
4146
+ timeout. It can also be a pair (tuple) of
4147
+ (connection, read) timeouts.
4148
+ :type _request_timeout: int, tuple(int, int), optional
4149
+ :param _request_auth: set to override the auth_settings for an a single
4150
+ request; this effectively ignores the
4151
+ authentication in the spec for a single request.
4152
+ :type _request_auth: dict, optional
4153
+ :param _content_type: force content-type for the request.
4154
+ :type _content_type: str, Optional
4155
+ :param _headers: set to override the headers for a single
4156
+ request; this effectively ignores the headers
4157
+ in the spec for a single request.
4158
+ :type _headers: dict, optional
4159
+ :param _host_index: set to override the host_index for a single
4160
+ request; this effectively ignores the host_index
4161
+ in the spec for a single request.
4162
+ :type _host_index: int, optional
4163
+ :return: Returns the result object.
4164
+ """ # noqa: E501
4165
+
4166
+ _param = self._set_bus_io_values_serialize(
4167
+ cell=cell,
4168
+ io_value=io_value,
4169
+ _request_auth=_request_auth,
4170
+ _content_type=_content_type,
4171
+ _headers=_headers,
4172
+ _host_index=_host_index
4173
+ )
4174
+
4175
+ _response_types_map: Dict[str, Optional[str]] = {
4176
+ '200': None,
4177
+ '400': "Error",
4178
+ '404': "Error",
4179
+ }
4180
+ response_data = await self.api_client.call_api(
4181
+ *_param,
4182
+ _request_timeout=_request_timeout
4183
+ )
4184
+ return response_data.response
4185
+
4186
+
4187
+ def _set_bus_io_values_serialize(
4188
+ self,
4189
+ cell,
4190
+ io_value,
4191
+ _request_auth,
4192
+ _content_type,
4193
+ _headers,
4194
+ _host_index,
4195
+ ) -> RequestSerialized:
4196
+
4197
+ _host = None
4198
+
4199
+ _collection_formats: Dict[str, str] = {
4200
+ 'IOValue': '',
4201
+ }
4202
+
4203
+ _path_params: Dict[str, str] = {}
4204
+ _query_params: List[Tuple[str, str]] = []
4205
+ _header_params: Dict[str, Optional[str]] = _headers or {}
4206
+ _form_params: List[Tuple[str, str]] = []
4207
+ _files: Dict[str, Union[str, bytes]] = {}
4208
+ _body_params: Optional[bytes] = None
4209
+
4210
+ # process the path parameters
4211
+ if cell is not None:
4212
+ _path_params['cell'] = cell
4213
+ # process the query parameters
4214
+ # process the header parameters
4215
+ # process the form parameters
4216
+ # process the body parameter
4217
+ if io_value is not None:
4218
+ _body_params = io_value
4219
+
4220
+
4221
+ # set the HTTP header `Accept`
4222
+ _header_params['Accept'] = self.api_client.select_header_accept(
4223
+ [
4224
+ 'application/json'
4225
+ ]
4226
+ )
4227
+
4228
+ # set the HTTP header `Content-Type`
4229
+ if _content_type:
4230
+ _header_params['Content-Type'] = _content_type
4231
+ else:
4232
+ _default_content_type = (
4233
+ self.api_client.select_header_content_type(
4234
+ [
4235
+ 'application/json'
4236
+ ]
4237
+ )
4238
+ )
4239
+ if _default_content_type is not None:
4240
+ _header_params['Content-Type'] = _default_content_type
4241
+
4242
+ # authentication setting
4243
+ _auth_settings: List[str] = [
4244
+ 'BasicAuth',
4245
+ 'BearerAuth'
4246
+ ]
4247
+
4248
+ return self.api_client.param_serialize(
4249
+ method='PUT',
4250
+ resource_path='/cells/{cell}/bus-ios/ios/values',
4251
+ path_params=_path_params,
4252
+ query_params=_query_params,
4253
+ header_params=_header_params,
4254
+ body=_body_params,
4255
+ post_params=_form_params,
4256
+ files=_files,
4257
+ auth_settings=_auth_settings,
4258
+ collection_formats=_collection_formats,
4259
+ _host=_host,
4260
+ _request_auth=_request_auth
4261
+ )
4262
+
4263
+
4264
+
4265
+ @validate_call
4266
+ async def set_profinet_ios_from_file(
4267
+ self,
4268
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
4269
+ profinet_input_output_config: ProfinetInputOutputConfig,
4270
+ _request_timeout: Union[
4271
+ None,
4272
+ Annotated[StrictFloat, Field(gt=0)],
4273
+ Tuple[
4274
+ Annotated[StrictFloat, Field(gt=0)],
4275
+ Annotated[StrictFloat, Field(gt=0)]
4276
+ ]
4277
+ ] = None,
4278
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4279
+ _content_type: Optional[StrictStr] = None,
4280
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4281
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4282
+ ) -> None:
4283
+ """Set PROFINET Inputs/Outputs from File
4284
+
4285
+ Sets input/output variable configuration on the PROFINET device (i.e. NOVA's PROFINET service) from XML file. The inputs/outputs map variables to specific memory addresses in the process image. The default process image has buffer lengths of 64 bytes for input and output. - The size of the buffer is determined by the `config_file_content` that is passed in [addBusIOService](addBusIOService) and has to be in accordance with the GSDML file describing the PROFINET device. The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input/output process image. - The NOVA's PROFINET service's configuration can be viewed via [listProfinetIOs](listProfinetIOs). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding engineering system, e.g., TIA portal. #### Export variables You can export the variable configuration of the PROFINET controller as XML file from your engineering system, e.g., TIA portal. - The endpoint is built so that the perspective of input and output (PROFINET Device's input is PROFINET Controller's output) is internally handled (PROFINET device input is PROFINET controller output), meaning that you can paste the exported XML file here without modifying.
4286
+
4287
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
4288
+ :type cell: str
4289
+ :param profinet_input_output_config: (required)
4290
+ :type profinet_input_output_config: ProfinetInputOutputConfig
4291
+ :param _request_timeout: timeout setting for this request. If one
4292
+ number provided, it will be total request
4293
+ timeout. It can also be a pair (tuple) of
4294
+ (connection, read) timeouts.
4295
+ :type _request_timeout: int, tuple(int, int), optional
4296
+ :param _request_auth: set to override the auth_settings for an a single
4297
+ request; this effectively ignores the
4298
+ authentication in the spec for a single request.
4299
+ :type _request_auth: dict, optional
4300
+ :param _content_type: force content-type for the request.
4301
+ :type _content_type: str, Optional
4302
+ :param _headers: set to override the headers for a single
4303
+ request; this effectively ignores the headers
4304
+ in the spec for a single request.
4305
+ :type _headers: dict, optional
4306
+ :param _host_index: set to override the host_index for a single
4307
+ request; this effectively ignores the host_index
4308
+ in the spec for a single request.
4309
+ :type _host_index: int, optional
4310
+ :return: Returns the result object.
4311
+ """ # noqa: E501
4312
+
4313
+ _param = self._set_profinet_ios_from_file_serialize(
4314
+ cell=cell,
4315
+ profinet_input_output_config=profinet_input_output_config,
4316
+ _request_auth=_request_auth,
4317
+ _content_type=_content_type,
4318
+ _headers=_headers,
4319
+ _host_index=_host_index
4320
+ )
4321
+
4322
+ _response_types_map: Dict[str, Optional[str]] = {
4323
+ '200': None,
4324
+ '400': "Error",
4325
+ '404': "Error",
4326
+ }
4327
+ response_data = await self.api_client.call_api(
4328
+ *_param,
4329
+ _request_timeout=_request_timeout
4330
+ )
4331
+ await response_data.read()
4332
+ return self.api_client.response_deserialize(
4333
+ response_data=response_data,
4334
+ response_types_map=_response_types_map,
4335
+ ).data
4336
+
4337
+
4338
+ @validate_call
4339
+ async def set_profinet_ios_from_file_with_http_info(
4340
+ self,
4341
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
4342
+ profinet_input_output_config: ProfinetInputOutputConfig,
4343
+ _request_timeout: Union[
4344
+ None,
4345
+ Annotated[StrictFloat, Field(gt=0)],
4346
+ Tuple[
4347
+ Annotated[StrictFloat, Field(gt=0)],
4348
+ Annotated[StrictFloat, Field(gt=0)]
4349
+ ]
4350
+ ] = None,
4351
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4352
+ _content_type: Optional[StrictStr] = None,
4353
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4354
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4355
+ ) -> ApiResponse[None]:
4356
+ """Set PROFINET Inputs/Outputs from File
4357
+
4358
+ Sets input/output variable configuration on the PROFINET device (i.e. NOVA's PROFINET service) from XML file. The inputs/outputs map variables to specific memory addresses in the process image. The default process image has buffer lengths of 64 bytes for input and output. - The size of the buffer is determined by the `config_file_content` that is passed in [addBusIOService](addBusIOService) and has to be in accordance with the GSDML file describing the PROFINET device. The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input/output process image. - The NOVA's PROFINET service's configuration can be viewed via [listProfinetIOs](listProfinetIOs). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding engineering system, e.g., TIA portal. #### Export variables You can export the variable configuration of the PROFINET controller as XML file from your engineering system, e.g., TIA portal. - The endpoint is built so that the perspective of input and output (PROFINET Device's input is PROFINET Controller's output) is internally handled (PROFINET device input is PROFINET controller output), meaning that you can paste the exported XML file here without modifying.
4359
+
4360
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
4361
+ :type cell: str
4362
+ :param profinet_input_output_config: (required)
4363
+ :type profinet_input_output_config: ProfinetInputOutputConfig
4364
+ :param _request_timeout: timeout setting for this request. If one
4365
+ number provided, it will be total request
4366
+ timeout. It can also be a pair (tuple) of
4367
+ (connection, read) timeouts.
4368
+ :type _request_timeout: int, tuple(int, int), optional
4369
+ :param _request_auth: set to override the auth_settings for an a single
4370
+ request; this effectively ignores the
4371
+ authentication in the spec for a single request.
4372
+ :type _request_auth: dict, optional
4373
+ :param _content_type: force content-type for the request.
4374
+ :type _content_type: str, Optional
4375
+ :param _headers: set to override the headers for a single
4376
+ request; this effectively ignores the headers
4377
+ in the spec for a single request.
4378
+ :type _headers: dict, optional
4379
+ :param _host_index: set to override the host_index for a single
4380
+ request; this effectively ignores the host_index
4381
+ in the spec for a single request.
4382
+ :type _host_index: int, optional
4383
+ :return: Returns the result object.
4384
+ """ # noqa: E501
4385
+
4386
+ _param = self._set_profinet_ios_from_file_serialize(
4387
+ cell=cell,
4388
+ profinet_input_output_config=profinet_input_output_config,
4389
+ _request_auth=_request_auth,
4390
+ _content_type=_content_type,
4391
+ _headers=_headers,
4392
+ _host_index=_host_index
4393
+ )
4394
+
4395
+ _response_types_map: Dict[str, Optional[str]] = {
4396
+ '200': None,
4397
+ '400': "Error",
4398
+ '404': "Error",
4399
+ }
4400
+ response_data = await self.api_client.call_api(
4401
+ *_param,
4402
+ _request_timeout=_request_timeout
4403
+ )
4404
+ await response_data.read()
4405
+ return self.api_client.response_deserialize(
4406
+ response_data=response_data,
4407
+ response_types_map=_response_types_map,
4408
+ )
4409
+
4410
+
4411
+ @validate_call
4412
+ async def set_profinet_ios_from_file_without_preload_content(
4413
+ self,
4414
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
4415
+ profinet_input_output_config: ProfinetInputOutputConfig,
4416
+ _request_timeout: Union[
4417
+ None,
4418
+ Annotated[StrictFloat, Field(gt=0)],
4419
+ Tuple[
4420
+ Annotated[StrictFloat, Field(gt=0)],
4421
+ Annotated[StrictFloat, Field(gt=0)]
4422
+ ]
4423
+ ] = None,
4424
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4425
+ _content_type: Optional[StrictStr] = None,
4426
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4427
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4428
+ ) -> RESTResponseType:
4429
+ """Set PROFINET Inputs/Outputs from File
4430
+
4431
+ Sets input/output variable configuration on the PROFINET device (i.e. NOVA's PROFINET service) from XML file. The inputs/outputs map variables to specific memory addresses in the process image. The default process image has buffer lengths of 64 bytes for input and output. - The size of the buffer is determined by the `config_file_content` that is passed in [addBusIOService](addBusIOService) and has to be in accordance with the GSDML file describing the PROFINET device. The PROFINET controller as well as NOVA's PROFINET service use an input/output variable configuration to interpret the bits of the input/output process image. - The NOVA's PROFINET service's configuration can be viewed via [listProfinetIOs](listProfinetIOs). For the PROFINET controller, e.g., a connected PLC, refer to the corresponding engineering system, e.g., TIA portal. #### Export variables You can export the variable configuration of the PROFINET controller as XML file from your engineering system, e.g., TIA portal. - The endpoint is built so that the perspective of input and output (PROFINET Device's input is PROFINET Controller's output) is internally handled (PROFINET device input is PROFINET controller output), meaning that you can paste the exported XML file here without modifying.
4432
+
4433
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
4434
+ :type cell: str
4435
+ :param profinet_input_output_config: (required)
4436
+ :type profinet_input_output_config: ProfinetInputOutputConfig
4437
+ :param _request_timeout: timeout setting for this request. If one
4438
+ number provided, it will be total request
4439
+ timeout. It can also be a pair (tuple) of
4440
+ (connection, read) timeouts.
4441
+ :type _request_timeout: int, tuple(int, int), optional
4442
+ :param _request_auth: set to override the auth_settings for an a single
4443
+ request; this effectively ignores the
4444
+ authentication in the spec for a single request.
4445
+ :type _request_auth: dict, optional
4446
+ :param _content_type: force content-type for the request.
4447
+ :type _content_type: str, Optional
4448
+ :param _headers: set to override the headers for a single
4449
+ request; this effectively ignores the headers
4450
+ in the spec for a single request.
4451
+ :type _headers: dict, optional
4452
+ :param _host_index: set to override the host_index for a single
4453
+ request; this effectively ignores the host_index
4454
+ in the spec for a single request.
4455
+ :type _host_index: int, optional
4456
+ :return: Returns the result object.
4457
+ """ # noqa: E501
4458
+
4459
+ _param = self._set_profinet_ios_from_file_serialize(
4460
+ cell=cell,
4461
+ profinet_input_output_config=profinet_input_output_config,
4462
+ _request_auth=_request_auth,
4463
+ _content_type=_content_type,
4464
+ _headers=_headers,
4465
+ _host_index=_host_index
4466
+ )
4467
+
4468
+ _response_types_map: Dict[str, Optional[str]] = {
4469
+ '200': None,
4470
+ '400': "Error",
4471
+ '404': "Error",
4472
+ }
4473
+ response_data = await self.api_client.call_api(
4474
+ *_param,
4475
+ _request_timeout=_request_timeout
4476
+ )
4477
+ return response_data.response
4478
+
4479
+
4480
+ def _set_profinet_ios_from_file_serialize(
4481
+ self,
4482
+ cell,
4483
+ profinet_input_output_config,
4484
+ _request_auth,
4485
+ _content_type,
4486
+ _headers,
4487
+ _host_index,
4488
+ ) -> RequestSerialized:
4489
+
4490
+ _host = None
4491
+
4492
+ _collection_formats: Dict[str, str] = {
4493
+ }
4494
+
4495
+ _path_params: Dict[str, str] = {}
4496
+ _query_params: List[Tuple[str, str]] = []
4497
+ _header_params: Dict[str, Optional[str]] = _headers or {}
4498
+ _form_params: List[Tuple[str, str]] = []
4499
+ _files: Dict[str, Union[str, bytes]] = {}
4500
+ _body_params: Optional[bytes] = None
4501
+
4502
+ # process the path parameters
4503
+ if cell is not None:
4504
+ _path_params['cell'] = cell
4505
+ # process the query parameters
4506
+ # process the header parameters
4507
+ # process the form parameters
4508
+ # process the body parameter
4509
+ if profinet_input_output_config is not None:
4510
+ _body_params = profinet_input_output_config
4511
+
4512
+
4513
+ # set the HTTP header `Accept`
4514
+ _header_params['Accept'] = self.api_client.select_header_accept(
4515
+ [
4516
+ 'application/json'
4517
+ ]
4518
+ )
4519
+
4520
+ # set the HTTP header `Content-Type`
4521
+ if _content_type:
4522
+ _header_params['Content-Type'] = _content_type
4523
+ else:
4524
+ _default_content_type = (
4525
+ self.api_client.select_header_content_type(
4526
+ [
4527
+ 'application/json'
4528
+ ]
4529
+ )
4530
+ )
4531
+ if _default_content_type is not None:
4532
+ _header_params['Content-Type'] = _default_content_type
4533
+
4534
+ # authentication setting
4535
+ _auth_settings: List[str] = [
4536
+ 'BasicAuth',
4537
+ 'BearerAuth'
4538
+ ]
4539
+
4540
+ return self.api_client.param_serialize(
4541
+ method='PUT',
4542
+ resource_path='/cells/{cell}/bus-ios/profinet/iofile',
4543
+ path_params=_path_params,
4544
+ query_params=_query_params,
4545
+ header_params=_header_params,
4546
+ body=_body_params,
4547
+ post_params=_form_params,
4548
+ files=_files,
4549
+ auth_settings=_auth_settings,
4550
+ collection_formats=_collection_formats,
4551
+ _host=_host,
4552
+ _request_auth=_request_auth
4553
+ )
4554
+
4555
+